Point Cloud Library (PCL) 1.13.0
Loading...
Searching...
No Matches
opennurbs_fsp_defs.h
1/* $NoKeywords: $ */
2/*
3//
4// Copyright (c) 1993-2012 Robert McNeel & Associates. All rights reserved.
5// OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert
6// McNeel & Associates.
7//
8// THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
9// ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF
10// MERCHANTABILITY ARE HEREBY DISCLAIMED.
11//
12// For complete openNURBS copyright information see <http://www.opennurbs.org>.
13//
14////////////////////////////////////////////////////////////////
15*/
16
17#if !defined(ON_FSP_DEFS_INC_)
18#define ON_FSP_DEFS_INC_
19
20template <class T>
24
25template <class T>
30
31template <class T>
33 std::size_t element_count_estimate,
34 std::size_t block_element_count
35 )
36{
37 return ON_FixedSizePool::Create(sizeof(T),element_count_estimate,block_element_count);
38}
39
40template <class T>
45
46template <class T>
51
52template <class T>
57
58template <class T>
63
64template <class T>
69
70template <class T>
75
76template <class T>
81
82template <class T>
87
88template <class T>
93
94template <class T>
95T* ON_SimpleFixedSizePool<T>::FirstBlock( std::size_t* block_element_count )
96{
97 return (T *)ON_FixedSizePool::FirstBlock(block_element_count);
98}
99
100template <class T>
101T* ON_SimpleFixedSizePool<T>::NextBlock( std::size_t* block_element_count )
102{
103 return (T *)ON_FixedSizePool::NextBlock(block_element_count);
104}
105
106template <class T>
107T* ON_SimpleFixedSizePool<T>::Element(std::size_t element_index) const
108{
109 return (T *)ON_FixedSizePool::Element(element_index);
110}
111
112template <class T>
113void ON_SimpleFixedSizePool<T>::SetHeap( ON_MEMORY_POOL* heap )
114{
116}
117
118template <class T>
120{
121 return ON_FixedSizePool::Heap();
122}
123
124template <class T>
129
130#endif
void * NextElement()
bool Create(std::size_t sizeof_element, std::size_t element_count_estimate, std::size_t block_element_capacity)
ON_MEMORY_POOL * Heap()
void ReturnElement(void *p)
std::size_t TotalElementCount() const
void SetHeap(ON_MEMORY_POOL *heap)
void * FirstBlock(std::size_t *block_element_count)
std::size_t ActiveElementCount() const
void * NextBlock(std::size_t *block_element_count)
std::size_t SizeofElement() const
void * Element(std::size_t element_index) const
void * FirstElement()
void * AllocateElement()
void EmergencyDestroy()
T * NextBlock(std::size_t *block_element_count)
T * Element(std::size_t element_index) const
T * FirstBlock(std::size_t *block_element_count)
std::size_t TotalElementCount() const
void SetHeap(ON_MEMORY_POOL *heap)
std::size_t ActiveElementCount() const
std::size_t SizeofElement() const
bool Create(std::size_t element_count_estimate, std::size_t block_element_count)