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.
|
WeakPointerVector is a container like stl vector but using a vector to store pointers to its data. More...
#include <weak_pointer_vector.h>
Public Member Functions | |
Life Cycle | |
WeakPointerVector () | |
Default constructor. More... | |
template<class TInputIteratorType > | |
WeakPointerVector (TInputIteratorType First, TInputIteratorType Last) | |
WeakPointerVector (const WeakPointerVector &rOther) | |
WeakPointerVector (const TContainerType &rContainer) | |
~WeakPointerVector () | |
Destructor. More... | |
Operators | |
WeakPointerVector & | operator= (const WeakPointerVector &rOther) |
TDataType & | operator[] (const size_type &i) |
TDataType const & | operator[] (const size_type &i) const |
pointer & | operator() (const size_type &i) |
const_pointer & | operator() (const size_type &i) const |
bool | operator== (const WeakPointerVector &r) const |
Operations | |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
reverse_iterator | rbegin () |
const_reverse_iterator | rbegin () const |
reverse_iterator | rend () |
const_reverse_iterator | rend () const |
ptr_iterator | ptr_begin () |
ptr_const_iterator | ptr_begin () const |
ptr_iterator | ptr_end () |
ptr_const_iterator | ptr_end () const |
ptr_reverse_iterator | ptr_rbegin () |
ptr_const_reverse_iterator | ptr_rbegin () const |
ptr_reverse_iterator | ptr_rend () |
ptr_const_reverse_iterator | ptr_rend () const |
reference | front () |
const_reference | front () const |
reference | back () |
const_reference | back () const |
size_type | size () const |
void | resize (size_type new_dim) const |
void | resize (size_type new_dim) |
size_type | max_size () const |
void | swap (WeakPointerVector &rOther) |
void | push_back (TPointerType x) |
void | push_back (const_reference x) |
iterator | insert (iterator Position, const TDataType &rData) |
iterator | insert (iterator Position, const TPointerType pData) |
template<class InputIterator > | |
void | insert (InputIterator First, InputIterator Last) |
iterator | erase (iterator pos) |
iterator | erase (iterator first, iterator last) |
void | clear () |
void | reserve (int dim) |
int | capacity () |
Access | |
TContainerType & | GetContainer () |
const TContainerType & | 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 TPointerType | value_type |
typedef TPointerType | pointer |
typedef const TPointerType | const_pointer |
typedef TDataType & | reference |
typedef const TDataType & | const_reference |
typedef TContainerType | ContainerType |
typedef WeakPointerVectorIterator< typename TContainerType::iterator, TDataType > | iterator |
typedef WeakPointerVectorIterator< typename TContainerType::const_iterator, TDataType > | const_iterator |
typedef WeakPointerVectorIterator< typename TContainerType::reverse_iterator, TDataType > | reverse_iterator |
typedef WeakPointerVectorIterator< typename TContainerType::const_reverse_iterator, TDataType > | const_reverse_iterator |
typedef TContainerType::size_type | size_type |
typedef TContainerType::iterator | ptr_iterator |
typedef TContainerType::const_iterator | ptr_const_iterator |
typedef TContainerType::reverse_iterator | ptr_reverse_iterator |
typedef TContainerType::const_reverse_iterator | ptr_const_reverse_iterator |
KRATOS_CLASS_POINTER_DEFINITION (WeakPointerVector) | |
Pointer definition of WeakPointerVector. More... | |
WeakPointerVector is a container like stl vector but using a vector to store pointers to its data.
WeakPointerVector is a container like stl vector but using a vector to store pointers its data. Many methods are copied from boost ptr_container library. There is modification to make it capable to work with shared pointers.
This Container unlike the boost one does not free the memory by itself and relies on using of counted pointers or manual deleting.
typedef WeakPointerVectorIterator<typename TContainerType::const_iterator, TDataType> Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::const_iterator |
typedef const TPointerType Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::const_pointer |
typedef const TDataType& Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::const_reference |
typedef WeakPointerVectorIterator<typename TContainerType::const_reverse_iterator, TDataType> Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::const_reverse_iterator |
typedef TContainerType Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::ContainerType |
typedef TDataType Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::data_type |
data type stores in this container.
typedef WeakPointerVectorIterator<typename TContainerType::iterator, TDataType> Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::iterator |
typedef TPointerType Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::pointer |
typedef TContainerType::const_iterator Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::ptr_const_iterator |
typedef TContainerType::const_reverse_iterator Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::ptr_const_reverse_iterator |
typedef TContainerType::iterator Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::ptr_iterator |
typedef TContainerType::reverse_iterator Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::ptr_reverse_iterator |
typedef TDataType& Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::reference |
typedef WeakPointerVectorIterator<typename TContainerType::reverse_iterator, TDataType> Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::reverse_iterator |
typedef TContainerType::size_type Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::size_type |
typedef TPointerType Kratos::WeakPointerVector< TDataType, TPointerType, TContainerType >::value_type |
|
inline |
Default constructor.
|
inline |
|
inline |
|
inlineexplicit |
|
inline |
Destructor.
|
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::WeakPointerVector< TDataType, TPointerType, TContainerType >::KRATOS_CLASS_POINTER_DEFINITION | ( | WeakPointerVector< TDataType, TPointerType, TContainerType > | ) |
Pointer definition of WeakPointerVector.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Print object's data.
|
inline |
Print information about this object.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |