VTK: vtkStructuredImplicitConnectivity Class Reference

| VTK 9.3.1

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkStructuredImplicitConnectivity Class Reference

a distributed structured dataset that is implicitly connected among partitions without abutting. More...

`#include <vtkStructuredImplicitConnectivity.h>`

Inheritance diagram for vtkStructuredImplicitConnectivity:
[legend]
Collaboration diagram for vtkStructuredImplicitConnectivity:
[legend]

## Public Types
typedef vtkObject | Superclass

## Public Member Functions
void | PrintSelf (ostream &os, vtkIndent indent) override
| Methods invoked by print to print information about the object including superclasses. More...
virtual vtkTypeBool | IsA (const char *type)
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
vtkStructuredImplicitConnectivity * | NewInstance () const
void | SetWholeExtent (int wholeExt[6])
| Sets the whole extent for the distributed structured domain. More...
void | RegisterGrid (int gridID, int extent[6], vtkPoints *gridPnts, vtkPointData *pointData)
void | RegisterRectilinearGrid (int gridID, int extent[6], vtkDataArray *xcoords, vtkDataArray *ycoords, vtkDataArray *zcoords, vtkPointData *pointData)
void | EstablishConnectivity ()
| Finds implicit connectivity for a distributed structured dataset. More...
bool | HasImplicitConnectivity ()
| Checks if there is implicit connectivity. More...
void | ExchangeData ()
| Exchanges one layer (row or column) of data between neighboring grids to fix the implicit connectivity. More...
void | GetOutputStructuredGrid (int gridID, vtkStructuredGrid *grid)
| Gets the output structured grid instance on this process. More...
void | GetOutputImageData (int gridID, vtkImageData *grid)
| Gets the output uniform grid instance on this process. More...
void | GetOutputRectilinearGrid (int gridID, vtkRectilinearGrid *grid)
| Gets the output rectilinear grid instance on this process. More...
Public Member Functions inherited from vtkObject
| vtkBaseTypeMacro (vtkObject, vtkObjectBase)
virtual void | DebugOn ()
| Turn debugging output on. More...
virtual void | DebugOff ()
| Turn debugging output off. More...
bool | GetDebug ()
| Get the value of the debug flag. More...
void | SetDebug (bool debugFlag)
| Set the value of the debug flag. More...
virtual void | Modified ()
| Update the modification time for this object. More...
virtual vtkMTimeType | GetMTime ()
| Return this object's modified time. More...
void | RemoveObserver (unsigned long tag)
void | RemoveObservers (unsigned long event)
void | RemoveObservers (const char *event)
void | RemoveAllObservers ()
vtkTypeBool | HasObserver (unsigned long event)
vtkTypeBool | HasObserver (const char *event)
vtkTypeBool | InvokeEvent (unsigned long event)
vtkTypeBool | InvokeEvent (const char *event)
std::string | GetObjectDescription () const override
| The object description printed in messages and PrintSelf output. More...
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
vtkCommand * | GetCommand (unsigned long tag)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
void | RemoveObserver (vtkCommand *)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
void | RemoveObservers (unsigned long event, vtkCommand *)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
void | RemoveObservers (const char *event, vtkCommand *)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
vtkTypeBool | HasObserver (const char *event, vtkCommand *)
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
template<class U , class T >
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
template<class U , class T >
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
template<class U , class T >
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
| Allow user to set the AbortFlagOn() with the return value of the callback method. More...
vtkTypeBool | InvokeEvent (unsigned long event, void *callData)
| This method invokes an event and return whether the event was aborted or not. More...
vtkTypeBool | InvokeEvent (const char *event, void *callData)
| This method invokes an event and return whether the event was aborted or not. More...
virtual void | SetObjectName (const std::string &objectName)
| Set/get the name of this object for reporting purposes. More...
virtual std::string | GetObjectName () const
| Set/get the name of this object for reporting purposes. More...
Public Member Functions inherited from vtkObjectBase
const char * | GetClassName () const
| Return the class name as a string. More...
virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name)
| Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
virtual void | Delete ()
| Delete a VTK object. More...
virtual void | FastDelete ()
| Delete a reference to this object. More...
void | InitializeObjectBase ()
void | Print (ostream &os)
| Print an object to an ostream. More...
virtual void | Register (vtkObjectBase *o)
| Increase the reference count (mark as used by another object). More...
virtual void | UnRegister (vtkObjectBase *o)
| Decrease the reference count (release by another object). More...
int | GetReferenceCount ()
| Return the current reference count of this object. More...
void | SetReferenceCount (int)
| Sets the reference count. More...
bool | GetIsInMemkind () const
| A local state flag that remembers whether this object lives in the normal or extended memory space. More...
virtual void | PrintHeader (ostream &os, vtkIndent indent)
| Methods invoked by print to print information about the object including superclasses. More...
virtual void | PrintTrailer (ostream &os, vtkIndent indent)
| Methods invoked by print to print information about the object including superclasses. More...
virtual bool | UsesGarbageCollector () const
| Indicate whether the class uses `vtkGarbageCollector` or not. More...

## Static Public Member Functions
static vtkStructuredImplicitConnectivity * | New ()
static vtkTypeBool | IsTypeOf (const char *type)
static vtkStructuredImplicitConnectivity * | SafeDownCast (vtkObjectBase *o)
Static Public Member Functions inherited from vtkObject
static vtkObject * | New ()
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
static void | BreakOnError ()
| This method is called when vtkErrorMacro executes. More...
static void | SetGlobalWarningDisplay (vtkTypeBool val)
| This is a global flag that controls whether any debug, warning or error messages are displayed. More...
static void | GlobalWarningDisplayOn ()
| This is a global flag that controls whether any debug, warning or error messages are displayed. More...
static void | GlobalWarningDisplayOff ()
| This is a global flag that controls whether any debug, warning or error messages are displayed. More...
static vtkTypeBool | GetGlobalWarningDisplay ()
| This is a global flag that controls whether any debug, warning or error messages are displayed. More...
Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool | IsTypeOf (const char *name)
| Return 1 if this class type is the same type of (or a subclass of) the named class. More...
static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name)
| Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
static vtkObjectBase * | New ()
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
static void | SetMemkindDirectory (const char *directoryname)
| The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. More...
static bool | GetUsingMemkind ()
| A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. More...

## Protected Member Functions
virtual vtkObjectBase * | NewInstanceInternal () const
| vtkStructuredImplicitConnectivity ()
| ~vtkStructuredImplicitConnectivity () override
void | SetController (vtkMPIController *)
bool | GlobalDataDescriptionMatch ()
| Checks if the data description matches globally. More...
void | PackData (int ext[6], vtkMultiProcessStream &bytestream)
| Packs the data to send into a bytestream. More...
void | UnPackData (unsigned char *buffer, unsigned int size)
| Unpacks the data to the output grid. More...
void | AllocateBuffers (int dim)
| Allocates send/rcv buffers needed to carry out the communication. More...
void | ComputeNeighbors ()
| Computes the neighbors with implicit connectivity. More...
void | ConstructOutput ()
| Constructs the output data-structures. More...
void | GrowGrid (int dim)
| Grows grid along a given dimension. More...
void | UpdateNeighborList (int dim)
| Updates the list of neighbors after growing the grid along the given dimension dim. More...
void | GetGlobalImplicitConnectivityState ()
| Gets whether there is implicit connectivity across all processes. More...
void | ExchangeExtents ()
| Exchanges extents among processes. More...
Protected Member Functions inherited from vtkObject
| vtkObject ()
| ~vtkObject () override
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
| These methods allow a command to exclusively grab all events. More...
void | InternalReleaseFocus ()
| These methods allow a command to exclusively grab all events. More...
Protected Member Functions inherited from vtkObjectBase
| vtkObjectBase ()
virtual | ~vtkObjectBase ()
virtual void | ReportReferences (vtkGarbageCollector *)
| vtkObjectBase (const vtkObjectBase &)
void | operator= (const vtkObjectBase &)

## Protected Attributes
vtkMPIController * | Controller
vtk::detail::DomainMetaData * | DomainInfo
vtk::detail::StructuredGrid * | InputGrid
vtk::detail::StructuredGrid * | OutputGrid
vtk::detail::CommunicationManager * | CommManager
Protected Attributes inherited from vtkObject
bool | Debug
vtkTimeStamp | MTime
vtkSubjectHelper * | SubjectHelper
std::string | ObjectName
Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > | ReferenceCount
vtkWeakPointerBase ** | WeakPointers

## Additional Inherited Members
Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction | GetCurrentMallocFunction ()
static vtkReallocingFunction | GetCurrentReallocFunction ()
static vtkFreeingFunction | GetCurrentFreeFunction ()
static vtkFreeingFunction | GetAlternateFreeFunction ()

## Detailed Description

a distributed structured dataset that is implicitly connected among partitions without abutting.

This creates a gap between partitions and introduces a cell that spans multiple zones. This typically arises with finite difference grids, which are partitioned with respect to the nodes of the grid, or, when a filter samples the grid, e.g., to get a lower resolution representation.

This class is intended as a lower-level helper for higher level VTK filters that provides functionality for resolving the implicit connectivity (gap) between two or more partitions of a distributed structured dataset.

Warning
  The present implementation requires:
  - one block/grid per rank.
  - 2-D (XY,YZ or XZ planes) or 3-D datasets.
  - node-center fields must match across processes.

Tests:
  vtkStructuredImplicitConnectivity (Tests)

Definition at line 63 of file vtkStructuredImplicitConnectivity.h.

## Member Typedef Documentation

## ◆ Superclass

typedef vtkObject vtkStructuredImplicitConnectivity::Superclass

Definition at line 68 of file vtkStructuredImplicitConnectivity.h.

## Constructor & Destructor Documentation

## ◆ vtkStructuredImplicitConnectivity()

vtkStructuredImplicitConnectivity::vtkStructuredImplicitConnectivity | ( |  | ) |
| protected

## ◆ ~vtkStructuredImplicitConnectivity()

vtkStructuredImplicitConnectivity::~vtkStructuredImplicitConnectivity | ( |  | ) |
| overrideprotected

## Member Function Documentation

## ◆ New()

static vtkStructuredImplicitConnectivity* vtkStructuredImplicitConnectivity::New | ( |  | ) |
| static

## ◆ PrintSelf()

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

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.

## ◆ IsTypeOf()

static vtkTypeBool vtkStructuredImplicitConnectivity::IsTypeOf | ( | const char * | type | ) |
| static

## ◆ IsA()

virtual vtkTypeBool vtkStructuredImplicitConnectivity::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 vtkObjectBase.

## ◆ SafeDownCast()

static vtkStructuredImplicitConnectivity* vtkStructuredImplicitConnectivity::SafeDownCast | ( | vtkObjectBase * | o | ) |
| static

## ◆ NewInstanceInternal()

virtual vtkObjectBase* vtkStructuredImplicitConnectivity::NewInstanceInternal | ( |  | ) | const
| protectedvirtual

## ◆ NewInstance()

vtkStructuredImplicitConnectivity* vtkStructuredImplicitConnectivity::NewInstance | ( |  | ) | const

## ◆ SetWholeExtent()

void vtkStructuredImplicitConnectivity::SetWholeExtent | ( | int | wholeExt[6] | ) |

Sets the whole extent for the distributed structured domain.

Parameters

  wholeExt | the extent of the entire domain (in).

Note
  All ranks must call this method with the same whole extent.

Postcondition
  this->DomainInfo != nullptr

## ◆ RegisterGrid()

void vtkStructuredImplicitConnectivity::RegisterGrid | ( | int | gridID,
|  | int | extent[6],
|  | vtkPoints * | gridPnts,
|  | vtkPointData * | pointData
| ) |  |

## ◆ RegisterRectilinearGrid()

void vtkStructuredImplicitConnectivity::RegisterRectilinearGrid | ( | int | gridID,
|  | int | extent[6],
|  | vtkDataArray * | xcoords,
|  | vtkDataArray * | ycoords,
|  | vtkDataArray * | zcoords,
|  | vtkPointData * | pointData
| ) |  |

## ◆ EstablishConnectivity()

void vtkStructuredImplicitConnectivity::EstablishConnectivity | ( |  | ) |

Finds implicit connectivity for a distributed structured dataset.

Note
  This is a collective operation, all ranks must call this method.

Precondition
  this->Controller != nullptr
  this->DomainInfo != nullptr

## ◆ HasImplicitConnectivity()

bool vtkStructuredImplicitConnectivity::HasImplicitConnectivity | ( |  | ) |

Checks if there is implicit connectivity.

Returns
  status true if implicit connectivity in one or more dimensions.

## ◆ ExchangeData()

void vtkStructuredImplicitConnectivity::ExchangeData | ( |  | ) |

Exchanges one layer (row or column) of data between neighboring grids to fix the implicit connectivity.

Note
  This is a collective operation, all ranks must call this method.

Precondition
  this->Controller != nullptr
  this->DomainInfo != nullptr

## ◆ GetOutputStructuredGrid()

void vtkStructuredImplicitConnectivity::GetOutputStructuredGrid | ( | int | gridID,
|  | vtkStructuredGrid * | grid
| ) |  |

Gets the output structured grid instance on this process.

Parameters

  gridID | the ID of the grid
  grid | pointer to data-structure where to store the output.

## ◆ GetOutputImageData()

void vtkStructuredImplicitConnectivity::GetOutputImageData | ( | int | gridID,
|  | vtkImageData * | grid
| ) |  |

Gets the output uniform grid instance on this process.

Parameters

  gridID | the ID of the grid.
  grid | pointer to data-structure where to store the output.

## ◆ GetOutputRectilinearGrid()

void vtkStructuredImplicitConnectivity::GetOutputRectilinearGrid | ( | int | gridID,
|  | vtkRectilinearGrid * | grid
| ) |  |

Gets the output rectilinear grid instance on this process.

Parameters

  gridID | the ID of the grid.
  grid | pointer to data-structure where to store the output.

## ◆ SetController()

void vtkStructuredImplicitConnectivity::SetController | ( | vtkMPIController * |  | ) |
| protected

## ◆ GlobalDataDescriptionMatch()

bool vtkStructuredImplicitConnectivity::GlobalDataDescriptionMatch | ( |  | ) |
| protected

Checks if the data description matches globally.

## ◆ PackData()

void vtkStructuredImplicitConnectivity::PackData | ( | int | ext[6],
|  | vtkMultiProcessStream & | bytestream
| ) |  |
| protected

Packs the data to send into a bytestream.

## ◆ UnPackData()

void vtkStructuredImplicitConnectivity::UnPackData | ( | unsigned char * | buffer,
|  | unsigned int | size
| ) |  |
| protected

Unpacks the data to the output grid.

## ◆ AllocateBuffers()

void vtkStructuredImplicitConnectivity::AllocateBuffers | ( | int | dim | ) |
| protected

Allocates send/rcv buffers needed to carry out the communication.

## ◆ ComputeNeighbors()

void vtkStructuredImplicitConnectivity::ComputeNeighbors | ( |  | ) |
| protected

Computes the neighbors with implicit connectivity.

## ◆ ConstructOutput()

void vtkStructuredImplicitConnectivity::ConstructOutput | ( |  | ) |
| protected

Constructs the output data-structures.

## ◆ GrowGrid()

void vtkStructuredImplicitConnectivity::GrowGrid | ( | int | dim | ) |
| protected

Grows grid along a given dimension.

Parameters

  dim | the dimension in query.

## ◆ UpdateNeighborList()

void vtkStructuredImplicitConnectivity::UpdateNeighborList | ( | int | dim | ) |
| protected

Updates the list of neighbors after growing the grid along the given dimension dim.

Parameters

  dim | the dimension in query.

## ◆ GetGlobalImplicitConnectivityState()

void vtkStructuredImplicitConnectivity::GetGlobalImplicitConnectivityState | ( |  | ) |
| protected

Gets whether there is implicit connectivity across all processes.

## ◆ ExchangeExtents()

void vtkStructuredImplicitConnectivity::ExchangeExtents | ( |  | ) |
| protected

Exchanges extents among processes.

Precondition
  this->Controller != nullptr.

Note
  This method is collective operation. All ranks must call it.

## Member Data Documentation

## ◆ Controller

vtkMPIController* vtkStructuredImplicitConnectivity::Controller
| protected

Definition at line 150 of file vtkStructuredImplicitConnectivity.h.

## ◆ DomainInfo

vtk::detail::DomainMetaData* vtkStructuredImplicitConnectivity::DomainInfo
| protected

Definition at line 152 of file vtkStructuredImplicitConnectivity.h.

## ◆ InputGrid

vtk::detail::StructuredGrid* vtkStructuredImplicitConnectivity::InputGrid
| protected

Definition at line 153 of file vtkStructuredImplicitConnectivity.h.

## ◆ OutputGrid

vtk::detail::StructuredGrid* vtkStructuredImplicitConnectivity::OutputGrid
| protected

Definition at line 154 of file vtkStructuredImplicitConnectivity.h.

## ◆ CommManager

vtk::detail::CommunicationManager* vtkStructuredImplicitConnectivity::CommManager
| protected

Definition at line 155 of file vtkStructuredImplicitConnectivity.h.

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

- Filters/ParallelMPI/vtkStructuredImplicitConnectivity.h