Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
FixedList< T, Size > Class Template Reference

A 1D vector of objects of type <T> with a fixed size <Size>. More...

Inheritance diagram for FixedList< T, Size >:
Inheritance graph
[legend]

Classes

class  Hash
 Hashing function class. More...
 

Public Types

typedef T value_type
 Type of values the FixedList contains. More...
 
typedef Treference
 Type that can be used for storing into. More...
 
typedef const Tconst_reference
 Type that can be used for storing into. More...
 
typedef label difference_type
 The type that can represent the difference between any two. More...
 
typedef label size_type
 The type that can represent the size of a FixedList. More...
 
typedef Titerator
 Random access iterator for traversing FixedList. More...
 
typedef const Tconst_iterator
 Random access iterator for traversing FixedList. More...
 
typedef Treverse_iterator
 Reverse iterator for reverse traversal of FixedList. More...
 
typedef const Tconst_reverse_iterator
 Reverse iterator for reverse traversal of constant FixedList. More...
 

Public Member Functions

 FixedList ()
 Null constructor. More...
 
 FixedList (const T v[Size])
 Construct from C-array. More...
 
 FixedList (const T &)
 Construct from value. More...
 
 FixedList (const UList< T > &)
 Construct from UList. More...
 
 FixedList (const SLList< T > &)
 Construct from SLList. More...
 
 FixedList (const FixedList< T, Size > &)
 Copy constructor. More...
 
 FixedList (Istream &)
 Construct from Istream. More...
 
autoPtr< FixedList< T, Size > > clone () const
 Clone. More...
 
label fcIndex (const label i) const
 Return the forward circular index, i.e. the next index. More...
 
label rcIndex (const label i) const
 Return the reverse circular index, i.e. the previous index. More...
 
const Tcdata () const
 Return a const pointer to the first data element,. More...
 
Tdata ()
 Return a pointer to the first data element,. More...
 
Tfirst ()
 Return the first element of the list. More...
 
const Tfirst () const
 Return first element of the list. More...
 
Tlast ()
 Return the last element of the list. More...
 
const Tlast () const
 Return the last element of the list. More...
 
void checkStart (const label start) const
 Check start is within valid range (0 ... size-1). More...
 
void checkSize (const label size) const
 Check size is within valid range (0 ... size). More...
 
void checkIndex (const label i) const
 Check index i is within valid range (0 ... size-1). More...
 
void resize (const label)
 Dummy resize function. More...
 
void setSize (const label)
 Dummy setSize function. More...
 
void transfer (const FixedList< T, Size > &)
 Copy (not transfer) the argument contents. More...
 
void writeEntry (Ostream &) const
 Write the FixedList as a dictionary entry. More...
 
void writeEntry (const word &keyword, Ostream &) const
 Write the FixedList as a dictionary entry with keyword. More...
 
Toperator[] (const label)
 Return element of FixedList. More...
 
const Toperator[] (const label) const
 Return element of constant FixedList. More...
 
void operator= (const T v[Size])
 Assignment from array operator. Takes linear time. More...
 
void operator= (const UList< T > &)
 Assignment from UList operator. Takes linear time. More...
 
void operator= (const SLList< T > &)
 Assignment from SLList operator. Takes linear time. More...
 
void operator= (const T &)
 Assignment of all entries to the given value. More...
 
iterator begin ()
 Return an iterator to begin traversing the FixedList. More...
 
iterator end ()
 Return an iterator to end traversing the FixedList. More...
 
const_iterator cbegin () const
 Return const_iterator to begin traversing the constant FixedList. More...
 
const_iterator cend () const
 Return const_iterator to end traversing the constant FixedList. More...
 
const_iterator begin () const
 Return const_iterator to begin traversing the constant FixedList. More...
 
const_iterator end () const
 Return const_iterator to end traversing the constant FixedList. More...
 
reverse_iterator rbegin ()
 Return reverse_iterator to begin reverse traversing the FixedList. More...
 
reverse_iterator rend ()
 Return reverse_iterator to end reverse traversing the FixedList. More...
 
const_reverse_iterator crbegin () const
 Return const_reverse_iterator to begin reverse traversing FixedList. More...
 
const_reverse_iterator crend () const
 Return const_reverse_iterator to end reverse traversing FixedList. More...
 
const_reverse_iterator rbegin () const
 Return const_reverse_iterator to begin reverse traversing FixedList. More...
 
const_reverse_iterator rend () const
 Return const_reverse_iterator to end reverse traversing FixedList. More...
 
label size () const
 Return the number of elements in the FixedList. More...
 
label max_size () const
 Return size of the largest possible FixedList. More...
 
bool empty () const
 Return true if the FixedList is empty (ie, size() is zero). More...
 
void swap (FixedList< T, Size > &)
 Swap two FixedLists of the same type in constant time. More...
 
bool operator== (const FixedList< T, Size > &) const
 Equality operation on FixedLists of the same type. More...
 
bool operator!= (const FixedList< T, Size > &) const
 The opposite of the equality operation. Takes linear time. More...
 
bool operator< (const FixedList< T, Size > &) const
 Compare two FixedLists lexicographically. Takes linear time. More...
 
bool operator> (const FixedList< T, Size > &) const
 Compare two FixedLists lexicographically. Takes linear time. More...
 
bool operator<= (const FixedList< T, Size > &) const
 Return true if !(a > b). Takes linear time. More...
 
bool operator>= (const FixedList< T, Size > &) const
 Return true if !(a < b). Takes linear time. More...
 

Static Public Member Functions

static const FixedList< T, Size > & null ()
 Return a null FixedList. More...
 

Friends

Istreamoperator>> (Istream &, FixedList< T, Size > &)
 Read List from Istream, discarding contents of existing List. More...
 
Ostreamoperator (Ostream &, const FixedList< T, Size > &)
 

Detailed Description

template<class T, unsigned Size>
class Foam::FixedList< T, Size >

A 1D vector of objects of type <T> with a fixed size <Size>.

Source files

Definition at line 53 of file FixedList.H.

Member Typedef Documentation

typedef T value_type

Type of values the FixedList contains.

Definition at line 228 of file FixedList.H.

typedef T& reference

Type that can be used for storing into.

FixedList::value_type objects.

Definition at line 232 of file FixedList.H.

typedef const T& const_reference

Type that can be used for storing into.

constant FixedList::value_type objects

Definition at line 236 of file FixedList.H.

The type that can represent the difference between any two.

FixedList iterator objects.

Definition at line 240 of file FixedList.H.

typedef label size_type

The type that can represent the size of a FixedList.

Definition at line 243 of file FixedList.H.

typedef T* iterator

Random access iterator for traversing FixedList.

Definition at line 249 of file FixedList.H.

typedef const T* const_iterator

Random access iterator for traversing FixedList.

Definition at line 261 of file FixedList.H.

typedef T* reverse_iterator

Reverse iterator for reverse traversal of FixedList.

Definition at line 279 of file FixedList.H.

typedef const T* const_reverse_iterator

Reverse iterator for reverse traversal of constant FixedList.

Definition at line 291 of file FixedList.H.

Constructor & Destructor Documentation

FixedList ( )
inline

Null constructor.

Definition at line 33 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

FixedList ( const T  v[Size])
inlineexplicit

Construct from C-array.

Definition at line 38 of file FixedListI.H.

FixedList ( const T t)
inlineexplicit

Construct from value.

Definition at line 48 of file FixedListI.H.

FixedList ( const UList< T > &  lst)
inlineexplicit

Construct from UList.

Definition at line 58 of file FixedListI.H.

References UList< T >::size().

Here is the call graph for this function:

FixedList ( const SLList< T > &  lst)
inlineexplicit

Construct from SLList.

Definition at line 70 of file FixedListI.H.

References LList< SLListBase, T >::begin(), LList< SLListBase, T >::end(), and SLListBase::size().

Here is the call graph for this function:

FixedList ( const FixedList< T, Size > &  lst)
inline

Copy constructor.

Definition at line 88 of file FixedListI.H.

FixedList ( Istream is)

Member Function Documentation

const Foam::FixedList< T, Size > & null ( )
inlinestatic

Return a null FixedList.

Definition at line 108 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

Foam::autoPtr< Foam::FixedList< T, Size > > clone ( ) const
inline

Clone.

Definition at line 99 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

Foam::label fcIndex ( const label  i) const
inline

Return the forward circular index, i.e. the next index.

which returns to the first at the end of the list

Definition at line 115 of file FixedListI.H.

Referenced by triSurfaceTools::calcInterpolationWeights(), FixedList< T, Size >::Hash< HashT >::Hash(), wallBoundedParticle::isTriAlongTrack(), NamedEnum< Enum, nEnum >::names(), tetrahedron< Point, PointRef >::storeOp::operator()(), and wallBoundedParticle::trackFaceTri().

Here is the caller graph for this function:

Foam::label rcIndex ( const label  i) const
inline

Return the reverse circular index, i.e. the previous index.

which returns to the last at the beginning of the list

Definition at line 122 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

const T * cdata ( ) const
inline

Return a const pointer to the first data element,.

similar to the STL front() method and the string::data() method This can be used (with caution) when interfacing with C code.

Definition at line 192 of file FixedListI.H.

References T.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash(), and FixedList< T, Size >::writeEntry().

Here is the caller graph for this function:

T * data ( )
inline

Return a pointer to the first data element,.

similar to the STL front() method and the string::data() method This can be used (with caution) when interfacing with C code.

Definition at line 200 of file FixedListI.H.

Referenced by FixedList< T, Size >::FixedList(), and FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

T & first ( )
inline

Return the first element of the list.

Definition at line 207 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash(), and LangmuirHinshelwoodReactionRate::write().

Here is the caller graph for this function:

const T & first ( ) const
inline

Return first element of the list.

Definition at line 214 of file FixedListI.H.

T & last ( )
inline

Return the last element of the list.

Definition at line 221 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

const T & last ( ) const
inline

Return the last element of the list.

Definition at line 228 of file FixedListI.H.

void checkStart ( const label  start) const
inline

Check start is within valid range (0 ... size-1).

Definition at line 129 of file FixedListI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the call graph for this function:

Here is the caller graph for this function:

void checkSize ( const label  size) const
inline

Check size is within valid range (0 ... size).

Definition at line 141 of file FixedListI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by FixedList< T, Size >::FixedList(), and FixedList< T, Size >::Hash< HashT >::Hash().

Here is the call graph for this function:

Here is the caller graph for this function:

void checkIndex ( const label  i) const
inline

Check index i is within valid range (0 ... size-1).

Definition at line 153 of file FixedListI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the call graph for this function:

Here is the caller graph for this function:

void resize ( const label  s)
inline

Dummy resize function.

needed to make FixedList consistent with List

Definition at line 165 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

void setSize ( const label  s)
inline

Dummy setSize function.

needed to make FixedList consistent with List

Definition at line 173 of file FixedListI.H.

Referenced by triSurfaceTools::collapseEdges(), meshRefinement::createZoneBaffles(), FixedList< T, Size >::Hash< HashT >::Hash(), and triSurfaceTools::mergePoints().

Here is the caller graph for this function:

void transfer ( const FixedList< T, Size > &  lst)
inline

Copy (not transfer) the argument contents.

needed to make FixedList consistent with List

Definition at line 181 of file FixedListI.H.

References T.

Referenced by snappySnapDriver::doSnap(), edgeSurface::edgeSurface(), FixedList< T, Size >::Hash< HashT >::Hash(), and NASedgeFormat::read().

Here is the caller graph for this function:

void writeEntry ( Ostream os) const

Write the FixedList as a dictionary entry.

Definition at line 137 of file FixedListIO.C.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

void writeEntry ( const word keyword,
Ostream os 
) const

Write the FixedList as a dictionary entry with keyword.

Definition at line 157 of file FixedListIO.C.

References FixedList< T, Size >::cdata(), IOstream::check(), Foam::endl(), forAll, IOstream::format(), Foam::nl, FixedList< T, Size >::size(), T, Ostream::write(), and Ostream::writeKeyword().

Here is the call graph for this function:

T & operator[] ( const label  i)
inline

Return element of FixedList.

Definition at line 237 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

const T & operator[] ( const label  i) const
inline

Return element of constant FixedList.

Definition at line 247 of file FixedListI.H.

void operator= ( const T  v[Size])
inline

Assignment from array operator. Takes linear time.

Definition at line 257 of file FixedListI.H.

Referenced by FixedList< T, Size >::Hash< HashT >::Hash().

Here is the caller graph for this function:

void operator= ( const UList< T > &  lst)
inline

Assignment from UList operator. Takes linear time.

Definition at line 266 of file FixedListI.H.

References UList< T >::size().

Here is the call graph for this function:

void operator= ( const SLList< T > &  lst)
inline

Assignment from SLList operator. Takes linear time.

Definition at line 277 of file FixedListI.H.

References LList< SLListBase, T >::begin(), LList< SLListBase, T >::end(), and SLListBase::size().

Here is the call graph for this function:

void operator= ( const T t)
inline

Assignment of all entries to the given value.

Definition at line 294 of file FixedListI.H.

Foam::FixedList< T, Size >::iterator begin ( )
inline

Return an iterator to begin traversing the FixedList.

Definition at line 307 of file FixedListI.H.

Foam::FixedList< T, Size >::iterator end ( )
inline

Return an iterator to end traversing the FixedList.

Definition at line 331 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator cbegin ( ) const
inline

Return const_iterator to begin traversing the constant FixedList.

Definition at line 323 of file FixedListI.H.

Referenced by FixedList< T, Size >::operator<().

Here is the caller graph for this function:

Foam::FixedList< T, Size >::const_iterator cend ( ) const
inline

Return const_iterator to end traversing the constant FixedList.

Definition at line 347 of file FixedListI.H.

Referenced by FixedList< T, Size >::operator<().

Here is the caller graph for this function:

Foam::FixedList< T, Size >::const_iterator begin ( ) const
inline

Return const_iterator to begin traversing the constant FixedList.

Definition at line 315 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator end ( ) const
inline

Return const_iterator to end traversing the constant FixedList.

Definition at line 339 of file FixedListI.H.

Foam::FixedList< T, Size >::iterator rbegin ( )
inline

Return reverse_iterator to begin reverse traversing the FixedList.

Definition at line 355 of file FixedListI.H.

Foam::FixedList< T, Size >::iterator rend ( )
inline

Return reverse_iterator to end reverse traversing the FixedList.

Definition at line 379 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator crbegin ( ) const
inline

Return const_reverse_iterator to begin reverse traversing FixedList.

Definition at line 371 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator crend ( ) const
inline

Return const_reverse_iterator to end reverse traversing FixedList.

Definition at line 395 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator rbegin ( ) const
inline

Return const_reverse_iterator to begin reverse traversing FixedList.

Definition at line 363 of file FixedListI.H.

Foam::FixedList< T, Size >::const_iterator rend ( ) const
inline

Return const_reverse_iterator to end reverse traversing FixedList.

Definition at line 387 of file FixedListI.H.

Foam::label size ( ) const
inline
Foam::label max_size ( ) const
inline

Return size of the largest possible FixedList.

Definition at line 409 of file FixedListI.H.

bool empty ( ) const
inline

Return true if the FixedList is empty (ie, size() is zero).

Definition at line 416 of file FixedListI.H.

References FixedList< T, Size >::operator.

void swap ( FixedList< T, Size > &  a)

Swap two FixedLists of the same type in constant time.

Definition at line 32 of file FixedList.C.

References List_ACCESS, List_CELEM, List_ELEM, List_END_FOR_ALL, List_FOR_ALL, and T.

bool operator== ( const FixedList< T, Size > &  a) const

Equality operation on FixedLists of the same type.

Returns true when the FixedLists are elementwise equal (using FixedList::value_type::operator==). Takes linear time.

Definition at line 48 of file FixedList.C.

References Foam::equal(), List_CONST_ACCESS, List_ELEM, List_END_FOR_ALL, List_FOR_ALL, and T.

Here is the call graph for this function:

bool operator!= ( const FixedList< T, Size > &  a) const

The opposite of the equality operation. Takes linear time.

Definition at line 64 of file FixedList.C.

References Foam::operator==().

Here is the call graph for this function:

bool operator< ( const FixedList< T, Size > &  a) const

Compare two FixedLists lexicographically. Takes linear time.

Definition at line 71 of file FixedList.C.

References FixedList< T, Size >::cbegin(), and FixedList< T, Size >::cend().

Here is the call graph for this function:

bool operator> ( const FixedList< T, Size > &  a) const

Compare two FixedLists lexicographically. Takes linear time.

Definition at line 102 of file FixedList.C.

References FixedList< T, Size >::operator.

bool operator<= ( const FixedList< T, Size > &  a) const

Return true if !(a > b). Takes linear time.

Definition at line 109 of file FixedList.C.

References Foam::operator>().

Here is the call graph for this function:

bool operator>= ( const FixedList< T, Size > &  a) const

Return true if !(a < b). Takes linear time.

Definition at line 116 of file FixedList.C.

References Foam::operator<().

Here is the call graph for this function:

Friends And Related Function Documentation

Istream& operator>> ( Istream ,
FixedList< T, Size > &   
)
friend

Read List from Istream, discarding contents of existing List.

Ostream& operator ( Ostream ,
const FixedList< T, Size > &   
)
friend

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