12345678910111213141516171819202122232425262728 |
- #ifndef CORE_BUFFER_H
- #define CORE_BUFFER_H
- #include <stddef.h>
- typedef struct {
- size_t size;
- size_t capacity;
- char* buffer;
- } CoreBuffer;
- void coreInitBuffer(CoreBuffer* b);
- void coreDestroyBuffer(CoreBuffer* b);
- void coreAddSizedBufferData(CoreBuffer* b, const void* data, size_t size);
- #define coreAddTypedBufferData(buffer, type, ...) \
- coreAddSizedBufferData(buffer, &(type){__VA_ARGS__}, sizeof(type))
- void coreClearBuffer(CoreBuffer* b);
- #ifdef IMPORT_CORE
- #define Buffer CoreBuffer
- #define initBuffer coreInitBuffer
- #define destroyBuffer coreDestroyBuffer
- #define addSizedBufferData coreAddSizedBufferData
- #define addTypedBufferData coreAddTypedBufferData
- #define clearBuffer coreClearBuffer
- #endif
- #endif
|