Public Types | Public Member Functions | Static Public Member Functions | List of all members
vtkAMRDualGridHelper Class Reference

Tools for processing AMR as a dual grid. More...

#include <vtkAMRDualGridHelper.h>

Inheritance diagram for vtkAMRDualGridHelper:
Inheritance graph
[legend]
Collaboration diagram for vtkAMRDualGridHelper:
Collaboration graph
[legend]

Public Types

typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
int Initialize (vtkNonOverlappingAMR *input)
 
int SetupData (vtkNonOverlappingAMR *input, const char *arrayName)
 
const doubleGetGlobalOrigin ()
 
const doubleGetRootSpacing ()
 
int GetNumberOfBlocks ()
 
int GetNumberOfLevels ()
 
int GetNumberOfBlocksInLevel (int level)
 
vtkAMRDualGridHelperBlockGetBlock (int level, int blockIdx)
 
vtkAMRDualGridHelperBlockGetBlock (int level, int xGrid, int yGrid, int zGrid)
 
void CopyDegenerateRegionBlockToBlock (int regionX, int regionY, int regionZ, vtkAMRDualGridHelperBlock *lowResBlock, vtkDataArray *lowResArray, vtkAMRDualGridHelperBlock *highResBlock, vtkDataArray *highResArray)
 I am generalizing the code that copies lowres blocks to highres ghost regions. More...
 
void QueueRegionRemoteCopy (int regionX, int regionY, int regionZ, vtkAMRDualGridHelperBlock *lowResBlock, vtkDataArray *lowResArray, vtkAMRDualGridHelperBlock *highResBlock, vtkDataArray *highResArray)
 This queues up either a copy from a remote process to this process or a copy from this process to a remote process. More...
 
void ProcessRegionRemoteCopyQueue (bool hackLevelFlag)
 This should be called on every process. More...
 
void ClearRegionRemoteCopyQueue ()
 Call this before adding regions to the queue. More...
 
virtual int GetSkipGhostCopy ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SetSkipGhostCopy (int)
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SkipGhostCopyOn ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual void SkipGhostCopyOff ()
 An option to turn off copying ghost values across process boundaries. More...
 
virtual int GetEnableDegenerateCells ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void SetEnableDegenerateCells (int)
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void EnableDegenerateCellsOn ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual void EnableDegenerateCellsOff ()
 Turn on/off the ability to create meshing between levels in the grid. More...
 
virtual int GetEnableAsynchronousCommunication ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void SetEnableAsynchronousCommunication (int)
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void EnableAsynchronousCommunicationOn ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual void EnableAsynchronousCommunicationOff ()
 When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate. More...
 
virtual vtkMultiProcessControllerGetController ()
 The controller to use for communication. More...
 
virtual void SetController (vtkMultiProcessController *)
 The controller to use for communication. More...
 
virtual char * GetArrayName ()
 It is convenient to get this here. More...
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual vtkMTimeType GetMTime ()
 
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)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (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 *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
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)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (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 *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
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)
 
- 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)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 

Static Public Member Functions

static vtkAMRDualGridHelperNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAMRDualGridHelperSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 
static vtkObjectBaseNew ()
 

Additional Inherited Members

- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
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 inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

Tools for processing AMR as a dual grid.

This helper object was developed to help the AMR dual grid connectivity and integration filter but I also want a dual grid iso surface filter so I mad it a separate class. The API needs to be improved to make it more generally useful. This class will take advantage of some meta information, if available from a coprocessing adaptor. If not available, it will compute the information.

Definition at line 37 of file vtkAMRDualGridHelper.h.

Member Typedef Documentation

◆ Superclass

Definition at line 41 of file vtkAMRDualGridHelper.h.

Member Function Documentation

◆ New()

static vtkAMRDualGridHelper* vtkAMRDualGridHelper::New ( )
static

◆ GetClassName()

virtual const char* vtkAMRDualGridHelper::GetClassName ( )
virtual

◆ IsTypeOf()

static int vtkAMRDualGridHelper::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual int vtkAMRDualGridHelper::IsA ( const char *  type)
virtual

Reimplemented from vtkObjectBase.

◆ SafeDownCast()

static vtkAMRDualGridHelper* vtkAMRDualGridHelper::SafeDownCast ( vtkObject o)
static

◆ PrintSelf()

void vtkAMRDualGridHelper::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Reimplemented from vtkObject.

◆ GetSkipGhostCopy()

virtual int vtkAMRDualGridHelper::GetSkipGhostCopy ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SetSkipGhostCopy()

virtual void vtkAMRDualGridHelper::SetSkipGhostCopy ( int  )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SkipGhostCopyOn()

virtual void vtkAMRDualGridHelper::SkipGhostCopyOn ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ SkipGhostCopyOff()

virtual void vtkAMRDualGridHelper::SkipGhostCopyOff ( )
virtual

An option to turn off copying ghost values across process boundaries.

If the ghost values are already correct, then the extra communication is not necessary. If this assumption is wrong, this option will produce cracks / seams. This is off by default.

◆ GetEnableDegenerateCells()

virtual int vtkAMRDualGridHelper::GetEnableDegenerateCells ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ SetEnableDegenerateCells()

virtual void vtkAMRDualGridHelper::SetEnableDegenerateCells ( int  )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ EnableDegenerateCellsOn()

virtual void vtkAMRDualGridHelper::EnableDegenerateCellsOn ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ EnableDegenerateCellsOff()

virtual void vtkAMRDualGridHelper::EnableDegenerateCellsOff ( )
virtual

Turn on/off the ability to create meshing between levels in the grid.

This is on by default. Set this before you call initialize.

◆ GetEnableAsynchronousCommunication()

virtual int vtkAMRDualGridHelper::GetEnableAsynchronousCommunication ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ SetEnableAsynchronousCommunication()

virtual void vtkAMRDualGridHelper::SetEnableAsynchronousCommunication ( int  )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ EnableAsynchronousCommunicationOn()

virtual void vtkAMRDualGridHelper::EnableAsynchronousCommunicationOn ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ EnableAsynchronousCommunicationOff()

virtual void vtkAMRDualGridHelper::EnableAsynchronousCommunicationOff ( )
virtual

When this option is on (the default) and a controller that supports asynchronous communication (like MPI) is detected, use asynchronous communication where appropriate.

This can prevent processes from blocking while waiting for communication in other processes to finish.

◆ GetController()

virtual vtkMultiProcessController* vtkAMRDualGridHelper::GetController ( )
virtual

The controller to use for communication.

◆ SetController()

virtual void vtkAMRDualGridHelper::SetController ( vtkMultiProcessController )
virtual

The controller to use for communication.

◆ Initialize()

int vtkAMRDualGridHelper::Initialize ( vtkNonOverlappingAMR input)

◆ SetupData()

int vtkAMRDualGridHelper::SetupData ( vtkNonOverlappingAMR input,
const char *  arrayName 
)

◆ GetGlobalOrigin()

const double* vtkAMRDualGridHelper::GetGlobalOrigin ( )
inline

Definition at line 88 of file vtkAMRDualGridHelper.h.

◆ GetRootSpacing()

const double* vtkAMRDualGridHelper::GetRootSpacing ( )
inline

Definition at line 89 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfBlocks()

int vtkAMRDualGridHelper::GetNumberOfBlocks ( )
inline

Definition at line 90 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfLevels()

int vtkAMRDualGridHelper::GetNumberOfLevels ( )
inline

Definition at line 91 of file vtkAMRDualGridHelper.h.

◆ GetNumberOfBlocksInLevel()

int vtkAMRDualGridHelper::GetNumberOfBlocksInLevel ( int  level)

◆ GetBlock() [1/2]

vtkAMRDualGridHelperBlock* vtkAMRDualGridHelper::GetBlock ( int  level,
int  blockIdx 
)

◆ GetBlock() [2/2]

vtkAMRDualGridHelperBlock* vtkAMRDualGridHelper::GetBlock ( int  level,
int  xGrid,
int  yGrid,
int  zGrid 
)

◆ CopyDegenerateRegionBlockToBlock()

void vtkAMRDualGridHelper::CopyDegenerateRegionBlockToBlock ( int  regionX,
int  regionY,
int  regionZ,
vtkAMRDualGridHelperBlock lowResBlock,
vtkDataArray lowResArray,
vtkAMRDualGridHelperBlock highResBlock,
vtkDataArray highResArray 
)

I am generalizing the code that copies lowres blocks to highres ghost regions.

I need to do this for the clip filter (level mask).

For transitions between levels, degeneracy works well to create and contour wedges and pyramids, but the volume fraction values in the high-level blocks ghost cells need to be the same as the closest cell in the low resolution block. These methods copy low values to high.

◆ QueueRegionRemoteCopy()

void vtkAMRDualGridHelper::QueueRegionRemoteCopy ( int  regionX,
int  regionY,
int  regionZ,
vtkAMRDualGridHelperBlock lowResBlock,
vtkDataArray lowResArray,
vtkAMRDualGridHelperBlock highResBlock,
vtkDataArray highResArray 
)

This queues up either a copy from a remote process to this process or a copy from this process to a remote process.

Only the local block needs an array. LowRes block is the source.

◆ ProcessRegionRemoteCopyQueue()

void vtkAMRDualGridHelper::ProcessRegionRemoteCopyQueue ( bool  hackLevelFlag)

This should be called on every process.

It processes the queue of region copies. It sends and copies the regions into blocks.

◆ ClearRegionRemoteCopyQueue()

void vtkAMRDualGridHelper::ClearRegionRemoteCopyQueue ( )

Call this before adding regions to the queue.

It clears the queue.

◆ GetArrayName()

virtual char* vtkAMRDualGridHelper::GetArrayName ( )
virtual

It is convenient to get this here.


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