In addition to the MQe items and their associated handles there are also the MQe types. These, like the handles, enable the end user to write platform independent code, and should be used throughout an application using the Websphere MQ Everyplace API. These types will be consistent across different platforms within the Websphere MQ Everyplace family. The types provided are:
MQEUINT64 Unsigned 64 bit integer MQEINT64 Signed 64 bit integer MQEUINT32 Unsigned 32 bit integer MQEINT32 Signed 32 bit integer MQEUINT16 Unsigned 16 bit integer MQEINT16 Signed 16 bit integer MQEUINT8 Unsigned 8 bit integer MQEINT8 Signed 8 bit integer MQEBOOL Boolean Enumeration - takes values MQE_TRUE and MQE_FALSE. MQEBYTE 1 byte char data type MQECHAR 1 byte unsigned char data type MQECHAR16 2 byte unsigned char data type MQECHAR32 4 byte unsigned char data type MQEFLOAT IEEE 754 Floating Point 32 bits MQEDOUBLE IEEE 754 Floating Point 64 bits MQEVOID Void datatype MQEHANDLE Generic Handle datatype
Although there are numerous items and types within Websphere MQ Everyplace, with just a few of them it is possible to use most of the APIs required to administer Websphere MQ Everyplace, create a queue manager, queues and connection definitions and to then put and get messages.
Note that MQE_TRUE is defined to be 1. Therefore, testing flag==MQE_TRUE will not be guaranteed to evaluate to true if flag evaluates to any other (usually valid "true") value, such as 2.