On Wed, May 18, 2011 at 3:16 PM, Schlager, Christian <schla...@zeiss.de>wrote:

>
>
> Hello,
>
> I am a first-time poster. I hope this is the proper way to ask my question:
>
> I have a C++ media player application that I want to control via a php
> website.
> To that end the application has an UDP socket listening for Player
> messages.
> In C++ player messages have the following members:
>
> class MessageHeader
> {
>        UINT16          packetSize;             // size of message in bytes
> including header
>        UINT16          sequenceNum;    // sequence number of message
>        UINT16          flags;          // flags
>        UINT16          msgType;                // msg type
> }
>
> class PlayerCommand : public MessageHeader
> {
>        WCHAR command[MAX_PATH];                // dynamic string
> }
>
>
> The php website is supposed to create an UDP socket in order to send player
> commands (play, stop, next, etc.)
> However, according to the documentation all php socket functions only take
> messages in string format.
> For example, int socket_sendto ( resource $socket , string $buf , int $len
> , ....
>
>
> My question is this:
> If it is possible at all, how can I create a $buf - string that represents
> the PlayerCommand class and is accepted by the C++ listening socket?
>


You really want something like JSON, Thrift (http://thrift.apache.org/), XML
or some other format to package the data in a way that will be easily
manipulated at both ends, rather than trying to duplicate the in-memory
representation that your particular C++ compiler of choice is using. Doing
things that way leads to an extremely fragile system.

-Stuart

-- 
Stuart Dallas
3ft9 Ltd
http://3ft9.com/

Reply via email to