--- libaitio/inc/aitio.h 2012/01/05 08:55:38 1.13.2.8 +++ libaitio/inc/aitio.h 2012/01/05 09:11:03 1.13.2.10 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.13.2.8 2012/01/05 08:55:38 misho Exp $ +* $Id: aitio.h,v 1.13.2.10 2012/01/05 09:11:03 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -148,10 +148,14 @@ typedef struct { #define AIT_TYPE(_vl) ((ait_type_t) (_vl)->val_type) #define AIT_LEN(_vl) (_vl)->val_len +#define AIT_RAW(_vl) (_vl)->val.net #define AIT_BLOB_CHUNKS(_vl, _n) (assert((_vl)), AIT_LEN((_vl)) / _n + (AIT_LEN((_vl)) % _n) ? 1 : 0) #define AIT_ISEMPTY(_vl) (assert((_vl)), AIT_TYPE((_vl)) == empty) +#define AIT_GET_LIKE(_vl, _type) (assert((_vl)), (_type) (_vl)->val.net) + #define AIT_GET_PTR(_vl) (assert((_vl)), assert(AIT_TYPE((_vl)) == ptr), (_vl)->val.ptr) +#define AIT_GET_PTR2(_vl) (assert((_vl)), (_vl)->val.ptr) #define AIT_GET_BUF(_vl) (assert((_vl)), assert(AIT_TYPE((_vl)) == buffer), (_vl)->val.buffer) #define AIT_GET_STR(_vl) (assert((_vl)), assert(AIT_TYPE((_vl)) == string), (_vl)->val.string) #define AIT_GET_BLOB(_vl) (assert((_vl)), assert(AIT_TYPE((_vl)) == blob), (_vl)->val.blob)