Previous: Internals, Up: Internals


5.1 Data encoding

Data encoded in the bpipe format can only have one of the predefined datatypes (see Intrinsic Data Types). Because the data are transmitted in binary form, there are a number of incompatibilities which may arise when the data is read by a computer with a different CPU:

There is at least one standard for data translation which can accomodate these differences (Sun Microsystem's XDR), but it isn't presently used by bpipe. Eventually bpipe will probably use it.

Currently, bpipe assumes that the data are in IEEE floating point format or two's complement integer format, and that they follow big endian byte and word order. Datum alignment is assumed to be on a byte boundary divisible by the size of the datum. Padding between elements of data structures is added on a per machine-basis.