class BamEnums

This class exists just to provide scoping for the enums shared by BamReader and BamWriter.

Inheritance diagram

Inheritance diagram of BamEnums

enum BamEndian

This defines an enumerated type used to represent the endianness of certain numeric values stored in a Bam file. It really has only two possible values, either BE_bigendian or BE_littleendian; but through a preprocessor trick we also add BE_native, which is the same numerically as whichever value the hardware supports natively.

enumerator BE_bigendian = 0
enumerator BE_littleendian = 1
enumerator BE_native = 1
enum BamObjectCode

This is the code written along with each object. It is used to control object scoping.

enumerator BOC_push = 0

Indicates an object definition, and will always be eventually paired with a BOC_pop (which does not).

enumerator BOC_pop = 1
enumerator BOC_adjunct = 2

Includes an object definition but does not push the level; it is associated with the current level.

enumerator BOC_remove = 3

Lists object IDs that have been deallocated on the sender end.

enumerator BOC_file_data = 4

May appear at any level and indicates the following datagram contains auxiliary file data that may be referenced by a later object.

enum BamTextureMode

This enum is used to control how textures are written to a bam stream.

enumerator BTM_unchanged = 0
enumerator BTM_fullpath = 1
enumerator BTM_relative = 2
enumerator BTM_basename = 3
enumerator BTM_rawdata = 4
BamEnums(void) = default
BamEnums(BamEnums const&) = default