PtrListDictionary< T > Class Template Reference

Template dictionary class which manages the storage associated with it. More...

Inheritance diagram for PtrListDictionary< T >:
Collaboration diagram for PtrListDictionary< T >:

Public Member Functions

 PtrListDictionary (const label size)
 Construct given initial list size. More...
 
 PtrListDictionary (const PtrListDictionary &)
 Copy constructor. More...
 
 PtrListDictionary (PtrListDictionary &&)
 Move constructor. More...
 
template<class INew >
 PtrListDictionary (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 PtrListDictionary (Istream &)
 Construct from Istream. More...
 
label findIndex (const word &key) const
 Return the index of the given the key or -1 if not found. More...
 
List< labelfindIndices (const wordRe &key) const
 Return the indices for all matches. More...
 
void append (const word &key, T *)
 Append an element at the end of the list. More...
 
void append (const word &key, const autoPtr< T > &)
 Append an element at the end of the list. More...
 
void append (const word &key, const tmp< T > &)
 Append an element at the end of the list. More...
 
void append (T *)
 Append an element at the end of the list. More...
 
void append (const autoPtr< T > &)
 Append an element at the end of the list. More...
 
void append (const tmp< T > &)
 Append an element at the end of the list. More...
 
autoPtr< Tset (const label, const word &key, T *)
 Set element to pointer provided and return old element. More...
 
autoPtr< Tset (const label, const word &key, const autoPtr< T > &)
 Set element to autoPtr value provided and return old element. More...
 
autoPtr< Tset (const label, const word &key, const tmp< T > &)
 Set element to tmp value provided and return old element. More...
 
autoPtr< Tset (const label, T *)
 Set element to pointer provided and return old element. More...
 
autoPtr< Tset (const label, const autoPtr< T > &)
 Set element to autoPtr value provided and return old element. More...
 
autoPtr< Tset (const label, const tmp< T > &)
 Set element to tmp value provided and return old element. More...
 
template<class T2 >
UPtrListDictionary< T2 > convert ()
 Convert to list of different pointer type. More...
 
const Toperator[] (const word &key) const
 Find and return entry. More...
 
Toperator[] (const word &key)
 Find and return entry. More...
 
template<class T2 >
Foam::UPtrListDictionary< T2 > convert ()
 
- Public Member Functions inherited from DictionaryBase< PtrList< T >, T >
 DictionaryBase (const label size=128)
 Construct given initial table size. More...
 
 DictionaryBase (const DictionaryBase &)
 Copy constructor. More...
 
 DictionaryBase (DictionaryBase &&)
 Move constructor. More...
 
 DictionaryBase (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 DictionaryBase (Istream &)
 Construct from Istream using default Istream constructor class. More...
 
bool found (const word &) const
 Search DictionaryBase for given keyword. More...
 
const T * lookupPtr (const word &) const
 Find and return an entry if present, otherwise return nullptr. More...
 
T * lookupPtr (const word &)
 Find and return an entry if present, otherwise return nullptr. More...
 
const T * lookup (const word &) const
 Find and return entry. More...
 
T * lookup (const word &)
 Find and return entry. More...
 
wordList toc () const
 Return the table of contents. More...
 
wordList sortedToc () const
 Return the table of contents as a sorted list. More...
 
void insert (const word &, T *)
 Add at head of dictionary. More...
 
void append (const word &, T *)
 Add at tail of dictionary. More...
 
T * remove (const word &)
 Remove and return entry specified by keyword. More...
 
void clear ()
 Clear the dictionary. More...
 
void transfer (DictionaryBase< PtrList< T >, T > &)
 Transfer the contents of the argument into this DictionaryBase. More...
 
void operator= (const DictionaryBase &)
 
const T * operator[] (const word &key) const
 Find and return entry. More...
 
T * operator[] (const word &key)
 Find and return entry. More...
 
- Public Member Functions inherited from PtrList< T >
 PtrList ()
 Null Constructor. More...
 
 PtrList (const label)
 Construct with size specified. More...
 
 PtrList (const PtrList< T > &)
 Copy constructor. More...
 
template<class CloneArg >
 PtrList (const PtrList< T > &, const CloneArg &)
 Copy constructor with additional argument for clone. More...
 
 PtrList (PtrList< T > &&)
 Move constructor. More...
 
 PtrList (PtrList< T > &, bool reuse)
 Construct as copy or reuse as specified. More...
 
 PtrList (const SLPtrList< T > &)
 Construct as copy of SLPtrList<T> More...
 
template<class INew >
 PtrList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 PtrList (Istream &)
 Construct from Istream using default Istream constructor class. More...
 
 ~PtrList ()
 Destructor. More...
 
void setSize (const label)
 Reset size of PtrList. If extending the PtrList, new entries are. More...
 
void resize (const label)
 Alias for setSize(const label) More...
 
void shrink ()
 Shrink the allocated space to the number of elements used. More...
 
void clear ()
 Clear the PtrList, i.e. set size to zero deleting all the. More...
 
void append (T *)
 Append an element at the end of the list. More...
 
void append (const autoPtr< T > &)
 Append an element at the end of the list. More...
 
void append (const tmp< T > &)
 Append an element at the end of the list. More...
 
void transfer (PtrList< T > &)
 Transfer the contents of the argument PtrList into this PtrList. More...
 
bool set (const label) const
 Is element set. More...
 
autoPtr< Tset (const label, T *)
 Set element to given T* and return old element (can be nullptr) More...
 
autoPtr< Tset (const label, const autoPtr< T > &)
 Set element to given autoPtr<T> and return old element. More...
 
autoPtr< Tset (const label, const tmp< T > &)
 Set element to given tmp<T> and return old element. More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
void operator= (const PtrList< T > &)
 Assignment operator. More...
 
void operator= (PtrList< T > &&)
 Move assignment operator. More...
 
- Public Member Functions inherited from UPtrList< T >
 UPtrList ()
 Null Constructor. More...
 
 UPtrList (const label)
 Construct with size specified. More...
 
 UPtrList (UPtrList< T > &, bool reuse)
 Construct as copy or reuse as specified. More...
 
label size () const
 Return the number of elements in the UPtrList. More...
 
bool empty () const
 Return true if the UPtrList is empty (ie, size() is zero) More...
 
Tfirst ()
 Return reference to the first element of the list. More...
 
const Tfirst () const
 Return reference to first element of the list. More...
 
Tlast ()
 Return reference to the last element of the list. More...
 
const Tlast () const
 Return reference to the last element of the list. More...
 
void setSize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void resize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void clear ()
 Clear the UPtrList, i.e. set size to zero. More...
 
void append (T *)
 Append an element at the end of the list. More...
 
void transfer (UPtrList< T > &)
 Transfer the contents of the argument UPtrList into this. More...
 
bool set (const label) const
 Is element set. More...
 
Tset (const label, T *)
 Set element. Return old element (can be nullptr). More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
template<class T2 >
UPtrList< T2 > convert ()
 Convert to list of different pointer type. More...
 
template<class T2 >
UPtrList< const T2 > convert () const
 Convert to list of different pointer type. More...
 
const Toperator[] (const label) const
 Return element const reference. More...
 
Toperator[] (const label)
 Return element reference. More...
 
const Toperator() (const label) const
 Return element const pointer. More...
 
Toperator() (const label)
 Return element const pointer. More...
 
iterator begin ()
 Return an iterator to begin traversing the UPtrList. More...
 
iterator end ()
 Return an iterator to end traversing the UPtrList. More...
 
const_iterator cbegin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator cend () const
 Return an const_iterator to end traversing the UPtrList. More...
 
const_iterator begin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator end () const
 Return an const_iterator to end traversing the UPtrList. More...
 
template<class T2 >
Foam::UPtrList< T2 > convert ()
 
template<class T2 >
Foam::UPtrList< const T2 > convert () const
 

Friends

class UPtrListDictionary< T >
 Declare friendship with the UPtrListDictionary class. More...
 

Additional Inherited Members

- Public Types inherited from UPtrList< T >
typedef T value_type
 Type of values the UPtrList contains. More...
 
typedef Treference
 Type that can be used for storing into UPtrList::value_type objects. More...
 
typedef const Tconst_reference
 Type that can be used for storing into constant UPtrList::value_type. More...
 
- Protected Member Functions inherited from DictionaryBase< PtrList< T >, T >
void addEntries ()
 
- Protected Member Functions inherited from PtrList< T >
template<class INew >
void read (Istream &, const INew &inewt)
 Read from Istream using given Istream constructor class. More...
 
- Protected Attributes inherited from DictionaryBase< PtrList< T >, T >
HashTable< T * > hashedTs_
 HashTable of the entries held on the IDLListType for quick lookup. More...
 

Detailed Description

template<class T>
class Foam::PtrListDictionary< T >

Template dictionary class which manages the storage associated with it.

It is derived from DictionaryBase instantiated on the memory managed PtrList of <T> to provide ordered indexing in addition to the dictionary lookup.

Source files

Definition at line 57 of file PtrListDictionary.H.

Constructor & Destructor Documentation

◆ PtrListDictionary() [1/5]

PtrListDictionary ( const label  size)

Construct given initial list size.

Definition at line 32 of file PtrListDictionary.C.

References PtrList< T >::setSize(), and UPtrList< T >::size().

Here is the call graph for this function:

◆ PtrListDictionary() [2/5]

PtrListDictionary ( const PtrListDictionary< T > &  dict)

Copy constructor.

Definition at line 41 of file PtrListDictionary.C.

◆ PtrListDictionary() [3/5]

Move constructor.

Definition at line 48 of file PtrListDictionary.C.

◆ PtrListDictionary() [4/5]

PtrListDictionary ( Istream is,
const INew iNew 
)

Construct from Istream using given Istream constructor class.

Definition at line 56 of file PtrListDictionary.C.

◆ PtrListDictionary() [5/5]

Construct from Istream.

Definition at line 63 of file PtrListDictionary.C.

Member Function Documentation

◆ findIndex()

◆ findIndices()

Foam::List< Foam::label > findIndices ( const wordRe key) const

Return the indices for all matches.

of the given key regular expression

Definition at line 87 of file PtrListDictionary.C.

◆ append() [1/6]

void append ( const word key,
T ptr 
)
inline

Append an element at the end of the list.

Definition at line 120 of file PtrListDictionary.C.

Referenced by ZoneList< ZoneType, ZonesType, MeshType >::swap().

Here is the caller graph for this function:

◆ append() [2/6]

void append ( const word key,
const autoPtr< T > &  aptr 
)
inline

Append an element at the end of the list.

Definition at line 137 of file PtrListDictionary.C.

◆ append() [3/6]

void append ( const word key,
const tmp< T > &  t 
)
inline

Append an element at the end of the list.

Definition at line 148 of file PtrListDictionary.C.

◆ append() [4/6]

void append ( T ptr)
inline

Append an element at the end of the list.

using the element's keyword as the key

Definition at line 159 of file PtrListDictionary.C.

◆ append() [5/6]

void append ( const autoPtr< T > &  aptr)
inline

Append an element at the end of the list.

using the element's keyword as the key

Definition at line 166 of file PtrListDictionary.C.

◆ append() [6/6]

void append ( const tmp< T > &  t)
inline

Append an element at the end of the list.

using the element's keyword as the key

Definition at line 173 of file PtrListDictionary.C.

◆ set() [1/6]

Foam::autoPtr< T > set ( const label  i,
const word key,
T ptr 
)
inline

◆ set() [2/6]

Foam::autoPtr< T > set ( const label  i,
const word key,
const autoPtr< T > &  aptr 
)
inline

Set element to autoPtr value provided and return old element.

Definition at line 204 of file PtrListDictionary.C.

◆ set() [3/6]

Foam::autoPtr< T > set ( const label  i,
const word key,
const tmp< T > &  t 
)
inline

Set element to tmp value provided and return old element.

Definition at line 216 of file PtrListDictionary.C.

◆ set() [4/6]

Foam::autoPtr< T > set ( const label  i,
T ptr 
)
inline

Set element to pointer provided and return old element.

using the element's keyword as the key

Definition at line 228 of file PtrListDictionary.C.

◆ set() [5/6]

Foam::autoPtr< T > set ( const label  i,
const autoPtr< T > &  aptr 
)
inline

Set element to autoPtr value provided and return old element.

using the element's keyword as the key

Definition at line 239 of file PtrListDictionary.C.

◆ set() [6/6]

Foam::autoPtr< T > set ( const label  i,
const tmp< T > &  t 
)
inline

Set element to tmp value provided and return old element.

using the element's keyword as the key

Definition at line 250 of file PtrListDictionary.C.

◆ convert() [1/2]

UPtrListDictionary<T2> convert ( )

Convert to list of different pointer type.

◆ operator[]() [1/2]

const T& operator[] ( const word key) const
inline

Find and return entry.

Definition at line 158 of file PtrListDictionary.H.

References DictionaryBase< PtrList< T >, T >::operator, and Foam::T().

Referenced by faceZoneList::zonesFlipFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator[]() [2/2]

T& operator[] ( const word key)
inline

Find and return entry.

Definition at line 164 of file PtrListDictionary.H.

References DictionaryBase< PtrList< T >, T >::operator, and Foam::T().

Here is the call graph for this function:

◆ convert() [2/2]

Foam::UPtrListDictionary<T2> convert ( )

Definition at line 262 of file PtrListDictionary.C.

References forAll, and UPtrListDictionary< T >::set().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ UPtrListDictionary< T >

friend class UPtrListDictionary< T >
friend

Declare friendship with the UPtrListDictionary class.

Definition at line 1 of file PtrListDictionary.H.


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