00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00028 #ifndef MQ_GET_H
00029 #define MQ_GET_H
00030
00031
00032
00033
00034
00035
00036
00038 #define MqGetError(expr,buf) \
00039 if ((expr) && MqErrorGetStatus(buf->error) == MQ_ERROR) goto error
00040
00042 MQ_EXTERN MQ_INT2 MqGet2F (
00043 MqBufferSP const buf,
00044 const MQ_SIZE size
00045 );
00046
00048 #define MqGet2(buf,size) (buf->type == _MQ_BIN || buf->type == _MQ_INT2 ? *buf->cur.I2 : MqGet2F(buf,size))
00049
00051 #define MqGet2Error(buf,size,ret) MqGetError((ret=MqGet2(buf,size))==MQ_NULL_2,buf)
00052
00054 MQ_EXTERN MQ_UINT2 MqGetU2 (
00055 MqBufferSP const buf,
00056 const MQ_SIZE size
00057 );
00058
00060 #define MqGetU2Error(buf,size,ret) MqGetError((ret=MqGetU2(buf,size))==MQ_NULL_U2,buf)
00061
00063 MQ_EXTERN MQ_INT4 MqGet4F (
00064 MqBufferSP const buf,
00065 const MQ_SIZE size
00066 );
00067
00069 #define MqGet4T(type,buf,size) (type == _MQ_BIN || type == _MQ_INT4 ? *buf->cur.I4 : MqGet4F(buf,size))
00070
00072 #define MqGet4(buf,size) MqGet4T(buf->type,buf,size)
00073
00075 #define MqGet4Error(buf,size,ret) MqGetError((ret=MqGet4(buf,size))==MQ_NULL_4,buf)
00076
00078 #define MqGet4TError(type,buf,size,ret) MqGetError((ret=MqGet4T(type,buf,size))==MQ_NULL_4,buf)
00079
00081 MQ_EXTERN MQ_INT8 MqGet8F (
00082 MqBufferSP const buf,
00083 const MQ_SIZE size
00084 );
00085
00087 #define MqGet8(buf,size) (buf->type == _MQ_BIN || buf->type == _MQ_INT8 ? *buf->cur.I8 : MqGet8F(buf,size))
00088
00090 #define MqGet8Error(buf,size,ret) MqGetError((ret=MqGet8(buf,size))==MQ_NULL_8,buf)
00091
00093 MQ_EXTERN MQ_FLT4 MqGetFF (
00094 MqBufferSP const buf,
00095 const MQ_SIZE size
00096 );
00097
00099 #define MqGetF(buf,size) (buf->type == _MQ_BIN || buf->type == _MQ_FLT4 ? *buf->cur.F : MqGetFF(buf,size))
00100
00102 #define MqGetFError(buf,size,ret) MqGetError((ret=MqGetF(buf,size))==MQ_NULL_F,buf)
00103
00105 MQ_EXTERN MQ_FLT8 MqGetDF (
00106 MqBufferSP const buf,
00107 const MQ_SIZE size
00108 );
00109
00111 #define MqGetD(buf,size) (buf->type == _MQ_BIN || buf->type == _MQ_FLT8 ? *buf->cur.D : MqGetDF(buf,size))
00112
00114 #define MqGetDError(buf,size,ret) MqGetError((ret=MqGetD(buf,size))==MQ_NULL_D,buf)
00115
00117 MQ_EXTERN MQ_PTR MqGetPF (
00118 MqBufferSP const buf,
00119 const MQ_SIZE size
00120 );
00121
00123 #define MqGetPT(type,buf,size) (type == _MQ_BIN || type == _MQ_PTR ? *buf->cur.P : MqGetPF(buf,size))
00124
00126 #define MqGetP(buf,size) MqGetPT(buf->type,buf,size)
00127
00129 #define MqGetPError(buf,size,ret) MqGetError((ret=MqGetP(buf,size))==MQ_NULL_P,buf)
00130
00132 #define MqGetPTError(type,buf,size,ret) MqGetError((ret=MqGetPT(type,buf,size))==MQ_NULL_P,buf)
00133
00136 MQ_EXTERN MQ_STR MqGetC (
00137 MqBufferSP const buf,
00138 const int size
00139 );
00140
00143 #define MqGetCError(buf,size,ret) MqGetError((ret=MqGetC(buf,size))==MQ_NULL_C,buf)
00144
00147 #endif