Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenlib/BLI_buffer.h
| Show First 20 Lines • Show All 77 Lines • ▼ Show 20 Lines | |||||
| void _bli_buffer_free(BLI_Buffer *buffer); | void _bli_buffer_free(BLI_Buffer *buffer); | ||||
| #define BLI_buffer_free(name_) \ | #define BLI_buffer_free(name_) \ | ||||
| { \ | { \ | ||||
| _bli_buffer_free(name_); \ | _bli_buffer_free(name_); \ | ||||
| (void)name_##user; /* ensure we free */ \ | (void)name_##user; /* ensure we free */ \ | ||||
| } \ | } \ | ||||
| (void)0 | (void)0 | ||||
| /* A buffer embedded in a struct. */ | |||||
| #define BLI_buffer_field_init(name_, type_) \ | |||||
| { \ | |||||
| memset(name_, 0, sizeof(*name_)); \ | |||||
| *(size_t *)&((name_)->elem_size) = sizeof(type_); /* ensure we free */ \ | |||||
| } \ | |||||
| (void)0 | |||||
| #define BLI_buffer_field_free(name_) _bli_buffer_free(name_) | |||||
| #endif /* __BLI_BUFFER_H__ */ | #endif /* __BLI_BUFFER_H__ */ | ||||