CCL Version 3.3.1 
CIGI Class Library : Users' Guide
Global Controls

CCL Global Controls

To control variable sizing especially with 64 bit compilers, we have created a "CigiTypes.h". This has specific entries for "WIN32" and "__GNUC__". If you are using a compiler other than these or a 64 bit compiler, you may need to modify the "typedefs" in the correct section (usually the "#else" section) to force your compiler to generate the correct variable sizes. Specifically, Cigi_uint16 must be a 16 bit unsigned integer. Cigi_int16 must be a signed 16 bit signed integer. Cigi_uint32 must be a 32 bit unsigned integer. Cigi_in32 must be a signed 32 bit signed integer. Cigi_uint64 must be a 64 bit unsigned integer. Cigi_int64 must be a signed integer.

There are several global preprocessor controls for the CCL.

Table : CCL Preprocessor Definitions
Defined
Description
CIGI_LITTLE_ENDIAN
This control must be used/defined if the machine on which the CCL is being run is a little endian architecture. If not defined, big endian architecture is assumed.
CIGI_NO_EXCEPT
This control may be used/defined if the user does not wish to use the exception processing feature. By default, exceptions are thrown when an error condition is encountered.
CIGI_NO_BND_CHK
This control may be used/defined if the user does not wish to use the bounds checking feature for packet fields. Bounds checking is performed on set and get accessor methods for packet fields by default.
CIGI_NO_CALLBACK
This control may be used/defined if the user does not wish to use the Callback method of processing incoming messages. If the Callback method is not used, it is more efficient to disable it.
CIGI_NO_EVENT_PROCESSING
This control may be used/defined if the user does not wish to use the Event method of processing incoming messages. If the Event method is not used, it is more efficient to disable it.
CIGI_NO_SIGNAL_PROCESSING
This control may be used/defined if the user does not wish to use the Signal method of processing incoming messages. If the Signal method is not used, it is more efficient to disable it.
CCL_DLL
This control must be used/defined if the user is going to use the CCL as a dll on a windows system. If the system is not a windows system or the user is not using the CCL as a dll, this control must not be used/defined. If this control is not used/defined on a windows system, the CCL is built and used as a static library.
SourceForge LogoBoeing
******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ******** ********