_Eet_Data_Descriptor_Class Struct Reference

Instructs Eet about memory management for different needs under serialization and parse process. More...

#include <Eet.h>

Data Fields

int version
 ABI version.
const char * name
 Name of the user data type to be serialized.
int size
 Size in bytes of the user data type to be serialized.
struct { 
   Eet_Descriptor_Mem_Alloc_Callback   mem_alloc 
 how to allocate memory (usually malloc())
   Eet_Descriptor_Mem_Free_Callback   mem_free 
 how to free memory (usually free())
   Eet_Descriptor_Str_Alloc_Callback   str_alloc 
 how to allocate a string
   Eet_Descriptor_Str_Free_Callback   str_free 
 how to free a string
   Eet_Descriptor_List_Next_Callback   list_next 
 how to iterate to the next element of a list. More...
   Eet_Descriptor_List_Append_Callback   list_append 
 how to append data d to list which head node is l
   Eet_Descriptor_List_Data_Callback   list_data 
 retrieves the data from node l
   Eet_Descriptor_List_Free_Callback   list_free 
 free all the nodes from the list which head node is l
   Eet_Descriptor_Hash_Foreach_Callback   hash_foreach 
 iterates over all elements in the hash h in no specific order
   Eet_Descriptor_Hash_Add_Callback   hash_add 
 add a new data d with key k in hash h
   Eet_Descriptor_Hash_Free_Callback   hash_free 
 free all entries from the hash h
   Eet_Descriptor_Str_Direct_Alloc_Callback   str_direct_alloc 
 how to allocate a string directly from file backed/mmaped region pointed by str
   Eet_Descriptor_Str_Direct_Free_Callback   str_direct_free 
 how to free a string returned by str_direct_alloc
   Eet_Descriptor_Type_Get_Callback   type_get 
 get the type, as used in the union or variant mapping, that should be used to store the given data into the eet file.
   Eet_Descriptor_Type_Set_Callback   type_set 
 called when loading a mapped type with the given type used to describe the type in the descriptor
   Eet_Descriptor_Array_Alloc_Callback   array_alloc 
 how to allocate memory for array (usually malloc())
   Eet_Descriptor_Array_Free_Callback   array_free 
 how to free memory for array (usually free())
} func

Detailed Description

Instructs Eet about memory management for different needs under serialization and parse process.

The list and hash methods match the Eina API, so for a more detailed reference on them, look at the Eina_List and Eina_Hash documentation, respectively. For the most part these will be used with the standard Eina functions, so using EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET() and EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET() will set up everything accordingly.

Field Documentation

◆ version

◆ list_next

Eet_Descriptor_List_Next_Callback _Eet_Data_Descriptor_Class::list_next

how to iterate to the next element of a list.

Receives and should return the list node.

Referenced by eet_data_descriptor_new(), and eet_eina_stream_data_descriptor_class_set().