VTK
|
#include <vtkAMRUtilities.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkAMRUtilities * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkAMRUtilities * | SafeDownCast (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 vtkObjectBase * | NewInstanceInternal () 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 vtkUniformGrid * | StripGhostLayersFromGrid (vtkUniformGrid *grid, int ghost[6]) |
A concrete instance of vtkObject that employs a singleton design pattern and implements functionality for AMR specific operations.
Definition at line 47 of file vtkAMRUtilities.h.
typedef vtkObject vtkAMRUtilities::Superclass |
Reimplemented from vtkObject.
Definition at line 51 of file vtkAMRUtilities.h.
vtkAMRUtilities::vtkAMRUtilities | ( | ) | [inline, protected] |
Definition at line 80 of file vtkAMRUtilities.h.
vtkAMRUtilities::~vtkAMRUtilities | ( | ) | [inline, protected] |
Definition at line 81 of file vtkAMRUtilities.h.
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.
static vtkAMRUtilities* vtkAMRUtilities::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
virtual vtkObjectBase* vtkAMRUtilities::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
vtkAMRUtilities* vtkAMRUtilities::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
void vtkAMRUtilities::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
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.
static bool vtkAMRUtilities::HasPartiallyOverlappingGhostCells | ( | vtkOverlappingAMR * | amr | ) | [static] |
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.