OpenMD  2.5
Molecular Dynamics in the Open
OpenMD::TypeContainer< ElemType, SIZE > Class Template Reference

#include "utils/TypeContainer.hpp"

Public Types

typedef ElemType * ElemPtr
 
typedef std::vector< std::string > KeyType
 
typedef KeyType::iterator KeyTypeIterator
 
typedef std::pair< int, ElemPtrValueType
 
typedef std::map< KeyType, ValueTypeMapType
 
typedef std::map< KeyType, ValueType >::iterator MapTypeIterator
 
typedef MapType::value_type value_type
 
typedef std::vector< int > MutableValues
 

Public Member Functions

 TypeContainer ()
 
 ~TypeContainer ()
 
bool add (KeyType &keys, ElemPtr elem)
 
bool replace (KeyType &keys, ElemPtr elem)
 
ElemPtr find (KeyType &keys)
 
ElemPtr permutedFindSkippingFirstElement (KeyType &keys)
 
ElemPtr find (KeyType &keys, const std::string &wildCard)
 
unsigned int size ()
 
ElemPtr beginType (MapTypeIterator &i)
 
ElemPtr nextType (MapTypeIterator &i)
 
KeyType getKeys (MapTypeIterator &i)
 

Private Attributes

int index_
 
MapType data_
 

Detailed Description

template<class ElemType, int SIZE>
class OpenMD::TypeContainer< ElemType, SIZE >

Definition at line 64 of file TypeContainer.hpp.

Member Typedef Documentation

◆ ElemPtr

template<class ElemType, int SIZE>
typedef ElemType* OpenMD::TypeContainer< ElemType, SIZE >::ElemPtr

Definition at line 67 of file TypeContainer.hpp.

◆ KeyType

template<class ElemType, int SIZE>
typedef std::vector<std::string> OpenMD::TypeContainer< ElemType, SIZE >::KeyType

Definition at line 68 of file TypeContainer.hpp.

◆ KeyTypeIterator

template<class ElemType, int SIZE>
typedef KeyType::iterator OpenMD::TypeContainer< ElemType, SIZE >::KeyTypeIterator

Definition at line 69 of file TypeContainer.hpp.

◆ MapType

template<class ElemType, int SIZE>
typedef std::map<KeyType, ValueType> OpenMD::TypeContainer< ElemType, SIZE >::MapType

Definition at line 71 of file TypeContainer.hpp.

◆ MapTypeIterator

template<class ElemType, int SIZE>
typedef std::map<KeyType, ValueType>::iterator OpenMD::TypeContainer< ElemType, SIZE >::MapTypeIterator

Definition at line 72 of file TypeContainer.hpp.

◆ MutableValues

template<class ElemType, int SIZE>
typedef std::vector<int> OpenMD::TypeContainer< ElemType, SIZE >::MutableValues

Definition at line 74 of file TypeContainer.hpp.

◆ value_type

template<class ElemType, int SIZE>
typedef MapType::value_type OpenMD::TypeContainer< ElemType, SIZE >::value_type

Definition at line 73 of file TypeContainer.hpp.

◆ ValueType

template<class ElemType, int SIZE>
typedef std::pair<int, ElemPtr> OpenMD::TypeContainer< ElemType, SIZE >::ValueType

Definition at line 70 of file TypeContainer.hpp.

Constructor & Destructor Documentation

◆ TypeContainer()

template<class ElemType, int SIZE>
OpenMD::TypeContainer< ElemType, SIZE >::TypeContainer ( )
inline

Definition at line 76 of file TypeContainer.hpp.

◆ ~TypeContainer()

template<class ElemType, int SIZE>
OpenMD::TypeContainer< ElemType, SIZE >::~TypeContainer ( )
inline

Definition at line 78 of file TypeContainer.hpp.

Member Function Documentation

◆ add()

◆ beginType()

◆ find() [1/2]

◆ find() [2/2]

template<class ElemType, int SIZE>
ElemPtr OpenMD::TypeContainer< ElemType, SIZE >::find ( KeyType keys,
const std::string &  wildCard 
)
inline
Todo:

Definition at line 156 of file TypeContainer.hpp.

◆ getKeys()

◆ nextType()

◆ permutedFindSkippingFirstElement()

template<class ElemType, int SIZE>
ElemPtr OpenMD::TypeContainer< ElemType, SIZE >::permutedFindSkippingFirstElement ( KeyType keys)
inline

Definition at line 129 of file TypeContainer.hpp.

Referenced by OpenMD::ForceField::getInversionType().

◆ replace()

template<class ElemType, int SIZE>
bool OpenMD::TypeContainer< ElemType, SIZE >::replace ( KeyType keys,
ElemPtr  elem 
)
inline

Definition at line 92 of file TypeContainer.hpp.

Referenced by OpenMD::ForceField::replaceAtomType().

◆ size()

template<class ElemType, int SIZE>
unsigned int OpenMD::TypeContainer< ElemType, SIZE >::size ( )
inline

Member Data Documentation

◆ data_

◆ index_

template<class ElemType, int SIZE>
int OpenMD::TypeContainer< ElemType, SIZE >::index_
private

The documentation for this class was generated from the following file: