34 #ifndef SOMAIO_UTILITIES_ALLOCATEDVECTOR_H 35 #define SOMAIO_UTILITIES_ALLOCATEDVECTOR_H 82 size_type
size()
const;
84 const_iterator
begin()
const;
86 const_iterator
end()
const;
112 template<
typename T>
inline 115 : _allocatorContext( ac ), _size( n ),
116 _items( _allocatorContext.
allocate( _items, n ) )
120 template<
typename T>
inline 122 : _allocatorContext(), _size( other.
size() ),
123 _items( _allocatorContext.
allocate( _items, _size ) )
131 for( i =
begin(); i != e; ++i, ++j )
136 template<
typename T>
inline 139 : _allocatorContext( ac ), _size( other.
size() ),
140 _items( _allocatorContext.
allocate( _items, _size ) )
148 for( i =
begin(); i != e; ++i, ++j )
153 template<
typename T>
inline 158 ( buffer ), n * sizeof( T ),
161 _items( _allocatorContext.
allocate( _items, _size ) )
165 template<
typename T>
inline 171 template<
typename T>
inline 174 return _allocatorContext;
177 template<
typename T>
inline 183 _allocatorContext = ac;
184 _items = _allocatorContext.
allocate( _items, n );
187 template<
typename T>
inline 190 _allocatorContext.
deallocate( _items, _size );
195 template<
typename T>
inline 201 template<
typename T>
inline 209 template<
typename T>
inline 222 for( i =
begin(); i != e; ++i, ++j )
228 template<
typename T>
inline 234 template<
typename T>
inline 241 template<
typename T>
inline 244 return _items + _size;
247 template<
typename T>
inline 250 return _items + _size;
253 template<
typename T>
inline 259 template<
typename T>
inline
void allocate(size_type n, const AllocatorContext &ac)
void copy(const AllocatedVector &, const AllocatorContext &)
contrarily to operator = (), this copy function may use a different allocator, which may be the copie...
MappingMode allocatorType() const
Abstraction layer for various data sources (file, buffer, socket...).
A STL-like vector with a smart and slow allocation system for large data buffers. ...
AllocatedVector(size_type n, const AllocatorContext &ac)
const AllocatorContext & allocatorContext() const
T * allocate(T *&ptr, size_t n) const
return value is the same as modifiable input param ptr
void deallocate(T *ptr, size_t n) const
T & operator[](size_type i)
Determination of the allocation type depending of the buffer size to allocate and the disk format of ...
AllocatedVector & operator=(const AllocatedVector &)
The copy operator uses a "standard" AllocatorContext using memory allocation.