VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
vtkAMRUtilities Class Reference

#include <vtkAMRUtilities.h>

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

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkAMRUtilitiesNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkAMRUtilitiesSafeDownCast (vtkObjectBase *o)
static bool HasPartiallyOverlappingGhostCells (vtkOverlappingAMR *amr)
static void DistributeProcessInformation (vtkOverlappingAMR *amr, vtkMultiProcessController *myController, std::vector< int > &ProcessMap)
static void BlankCells (vtkOverlappingAMR *amr, vtkMultiProcessController *myController)
static void StripGhostLayers (vtkOverlappingAMR *ghostedAMRData, vtkOverlappingAMR *strippedAMRData, vtkMultiProcessController *myController=NULL)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkAMRUtilities ()
 ~vtkAMRUtilities ()

Static Protected Member Functions

static void CopyFieldsWithinRealExtent (int realExtent[6], vtkUniformGrid *ghostedGrid, vtkUniformGrid *strippedGrid)
static void CopyFieldData (vtkFieldData *target, vtkIdType targetIdx, vtkFieldData *source, vtkIdType sourceIdx)
static vtkUniformGridStripGhostLayersFromGrid (vtkUniformGrid *grid, int ghost[6])

Detailed Description

A concrete instance of vtkObject that employs a singleton design pattern and implements functionality for AMR specific operations.

See also:
vtkOverlappingAMR, vtkAMRBox
Examples:
vtkAMRUtilities (Examples)
Tests:
vtkAMRUtilities (Tests)

Definition at line 47 of file vtkAMRUtilities.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 51 of file vtkAMRUtilities.h.


Constructor & Destructor Documentation

vtkAMRUtilities::vtkAMRUtilities ( ) [inline, protected]

Definition at line 80 of file vtkAMRUtilities.h.

vtkAMRUtilities::~vtkAMRUtilities ( ) [inline, protected]

Definition at line 81 of file vtkAMRUtilities.h.


Member Function Documentation

static int vtkAMRUtilities::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 vtkAMRUtilities::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.

Reimplemented from vtkObject.

virtual vtkObjectBase* vtkAMRUtilities::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented from vtkObject.

void vtkAMRUtilities::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [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.

static void vtkAMRUtilities::StripGhostLayers ( vtkOverlappingAMR ghostedAMRData,
vtkOverlappingAMR strippedAMRData,
vtkMultiProcessController myController = NULL 
) [static]

This method detects and strips partially overlapping cells from a given AMR dataset. If ghost layers are detected, they are removed and new grid instances are created to represent the stripped data-set otherwise, each block is shallow-copied. .SECTION Assumptions 1) The ghosted AMR data must have complete metadata information.

A quick test of whether partially overlapping ghost cells exist. This test starts from the highest-res boxes and checks if they have partially overlapping cells. The code returns with true once partially overlapping cells are detected. Otherwise, false is returned.

static void vtkAMRUtilities::DistributeProcessInformation ( vtkOverlappingAMR amr,
vtkMultiProcessController myController,
std::vector< int > &  ProcessMap 
) [static]

Compute map from block indices to process ids

static void vtkAMRUtilities::BlankCells ( vtkOverlappingAMR amr,
vtkMultiProcessController myController 
) [static]

Blank cells in overlapping AMR

static void vtkAMRUtilities::CopyFieldsWithinRealExtent ( int  realExtent[6],
vtkUniformGrid ghostedGrid,
vtkUniformGrid strippedGrid 
) [static, protected]

Given the real-extent w.r.t. the ghosted grid, this method copies the field data (point/cell) data on the stripped grid.

static void vtkAMRUtilities::CopyFieldData ( vtkFieldData target,
vtkIdType  targetIdx,
vtkFieldData source,
vtkIdType  sourceIdx 
) [static, protected]

Copies the fields from the given source to the given target.

static vtkUniformGrid* vtkAMRUtilities::StripGhostLayersFromGrid ( vtkUniformGrid grid,
int  ghost[6] 
) [static, protected]

Strips ghost layers from the given grid according to the given ghost vector which encodes the number of cells to remote from each of the 6 sides {imin,imax,jmin,jmax,kmin,kmax}. For example, a ghost vector of {0,2,0,2,0,0} would indicate that there exist 2 ghost cells on the imax and jmax side.


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