VTK
|
#include <vtkSurfaceLICComposite.h>
Public Types | |
typedef vtkObject | Superclass |
typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkSurfaceLICComposite * | NewInstance () const |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
const std::deque< vtkPixelExtent > & | GetGuardExtents () const |
const std::deque< vtkPixelExtent > & | GetDisjointGuardExtents () const |
const std::deque< vtkPixelExtent > & | GetCompositeExtents () const |
int | InitializeCompositeExtents (float *vectors) |
virtual void | SetCommunicator (vtkPainterCommunicator *) |
virtual void | RestoreDefaultCommunicator () |
virtual int | BuildProgram (float *) |
virtual int | IsA (const char *type) |
vtkSurfaceLICComposite * | NewInstance () const |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
const std::deque< vtkPixelExtent > & | GetGuardExtents () const |
const std::deque< vtkPixelExtent > & | GetDisjointGuardExtents () const |
const std::deque< vtkPixelExtent > & | GetCompositeExtents () const |
int | InitializeCompositeExtents (float *vectors) |
virtual void | SetCommunicator (vtkPainterCommunicator *) |
virtual void | RestoreDefaultCommunicator () |
virtual int | BuildProgram (float *) |
void | Initialize (const vtkPixelExtent &winExt, const std::deque< vtkPixelExtent > &blockExts, int strategy, double stepSize, int nSteps, int normalizeVectors, int enhancedLIC, int anitalias) |
int | GetNumberOfCompositeExtents () const |
const vtkPixelExtent & | GetGuardExtent (int i=0) const |
const vtkPixelExtent & | GetDisjointGuardExtent (int i=0) const |
const vtkPixelExtent & | GetCompositeExtent (int i=0) const |
const vtkPixelExtent & | GetDataSetExtent () const |
const vtkPixelExtent & | GetWindowExtent () const |
virtual void | SetContext (vtkOpenGLRenderWindow *) |
virtual vtkOpenGLRenderWindow * | GetContext () |
virtual int | Gather (void *, int, int, vtkTextureObject *&) |
virtual int | Scatter (void *, int, int, vtkTextureObject *&) |
void | Initialize (const vtkPixelExtent &winExt, const std::deque< vtkPixelExtent > &blockExts, int strategy, double stepSize, int nSteps, int normalizeVectors, int enhancedLIC, int anitalias) |
int | GetNumberOfCompositeExtents () const |
const vtkPixelExtent & | GetGuardExtent (int i=0) const |
const vtkPixelExtent & | GetDisjointGuardExtent (int i=0) const |
const vtkPixelExtent & | GetCompositeExtent (int i=0) const |
const vtkPixelExtent & | GetDataSetExtent () const |
const vtkPixelExtent & | GetWindowExtent () const |
virtual void | SetContext (vtkOpenGLRenderWindow *) |
virtual vtkOpenGLRenderWindow * | GetContext () |
virtual int | Gather (void *, int, int, vtkTextureObject *&) |
virtual int | Scatter (void *, int, int, vtkTextureObject *&) |
Public Member Functions inherited from vtkObject | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
bool | GetDebug () |
void | SetDebug (bool debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static vtkSurfaceLICComposite * | New () |
static int | IsTypeOf (const char *type) |
static vtkSurfaceLICComposite * | SafeDownCast (vtkObjectBase *o) |
static vtkSurfaceLICComposite * | New () |
static int | IsTypeOf (const char *type) |
static vtkSurfaceLICComposite * | SafeDownCast (vtkObjectBase *o) |
static int | MakeDecompDisjoint (std::deque< vtkPixelExtent > &in, std::deque< vtkPixelExtent > &out) |
static int | MakeDecompDisjoint (std::deque< vtkPixelExtent > &in, std::deque< vtkPixelExtent > &out) |
Static Public Member Functions inherited from vtkObject | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkSurfaceLICComposite () | |
~vtkSurfaceLICComposite () | |
float | GetFudgeFactor (int nx[2]) |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkSurfaceLICComposite () | |
~vtkSurfaceLICComposite () | |
float | GetFudgeFactor (int nx[2]) |
int | MakeDecompDisjoint (const std::deque< vtkPixelExtent > &in, std::deque< vtkPixelExtent > &out, float *vectors) |
float | VectorMax (const vtkPixelExtent &ext, float *vectors) |
int | VectorMax (const std::deque< vtkPixelExtent > &exts, float *vectors, std::vector< float > &vMax) |
int | AddGuardPixels (const std::deque< vtkPixelExtent > &exts, std::deque< vtkPixelExtent > &guardExts, std::deque< vtkPixelExtent > &disjointGuardExts, float *vectors) |
void | GetPixelBounds (float *rgba, int ni, vtkPixelExtent &ext) |
int | MakeDecompDisjoint (const std::deque< vtkPixelExtent > &in, std::deque< vtkPixelExtent > &out, float *vectors) |
float | VectorMax (const vtkPixelExtent &ext, float *vectors) |
int | VectorMax (const std::deque< vtkPixelExtent > &exts, float *vectors, std::vector< float > &vMax) |
int | AddGuardPixels (const std::deque< vtkPixelExtent > &exts, std::deque< vtkPixelExtent > &guardExts, std::deque< vtkPixelExtent > &disjointGuardExts, float *vectors) |
void | GetPixelBounds (float *rgba, int ni, vtkPixelExtent &ext) |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
int | Pass |
vtkPixelExtent | WindowExt |
vtkPixelExtent | DataSetExt |
std::deque< vtkPixelExtent > | BlockExts |
std::deque< vtkPixelExtent > | CompositeExt |
std::deque< vtkPixelExtent > | GuardExt |
std::deque< vtkPixelExtent > | DisjointGuardExt |
int | Strategy |
double | StepSize |
int | NumberOfSteps |
int | NormalizeVectors |
int | NumberOfGuardLevels |
int | NumberOfEEGuardPixels |
int | NumberOfAAGuardPixels |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Friends | |
ostream & | operator<< (ostream &os, vtkSurfaceLICComposite &ss) |
ostream & | operator<< (ostream &os, vtkSurfaceLICComposite &ss) |
enum | { COMPOSITE_INPLACE =0, COMPOSITE_INPLACE_DISJOINT, COMPOSITE_BALANCED, COMPOSITE_AUTO } |
void | SetStrategy (int val) |
int | GetStrategy () |
enum | { COMPOSITE_INPLACE =0, COMPOSITE_INPLACE_DISJOINT, COMPOSITE_BALANCED, COMPOSITE_AUTO } |
void | SetStrategy (int val) |
int | GetStrategy () |
This class decomposes the image space and shuffles image space data onto the new decomposition with the necessary guard cells to prevent artifacts at the decomposition boundaries. After the image LIC is computed on the new decomposition this class will un-shuffle the computed LIC back onto the original decomposition
Definition at line 38 of file vtkSurfaceLICComposite.h.
Definition at line 42 of file vtkSurfaceLICComposite.h.
Definition at line 42 of file vtkSurfaceLICComposite.h.
anonymous enum |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Enumerator | |
---|---|
COMPOSITE_INPLACE | |
COMPOSITE_INPLACE_DISJOINT | |
COMPOSITE_BALANCED | |
COMPOSITE_AUTO |
Definition at line 80 of file vtkSurfaceLICComposite.h.
anonymous enum |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Enumerator | |
---|---|
COMPOSITE_INPLACE | |
COMPOSITE_INPLACE_DISJOINT | |
COMPOSITE_BALANCED | |
COMPOSITE_AUTO |
Definition at line 80 of file vtkSurfaceLICComposite.h.
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
|
static |
|
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.
Reimplemented in vtkPSurfaceLICComposite.
|
static |
|
protectedvirtual |
Reimplemented from vtkObject.
Reimplemented in vtkPSurfaceLICComposite.
vtkSurfaceLICComposite* vtkSurfaceLICComposite::NewInstance | ( | ) | const |
|
virtual |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkPSurfaceLICComposite.
void vtkSurfaceLICComposite::Initialize | ( | const vtkPixelExtent & | winExt, |
const std::deque< vtkPixelExtent > & | blockExts, | ||
int | strategy, | ||
double | stepSize, | ||
int | nSteps, | ||
int | normalizeVectors, | ||
int | enhancedLIC, | ||
int | anitalias | ||
) |
Initialize the object based on the following description of the blocks projected onto the render window. wholeExt describes the window size, originalExts describe each block's extent in window coords. stepSize is the window coordiniate integration step size. when inplace is true compositing happens on the original extent.
|
inline |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Definition at line 86 of file vtkSurfaceLICComposite.h.
|
inline |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Definition at line 87 of file vtkSurfaceLICComposite.h.
|
inline |
Get the number of new extents assigned to this rank after the decomposition.
Definition at line 93 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 100 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 104 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 110 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 114 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 120 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 124 of file vtkSurfaceLICComposite.h.
|
inline |
Get the whole dataset extent (all blocks).
Definition at line 129 of file vtkSurfaceLICComposite.h.
|
inline |
Get the whole window extent.
Definition at line 135 of file vtkSurfaceLICComposite.h.
Set up for a serial run, makes the decomp disjoint and adds requisite guard pixles.
|
inlinevirtual |
Set the rendering context. Must set prior to use. Reference is not held, so caller must ensure the renderer is not destroyed durring use.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 147 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the rendering context. Must set prior to use. Reference is not held, so caller must ensure the renderer is not destroyed durring use.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 148 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the communicator for parallel communication. A duplicate is not made. It is up to the caller to manage the life of the communicator such that it is around while this class needs it and is released after.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 155 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the communicator to the default communicator
Definition at line 158 of file vtkSurfaceLICComposite.h.
Build programs to move data to the new decomp In parallel THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 162 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Move a single buffer from the geometry decomp to the LIC decomp. THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 167 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Move a single buffer from the LIC decomp to the geometry decomp In parallel THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 174 of file vtkSurfaceLICComposite.h.
|
static |
Make a decomposition disjoint with respect to itself. Extents are removed from the input array and disjoint extents are appened onto the output array. This is a local operation.
|
protected |
For serial run. Make a decomposition disjoint. Sorts extents and processes largest to smallest , repeatedly subtracting smaller remaining blocks from the largest remaining. Each extent in the new disjoint set is shrunk to tightly bound the vector data, extents with empty vectors are removed. This is a local operation since vector field is local.
|
protected |
Compute max(V) on the given extent.
|
protected |
Compute max(V) on a set of extents. Neighboring extents are including in the computation.
|
protected |
Add guard pixels (Serial run)
|
protected |
shrink pixel extent based on non-zero alpha channel values
factor for determining extra padding for guard pixels. depends on window aspect ratio because of anisotropic transform to texture space. see note in implementation.
|
static |
|
static |
|
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.
Reimplemented in vtkPSurfaceLICComposite.
|
static |
|
protectedvirtual |
Reimplemented from vtkObject.
Reimplemented in vtkPSurfaceLICComposite.
vtkSurfaceLICComposite* vtkSurfaceLICComposite::NewInstance | ( | ) | const |
|
virtual |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkPSurfaceLICComposite.
void vtkSurfaceLICComposite::Initialize | ( | const vtkPixelExtent & | winExt, |
const std::deque< vtkPixelExtent > & | blockExts, | ||
int | strategy, | ||
double | stepSize, | ||
int | nSteps, | ||
int | normalizeVectors, | ||
int | enhancedLIC, | ||
int | anitalias | ||
) |
Initialize the object based on the following description of the blocks projected onto the render window. wholeExt describes the window size, originalExts describe each block's extent in window coords. stepSize is the window coordiniate integration step size. when inplace is true compositing happens on the original extent.
|
inline |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Definition at line 86 of file vtkSurfaceLICComposite.h.
|
inline |
Control the screen space decomposition. The available modes are: INPLACE use the block decomp. This may result in LIC being computed many times for the same pixels and an excessive amount of IPC during compositing if any of the block extents cover or intersect a number of block extents. The input data needs to be shuffled but not unshuffled since for overlapping regions LIC is computed by all proccesses that overlap. If there is very little overlap between block extents then this method is superior since no unshuffle is needed. INPLACE_DISJOINT use a disjoint version of the block decomp. This will leave non-overlapping data in place, reasigning overlaping regions so that LIC is computed once for each pixel on the screen. An unshuffle step to move data in overlapping region to all processes that overlap. BALANCED move to a new decomp where each rank gets an equal number of pixels. This ensures the best load balancing during LIC and that LIC is computed once for each pixel. In the worst case each pixel will be shuffled and unshuffled. AUTO Use a heuristic to select the mode.
Definition at line 87 of file vtkSurfaceLICComposite.h.
|
inline |
Get the number of new extents assigned to this rank after the decomposition.
Definition at line 93 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 100 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 104 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 110 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 114 of file vtkSurfaceLICComposite.h.
|
inline |
Get the extent of the domain over which to compute the LIC. This can be querried only after the Composite takes place.
Definition at line 120 of file vtkSurfaceLICComposite.h.
|
inline |
Definition at line 124 of file vtkSurfaceLICComposite.h.
|
inline |
Get the whole dataset extent (all blocks).
Definition at line 129 of file vtkSurfaceLICComposite.h.
|
inline |
Get the whole window extent.
Definition at line 135 of file vtkSurfaceLICComposite.h.
Set up for a serial run, makes the decomp disjoint and adds requisite guard pixles.
|
inlinevirtual |
Set the rendering context. Must set prior to use. Reference is not held, so caller must ensure the renderer is not destroyed durring use.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 147 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the rendering context. Must set prior to use. Reference is not held, so caller must ensure the renderer is not destroyed durring use.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 148 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the communicator for parallel communication. A duplicate is not made. It is up to the caller to manage the life of the communicator such that it is around while this class needs it and is released after.
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 155 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Set the communicator to the default communicator
Definition at line 158 of file vtkSurfaceLICComposite.h.
Build programs to move data to the new decomp In parallel THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 162 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Move a single buffer from the geometry decomp to the LIC decomp. THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 167 of file vtkSurfaceLICComposite.h.
|
inlinevirtual |
Move a single buffer from the LIC decomp to the geometry decomp In parallel THIS IS A COLLECTIVE OPERATION
Reimplemented in vtkPSurfaceLICComposite.
Definition at line 174 of file vtkSurfaceLICComposite.h.
|
static |
Make a decomposition disjoint with respect to itself. Extents are removed from the input array and disjoint extents are appened onto the output array. This is a local operation.
|
protected |
For serial run. Make a decomposition disjoint. Sorts extents and processes largest to smallest , repeatedly subtracting smaller remaining blocks from the largest remaining. Each extent in the new disjoint set is shrunk to tightly bound the vector data, extents with empty vectors are removed. This is a local operation since vector field is local.
|
protected |
Compute max(V) on the given extent.
|
protected |
Compute max(V) on a set of extents. Neighboring extents are including in the computation.
|
protected |
Add guard pixels (Serial run)
|
protected |
shrink pixel extent based on non-zero alpha channel values
factor for determining extra padding for guard pixels. depends on window aspect ratio because of anisotropic transform to texture space. see note in implementation.
|
friend |
|
friend |
|
protected |
Definition at line 244 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 246 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 247 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 248 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 250 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 251 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 252 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 254 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 256 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 257 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 258 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 259 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 260 of file vtkSurfaceLICComposite.h.
|
protected |
Definition at line 261 of file vtkSurfaceLICComposite.h.