Base class for a container of data arranged on a grid. More...
#include <GridContainers.h>
Public Types | |
| using | Datum_t = DATUM |
| type of contained datum More... | |
| using | Indexer_t = IXMAN |
| using | Grid_t = GridContainerBase< Datum_t, Indexer_t > |
| this type More... | |
| using | CellIndex_t = typename Indexer_t::CellIndex_t |
| type of index for direct access to the cell More... | |
| using | CellIndexOffset_t = typename Indexer_t::CellIndexOffset_t |
| type of difference between indices More... | |
| using | CellDimIndex_t = typename Indexer_t::CellDimIndex_t |
| type of difference between indices More... | |
| using | CellID_t = typename Indexer_t::CellID_t |
| type of cell coordinate (x, y, z) More... | |
| using | Cell_t = std::vector< Datum_t > |
| type of a single cell container More... | |
| using | Cells_t = std::vector< Cell_t > |
| type of container holding all cells More... | |
| using | const_iterator = typename Cells_t::const_iterator |
| type of iterator to all cells More... | |
Public Member Functions | |
| data (indices.size()) | |
| Indexer_t const & | indexManager () const |
| Returns the index manager of the grid. More... | |
Data structure | |
| size_t | size () const |
| Returns the total size of the container. More... | |
| bool | has (CellIndexOffset_t index) const |
| Returns whether the specified index is valid. More... | |
Data access | |
| CellIndex_t | index (CellID_t const &id) const |
| Return the index of the element from its cell coordinates (no check!) More... | |
| CellIndexOffset_t | indexOffset (CellID_t const &origin, CellID_t const &cellID) const |
| Returns the difference in index from two cells. More... | |
| Cell_t & | operator[] (CellID_t const &id) |
| Returns a reference to the specified cell. More... | |
| Cell_t const & | operator[] (CellID_t const &id) const |
| Returns a constant reference to the specified cell. More... | |
| Cell_t & | operator[] (CellIndex_t index) |
| Returns a reference to to the cell with specified index. More... | |
| Cell_t const & | operator[] (CellIndex_t index) const |
| Returns a constant reference to the cell with specified index. More... | |
Data insertion | |
| void | insert (CellID_t const &cellID, Datum_t const &elem) |
| Copies an element into the specified cell. More... | |
| void | insert (CellID_t const &cellID, Datum_t &&elem) |
| Moves an element into the specified cell. More... | |
| void | insert (CellIndex_t index, Datum_t const &elem) |
| Copies an element into the cell with the specified index. More... | |
| void | insert (CellIndex_t index, Datum_t &&elem) |
| Moves an element into the cell with the specified index. More... | |
Static Public Member Functions | |
| static constexpr unsigned int | dims () |
Public Attributes | |
| __pad0__: indices(dims) | |
| Constructor: specifies the size of the container and allocates it. More... | |
Protected Member Functions | |
| Cell_t & | cell (CellID_t const &cellID) |
| Returns a reference to the specified cell. More... | |
| Cell_t const & | cell (CellID_t const &cellID) const |
| Returns a constant reference to the specified cell. More... | |
Protected Attributes | |
| Indexer_t | indices |
| manager of the indices of the container More... | |
| Cells_t | data |
| organised collection of points More... | |
Base class for a container of data arranged on a grid.
| DATUM | type of datum to be contained |
| IXMAN | type of the grid index manager |
This is base class for GridContainer::D classes. It provides the full functionality, to which the other classes add some dimension-specific interface.
Definition at line 42 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::Cell_t = std::vector<Datum_t> |
type of a single cell container
Definition at line 66 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::CellDimIndex_t = typename Indexer_t::CellDimIndex_t |
type of difference between indices
Definition at line 60 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::CellID_t = typename Indexer_t::CellID_t |
type of cell coordinate (x, y, z)
Definition at line 63 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::CellIndex_t = typename Indexer_t::CellIndex_t |
type of index for direct access to the cell
Definition at line 54 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::CellIndexOffset_t = typename Indexer_t::CellIndexOffset_t |
type of difference between indices
Definition at line 57 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::Cells_t = std::vector<Cell_t> |
type of container holding all cells
Definition at line 69 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::const_iterator = typename Cells_t::const_iterator |
type of iterator to all cells
Definition at line 72 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::Datum_t = DATUM |
type of contained datum
Definition at line 45 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::Grid_t = GridContainerBase<Datum_t, Indexer_t> |
this type
Definition at line 48 of file GridContainers.h.
| using util::details::GridContainerBase< DATUM, IXMAN >::Indexer_t = IXMAN |
Definition at line 46 of file GridContainers.h.
|
inlineprotected |
Returns a reference to the specified cell.
Definition at line 147 of file GridContainers.h.
|
inlineprotected |
Returns a constant reference to the specified cell.
Definition at line 151 of file GridContainers.h.
|
inline |
Definition at line 77 of file GridContainers.h.
|
inlinestatic |
Definition at line 51 of file GridContainers.h.
|
inline |
Returns whether the specified index is valid.
Definition at line 87 of file GridContainers.h.
|
inline |
Return the index of the element from its cell coordinates (no check!)
Definition at line 95 of file GridContainers.h.
|
inline |
Returns the index manager of the grid.
Definition at line 138 of file GridContainers.h.
|
inline |
Returns the difference in index from two cells.
Definition at line 99 of file GridContainers.h.
|
inline |
Copies an element into the specified cell.
Definition at line 120 of file GridContainers.h.
|
inline |
Moves an element into the specified cell.
Definition at line 124 of file GridContainers.h.
|
inline |
Copies an element into the cell with the specified index.
Definition at line 128 of file GridContainers.h.
|
inline |
Moves an element into the cell with the specified index.
Definition at line 132 of file GridContainers.h.
|
inline |
Returns a reference to the specified cell.
Definition at line 103 of file GridContainers.h.
|
inline |
Returns a constant reference to the specified cell.
Definition at line 106 of file GridContainers.h.
|
inline |
Returns a reference to to the cell with specified index.
Definition at line 109 of file GridContainers.h.
|
inline |
Returns a constant reference to the cell with specified index.
Definition at line 112 of file GridContainers.h.
|
inline |
Returns the total size of the container.
Definition at line 84 of file GridContainers.h.
| util::details::GridContainerBase< DATUM, IXMAN >::__pad0__ |
Constructor: specifies the size of the container and allocates it.
Definition at line 77 of file GridContainers.h.
|
protected |
organised collection of points
Definition at line 144 of file GridContainers.h.
|
protected |
manager of the indices of the container
Definition at line 142 of file GridContainers.h.
1.8.5