Существует ли в мире библиотека WDDX для C++?

Тема в разделе "WASM.HEAP", создана пользователем device, 5 июн 2008.

  1. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    На сайте OpenWDDX.org скачал, но сполз под стол : по ссылке "скачать для UNIX" лежит архив в котором есть wddx.dll:)
    Исходников нет, чтоб по линух собрать
    Нашел для Java.
    Откомпилил Эклипсом. (стандартная Java не компилит)
    Полученные файлы *.class собрал в libwddx.so с помощью GCC, установил.
    Щас на Си мост пишу к либе (приступаю писать, открыл IDE, создал проект...). Пипец какой-то. По всему гуглу прошел - нету. По sf.net прошел - нету.
    Дальше мост писать или есть такая библиотека?
     
  2. censored

    censored New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    1.615
    Адрес:
    деревня "Анонимные Прокси"
    Было бы неплохо хотя бы в двух словах описать что за библиотека.
     
  3. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    WDDX (Web Distributed Data eXchange) - древняя техноогия. Сейчас на смену ей приходят RPC, XML-RPC и Persistense.
    Но бывают моменты, когда она нужна.
    Если в двух словах, то с помощью WDDX можно проводить сериализацию/десериализацию разных данных. В Идеале имеем функции:
    WDDX_PACKET_START
    WDDX_PACKET_END
    WDDX_SERIALIZE
    WDDX_DESERIALIZE

    Пример: Есть некая структура на СИ. Есть класс на PHP c такими же членами, есть класс на Java с такиме же членами.
    Задача: присвоить значения членов структуры на си членам классов других ЯП.
    1. Упаковываем структуру на СИ в пакет WDDX
    2. передаем приложению на другом языке программирования.
    3. В приложении принимаем пакет и распаковываем в класс.

    Это удобно, быстро и просто.
    То есть можно позволить привести какие-то данные к общему виду.
    Пример на PHP
    Код (Text):
    1. $wdh = wddx_packet_start("**wdh");
    2. $data = array ("hello", "world", "and", "hello again");
    3. wddx_serialize_vars($wdh, $data);
    4. $__wdh = wddx_packet_end($wdh);
    5. echo $__wdh;
    6. //Теперь __wdh - структура, которую можно передавать в любом направлении
    Дальнейшие действия при взаимодействии с прогой на СИ:
    1. Сохраняем __wdh
    2. В си Извлекаем __wdh
    3. распаковываем
    4. пользуемся в свое удовольствие.
     
  4. W4FhLF

    W4FhLF New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2006
    Сообщения:
    1.050
    XML здесь кажется более уместным, имхо.
     
  5. censored

    censored New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    1.615
    Адрес:
    деревня "Анонимные Прокси"
    Библиотек\классов, выполняющих это, в С\С++ хватает. Тот же CArchive из MFC :)
     
  6. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    Хочешь чтоб я MFC копать начал?
    Быстрее тогда свой формат написать (XML-BASED). Взять какой-нибудь парсер и вперед.
    Таких либ действительно дофига, но вот реалиция нужна не только для CPP но и для PHP. Обмениваться данными надо как-то.