16 #if !defined(OPENNURBS_FSP_INC_) 17 #define OPENNURBS_FSP_INC_ 25 #if defined(ON_HAS_RVALUEREF) 58 size_t sizeof_element,
59 size_t element_count_estimate,
60 size_t block_element_capacity
67 size_t SizeofElement()
const;
73 void* AllocateElement();
79 void* AllocateDirtyElement();
115 void ReturnElement(
void* p);
136 size_t ActiveElementCount()
const;
142 size_t TotalElementCount()
const;
195 const void* element_pointer
216 bool IsValid()
const;
225 void* m_al_element_stack;
229 void* m_al_element_array;
231 size_t m_sizeof_element;
232 size_t m_block_element_count;
233 size_t m_active_element_count;
234 size_t m_total_element_count;
238 size_t BlockElementCapacity(
const void* block )
const;
241 size_t BlockElementCount(
const void* block )
const;
297 void* FirstElement();
298 void* FirstElement(
size_t element_index );
328 void* CurrentElement()
const;
381 void* FirstBlock(
size_t* block_element_count );
400 void* NextBlock(
size_t* block_element_count );
440 size_t element_count_estimate,
441 size_t block_element_count
448 size_t SizeofElement()
const;
454 T* AllocateElement();
490 void ReturnElement(T* p);
511 size_t ActiveElementCount()
const;
517 size_t TotalElementCount()
const;
541 T* Element(
size_t element_index)
const;
598 T* FirstElement(
size_t element_index );
681 T* FirstBlock(
size_t* block_element_count );
700 T* NextBlock(
size_t* block_element_count );
710 #include "opennurbs_fsp_defs.h" Definition: opennurbs_fsp.h:19
Definition: opennurbs_fsp.h:411
Definition: opennurbs_fsp.h:548
Definition: opennurbs_fsp.h:239
bool Create(size_t sizeof_element, size_t element_count_estimate, size_t block_element_capacity)
Create a fixed size memory pool.