libMesh
|
This chunked_mapvector
templated class is intended to provide the asymptotic performance characteristics of a std::map with an interface more closely resembling that of a std::vector, for use with DistributedMesh.
More...
#include <chunked_mapvector.h>
Classes | |
class | const_reverse_veclike_iterator |
class | const_veclike_iterator |
class | veclike_iterator |
class | veclike_iterator_base |
Public Types | |
typedef std::map< index_t, std::array< Val, N > > | maptype |
typedef unsigned int | iter_t |
Public Member Functions | |
veclike_iterator | find (const index_t &k) |
const_veclike_iterator | find (const index_t &k) const |
Val & | operator[] (const index_t &k) |
Val | operator[] (const index_t &k) const |
void | erase (index_t i) |
veclike_iterator | erase (const veclike_iterator &pos) |
veclike_iterator | begin () |
const_veclike_iterator | begin () const |
veclike_iterator | end () |
const_veclike_iterator | end () const |
const_reverse_veclike_iterator | rbegin () const |
const_reverse_veclike_iterator | rend () const |
This chunked_mapvector
templated class is intended to provide the asymptotic performance characteristics of a std::map with an interface more closely resembling that of a std::vector, for use with DistributedMesh.
The intermediate array "chunks" give better constants on performance, for the typical sparsity structure we see on meshes in practice, where large swaths of ids are contiguous.
Definition at line 43 of file chunked_mapvector.h.
typedef unsigned int libMesh::chunked_mapvector< Val, index_t, N >::iter_t |
Definition at line 48 of file chunked_mapvector.h.
typedef std::map<index_t, std::array<Val,N> > libMesh::chunked_mapvector< Val, index_t, N >::maptype |
Definition at line 46 of file chunked_mapvector.h.
|
inline |
Definition at line 249 of file chunked_mapvector.h.
|
inline |
Definition at line 254 of file chunked_mapvector.h.
|
inline |
Definition at line 259 of file chunked_mapvector.h.
Referenced by libMesh::chunked_mapvector< Val, index_t, N >::find(), and libMesh::chunked_mapvector< Val, index_t, N >::operator[]().
|
inline |
Definition at line 264 of file chunked_mapvector.h.
|
inline |
Definition at line 214 of file chunked_mapvector.h.
|
inline |
Definition at line 228 of file chunked_mapvector.h.
|
inline |
Definition at line 179 of file chunked_mapvector.h.
References libMesh::chunked_mapvector< Val, index_t, N >::end().
|
inline |
Definition at line 191 of file chunked_mapvector.h.
References libMesh::chunked_mapvector< Val, index_t, N >::end().
|
inline |
Definition at line 203 of file chunked_mapvector.h.
|
inline |
Definition at line 208 of file chunked_mapvector.h.
References libMesh::chunked_mapvector< Val, index_t, N >::end().
|
inline |
Definition at line 269 of file chunked_mapvector.h.
|
inline |
Definition at line 274 of file chunked_mapvector.h.