diff options
Diffstat (limited to 'source/blender/blenlib/BLI_buffer.h')
-rw-r--r-- | source/blender/blenlib/BLI_buffer.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_buffer.h b/source/blender/blenlib/BLI_buffer.h index 6fe1e9bb693..22d21262712 100644 --- a/source/blender/blenlib/BLI_buffer.h +++ b/source/blender/blenlib/BLI_buffer.h @@ -83,4 +83,14 @@ void _bli_buffer_free(BLI_Buffer *buffer); } \ (void)0 +/* A buffer embedded in a struct. Using memcpy is allowed until first resize. */ +#define BLI_buffer_field_init(name_, type_) \ + { \ + memset(name_, 0, sizeof(*name_)); \ + *(size_t *)&((name_)->elem_size) = sizeof(type_); \ + } \ + (void)0 + +#define BLI_buffer_field_free(name_) _bli_buffer_free(name_) + #endif /* __BLI_BUFFER_H__ */ |