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

#include <vtkPStructuredGridConnectivity.h>

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

Public Types

typedef vtkStructuredGridConnectivity Superclass
 
- Public Types inherited from vtkStructuredGridConnectivity
typedef vtkAbstractGridConnectivity Superclass
 
- Public Types inherited from vtkAbstractGridConnectivity
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkPStructuredGridConnectivityNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void SetNumberOfGrids (const unsigned int N)
 
int GetGridRank (const int gridID)
 
bool IsGridRemote (const int gridID)
 
bool IsGridLocal (const int gridID)
 
void Initialize ()
 
void ComputeNeighbors ()
 
virtual void CreateGhostLayers (const int N=1)
 
virtual void SetController (vtkMultiProcessController *)
 
virtual vtkMultiProcessControllerGetController ()
 
void RegisterGrid (const int gridID, int extents[6], vtkUnsignedCharArray *nodesGhostArray, vtkUnsignedCharArray *cellGhostArray, vtkPointData *pointData, vtkCellData *cellData, vtkPoints *gridNodes)
 
int GetNumberOfLocalGrids ()
 
- Public Member Functions inherited from vtkStructuredGridConnectivity
vtkStructuredGridConnectivityNewInstance () const
 
void GetGridExtent (const int gridID, int extent[6])
 
void SetGhostedGridExtent (const int gridID, int ext[6])
 
void GetGhostedGridExtent (const int gridID, int ext[6])
 
vtkStructuredNeighbor GetGridNeighbor (const int gridID, const int nei)
 
vtkIdListGetNeighbors (const int gridID, int *extents)
 
virtual void SetWholeExtent (int, int, int, int, int, int)
 
virtual void SetWholeExtent (int[6])
 
virtual intGetWholeExtent ()
 
virtual void GetWholeExtent (int &, int &, int &, int &, int &, int &)
 
virtual void GetWholeExtent (int[6])
 
virtual int GetDataDimension ()
 
int GetNumberOfNeighbors (const int gridID)
 
void FillGhostArrays (const int gridID, vtkUnsignedCharArray *nodesArray, vtkUnsignedCharArray *cellsArray)
 
- Public Member Functions inherited from vtkAbstractGridConnectivity
vtkAbstractGridConnectivityNewInstance () const
 
unsigned int GetNumberOfGrids ()
 
vtkUnsignedCharArrayGetGhostedPointGhostArray (const int gridID)
 
vtkUnsignedCharArrayGetGhostedCellGhostArray (const int gridID)
 
vtkPointDataGetGhostedGridPointData (const int gridID)
 
vtkCellDataGetGhostedGridCellData (const int gridID)
 
vtkPointsGetGhostedPoints (const int gridID)
 
virtual void SetNumberOfGhostLayers (unsigned int)
 
virtual unsigned int GetNumberOfGhostLayers ()
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () 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)
 
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 *)
 
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 vtkPStructuredGridConnectivityNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPStructuredGridConnectivitySafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkStructuredGridConnectivity
static vtkStructuredGridConnectivityNew ()
 
static int IsTypeOf (const char *type)
 
static vtkStructuredGridConnectivitySafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractGridConnectivity
static int IsTypeOf (const char *type)
 
static vtkAbstractGridConnectivitySafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
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 vtkObjectBaseNew ()
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkPStructuredGridConnectivity ()
 
 ~vtkPStructuredGridConnectivity ()
 
bool GridExtentsAreEqual (int rhs[6], int lhs[6])
 
bool HasPointData (const int gridIdx)
 
bool HasCellData (const int gridIdx)
 
bool HasPoints (const int gridIdx)
 
void InitializeMessageCounters ()
 
void ClearRemoteData ()
 
void ClearRawBuffers ()
 
void RegisterRemoteGrid (const int gridID, int extents[6], int process)
 
virtual void TransferGhostDataFromNeighbors (const int gridID)
 
void PackGhostData ()
 
void UnpackGhostData ()
 
void SerializeBufferSizes (int *&sizesbuf, vtkIdType &N)
 
void ExchangeBufferSizes ()
 
void ExchangeGhostDataInit ()
 
void PostReceives ()
 
void PostSends ()
 
void CommunicateGhostData ()
 
void ExchangeGhostDataPost ()
 
void ExchangeGhostData ()
 
void ExchangeGridExtents ()
 
void SerializeGridExtents (int *&sndbuffer, vtkIdType &N)
 
void TransferRemoteNeighborData (const int gridIdx, const int nei, const vtkStructuredNeighbor &Neighbor)
 
void DeserializeBufferSizesForProcess (int *buffersizes, vtkIdType N, const int processId)
 
void SerializeGhostPoints (const int gridIdx, int ext[6], vtkMultiProcessStream &bytestream)
 
void SerializeDataArray (vtkDataArray *dataArray, vtkMultiProcessStream &bytestream)
 
void SerializeFieldData (int sourceExtent[6], int targetExtent[6], vtkFieldData *fieldData, vtkMultiProcessStream &bytestream)
 
void SerializeGhostPointData (const int gridIdx, int ext[6], vtkMultiProcessStream &bytestream)
 
void SerializeGhostCellData (const int gridIdx, int ext[6], vtkMultiProcessStream &bytestream)
 
void DeserializeGhostPoints (const int gridIdx, const int nei, int ext[6], vtkMultiProcessStream &bytestream)
 
void DeserializeDataArray (vtkDataArray *&dataArray, const int dataType, const int numberOfTuples, const int numberOfComponents, vtkMultiProcessStream &bytestream)
 
void DeserializeFieldData (int ext[6], vtkFieldData *fieldData, vtkMultiProcessStream &bytestream)
 
void DeserializeGhostPointData (const int gridIdx, const int nei, int ext[6], vtkMultiProcessStream &bytestream)
 
void DeserializeGhostCellData (const int gridIdx, const int nei, int ext[6], vtkMultiProcessStream &bytestream)
 
void SerializeGhostData (const int sndGridID, const int rcvGrid, int sndext[6], unsigned char *&buffer, unsigned int &size)
 
void DeserializeGhostData (const int gridID, const int neiListID, const int neiGridIdx, int rcvext[6], unsigned char *buffer, unsigned int size)
 
void DeserializeGridExtentForProcess (int *rcvbuffer, vtkIdType &N, const int processId)
 
- Protected Member Functions inherited from vtkStructuredGridConnectivity
 vtkStructuredGridConnectivity ()
 
virtual ~vtkStructuredGridConnectivity ()
 
int Cardinality (int S[2])
 
void GetRealExtent (const int gridID, int GridExtent[6], int RealExtent[6])
 
bool IsNodeOnBoundary (const int i, const int j, const int k)
 
int IntervalOverlap (int A[2], int B[2], int overlap[2])
 
int DoPartialOverlap (int s[2], int S[2], int overlap[2])
 
void EstablishNeighbors (const int i, const int j)
 
void AcquireDataDescription ()
 
bool HasBlockConnection (const int gridID, const int blockDirection)
 
void RemoveBlockConnection (const int gridID, const int blockDirection)
 
void AddBlockConnection (const int gridID, const int blockDirection)
 
void ClearBlockConnections (const int gridID)
 
int GetNumberOfConnectingBlockFaces (const int gridID)
 
void SetBlockTopology (const int gridID)
 
void CreateGhostedExtent (const int gridID, const int N)
 
void CreateGhostedMaskArrays (const int gridID)
 
void InitializeGhostData (const int gridID)
 
void AllocatePointData (vtkPointData *RPD, const int N, vtkPointData *PD)
 
void AllocateCellData (vtkCellData *RCD, const int N, vtkCellData *CD)
 
void TransferRegisteredDataToGhostedData (const int gridID)
 
void ComputeNeighborSendAndRcvExtent (const int gridID, const int N)
 
int GetNeighborIndex (const int gridIdx, const int NeighborGridIdx)
 
void PrintExtent (int extent[6])
 
bool InBounds (const int idx, const int Lo, const int Hi)
 
bool StrictlyInsideBounds (const int idx, const int Lo, const int Hi)
 
bool IsSubset (int A[2], int B[2])
 
int GetNumberOfNodesPerCell (const int dim)
 
void FillNodesGhostArray (const int gridID, const int dataDescription, int GridExtent[6], int RealExtent[6], vtkUnsignedCharArray *nodeArray)
 
void FillCellsGhostArray (const int dataDescription, const int numNodesPerCell, int dims[3], int CellExtent[6], vtkUnsignedCharArray *nodesArray, vtkUnsignedCharArray *cellsArray)
 
void SearchNeighbors (const int gridID, const int i, const int j, const int k, vtkIdList *neiList)
 
void MarkNodeProperty (const int gridID, const int i, const int j, const int k, int ext[6], int RealExtent[6], unsigned char &pfield)
 
void MarkCellProperty (unsigned char &pfield, unsigned char *nodeGhostFields, const int numNodes)
 
bool IsGhostNode (int GridExtent[6], int RealExtent[6], const int i, const int j, const int k)
 
bool IsNodeOnBoundaryOfExtent (const int i, const int j, const int k, int ext[6])
 
bool IsNodeOnSharedBoundary (const int gridID, int RealExtent[6], const int i, const int j, const int k)
 
bool IsNodeInterior (const int i, const int j, const int k, int GridExtent[6])
 
bool IsNodeWithinExtent (const int i, const int j, const int k, int GridExtent[6])
 
void SetNeighbors (const int i, const int j, int i2jOrientation[3], int j2iOrientation[3], int overlapExtent[6])
 
void DetermineNeighborOrientation (const int idx, int A[2], int B[2], int overlap[2], int orient[3])
 
void DetectNeighbors (const int i, const int j, int ex1[6], int ex2[6], int orientation[3], int ndim)
 
int PartialOverlap (int A[2], const int CofA, int B[2], const int CofB, int overlap[2])
 
void GetIJKBlockOrientation (const int i, const int j, const int k, int ext[6], int orientation[3])
 
int Get1DOrientation (const int idx, const int ExtentLo, const int ExtentHi, const int OnLo, const int OnHi, const int NotOnBoundary)
 
void GetGhostedExtent (int *ghostedExtent, int GridExtent[6], const int minIdx, const int maxIdx, const int N)
 
void TransferLocalNeighborData (const int gridID, const vtkStructuredNeighbor &Neighor)
 
void CopyCoordinates (vtkPoints *source, vtkIdType sourceIdx, vtkPoints *target, vtkIdType targetIdx)
 
void CopyFieldData (vtkFieldData *source, vtkIdType sourceIdx, vtkFieldData *target, vtkIdType targetIdx)
 
- Protected Member Functions inherited from vtkAbstractGridConnectivity
 vtkAbstractGridConnectivity ()
 
virtual ~vtkAbstractGridConnectivity ()
 
void RegisterGridNodes (const int gridID, vtkPoints *nodes)
 
void RegisterGridGhostArrays (const int gridID, vtkUnsignedCharArray *nodesArray, vtkUnsignedCharArray *cellsArray)
 
void RegisterFieldData (const int gridID, vtkPointData *PointData, vtkCellData *CellData)
 
void AllocateUserRegisterDataStructures ()
 
void DeAllocateUserRegisterDataStructures ()
 
void AllocateInternalDataStructures ()
 
void DeAllocateInternalDataStructures ()
 
- 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

vtkMultiProcessControllerController
 
int Rank
 
bool Initialized
 
std::vector< intGridRanks
 
std::vector< intGridIds
 
std::vector< std::vector< vtkPoints * > > RemotePoints
 
std::vector< std::vector< vtkPointData * > > RemotePointData
 
std::vector< std::vector< vtkCellData * > > RemoteCellData
 
std::vector< std::vector< unsigned int > > SendBufferSizes
 
std::vector< std::vector< unsigned int > > RcvBufferSizes
 
std::vector< std::vector< unsigned char * > > SendBuffers
 
std::vector< std::vector< unsigned char * > > RcvBuffers
 
int TotalNumberOfSends
 
int TotalNumberOfRcvs
 
int TotalNumberOfMsgs
 
vtkMPICommunicator::RequestMPIRequests
 
- Protected Attributes inherited from vtkStructuredGridConnectivity
int DataDimension
 
int DataDescription
 
int WholeExtent [6]
 
std::vector< intGridExtents
 
std::vector< intGhostedExtents
 
std::vector< unsigned char > BlockTopology
 
std::vector< std::vector< vtkStructuredNeighbor > > Neighbors
 
std::map< std::pair< int, int >, intNeighborPair2NeighborListIndex
 
- Protected Attributes inherited from vtkAbstractGridConnectivity
unsigned int NumberOfGrids
 
unsigned int NumberOfGhostLayers
 
std::vector< vtkUnsignedCharArray * > GridPointGhostArrays
 
std::vector< vtkUnsignedCharArray * > GridCellGhostArrays
 
std::vector< vtkPointData * > GridPointData
 
std::vector< vtkCellData * > GridCellData
 
std::vector< vtkPoints * > GridPoints
 
bool AllocatedGhostDataStructures
 
std::vector< vtkPointData * > GhostedGridPointData
 
std::vector< vtkCellData * > GhostedGridCellData
 
std::vector< vtkUnsignedCharArray * > GhostedPointGhostArray
 
std::vector< vtkUnsignedCharArray * > GhostedCellGhostArray
 
std::vector< vtkPoints * > GhostedGridPoints
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

vtkPStructuredGridConnectivity inherits from vtkStructuredGridConnectivity and implements functionality to compute the neighboring topology within a single, partitioned and distributed structured grid dataset.

Warning
Initialize(), ComputeNeighbors() and CreateGhostLayers() are collective operations, every process must call that method.
See also
vtkStructuredGridConnectivity vtkGhostArray
Tests:
vtkPStructuredGridConnectivity (Tests)

Definition at line 50 of file vtkPStructuredGridConnectivity.h.

Member Typedef Documentation

Definition at line 55 of file vtkPStructuredGridConnectivity.h.

Constructor & Destructor Documentation

vtkPStructuredGridConnectivity::vtkPStructuredGridConnectivity ( )
protected
vtkPStructuredGridConnectivity::~vtkPStructuredGridConnectivity ( )
protected

Member Function Documentation

static vtkPStructuredGridConnectivity* vtkPStructuredGridConnectivity::New ( )
static
static int vtkPStructuredGridConnectivity::IsTypeOf ( const char *  type)
static
virtual int vtkPStructuredGridConnectivity::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 vtkStructuredGridConnectivity.

static vtkPStructuredGridConnectivity* vtkPStructuredGridConnectivity::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkPStructuredGridConnectivity::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkStructuredGridConnectivity.

vtkPStructuredGridConnectivity* vtkPStructuredGridConnectivity::NewInstance ( ) const
void vtkPStructuredGridConnectivity::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 vtkStructuredGridConnectivity.

virtual void vtkPStructuredGridConnectivity::SetController ( vtkMultiProcessController )
virtual

Set & Get the process controller

virtual vtkMultiProcessController* vtkPStructuredGridConnectivity::GetController ( )
virtual

Set & Get the process controller

void vtkPStructuredGridConnectivity::SetNumberOfGrids ( const unsigned int  N)
virtual

Sets the total number of domains distributed among processors

Reimplemented from vtkStructuredGridConnectivity.

void vtkPStructuredGridConnectivity::RegisterGrid ( const int  gridID,
int  extents[6],
vtkUnsignedCharArray nodesGhostArray,
vtkUnsignedCharArray cellGhostArray,
vtkPointData pointData,
vtkCellData cellData,
vtkPoints gridNodes 
)
virtual
int vtkPStructuredGridConnectivity::GetNumberOfLocalGrids ( )
inline

Returns the number of local grids registers by the process that owns the current vtkPStructuredGridConnectivity instance

Definition at line 80 of file vtkPStructuredGridConnectivity.h.

int vtkPStructuredGridConnectivity::GetGridRank ( const int  gridID)
inline

Returns the rank of the given gridID. A nominal value of -1 for the return value of this method indicates that possibly ComputeNeighbors has not been called and consequently the GridRanks vector has not been populated yet.

Definition at line 510 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::IsGridRemote ( const int  gridID)
inline

Returns true iff the grid is remote, otherwise false.

Definition at line 493 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::IsGridLocal ( const int  gridID)
inline

Returns true iff the grid corresponding to the given gridID is local.

Definition at line 499 of file vtkPStructuredGridConnectivity.h.

void vtkPStructuredGridConnectivity::Initialize ( )

Initializes this instance of vtkPStructuredGridConnectivity, essentially, the acquires the local process ID from the registered controller. If a controller is not registered, the global controller is set.

void vtkPStructuredGridConnectivity::ComputeNeighbors ( )
virtual

Computes the neighboring topology of a distributed structured grid data-set. See vtkStructuredGridConnectivity::ComputeNeighbors

Reimplemented from vtkStructuredGridConnectivity.

virtual void vtkPStructuredGridConnectivity::CreateGhostLayers ( const int  N = 1)
virtual

Creates ghost layers on the grids owned by this process using data from both local and remote block neighbors.

Reimplemented from vtkStructuredGridConnectivity.

bool vtkPStructuredGridConnectivity::GridExtentsAreEqual ( int  rhs[6],
int  lhs[6] 
)
inlineprotected

Returns true if the two extents are equal, otherwise false.

Definition at line 354 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::HasPointData ( const int  gridIdx)
inlineprotected

Returns true iff the grid corresponding to the given ID has point data.

Definition at line 368 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::HasCellData ( const int  gridIdx)
inlineprotected

Returns true iff the grid corresponding to the given ID has cell data.

Definition at line 383 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::HasPoints ( const int  gridIdx)
inlineprotected

Returns true iff the grid corresponding to the given ID has points.

Definition at line 398 of file vtkPStructuredGridConnectivity.h.

void vtkPStructuredGridConnectivity::InitializeMessageCounters ( )
inlineprotected

Sets all message counters to 0.

Definition at line 412 of file vtkPStructuredGridConnectivity.h.

void vtkPStructuredGridConnectivity::ClearRemoteData ( )
inlineprotected

Clears all internal VTK data-structures that are used to store the remote ghost data.

Definition at line 447 of file vtkPStructuredGridConnectivity.h.

void vtkPStructuredGridConnectivity::ClearRawBuffers ( )
inlineprotected

Clears all raw send/rcv buffers

Definition at line 418 of file vtkPStructuredGridConnectivity.h.

void vtkPStructuredGridConnectivity::RegisterRemoteGrid ( const int  gridID,
int  extents[6],
int  process 
)
protected

Registers a remote grid with the given grid Id, structured extents and process.

void vtkPStructuredGridConnectivity::TransferRemoteNeighborData ( const int  gridIdx,
const int  nei,
const vtkStructuredNeighbor Neighbor 
)
protected

This method transfers all the remote neighbor data to the ghosted grid instance of the grid corresponding to the given grid index.

virtual void vtkPStructuredGridConnectivity::TransferGhostDataFromNeighbors ( const int  gridID)
protectedvirtual

This method transfers the fields (point data and cell data) to the ghost extents from the neighboring grids of the grid corresponding to the given gridID.

Reimplemented from vtkStructuredGridConnectivity.

void vtkPStructuredGridConnectivity::PackGhostData ( )
protected

Helper method to pack all the ghost data into send buffers.

void vtkPStructuredGridConnectivity::UnpackGhostData ( )
protected

Helper method to unpack the raw ghost data from the receive buffers in to the VTK remote point data-structures.

void vtkPStructuredGridConnectivity::DeserializeBufferSizesForProcess ( int buffersizes,
vtkIdType  N,
const int  processId 
)
protected

Helper method to deserialize the buffer sizes coming from the given process.

void vtkPStructuredGridConnectivity::SerializeBufferSizes ( int *&  sizesbuf,
vtkIdType N 
)
protected

Helper method to serialize the buffer sizes for the grids of this process to neighboring grids.

void vtkPStructuredGridConnectivity::ExchangeBufferSizes ( )
protected

Helper method to exchange buffer sizes.Each process sends the send buffer size of each grid to each of its neighbors.

void vtkPStructuredGridConnectivity::ExchangeGhostDataInit ( )
protected

Helper method for exchanging ghost data. It loops through all the grids, and for each neighbor it constructs the corresponding send buffer. size and posts a non-blocking receive.

void vtkPStructuredGridConnectivity::PostReceives ( )
protected

Helper method to communicate ghost data. Loops through all the neighbors and for every remote neighbor posts a non-blocking receive.

void vtkPStructuredGridConnectivity::PostSends ( )
protected

Helper method to communicate ghost data. Loops through the neighbors and for every remote neighbor posts a non-blocking send.

void vtkPStructuredGridConnectivity::CommunicateGhostData ( )
protected

Helper method for exchanging ghost data. It loops through all the grids and for each neighbor of each grid it serializes the data in the send extent and posts a non-blocking send.

void vtkPStructuredGridConnectivity::ExchangeGhostDataPost ( )
protected

Helper method for exchanging ghost data. It blocks until all requests are complete (via a waitAll) and then de-serializes the receive buffers to form the corresponding remote data-structures.

void vtkPStructuredGridConnectivity::ExchangeGhostData ( )
protected

Exchanges ghost data of the grids owned by this process.

void vtkPStructuredGridConnectivity::SerializeGhostPoints ( const int  gridIdx,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to serialize the ghost points to send to a remote process. Called from SerializeGhostData.

void vtkPStructuredGridConnectivity::SerializeDataArray ( vtkDataArray dataArray,
vtkMultiProcessStream bytestream 
)
protected

Serializes the data array into a bytestream.

void vtkPStructuredGridConnectivity::SerializeFieldData ( int  sourceExtent[6],
int  targetExtent[6],
vtkFieldData fieldData,
vtkMultiProcessStream bytestream 
)
protected

Helper method to serialize field data. Called from SerializeGhostPointData and SerializeGhostCellData.

void vtkPStructuredGridConnectivity::SerializeGhostPointData ( const int  gridIdx,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to serialize ghost point data. Called from SerializeGhostData.

void vtkPStructuredGridConnectivity::SerializeGhostCellData ( const int  gridIdx,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to serialize ghost cell data. Called from SerializeGhostData.

void vtkPStructuredGridConnectivity::DeserializeGhostPoints ( const int  gridIdx,
const int  nei,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to de-serialize the ghost points received from a remote process. Called from DeserializeGhostData.

void vtkPStructuredGridConnectivity::DeserializeDataArray ( vtkDataArray *&  dataArray,
const int  dataType,
const int  numberOfTuples,
const int  numberOfComponents,
vtkMultiProcessStream bytestream 
)
protected

Helper method to deserialize the data array from a bytestream.

void vtkPStructuredGridConnectivity::DeserializeFieldData ( int  ext[6],
vtkFieldData fieldData,
vtkMultiProcessStream bytestream 
)
protected

Helper method to de-serialize field data. Called from DeserializeGhostPointData and DeserializeGhostCellData.

void vtkPStructuredGridConnectivity::DeserializeGhostPointData ( const int  gridIdx,
const int  nei,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to de-serialize the ghost point data received from a remote process. Called from DeserializeGhostData.

void vtkPStructuredGridConnectivity::DeserializeGhostCellData ( const int  gridIdx,
const int  nei,
int  ext[6],
vtkMultiProcessStream bytestream 
)
protected

Helper method to de-serialize the ghost cell data received from a remote process. Called from DeserializeGhostCellData.

void vtkPStructuredGridConnectivity::SerializeGhostData ( const int  sndGridID,
const int  rcvGrid,
int  sndext[6],
unsigned char *&  buffer,
unsigned int size 
)
protected

Given a grid ID and the corresponding send extent, this method serializes the grid and data within the given extent. Upon return, the buffer is allocated and contains the data in raw form, ready to be sent. Called from vtkPStructuredGridConnectivity::PackGhostData().

void vtkPStructuredGridConnectivity::DeserializeGhostData ( const int  gridID,
const int  neiListID,
const int  neiGridIdx,
int  rcvext[6],
unsigned char *  buffer,
unsigned int  size 
)
protected

Given the raw buffer consisting of ghost data, this method deserializes the object and returns the gridID and rcvext of the grid.

void vtkPStructuredGridConnectivity::ExchangeGridExtents ( )
protected

Exchanges the grid extents among all processes and fully populates the GridExtents vector.

void vtkPStructuredGridConnectivity::SerializeGridExtents ( int *&  sndbuffer,
vtkIdType N 
)
protected

Serializes the grid extents and information in a buffer to send over MPI The data is serialized as follows: ID imin imax jmin jmax kmin kmax

void vtkPStructuredGridConnectivity::DeserializeGridExtentForProcess ( int rcvbuffer,
vtkIdType N,
const int  processId 
)
protected

Deserializes the received grid extent information to the GridExtents internal data-structures.

Member Data Documentation

vtkMultiProcessController* vtkPStructuredGridConnectivity::Controller
protected

Definition at line 114 of file vtkPStructuredGridConnectivity.h.

int vtkPStructuredGridConnectivity::Rank
protected

Definition at line 115 of file vtkPStructuredGridConnectivity.h.

bool vtkPStructuredGridConnectivity::Initialized
protected

Definition at line 116 of file vtkPStructuredGridConnectivity.h.

std::vector< int > vtkPStructuredGridConnectivity::GridRanks
protected

Definition at line 119 of file vtkPStructuredGridConnectivity.h.

std::vector< int > vtkPStructuredGridConnectivity::GridIds
protected

Definition at line 120 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< vtkPoints* > > vtkPStructuredGridConnectivity::RemotePoints
protected

Definition at line 125 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< vtkPointData* > > vtkPStructuredGridConnectivity::RemotePointData
protected

Definition at line 126 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< vtkCellData* > > vtkPStructuredGridConnectivity::RemoteCellData
protected

Definition at line 127 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< unsigned int > > vtkPStructuredGridConnectivity::SendBufferSizes
protected

Definition at line 132 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< unsigned int > > vtkPStructuredGridConnectivity::RcvBufferSizes
protected

Definition at line 133 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< unsigned char* > > vtkPStructuredGridConnectivity::SendBuffers
protected

Definition at line 134 of file vtkPStructuredGridConnectivity.h.

std::vector< std::vector< unsigned char* > > vtkPStructuredGridConnectivity::RcvBuffers
protected

Definition at line 135 of file vtkPStructuredGridConnectivity.h.

int vtkPStructuredGridConnectivity::TotalNumberOfSends
protected

Definition at line 137 of file vtkPStructuredGridConnectivity.h.

int vtkPStructuredGridConnectivity::TotalNumberOfRcvs
protected

Definition at line 138 of file vtkPStructuredGridConnectivity.h.

int vtkPStructuredGridConnectivity::TotalNumberOfMsgs
protected

Definition at line 139 of file vtkPStructuredGridConnectivity.h.

vtkMPICommunicator::Request* vtkPStructuredGridConnectivity::MPIRequests
protected

Definition at line 142 of file vtkPStructuredGridConnectivity.h.


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