Chombo + EB  3.0
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | Private Member Functions | List of all members
MiniIFFAB< T > Class Template Reference

#include <MiniIFFAB.H>

Inheritance diagram for MiniIFFAB< T >:
Inheritance graph
[legend]

Public Member Functions

 MiniIFFAB ()
 
 MiniIFFAB (const Box &a_box, const EBGraph &a_ebgraph, const int &a_direction, const int &a_nvarin)
 
 ~MiniIFFAB ()
 
void define (const Box &a_box, const EBGraph &a_ebgraph, const int &a_direction, const int &a_nvarin)
 
long offset (const FaceIndex &a_vof, const int &a_ivar) const
 for AggStencil More...
 
void setVal (const T &value)
 
void setVal (int ivar, const T &value)
 
void copy (const Box &a_intBox, const Interval &a_destInterval, const Box &a_toBox, const MiniIFFAB< T > &a_src, const Interval &a_srcInterval)
 
void clear ()
 
 MiniIFFAB (const Box &a_region, int a_nVar)
 invalid but necessary for leveldata to compile More...
 
bool isDefined () const
 
int nComp () const
 
T & operator() (const FaceIndex &a_face, const int &varlocin)
 
const T & operator() (const FaceIndex &a_face, const int &varlocin) const
 
T * dataPtr (const int &a_comp)
 
T * getIndex (const FaceIndex &a_face, const int &a_comp) const
 
const T * dataPtr (const int &a_comp) const
 
int size (const Box &R, const Interval &comps) const
 
void linearOut (void *buf, const Box &R, const Interval &comps) const
 
void linearIn (void *buf, const Box &R, const Interval &comps)
 
int numFaces () const
 
const Vector< FaceIndex > & getFaces () const
 

Static Public Member Functions

static int preAllocatable ()
 

Public Attributes

Box m_box
 
EBGraph m_ebgraph
 

Static Public Attributes

static bool s_verbose = false
 

Protected Attributes

T * m_data
 
Vector< FaceIndexm_faces
 
int m_nFaces
 
int m_nComp
 
int m_direction
 
bool m_isDefined
 

Private Member Functions

void setDefaultValues ()
 
void getFaceSubset (Vector< FaceIndex > &a_subFaces, const Box &a_subBox) const
 
void operator= (const MiniIFFAB< T > &)
 
 MiniIFFAB (const MiniIFFAB< T > &)
 

Detailed Description

template<class T>
class MiniIFFAB< T >

MiniIFFAB is a templated data holder defined over the Faces of an irregular domain.

Constructor & Destructor Documentation

◆ MiniIFFAB() [1/4]

template<class T >
MiniIFFAB< T >::MiniIFFAB ( )
inline

Default constructor. Constructs an uninitialized IFFAB. You must subsequently call { define} before using this IFFAB.

Referenced by MiniIFFAB< Real >::~MiniIFFAB().

◆ MiniIFFAB() [2/4]

template<class T >
MiniIFFAB< T >::MiniIFFAB ( const Box a_box,
const EBGraph a_ebgraph,
const int &  a_direction,
const int &  a_nvarin 
)
inline

Defining constructor. Specifies the irregular domain and the number of data components per face. The irregular domain must lie completely within the EBGraph. The contents are uninitialized. Calls full define function.

◆ ~MiniIFFAB()

template<class T >
MiniIFFAB< T >::~MiniIFFAB ( )
inline

◆ MiniIFFAB() [3/4]

template<class T>
MiniIFFAB< T >::MiniIFFAB ( const Box a_region,
int  a_nVar 
)
inline

invalid but necessary for leveldata to compile

◆ MiniIFFAB() [4/4]

template<class T>
MiniIFFAB< T >::MiniIFFAB ( const MiniIFFAB< T > &  )
inlineprivate

Member Function Documentation

◆ define()

template<class T >
void MiniIFFAB< T >::define ( const Box a_box,
const EBGraph a_ebgraph,
const int &  a_direction,
const int &  a_nvarin 
)
inline

Full define function. Specifies the irregular domain and the number of data components per face. The irregular domain must lie completely within the EBGraph. The contents are uninitialized. If it has previously been defined, the old definition data is overwritten and lost.

Referenced by MiniIFFAB< Real >::MiniIFFAB().

◆ offset()

template<class T>
long MiniIFFAB< T >::offset ( const FaceIndex a_vof,
const int &  a_ivar 
) const
inline

◆ setVal() [1/2]

template<class T>
void MiniIFFAB< T >::setVal ( const T &  value)
inline

Set a value at every data location.

Referenced by MiniIFFAB< Real >::define(), MiniIFFAB< Real >::offset(), and MiniIFFAB< Real >::setVal().

◆ setVal() [2/2]

template<class T>
void MiniIFFAB< T >::setVal ( int  ivar,
const T &  value 
)
inline

Set a value at every data location.

◆ copy()

template<class T>
void MiniIFFAB< T >::copy ( const Box a_intBox,
const Interval a_destInterval,
const Box a_toBox,
const MiniIFFAB< T > &  a_src,
const Interval a_srcInterval 
)
inline

define over surrounding nodes of invectset (ivs is cell-centered).

Referenced by MiniIFFAB< Real >::offset(), and MiniIFFAB< Real >::setVal().

◆ clear()

template<class T >
void MiniIFFAB< T >::clear ( )
inline

Remove all data from this MiniIFFAB. You must call { define} again in order to use it.

Referenced by MiniIFFAB< Real >::getIndex(), and MiniIFFAB< Real >::offset().

◆ isDefined()

template<class T>
bool MiniIFFAB< T >::isDefined ( ) const
inline

Tells whether this MiniIFFAB has been defined, either with a constructor or with { define}. It must be initialized in order to access its data.

Referenced by MiniIFFAB< Real >::copy().

◆ nComp()

template<class T>
int MiniIFFAB< T >::nComp ( ) const
inline

Return the number of data components of this MiniIFFAB.

◆ operator()() [1/2]

template<class T >
T & MiniIFFAB< T >::operator() ( const FaceIndex a_face,
const int &  varlocin 
)
inline

Indexing operator. Return a reference to the contents of this IFFAB, at the specified face and data component. The first component is zero, the last is {nvar-1}. The returned object is a modifiable lvalue.

Referenced by MiniIFFAB< Real >::nComp().

◆ operator()() [2/2]

template<class T >
const T & MiniIFFAB< T >::operator() ( const FaceIndex a_face,
const int &  varlocin 
) const
inline

◆ dataPtr() [1/2]

template<class T >
T * MiniIFFAB< T >::dataPtr ( const int &  a_comp)
inline

◆ getIndex()

template<class T >
T * MiniIFFAB< T >::getIndex ( const FaceIndex a_face,
const int &  a_comp 
) const
inline

◆ dataPtr() [2/2]

template<class T >
const T * MiniIFFAB< T >::dataPtr ( const int &  a_comp) const
inline

◆ preAllocatable()

template<class T>
static int MiniIFFAB< T >::preAllocatable ( )
inlinestatic

◆ size()

template<class T >
int MiniIFFAB< T >::size ( const Box R,
const Interval comps 
) const
inline

◆ linearOut()

template<class T >
void MiniIFFAB< T >::linearOut ( void *  buf,
const Box R,
const Interval comps 
) const
inline

◆ linearIn()

template<class T >
void MiniIFFAB< T >::linearIn ( void *  buf,
const Box R,
const Interval comps 
)
inline

◆ numFaces()

template<class T>
int MiniIFFAB< T >::numFaces ( ) const
inline

◆ getFaces()

template<class T>
const Vector<FaceIndex>& MiniIFFAB< T >::getFaces ( ) const
inline

◆ setDefaultValues()

template<class T >
void MiniIFFAB< T >::setDefaultValues ( )
inlineprivate

◆ getFaceSubset()

template<class T >
void MiniIFFAB< T >::getFaceSubset ( Vector< FaceIndex > &  a_subFaces,
const Box a_subBox 
) const
inlineprivate

◆ operator=()

template<class T>
void MiniIFFAB< T >::operator= ( const MiniIFFAB< T > &  )
inlineprivate

Member Data Documentation

◆ s_verbose

template<class T>
bool MiniIFFAB< T >::s_verbose = false
static

◆ m_box

template<class T>
Box MiniIFFAB< T >::m_box

Referenced by MiniIFFAB< Real >::copy().

◆ m_ebgraph

template<class T>
EBGraph MiniIFFAB< T >::m_ebgraph

◆ m_data

template<class T>
T* MiniIFFAB< T >::m_data
protected

◆ m_faces

template<class T>
Vector<FaceIndex> MiniIFFAB< T >::m_faces
protected

◆ m_nFaces

template<class T>
int MiniIFFAB< T >::m_nFaces
protected

◆ m_nComp

template<class T>
int MiniIFFAB< T >::m_nComp
protected

◆ m_direction

template<class T>
int MiniIFFAB< T >::m_direction
protected

◆ m_isDefined

template<class T>
bool MiniIFFAB< T >::m_isDefined
protected

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