This is all the stuff common to all SmallVectors.
Definition at line 121 of file RVec.hxx.
|
| SmallVectorBase ()=delete |
|
| SmallVectorBase (void *FirstEl, size_t TotalCapacity) |
|
void | grow_pod (void *FirstEl, size_t MinSize, size_t TSize) |
| This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication.
|
|
bool | Owns () const |
| If true, the RVec is in "memory adoption" mode, i.e. it is acting as a view on a memory buffer it does not own.
|
|
#include <ROOT/RVec.hxx>
◆ Size_T
◆ SmallVectorBase() [1/2]
ROOT::Internal::VecOps::SmallVectorBase::SmallVectorBase |
( |
| ) |
|
|
protecteddelete |
◆ SmallVectorBase() [2/2]
ROOT::Internal::VecOps::SmallVectorBase::SmallVectorBase |
( |
void * |
FirstEl, |
|
|
size_t |
TotalCapacity |
|
) |
| |
|
inlineprotected |
◆ capacity()
size_t ROOT::Internal::VecOps::SmallVectorBase::capacity |
( |
| ) |
const |
|
inlinenoexcept |
◆ empty()
◆ grow_pod()
void ROOT::Internal::VecOps::SmallVectorBase::grow_pod |
( |
void * |
FirstEl, |
|
|
size_t |
MinSize, |
|
|
size_t |
TSize |
|
) |
| |
|
protected |
This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication.
This function will report a fatal error if it cannot increase capacity.
Definition at line 51 of file RVec.cxx.
◆ Owns()
bool ROOT::Internal::VecOps::SmallVectorBase::Owns |
( |
| ) |
const |
|
inlineprotected |
If true, the RVec is in "memory adoption" mode, i.e. it is acting as a view on a memory buffer it does not own.
Definition at line 154 of file RVec.hxx.
◆ report_at_maximum_capacity()
void ROOT::Internal::VecOps::SmallVectorBase::report_at_maximum_capacity |
( |
| ) |
|
|
staticprotected |
Report that this vector is already at maximum capacity.
Throws std::length_error or calls report_fatal_error.
Definition at line 44 of file RVec.cxx.
◆ report_size_overflow()
void ROOT::Internal::VecOps::SmallVectorBase::report_size_overflow |
( |
size_t |
MinSize | ) |
|
|
staticprotected |
Report that MinSize doesn't fit into this vector's size type.
Throws std::length_error or calls report_fatal_error.
Definition at line 37 of file RVec.cxx.
◆ set_size()
void ROOT::Internal::VecOps::SmallVectorBase::set_size |
( |
size_t |
N | ) |
|
|
inline |
Set the array size to N
, which the current array must have enough capacity for.
This does not construct or destroy any elements in the vector.
Clients can use this in conjunction with capacity() to write past the end of the buffer when they know that more elements are available, and only update the size later. This avoids the cost of value initializing elements which will only be overwritten.
Definition at line 171 of file RVec.hxx.
◆ shrink_to_fit()
void ROOT::Internal::VecOps::SmallVectorBase::shrink_to_fit |
( |
| ) |
|
|
inline |
◆ size()
size_t ROOT::Internal::VecOps::SmallVectorBase::size |
( |
| ) |
const |
|
inline |
◆ SizeTypeMax()
static constexpr size_t ROOT::Internal::VecOps::SmallVectorBase::SizeTypeMax |
( |
| ) |
|
|
inlinestaticconstexprprotected |
The maximum value of the Size_T used.
Definition at line 136 of file RVec.hxx.
◆ fBeginX
void* ROOT::Internal::VecOps::SmallVectorBase::fBeginX |
|
protected |
◆ fCapacity
Size_T ROOT::Internal::VecOps::SmallVectorBase::fCapacity |
|
protected |
Always >= -1. fCapacity == -1 indicates the RVec is in "memory adoption" mode.
Definition at line 133 of file RVec.hxx.
◆ fSize
Size_T ROOT::Internal::VecOps::SmallVectorBase::fSize = 0 |
|
protected |
The documentation for this class was generated from the following files: