00001 00005 #ifndef RAZORBACK_BLOCK_H 00006 #define RAZORBACK_BLOCK_H 00007 #include <razorback/visibility.h> 00008 #include <razorback/types.h> 00009 00010 #ifdef __cplusplus 00011 extern "C" { 00012 #endif 00013 00017 SO_PUBLIC extern struct Block * Block_Create (void); 00018 00022 SO_PUBLIC extern void Block_Destroy (struct Block *p_pBlock); 00023 00028 SO_PUBLIC extern struct Block * Block_Clone (const struct Block *p_pSource); 00029 00034 SO_PUBLIC extern uint32_t Block_BinaryLength (struct Block *p_pBlock); 00035 00044 SO_PUBLIC extern bool 00045 Block_MetaData_Add(struct Block *block, uuid_t uuidName, uuid_t uuidType, uint8_t *data, uint32_t size); 00046 00052 SO_PUBLIC extern bool 00053 Block_MetaData_Add_FileName(struct Block *block, const char * fileName); 00054 #ifdef __cplusplus 00055 } 00056 #endif 00057 #endif // RAZORBACK_BLOCKID_H