Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Friends

LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > Class Template Reference

Useful for verifying the various parallelizations in LibGeoDecomp. More...

#include <testcell.h>

Collaboration diagram for LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >:
Collaboration graph
[legend]

List of all members.

Classes

class  API

Public Member Functions

 TestCell ()
 TestCell (const Coord< DIM > &pos, const Coord< DIM > &gridDim, const unsigned &cycleCounter=0, const double &testValue=defaultValue())
const boolvalid () const
bool inBounds (const Coord< DIM > &c) const
bool operator== (const TestCell &other) const
bool operator!= (const TestCell &other) const
template<typename COORD_MAP >
void update (const COORD_MAP &neighborhood, const unsigned &nanoStep)
std::string toString () const
bool checkNeighbor (const TestCell &other, const Coord< DIM > &relativeLoc) const
template<int X, int Y, int Z>
bool checkNeighbor (const TestCell &other, FixedCoord< X, Y, Z > coord) const

Static Public Member Functions

static double defaultValue ()
template<typename NEIGHBORHOOD >
static void updateLineX (TestCell *targetLine, long *index, long indexEnd, const NEIGHBORHOOD &hood, unsigned nanoStep)
template<typename ACCESSOR1 , typename ACCESSOR2 >
static void updateLineX (ACCESSOR1 hoodOld, int indexEnd, ACCESSOR2 hoodNew, unsigned nanoStep)

Public Attributes

Coord< DIM > pos
CoordBox< DIM > dimensions
unsigned cycleCounter
bool isEdgeCell
bool isValid
double testValue

Static Public Attributes

static const int DIMENSIONS = DIM
static const unsigned NANO_STEPS = 27

Friends

class Typemaps
class TestCellTest

Detailed Description

template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
class LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >

Useful for verifying the various parallelizations in LibGeoDecomp.


Constructor & Destructor Documentation

template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::TestCell (  )  [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::TestCell ( const Coord< DIM > &  pos,
const Coord< DIM > &  gridDim,
const unsigned cycleCounter = 0,
const double &  testValue = defaultValue() 
) [inline]

Member Function Documentation

template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::checkNeighbor ( const TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > &  other,
const Coord< DIM > &  relativeLoc 
) const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
template<int X, int Y, int Z>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::checkNeighbor ( const TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > &  other,
FixedCoord< X, Y, Z >  coord 
) const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
static double LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::defaultValue (  )  [inline, static]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::inBounds ( const Coord< DIM > &  c  )  const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::operator!= ( const TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > &  other  )  const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::operator== ( const TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > &  other  )  const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
std::string LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::toString (  )  const [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
template<typename COORD_MAP >
void LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::update ( const COORD_MAP &  neighborhood,
const unsigned nanoStep 
) [inline]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
template<typename NEIGHBORHOOD >
static void LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::updateLineX ( TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT > *  targetLine,
long *  index,
long  indexEnd,
const NEIGHBORHOOD &  hood,
unsigned  nanoStep 
) [inline, static]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
template<typename ACCESSOR1 , typename ACCESSOR2 >
static void LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::updateLineX ( ACCESSOR1  hoodOld,
int  indexEnd,
ACCESSOR2  hoodNew,
unsigned  nanoStep 
) [inline, static]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
const bool& LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::valid (  )  const [inline]

Friends And Related Function Documentation

template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
friend class TestCellTest [friend]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
friend class Typemaps [friend]

Member Data Documentation

template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
unsigned LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::cycleCounter
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
const int LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::DIMENSIONS = DIM [static]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
CoordBox<DIM> LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::dimensions
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::isEdgeCell
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
bool LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::isValid
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
const unsigned LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::NANO_STEPS = 27 [static]
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
Coord<DIM> LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::pos
template<int DIM, typename STENCIL = Stencils::Moore<DIM, 1>, typename TOPOLOGY = typename TestCellHelpers::TopologyType<DIM>::Topology, typename ADDITIONAL_API = TestCellHelpers::EmptyAPI, typename OUTPUT = TestCellHelpers::StdOutput>
double LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >::testValue

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