FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
Public Member Functions | Public Attributes | List of all members
Fiber::SliceConstructor< Converter > Struct Template Reference

Helper class for slice constructors. More...

#include <SliceExtractor.hpp>

Inheritance diagram for Fiber::SliceConstructor< Converter >:
Fiber::RegularCoordinateSlice

Public Member Functions

 SliceConstructor (const RegularCoordinateSlice &RCS, index_t theSliceIndex, const MultiIndex< 3 > &theSliceDims, const WeakPtr< CreativeArrayBase > &theFullDomainDataCreator, const Converter &theConverter)
 
bool canExtract () const
 
- Public Member Functions inherited from Fiber::RegularCoordinateSlice
void setup (int orient)
 
 RegularCoordinateSlice (int o)
 
MultiIndex< 3 > getIndex (index_t x, index_t y, index_t z) const
 
double getComponent (const Eagle::FixedArray< double, 3 > &P) const
 
bool getRectilinearIndex (double CoordinateValue, const MemCore::RefPtr< MemBase > &CoordValues, double &CoordinateIndex)
 Given a dataset of three-dimensional coordinate values, either uniform or rectilinear, and a coordinate value for this slice selection, compute the coordinate index that corresponds to this coordinate.
 
bool getRectilinearIndex (double SliceCoordinateValue, const RefPtr< Field > &Coords, const RefPtr< FragmentID > &fid, double &CoordinateIndex)
 
bool getSliceCornerIndex (MultiIndex< 3 > &I, const MultiIndex< 3 > &DataDims, int CornerX, int CornerY, index_t sliceIndex) const
 Given the dimensions of a three-dimensional array, compute the 3D indices of a slice.
 
MemCore::RefPtr< MemBasegetCoordinates (index_t sliceIndex, const MultiIndex< 3 > &DataDims, const RefPtr< Field > &Coords, const RefPtr< FragmentID > &fid)
 
template<class Dest , class Source , class Converter >
void extractData (MultiArray< 2, Dest > &DestArray, const MultiArray< 3, Source > &SrcArray, const index_t &SliceNumber, const Converter &C, const MultiIndex< 3 > &SourceOffset=MIndex(0, 0, 0))
 Extract data slice from the source array to a 2D destination array, whereby the destination array must be larger than or equal to the source array.
 
bool validDestinationSize (const MultiIndex< 3 > &Dst, index_t DestSliceNumber, const MultiIndex< 3 > &Src)
 
template<class Dest , class Source , class Converter >
bool extractDataToOriented3D (MultiArray< 3, Dest > &DestArray, index_t DestSliceNumber, const MultiArray< 3, Source > &SrcArray, index_t SliceNumber, const Converter &C)
 Extract data slice from the source array to the destination array, whereby the destination array must be larger than or equal to the source array.
 

Public Attributes

RefPtr< CreativeArrayBasemyFullDomainDataCreator
 
index_t mySliceIndex
 
MultiIndex< 3 > mySliceDims
 
const Converter myConverter
 
- Public Attributes inherited from Fiber::RegularCoordinateSlice
int X
 
int Y
 
int Z
 

Detailed Description

template<class Converter>
struct Fiber::SliceConstructor< Converter >

Helper class for slice constructors.