libUEMF
A portable library for reading and writing WMF, EMF and EMF+ files
|
Macros | |
#define | U_TEST_NOPX2(A, B) (A == (uint32_t) (B + 3)) |
A is Size16_4 (extracted and aligned), B = xb true if no bitmap associated with the structure, used with some BLT records. | |
#define | U_TEST_NOPXB(A, B) (A/2 == (uint32_t) (B + 3)) |
A is Size16_4 (extracted and aligned)*2, B = xb, true if no bitmap associated with the structure, used with some BLT records. | |
#define | U_WMRTYPE(A) (((U_METARECORD *)A)->iType) |
Get iType from U_WMR* record. | |
#define | U_WMRXB(A) (((U_METARECORD *)A)->xb) |
Get xb from U_WMR* record. | |
#define | U_WMR_XB_FROM_TYPE(A) ((uint8_t) (U_wmr_values(A)>>8)) |
Get xb from type value. | |
#define | U_U16(A) (*(uint16_t *)&A) |
interpret a 16 bit type as uint16_t. | |
#define | U_P16(A) ( (uint16_t *)&A) |
pass any 16 bit type as a pointer to a uint16_t. | |
#define | U_PP16(A) ( (uint16_t *) A) |
pass any pointer to a 16 bit type as a pointer to a uint16_t. | |
Because Size16_4 may not be aligned no tests should dereference it directly from a pointer. in NOPX tests cast causes uint8_t to promote to uint32_t, without it c++ compiler complains about comparison of int with unsigned int