Added a new macro for adding variable arrays of basic types.
EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY SVN revision: 69745
This commit is contained in:
parent
74f07c6893
commit
7c55a30d70
|
@ -573,3 +573,9 @@
|
||||||
|
|
||||||
* add eet_dictionary_count.
|
* add eet_dictionary_count.
|
||||||
* add "eet -t FILE.EET".
|
* add "eet -t FILE.EET".
|
||||||
|
|
||||||
|
2012-03-29 David Seikel (onefang)
|
||||||
|
|
||||||
|
* Added a new macro for adding variable arrays of basic types.
|
||||||
|
EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@ Additions:
|
||||||
* eet_alias_get API
|
* eet_alias_get API
|
||||||
* eet_data_xattr_cipher_get and eet_data_xattr_cipher_set APIs
|
* eet_data_xattr_cipher_get and eet_data_xattr_cipher_set APIs
|
||||||
* EET_DATA_DESCRIPTOR_ADD_BASIC_ARRAY API
|
* EET_DATA_DESCRIPTOR_ADD_BASIC_ARRAY API
|
||||||
|
* EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY API
|
||||||
|
|
||||||
Fixes:
|
Fixes:
|
||||||
|
|
||||||
|
|
|
@ -3156,6 +3156,38 @@ eet_data_descriptor_encode(Eet_Data_Descriptor *edd,
|
||||||
NULL, NULL); \
|
NULL, NULL); \
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a variable array of basic data elements to a data descriptor.
|
||||||
|
* @param edd The data descriptor to add the type to.
|
||||||
|
* @param struct_type The type of the struct.
|
||||||
|
* @param name The string name to use to encode/decode this member
|
||||||
|
* (must be a constant global and never change).
|
||||||
|
* @param member The struct member itself to be encoded.
|
||||||
|
* @param type The type of the member to encode.
|
||||||
|
*
|
||||||
|
* This macro lets you easily add a variable size array of basic data
|
||||||
|
* types. All the parameters are the same as for
|
||||||
|
* EET_DATA_DESCRIPTOR_ADD_BASIC(). This assumes you have
|
||||||
|
* a struct member (of type EET_T_INT) called member_count (note the
|
||||||
|
* _count appended to the member) that holds the number of items in
|
||||||
|
* the array. This array will be allocated separately to the struct it
|
||||||
|
* is in.
|
||||||
|
*
|
||||||
|
* @since 1.5.0
|
||||||
|
* @ingroup Eet_Data_Group
|
||||||
|
*/
|
||||||
|
#define EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY(edd, struct_type, name, member, type) \
|
||||||
|
do { \
|
||||||
|
struct_type ___ett; \
|
||||||
|
eet_data_descriptor_element_add(edd, name, type, EET_G_VAR_ARRAY, \
|
||||||
|
(char *)(& (___ett.member)) - \
|
||||||
|
(char *)(& (___ett)), \
|
||||||
|
(char *)(& (___ett.member ## _count)) - \
|
||||||
|
(char *)(& (___ett)), \
|
||||||
|
NULL, \
|
||||||
|
NULL); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a fixed size array type to a data descriptor
|
* Add a fixed size array type to a data descriptor
|
||||||
* @param edd The data descriptor to add the type to.
|
* @param edd The data descriptor to add the type to.
|
||||||
|
|
Loading…
Reference in New Issue