VTK
|
Generates a structured extent from unstructured. More...
#include <vtkExtentTranslator.h>
Public Types | |
enum | Modes { X_SLAB_MODE = 0, Y_SLAB_MODE = 1, Z_SLAB_MODE = 2, BLOCK_MODE = 3 } |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkExtentTranslator * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetSplitPath (int len, int *splitpath) |
virtual void | SetWholeExtent (int, int, int, int, int, int) |
virtual void | SetWholeExtent (int[6]) |
virtual int * | GetWholeExtent () |
virtual void | GetWholeExtent (int &, int &, int &, int &, int &, int &) |
virtual void | GetWholeExtent (int[6]) |
virtual void | SetExtent (int, int, int, int, int, int) |
virtual void | SetExtent (int[6]) |
virtual int * | GetExtent () |
virtual void | GetExtent (int &, int &, int &, int &, int &, int &) |
virtual void | GetExtent (int[6]) |
virtual void | SetPiece (int) |
virtual int | GetPiece () |
virtual void | SetNumberOfPieces (int) |
virtual int | GetNumberOfPieces () |
virtual void | SetGhostLevel (int) |
virtual int | GetGhostLevel () |
virtual int | PieceToExtent () |
virtual int | PieceToExtentByPoints () |
virtual int | PieceToExtentThreadSafe (int piece, int numPieces, int ghostLevel, int *wholeExtent, int *resultExtent, int splitMode, int byPoints) |
void | SetSplitModeToBlock () |
void | SetSplitModeToXSlab () |
void | SetSplitModeToYSlab () |
void | SetSplitModeToZSlab () |
virtual int | GetSplitMode () |
Static Public Member Functions | |
static vtkExtentTranslator * | New () |
static int | IsTypeOf (const char *type) |
static vtkExtentTranslator * | SafeDownCast (vtkObjectBase *o) |
static vtkInformationIntegerRequestKey * | UPDATE_SPLIT_MODE () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkExtentTranslator () | |
~vtkExtentTranslator () | |
int | SplitExtent (int piece, int numPieces, int *extent, int splitMode) |
int | SplitExtentByPoints (int piece, int numPieces, int *extent, int splitMode) |
Static Protected Member Functions | |
static vtkInformationIntegerKey * | DATA_SPLIT_MODE () |
Protected Attributes | |
int | Piece |
int | NumberOfPieces |
int | GhostLevel |
int | Extent [6] |
int | WholeExtent [6] |
int | SplitMode |
int * | SplitPath |
int | SplitLen |
Friends | |
class | vtkInformationSplitModeRequestKey |
Generates a structured extent from unstructured.
vtkExtentTranslator generates a structured extent from an unstructured extent. It uses a recursive scheme that splits the largest axis. A hard coded extent can be used for a starting point.
Definition at line 36 of file vtkExtentTranslator.h.
Reimplemented from vtkObject.
Definition at line 41 of file vtkExtentTranslator.h.
Definition at line 101 of file vtkExtentTranslator.h.
vtkExtentTranslator::vtkExtentTranslator | ( | ) | [protected] |
vtkExtentTranslator::~vtkExtentTranslator | ( | ) | [protected] |
static vtkExtentTranslator* vtkExtentTranslator::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
static int vtkExtentTranslator::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkExtentTranslator::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkExtentTranslator* vtkExtentTranslator::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
virtual vtkObjectBase* vtkExtentTranslator::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
Reimplemented from vtkObject.
void vtkExtentTranslator::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::SetWholeExtent | ( | int | [6] | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int* vtkExtentTranslator::GetWholeExtent | ( | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::GetWholeExtent | ( | int & | , |
int & | , | ||
int & | , | ||
int & | , | ||
int & | , | ||
int & | |||
) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::GetWholeExtent | ( | int | [6] | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::SetExtent | ( | int | [6] | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int* vtkExtentTranslator::GetExtent | ( | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::GetExtent | ( | int & | , |
int & | , | ||
int & | , | ||
int & | , | ||
int & | , | ||
int & | |||
) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::GetExtent | ( | int | [6] | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::SetPiece | ( | int | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int vtkExtentTranslator::GetPiece | ( | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::SetNumberOfPieces | ( | int | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int vtkExtentTranslator::GetNumberOfPieces | ( | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual void vtkExtentTranslator::SetGhostLevel | ( | int | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int vtkExtentTranslator::GetGhostLevel | ( | ) | [virtual] |
Set the Piece/NumPieces. Set the WholeExtent and then call PieceToExtent. The result can be obtained from the Extent ivar.
virtual int vtkExtentTranslator::PieceToExtent | ( | ) | [virtual] |
These are the main methods that should be called. These methods are responsible for converting a piece to an extent. The signatures without arguments are only thread safe when each thread accesses a different instance. The signatures with arguments are fully thread safe.
virtual int vtkExtentTranslator::PieceToExtentByPoints | ( | ) | [virtual] |
These are the main methods that should be called. These methods are responsible for converting a piece to an extent. The signatures without arguments are only thread safe when each thread accesses a different instance. The signatures with arguments are fully thread safe.
virtual int vtkExtentTranslator::PieceToExtentThreadSafe | ( | int | piece, |
int | numPieces, | ||
int | ghostLevel, | ||
int * | wholeExtent, | ||
int * | resultExtent, | ||
int | splitMode, | ||
int | byPoints | ||
) | [virtual] |
These are the main methods that should be called. These methods are responsible for converting a piece to an extent. The signatures without arguments are only thread safe when each thread accesses a different instance. The signatures with arguments are fully thread safe.
void vtkExtentTranslator::SetSplitModeToBlock | ( | ) | [inline] |
How should the streamer break up extents. Block mode tries to break an extent up into cube blocks. It always chooses the largest axis to split. Slab mode first breaks up the Z axis. If it gets to one slice, then it starts breaking up other axes.
Definition at line 80 of file vtkExtentTranslator.h.
void vtkExtentTranslator::SetSplitModeToXSlab | ( | ) | [inline] |
How should the streamer break up extents. Block mode tries to break an extent up into cube blocks. It always chooses the largest axis to split. Slab mode first breaks up the Z axis. If it gets to one slice, then it starts breaking up other axes.
Definition at line 82 of file vtkExtentTranslator.h.
void vtkExtentTranslator::SetSplitModeToYSlab | ( | ) | [inline] |
How should the streamer break up extents. Block mode tries to break an extent up into cube blocks. It always chooses the largest axis to split. Slab mode first breaks up the Z axis. If it gets to one slice, then it starts breaking up other axes.
Definition at line 84 of file vtkExtentTranslator.h.
void vtkExtentTranslator::SetSplitModeToZSlab | ( | ) | [inline] |
How should the streamer break up extents. Block mode tries to break an extent up into cube blocks. It always chooses the largest axis to split. Slab mode first breaks up the Z axis. If it gets to one slice, then it starts breaking up other axes.
Definition at line 86 of file vtkExtentTranslator.h.
virtual int vtkExtentTranslator::GetSplitMode | ( | ) | [virtual] |
How should the streamer break up extents. Block mode tries to break an extent up into cube blocks. It always chooses the largest axis to split. Slab mode first breaks up the Z axis. If it gets to one slice, then it starts breaking up other axes.
void vtkExtentTranslator::SetSplitPath | ( | int | len, |
int * | splitpath | ||
) |
By default the translator creates N structured subextents by repeatedly splitting the largest current dimension until there are N pieces. If you do not want it always split the largest dimension, for instance when the shortest dimension is the slowest changing and thus least coherent in memory, use this to tell the translator which dimensions to split.
static vtkInformationIntegerRequestKey* vtkExtentTranslator::UPDATE_SPLIT_MODE | ( | ) | [static] |
Key used to request a particular split mode. This is used by vtkStreamingDemandDrivenPipeline.
static vtkInformationIntegerKey* vtkExtentTranslator::DATA_SPLIT_MODE | ( | ) | [static, protected] |
int vtkExtentTranslator::SplitExtent | ( | int | piece, |
int | numPieces, | ||
int * | extent, | ||
int | splitMode | ||
) | [protected] |
Returns 0 if no data exist for a piece. The whole extent Should be passed in as the extent. It is modified to return the result.
int vtkExtentTranslator::SplitExtentByPoints | ( | int | piece, |
int | numPieces, | ||
int * | extent, | ||
int | splitMode | ||
) | [protected] |
Returns 0 if no data exist for a piece. The whole extent Should be passed in as the extent. It is modified to return the result.
friend class vtkInformationSplitModeRequestKey [friend] |
Definition at line 119 of file vtkExtentTranslator.h.
int vtkExtentTranslator::Piece [protected] |
Definition at line 129 of file vtkExtentTranslator.h.
int vtkExtentTranslator::NumberOfPieces [protected] |
Definition at line 130 of file vtkExtentTranslator.h.
int vtkExtentTranslator::GhostLevel [protected] |
Definition at line 131 of file vtkExtentTranslator.h.
int vtkExtentTranslator::Extent[6] [protected] |
Definition at line 132 of file vtkExtentTranslator.h.
int vtkExtentTranslator::WholeExtent[6] [protected] |
Definition at line 133 of file vtkExtentTranslator.h.
int vtkExtentTranslator::SplitMode [protected] |
Definition at line 134 of file vtkExtentTranslator.h.
int* vtkExtentTranslator::SplitPath [protected] |
Definition at line 136 of file vtkExtentTranslator.h.
int vtkExtentTranslator::SplitLen [protected] |
Definition at line 137 of file vtkExtentTranslator.h.