BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bdlma.h
Go to the documentation of this file.
1
/// @file bdlma.h
2
///
3
///
4
/// @defgroup bdlma Package bdlma
5
/// @brief Basic Development Library Memory Allocators (bdlma)
6
/// @addtogroup bdl
7
/// @{
8
/// @addtogroup bdlma
9
/// [bdlma]: group__bdlma.html
10
/// @{
11
///
12
/// # Purpose {#bdlma-purpose}
13
/// Provide allocators, pools, and other memory-management tools.
14
///
15
/// # Mnemonic {#bdlma-mnemonic}
16
/// Basic Development Library Memory Allocators (bdlma)
17
///
18
/// # Description {#bdlma-description}
19
/// The 'bdlma' package provides concrete allocators derived from the
20
/// 'bslma::Allocator' protocol.
21
///
22
/// ## Hierarchical Synopsis
23
///
24
/// The 'bdlma' package currently has 31 components having 8 levels of physical
25
/// dependency. The list below shows the hierarchical ordering of the components.
26
/// The order of components within each level is not architecturally significant,
27
/// just alphabetical.
28
/// @code
29
/// 8. bdlma_localbufferedobject
30
/// bdlma_multipoolallocator
31
///
32
/// 7. bdlma_aligningallocator
33
/// bdlma_localsequentialallocator
34
/// bdlma_multipool
35
///
36
/// 6. bdlma_bufferedsequentialallocator
37
///
38
/// 5. bdlma_bufferedsequentialpool
39
/// bdlma_concurrentmultipoolallocator
40
/// bdlma_sequentialallocator
41
///
42
/// 4. bdlma_concurrentfixedpool
43
/// bdlma_concurrentmultipool
44
/// bdlma_concurrentpoolallocator
45
/// bdlma_sequentialpool
46
///
47
/// 3. bdlma_buffermanager
48
/// bdlma_concurrentpool
49
/// bdlma_defaultdeleter
50
/// bdlma_factory
51
/// bdlma_pool
52
///
53
/// 2. bdlma_alignedallocator
54
/// bdlma_autoreleaser
55
/// bdlma_blocklist
56
/// bdlma_bufferimputil
57
/// bdlma_concurrentallocatoradapter
58
/// bdlma_countingallocator
59
/// bdlma_deleter
60
/// bdlma_guardingallocator
61
/// bdlma_heapbypassallocator
62
/// bdlma_infrequentdeleteblocklist
63
/// bdlma_managedallocator
64
/// bdlma_memoryblockdescriptor
65
///
66
/// 1. bdlma_localbufferedobject_cpp03 !PRIVATE!
67
/// @endcode
68
///
69
/// ## Component Synopsis
70
///
71
/// @ref bdlma_alignedallocator :
72
/// Provide a protocol for memory allocators that support alignment.
73
///
74
/// @ref bdlma_aligningallocator :
75
/// Provide an allocator-wrapper to allocate with a minimum alignment.
76
///
77
/// @ref bdlma_autoreleaser :
78
/// Release memory to a managed allocator or pool at destruction.
79
///
80
/// @ref bdlma_blocklist :
81
/// Provide allocation and management of a sequence of memory blocks.
82
///
83
/// @ref bdlma_bufferedsequentialallocator :
84
/// Provide an efficient managed allocator using an external buffer.
85
///
86
/// @ref bdlma_bufferedsequentialpool :
87
/// Provide sequential memory using an external buffer and a fallback.
88
///
89
/// @ref bdlma_bufferimputil :
90
/// Provide pure procedures for allocating memory from a buffer.
91
///
92
/// @ref bdlma_buffermanager :
93
/// Provide a memory manager that manages an external buffer.
94
///
95
/// @ref bdlma_concurrentallocatoradapter :
96
/// Provide a thread-enabled adapter for the allocator protocol.
97
///
98
/// @ref bdlma_concurrentfixedpool :
99
/// Provide thread-safe pool of limited # of blocks of uniform size.
100
///
101
/// @ref bdlma_concurrentmultipool :
102
/// Provide a memory manager to manage pools of varying block sizes.
103
///
104
/// @ref bdlma_concurrentmultipoolallocator :
105
/// Provide an allocator to manage pools of varying object sizes.
106
///
107
/// @ref bdlma_concurrentpool :
108
/// Provide thread-safe allocation of memory blocks of uniform size.
109
///
110
/// @ref bdlma_concurrentpoolallocator :
111
/// Provide thread-safe memory-pooling allocator of fixed-size blocks.
112
///
113
/// @ref bdlma_countingallocator :
114
/// Provide a memory allocator that counts allocated bytes.
115
///
116
/// @ref bdlma_defaultdeleter :
117
/// Provide a concrete default deleter w/optionally-supplied allocator.
118
///
119
/// @ref bdlma_deleter :
120
/// Provide a protocol for deleting objects of parameterized type.
121
///
122
/// @ref bdlma_factory :
123
/// Provide a protocol for creator/deleter of parameterized objects.
124
///
125
/// @ref bdlma_guardingallocator :
126
/// Provide a memory allocator that guards against buffer overruns.
127
///
128
/// @ref bdlma_heapbypassallocator :
129
/// Support memory allocation directly from virtual memory.
130
///
131
/// @ref bdlma_infrequentdeleteblocklist :
132
/// Provide allocation and management of infrequently deleted blocks.
133
///
134
/// @ref bdlma_localbufferedobject :
135
/// Provide easy way to create an object with a local arena allocator.
136
///
137
/// 'bdlma_localbufferedobject_cpp03': !PRIVATE!
138
/// Provide C++03 implementation for bdlma_localbufferedobject.h
139
///
140
/// @ref bdlma_localsequentialallocator :
141
/// Provide an efficient managed allocator using a local buffer.
142
///
143
/// @ref bdlma_managedallocator :
144
/// Provide a protocol for memory allocators that support `release`.
145
///
146
/// @ref bdlma_memoryblockdescriptor :
147
/// Provide a class describing a block of memory.
148
///
149
/// @ref bdlma_multipool :
150
/// Provide a memory manager to manage pools of varying block sizes.
151
///
152
/// @ref bdlma_multipoolallocator :
153
/// Provide a memory-pooling allocator of heterogeneous block sizes.
154
///
155
/// @ref bdlma_pool :
156
/// Provide efficient allocation of memory blocks of uniform size.
157
///
158
/// @ref bdlma_sequentialallocator :
159
/// Provide a managed allocator using dynamically-allocated buffers.
160
///
161
/// @ref bdlma_sequentialpool :
162
/// Provide sequential memory using dynamically-allocated buffers.
163
///
164
/// @}
165
/** @} */
doxygen_input
bde
groups
bdl
bdlma
doc
bdlma.h
Generated by
1.9.8