Quote Originally Posted by Qiieha View Post
But I want to know how to do it with my own protocol.
Actually, building your own protocol isn't that hard if you can keep it simple. You just need to know what you must send/receive. When talking about fixed data frames (by that I mean that you know what type of data is comming, the count isn't important because you can specify that in a sizefield of your protocol).

Think of following super-simpel protocol:

Size (WORD or uint16) = number of bytes following
Data

If you know that "Data" is an array of say foo, and you know that foo contains 2 32bit integers en a double (64bits), than you need to send only 128bits or 16bytes data per foo class, if you want to send 3 foo's, you need to send 48bytes of data, the Size-field is 48, so you know how many bytes the dataframe is. Store the bytes in a byte-array. Because you know the size of your dataframe and you know the size of your foo , you can calculate that you received 3 foo's. From there on you can extract the data from te byte-array and create 3 foo's on the receiver.

If you must send diffrent types of data, you can specify a 'Command'-field (wich is 1 byte for instance) that specify the type of data that is in the Data-field.

If you need to send a mixture of undefined data (I mean, you wanna send ones 3 times foo, 4 times faa and 1 fuu; but the next time it can be 12 fuu and 1 faa) than things get complicated. But, try to figure out first if you can do it in a simple manner.

Hope this quickie helped