SIndex< Dim > Class Template Reference

#include <SIndex.h>

Inheritance diagram for SIndex< Dim >:

Inheritance graph
[legend]
Collaboration diagram for SIndex< Dim >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef vector< RefCountedP<
LSIndex< Dim > > > 
container_t
typedef unsigned int size_type
typedef container_t::iterator iterator_iv
typedef container_t::const_iterator const_iterator_iv
typedef container_t::size_type size_type_iv
typedef LSIndex< Dim >::iterator iterator_indx
typedef LSIndex< Dim >::const_iterator const_iterator_indx

Public Member Functions

 SIndex ()
 SIndex (FieldLayout< Dim > &)
 SIndex (const SIndex< Dim > &)
virtual ~SIndex ()
void initialize (FieldLayout< Dim > &)
bool needInitialize () const
template<class T1>
SIndex< Dim > & operator= (const PETE_Expr< T1 > &rhs)
SIndex< Dim > & operator= (const SIndex< Dim > &)
SIndex< Dim > & operator= (const SOffset< Dim > &)
SIndex< Dim > & operator= (const NDIndex< Dim > &)
SIndex< Dim > & operator &= (const SIndex< Dim > &)
SIndex< Dim > & operator &= (const SOffset< Dim > &)
SIndex< Dim > & operator &= (const NDIndex< Dim > &)
SIndex< Dim > & operator|= (const SIndex< Dim > &)
SIndex< Dim > & operator|= (const SOffset< Dim > &)
SIndex< Dim > & operator|= (const NDIndex< Dim > &)
bool addIndex (const SOffset< Dim > &)
bool addIndex (iterator_iv &, const SOffset< Dim > &)
void addIndex (const NDIndex< Dim > &)
bool removeIndex (const SOffset< Dim > &)
bool removeIndex (iterator_iv &, const SOffset< Dim > &)
void removeIndex (const NDIndex< Dim > &)
void reserve (double=1.0)
void clear ()
SOffset< Dim > & getOffset ()
const SOffset< Dim > & getOffset () const
FieldLayout< Dim > & getFieldLayout () const
void setFieldLayout (FieldLayout< Dim > &)
const NDIndex< Dim > & getDomain () const
void setDomain (const NDIndex< Dim > &ndi)
SIndex< Dim > operator() (int)
SIndex< Dim > operator() (int, int)
SIndex< Dim > operator() (int, int, int)
SIndex< Dim > operator() (int, int, int, int)
SIndex< Dim > operator() (int, int, int, int, int)
SIndex< Dim > operator() (int, int, int, int, int, int)
SIndex< Dim > operator() (const SOffset< Dim > &)
SIndex< Dim > operator() (const int *)
IndexedSIndex< Dim, 1 > operator[] (const Index &)
template<unsigned int Dim2>
IndexedSIndex< Dim, Dim2 > operator[] (const NDIndex< Dim2 > &ndi)
void toNDIndex (const SOffset< Dim > &, NDIndex< Dim > &)
iterator_iv begin_iv ()
iterator_iv end_iv ()
const_iterator_iv begin_iv () const
const_iterator_iv end_iv () const
size_type_iv size_iv () const
size_type_iv size () const
bool hasIndex (const SOffset< Dim > &) const
virtual void Repartition (UserList *)
virtual void notifyUserOfDelete (UserList *)
void printDebug (Inform &) const

Friends

SIndex< Dim > operator+ (const SIndex< Dim > &si, const SOffset< Dim > &so)
SIndex< Dim > operator+ (const SOffset< Dim > &so, const SIndex< Dim > &si)
SIndex< Dim > operator+ (const SIndex< Dim > &si, const int *so)
SIndex< Dim > operator+ (const int *so, const SIndex< Dim > &si)
SIndex< Dim > operator- (const SIndex< Dim > &si, const SOffset< Dim > &so)
SIndex< Dim > operator- (const SOffset< Dim > &so, const SIndex< Dim > &si)
SIndex< Dim > operator- (const SIndex< Dim > &si, const int *so)
SIndex< Dim > operator- (const int *so, const SIndex< Dim > &si)

Detailed Description

template<unsigned Dim>
class SIndex< Dim >

Definition at line 75 of file SIndex.h.


Member Typedef Documentation

template<unsigned Dim>
typedef LSIndex<Dim>::const_iterator SIndex< Dim >::const_iterator_indx
 

Definition at line 85 of file SIndex.h.

template<unsigned Dim>
typedef container_t::const_iterator SIndex< Dim >::const_iterator_iv
 

Definition at line 82 of file SIndex.h.

template<unsigned Dim>
typedef vector< RefCountedP<LSIndex<Dim> > > SIndex< Dim >::container_t
 

Definition at line 79 of file SIndex.h.

template<unsigned Dim>
typedef LSIndex<Dim>::iterator SIndex< Dim >::iterator_indx
 

Definition at line 84 of file SIndex.h.

template<unsigned Dim>
typedef container_t::iterator SIndex< Dim >::iterator_iv
 

Definition at line 81 of file SIndex.h.

template<unsigned Dim>
typedef unsigned int SIndex< Dim >::size_type
 

Definition at line 80 of file SIndex.h.

template<unsigned Dim>
typedef container_t::size_type SIndex< Dim >::size_type_iv
 

Definition at line 83 of file SIndex.h.


Constructor & Destructor Documentation

template<unsigned int Dim>
SIndex< Dim >::SIndex  ) 
 

Definition at line 39 of file SIndex.cpp.

References TAU_PROFILE, and TAU_SPARSE.

Referenced by SIndex< Dim >::operator()().

template<unsigned int Dim>
SIndex< Dim >::SIndex FieldLayout< Dim > &   ) 
 

Definition at line 47 of file SIndex.cpp.

References CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

template<unsigned int Dim>
SIndex< Dim >::SIndex const SIndex< Dim > &   ) 
 

Definition at line 58 of file SIndex.cpp.

References CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

template<unsigned int Dim>
SIndex< Dim >::~SIndex  )  [virtual]
 

Definition at line 113 of file SIndex.cpp.

References TAU_PROFILE, and TAU_SPARSE.


Member Function Documentation

template<unsigned int Dim>
void SIndex< Dim >::addIndex const NDIndex< Dim > &   ) 
 

Definition at line 204 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), CT, NDIndex< Dim >::size(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned Dim>
bool SIndex< Dim >::addIndex iterator_iv ,
const SOffset< Dim > & 
 

template<unsigned int Dim>
bool SIndex< Dim >::addIndex const SOffset< Dim > &   ) 
 

Definition at line 160 of file SIndex.cpp.

References SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SIndex< Dim >::addIndex(), SIndexAssignTraits< Dim, OpBitwiseOrAssign >::apply(), SIndex< Dim >::operator &=(), SIndex< Dim >::operator=(), and SIndex< Dim >::operator|=().

Here is the call graph for this function:

template<unsigned Dim>
const_iterator_iv SIndex< Dim >::begin_iv  )  const [inline]
 

Definition at line 258 of file SIndex.h.

template<unsigned Dim>
iterator_iv SIndex< Dim >::begin_iv  )  [inline]
 

Definition at line 256 of file SIndex.h.

Referenced by SIndex< Dim >::addIndex(), SIndex< Dim >::clear(), SIndex< Dim >::hasIndex(), SIndex< Dim >::operator &=(), SIndex< Dim >::operator|=(), SIndex< Dim >::removeIndex(), SIndex< Dim >::reserve(), and SIndex< Dim >::size().

template<unsigned int Dim>
void SIndex< Dim >::clear  ) 
 

Definition at line 334 of file SIndex.cpp.

References a, SIndex< Dim >::begin_iv(), SIndex< Dim >::end_iv(), TAU_PROFILE, and TAU_SPARSE.

Referenced by SIndexAssignTraits< Dim, OpAssign >::initialize(), SIndex< Dim >::operator &=(), and SIndex< Dim >::operator=().

Here is the call graph for this function:

template<unsigned Dim>
const_iterator_iv SIndex< Dim >::end_iv  )  const [inline]
 

Definition at line 259 of file SIndex.h.

template<unsigned Dim>
iterator_iv SIndex< Dim >::end_iv  )  [inline]
 

Definition at line 257 of file SIndex.h.

Referenced by SIndex< Dim >::addIndex(), SIndex< Dim >::clear(), SIndex< Dim >::hasIndex(), SIndex< Dim >::operator &=(), SIndex< Dim >::operator|=(), SIndex< Dim >::removeIndex(), SIndex< Dim >::reserve(), and SIndex< Dim >::size().

template<unsigned Dim>
const NDIndex<Dim>& SIndex< Dim >::getDomain void   )  const [inline]
 

Definition at line 164 of file SIndex.h.

Referenced by SubParticleAttribIter< PA, T, Dim >::makeNDIndex(), and SubFieldIter< T, Dim, SIndex< Dim > >::makeNDIndex().

template<unsigned Dim>
FieldLayout<Dim>& SIndex< Dim >::getFieldLayout  )  const [inline]
 

Definition at line 158 of file SIndex.h.

template<unsigned Dim>
const SOffset<Dim>& SIndex< Dim >::getOffset  )  const [inline]
 

Definition at line 155 of file SIndex.h.

template<unsigned Dim>
SOffset<Dim>& SIndex< Dim >::getOffset  )  [inline]
 

Definition at line 154 of file SIndex.h.

template<unsigned int Dim>
bool SIndex< Dim >::hasIndex const SOffset< Dim > &   )  const
 

Definition at line 348 of file SIndex.cpp.

References a, SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SIndex< Dim >::operator &=().

Here is the call graph for this function:

template<unsigned int Dim>
void SIndex< Dim >::initialize FieldLayout< Dim > &   ) 
 

Definition at line 124 of file SIndex.cpp.

References CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SubFieldTraits< T, Dim, SIndex< Dim >, SOffset< Dim > >::construct(), and SubFieldTraits< T, Dim, SIndex< Dim >, NDIndex< Dim > >::construct().

template<unsigned Dim>
bool SIndex< Dim >::needInitialize  )  const [inline]
 

Definition at line 105 of file SIndex.h.

Referenced by SubFieldTraits< T, Dim, SIndex< Dim >, SOffset< Dim > >::construct(), and SubFieldTraits< T, Dim, SIndex< Dim >, NDIndex< Dim > >::construct().

template<unsigned int Dim>
void SIndex< Dim >::notifyUserOfDelete UserList  )  [virtual]
 

Implements User.

Definition at line 732 of file SIndex.cpp.

References CT, UserList::getUserListID(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator &= const NDIndex< Dim > &   ) 
 

Definition at line 481 of file SIndex.cpp.

References a, SIndex< Dim >::addIndex(), SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator &= const SOffset< Dim > &   ) 
 

Definition at line 464 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), SIndex< Dim >::clear(), CT, SIndex< Dim >::hasIndex(), TAU_PROFILE, TAU_SPARSE, TAU_TYPE_STRING, and SIndex< Dim >::toNDIndex().

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator &= const SIndex< Dim > &   ) 
 

Definition at line 430 of file SIndex.cpp.

References a, SIndex< Dim >::addIndex(), SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), SIndex< Dim >::hasIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() const int *   ) 
 

Definition at line 638 of file SIndex.cpp.

References CT, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() const SOffset< Dim > &   ) 
 

Definition at line 630 of file SIndex.cpp.

References CT, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int  ,
int  ,
int  ,
int  ,
int  ,
int 
 

Definition at line 620 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int  ,
int  ,
int  ,
int  ,
int 
 

Definition at line 611 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int  ,
int  ,
int  ,
int 
 

Definition at line 602 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int  ,
int  ,
int 
 

Definition at line 593 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int  ,
int 
 

Definition at line 585 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > SIndex< Dim >::operator() int   ) 
 

Definition at line 576 of file SIndex.cpp.

References CT, CTAssert, SIndex< Dim >::SIndex(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator= const NDIndex< Dim > &   ) 
 

Definition at line 411 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), SIndex< Dim >::clear(), CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator= const SOffset< Dim > &   ) 
 

Definition at line 392 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), SIndex< Dim >::clear(), CT, TAU_PROFILE, TAU_SPARSE, TAU_TYPE_STRING, and SIndex< Dim >::toNDIndex().

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator= const SIndex< Dim > &   ) 
 

Definition at line 363 of file SIndex.cpp.

References SIndex< Dim >::BoundingBox, CT, SIndex< Dim >::IndexList, SIndex< Dim >::Layout, SIndex< Dim >::Offset, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

template<unsigned Dim>
template<class T1>
SIndex<Dim>& SIndex< Dim >::operator= const PETE_Expr< T1 > &  rhs  )  [inline]
 

Definition at line 109 of file SIndex.h.

References assign().

Here is the call graph for this function:

template<unsigned Dim>
template<unsigned int Dim2>
IndexedSIndex<Dim,Dim2> SIndex< Dim >::operator[] const NDIndex< Dim2 > &  ndi  )  [inline]
 

Definition at line 233 of file SIndex.h.

References CT, CTAssert, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

template<unsigned int Dim>
IndexedSIndex< Dim, 1 > SIndex< Dim >::operator[] const Index  ) 
 

Definition at line 652 of file SIndex.cpp.

References CT, CTAssert, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator|= const NDIndex< Dim > &   ) 
 

Definition at line 558 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator|= const SOffset< Dim > &   ) 
 

Definition at line 541 of file SIndex.cpp.

References SIndex< Dim >::addIndex(), CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
SIndex< Dim > & SIndex< Dim >::operator|= const SIndex< Dim > &   ) 
 

Definition at line 514 of file SIndex.cpp.

References a, SIndex< Dim >::addIndex(), SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
void SIndex< Dim >::printDebug Inform  )  const
 

Definition at line 767 of file SIndex.cpp.

References TAU_PROFILE, and TAU_SPARSE.

template<unsigned int Dim>
void SIndex< Dim >::removeIndex const NDIndex< Dim > &   ) 
 

Definition at line 281 of file SIndex.cpp.

References CT, SIndex< Dim >::removeIndex(), NDIndex< Dim >::size(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned Dim>
bool SIndex< Dim >::removeIndex iterator_iv ,
const SOffset< Dim > & 
 

template<unsigned int Dim>
bool SIndex< Dim >::removeIndex const SOffset< Dim > &   ) 
 

Definition at line 243 of file SIndex.cpp.

References SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SIndexAssignTraits< Dim, OpBitwiseAndAssign >::apply(), and SIndex< Dim >::removeIndex().

Here is the call graph for this function:

template<unsigned int Dim>
void SIndex< Dim >::Repartition UserList  )  [virtual]
 

Implements FieldLayoutUser.

Definition at line 716 of file SIndex.cpp.

References CT, UserList::getUserListID(), SIndex< Dim >::setFieldLayout(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned int Dim>
void SIndex< Dim >::reserve double  = 1.0  ) 
 

Definition at line 320 of file SIndex.cpp.

References a, SIndex< Dim >::begin_iv(), and SIndex< Dim >::end_iv().

Here is the call graph for this function:

template<unsigned Dim>
void SIndex< Dim >::setDomain const NDIndex< Dim > &  ndi  )  [inline]
 

Definition at line 165 of file SIndex.h.

template<unsigned int Dim>
void SIndex< Dim >::setFieldLayout FieldLayout< Dim > &   ) 
 

Definition at line 698 of file SIndex.cpp.

References CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SIndex< Dim >::Repartition().

template<unsigned int Dim>
SIndex< Dim >::size_type_iv SIndex< Dim >::size  )  const
 

Definition at line 681 of file SIndex.cpp.

References a, SIndex< Dim >::begin_iv(), CT, SIndex< Dim >::end_iv(), TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Here is the call graph for this function:

template<unsigned Dim>
size_type_iv SIndex< Dim >::size_iv  )  const [inline]
 

Definition at line 260 of file SIndex.h.

template<unsigned int Dim>
void SIndex< Dim >::toNDIndex const SOffset< Dim > &  ,
NDIndex< Dim > & 
 

Definition at line 667 of file SIndex.cpp.

References CT, TAU_PROFILE, TAU_SPARSE, and TAU_TYPE_STRING.

Referenced by SIndex< Dim >::operator &=(), and SIndex< Dim >::operator=().


Friends And Related Function Documentation

template<unsigned Dim>
SIndex<Dim> operator+ const int *  so,
const SIndex< Dim > &  si
[friend]
 

Definition at line 190 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator+ const SIndex< Dim > &  si,
const int *  so
[friend]
 

Definition at line 185 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator+ const SOffset< Dim > &  so,
const SIndex< Dim > &  si
[friend]
 

Definition at line 180 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator+ const SIndex< Dim > &  si,
const SOffset< Dim > &  so
[friend]
 

Definition at line 175 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator- const int *  so,
const SIndex< Dim > &  si
[friend]
 

Definition at line 210 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator- const SIndex< Dim > &  si,
const int *  so
[friend]
 

Definition at line 205 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator- const SOffset< Dim > &  so,
const SIndex< Dim > &  si
[friend]
 

Definition at line 200 of file SIndex.h.

template<unsigned Dim>
SIndex<Dim> operator- const SIndex< Dim > &  si,
const SOffset< Dim > &  so
[friend]
 

Definition at line 195 of file SIndex.h.


The documentation for this class was generated from the following files:
Generated on Mon Jan 16 14:46:14 2006 for IPPL by  doxygen 1.4.6