KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
PointerHashMapSet is a hash implemenetation of the PointerVectorSet. More...
#include <pointer_hash_map_set.h>
Public Member Functions | |
Life Cycle | |
PointerHashMapSet () | |
Default constructor. More... | |
template<class TInputIteratorType > | |
PointerHashMapSet (TInputIteratorType First, TInputIteratorType Last, size_type NewMaxBufferSize=1) | |
PointerHashMapSet (const PointerHashMapSet &rOther) | |
PointerHashMapSet (const ContainerType &rContainer) | |
~PointerHashMapSet () | |
Destructor. More... | |
Operators | |
PointerHashMapSet & | operator= (const PointerHashMapSet &rOther) |
TDataType & | operator[] (const key_type &Key) |
pointer_type & | operator() (const key_type &Key) |
bool | operator== (const PointerHashMapSet &r) const |
bool | operator!= (const PointerHashMapSet &r) const |
Operations | |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
ptr_iterator | ptr_begin () |
ptr_const_iterator | ptr_begin () const |
ptr_iterator | ptr_end () |
ptr_const_iterator | ptr_end () const |
reference | front () |
const_reference | front () const |
reference | back () |
const_reference | back () const |
size_type | size () const |
void | swap (PointerHashMapSet &rOther) |
template<class TOtherDataType > | |
iterator | insert (const TOtherDataType &rData) |
iterator | insert (TPointerType pData) |
template<class InputIterator > | |
void | insert (InputIterator First, InputIterator Last) |
iterator | erase (iterator pos) |
size_type | erase (key_type const &Key) |
iterator | erase (iterator first, iterator last) |
void | clear () |
iterator | find (const key_type &Key) |
const_iterator | find (const key_type &Key) const |
size_type | count (const key_type &Key) |
void | reserve (int reservedsize) |
int | capacity () |
Access | |
ContainerType & | GetContainer () |
const ContainerType & | GetContainer () const |
Inquiry | |
bool | empty () const |
Input and output | |
std::string | Info () const |
Turn back information as a string. More... | |
void | PrintInfo (std::ostream &rOStream) const |
Print information about this object. More... | |
void | PrintData (std::ostream &rOStream) const |
Print object's data. More... | |
Type Definitions | |
typedef TDataType | data_type |
Data type stores in this container. More... | |
typedef TDataType | value_type |
typedef TPointerType | pointer_type |
typedef TDataType & | reference |
typedef const TDataType & | const_reference |
typedef std::unordered_map< typename std::remove_reference< key_type >::type, TPointerType, THashType > | ContainerType |
typedef ContainerType::size_type | size_type |
typedef ContainerType::iterator | ptr_iterator |
typedef ContainerType::const_iterator | ptr_const_iterator |
typedef ContainerType::difference_type | difference_type |
typedef iterator_adaptor | iterator |
typedef const_iterator_adaptor | const_iterator |
decltype(std::declval< TGetKeyType >()(std::declval< TDataType >())) typedef | key_type |
Key type for searching in this container. More... | |
KRATOS_CLASS_POINTER_DEFINITION (PointerHashMapSet) | |
Pointer definition of PointerHashMapSet. More... | |
Serialization | |
class | Serializer |
PointerHashMapSet is a hash implemenetation of the PointerVectorSet.
This container is like a set but is built over a hash map in order to allow the key to be a part of the value. It is important to mention that the value is not constant and if the key inside the value changed outside results in inconsistence condition.
This Container does not free the memory by itself and relies on using of counted pointers or manual deleting.
typedef const_iterator_adaptor Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::const_iterator |
typedef const TDataType& Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::const_reference |
typedef std::unordered_map<typename std::remove_reference<key_type>::type, TPointerType, THashType> Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::ContainerType |
typedef TDataType Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::data_type |
Data type stores in this container.
typedef ContainerType::difference_type Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::difference_type |
typedef iterator_adaptor Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::iterator |
typedef TPointerType Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::pointer_type |
typedef ContainerType::const_iterator Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::ptr_const_iterator |
typedef ContainerType::iterator Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::ptr_iterator |
typedef TDataType& Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::reference |
typedef ContainerType::size_type Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::size_type |
typedef TDataType Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::value_type |
|
inline |
Default constructor.
|
inline |
|
inline |
|
inline |
|
inline |
Destructor.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Gives a reference to underly normal container.
|
inline |
Gives a constant reference to underly normal container.
|
inline |
Turn back information as a string.
|
inline |
|
inline |
|
inline |
Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::KRATOS_CLASS_POINTER_DEFINITION | ( | PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType > | ) |
Pointer definition of PointerHashMapSet.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Print object's data.
|
inline |
Print information about this object.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
decltype(std::declval<TGetKeyType>()(std::declval<TDataType>())) typedef Kratos::PointerHashMapSet< TDataType, THashType, TGetKeyType, TPointerType >::key_type |
Key type for searching in this container.