[muscle] Re: MUSCLE client API for Delphi

  • From: "Jeremy Friesner" <jaf@xxxxxxxxxxxx>
  • To: muscle@xxxxxxxxxxxxx
  • Date: Sun, 03 Jul 2005 17:07:47 PDT (-0700)

Hi Matt,

> When that's done, It'll then be a
> case of writing a proof of concept basic BeShare client (just text chat) and
> then I'll submit the code to Jeremy.


> On that note: Jeremy, my stuff is based on the Java API (as it is far
> simpler to convert to Delphi).. are there any issues you can forsee with
> this version of the API?

I'm not aware of any issues -- it should work fine.  The only thing I can
think of is that the Java API doesn't (currently) support the zlib 
options, but as long as you don't need automatic data compression, that 
shouldn't matter.

> I'm assuming you use little-endian encoding -
> mainly because the test app returns the right numbers when sent flattened
> integers.

That's correct, everything in the muscle protocol is sent in little-endian 
Btw, you might want to take a look at the comment at the end of 
muscle/iogateway/MessageIOGateway.h, it shows a commented example
of a flattened Message dump.

> I have converted all the byteswapping routines from the C++ API -
> am I going to need to use any of these?

I guess if you ever run the code on big-endian hardware (does Delphi run
on Macs?) you would need to use at least B_HOST_TO_LENDIAN_*() and
B_LENDIAN_TO_HOST_*() -- otherwise the code running on the Macs
wouldn't be able to talk to PCs.

> Also, did anyone ever expand the
> Java API past the PortableMessage/MessageIOGateway/MessageTranceiver holy
> trinity? Are there any other IOGateway or protocols implemented? I guess I
> could grab the code for JavaShare and take a gander..

Not that I am aware of -- the Java code included in the muscle archive
is all the code I have, anyway.


Other related posts: