VTK  9.1.0
Public Types | Public Member Functions | Public Attributes | List of all members
vtkStructuredAMRNeighbor Class Reference

An internal, light-weight object used to store neighbor information for AMR grids. More...

#include <vtkStructuredAMRNeighbor.h>

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

Public Types

enum  NeighborRelationship {
  PARENT , PARTIALLY_OVERLAPPING_PARENT , CHILD , PARTIALLY_OVERLAPPING_CHILD ,
  SAME_LEVEL_SIBLING , COARSE_TO_FINE_SIBLING , FINE_TO_COARSE_SIBLING , UNDEFINED
}
 
- Public Types inherited from vtkStructuredNeighbor
enum  NeighborOrientation {
  SUBSET_LO = -2 , LO = -1 , ONE_TO_ONE = 0 , HI = 1 ,
  SUBSET_HI = 2 , SUBSET_BOTH = 3 , SUPERSET = 4 , UNDEFINED = 5
}
 

Public Member Functions

 vtkStructuredAMRNeighbor ()
 Default constructor.
 
 vtkStructuredAMRNeighbor (const int gridLevel, const int neiID, const int neighborLevel, int gridOverlap[6], int neiOverlap[6], int orient[3], const int relationShip)
 Custom constructor.
 
 vtkStructuredAMRNeighbor (const vtkStructuredAMRNeighbor &N)
 Copy constructor.
 
 ~vtkStructuredAMRNeighbor () override=default
 Destructor.
 
vtkStructuredAMRNeighboroperator= (const vtkStructuredAMRNeighbor &N)
 Overload assignment operator.
 
void GetReceiveExtentOnGrid (const int ng, int gridExtent[6], int ext[6])
 Returns the receive extent w.r.t.
 
std::string GetRelationShipString ()
 Returns the neighbor relationship as a string (useful for debugging).
 
void ComputeSendAndReceiveExtent (int gridRealExtent[6], int gridGhostedExtent[6], int neiRealExtent[6], int WholeExtent[6], const int N) override
 Computes the SendExtent and RcvExtent for this neighbor.
 
- Public Member Functions inherited from vtkStructuredNeighbor
 vtkStructuredNeighbor ()
 Default Constructor.
 
 vtkStructuredNeighbor (const int NeiID, int overlap[6])
 Custom constructor.
 
 vtkStructuredNeighbor (const int NeiID, int overlap[6], int orient[3])
 Custom constructor.
 
 vtkStructuredNeighbor (const vtkStructuredNeighbor &N)
 Copy constructor.
 
virtual ~vtkStructuredNeighbor ()
 Default destructor.
 
vtkStructuredNeighboroperator= (const vtkStructuredNeighbor &N)
 Overload assignment operator.
 

Public Attributes

int GridOverlapExtent [6]
 
int GridLevel
 
int NeighborLevel
 
int RelationShip
 
- Public Attributes inherited from vtkStructuredNeighbor
int NeighborID
 
int OverlapExtent [6]
 
int SendExtent [6]
 
int RcvExtent [6]
 
int Orientation [3]
 

Detailed Description

An internal, light-weight object used to store neighbor information for AMR grids.

See also
vtkStructuredNeighbor vtkStructuredAMRGridConnectivity

Definition at line 30 of file vtkStructuredAMRNeighbor.h.

Member Enumeration Documentation

◆ NeighborRelationship

Enumerator
PARENT 
PARTIALLY_OVERLAPPING_PARENT 
CHILD 
PARTIALLY_OVERLAPPING_CHILD 
SAME_LEVEL_SIBLING 
COARSE_TO_FINE_SIBLING 
FINE_TO_COARSE_SIBLING 
UNDEFINED 

Definition at line 34 of file vtkStructuredAMRNeighbor.h.

Constructor & Destructor Documentation

◆ vtkStructuredAMRNeighbor() [1/3]

vtkStructuredAMRNeighbor::vtkStructuredAMRNeighbor ( )

Default constructor.

◆ vtkStructuredAMRNeighbor() [2/3]

vtkStructuredAMRNeighbor::vtkStructuredAMRNeighbor ( const int  gridLevel,
const int  neiID,
const int  neighborLevel,
int  gridOverlap[6],
int  neiOverlap[6],
int  orient[3],
const int  relationShip 
)

Custom constructor.

Creates an AMR neighbor for a grid (block) at level GridLevel with the neighboring block at NeiID, NeighborLevel. The two neighbors overlap at the pre-computed overlap extent which is given w.r.t to the current grid (i.e., not the neighboring grid).

◆ vtkStructuredAMRNeighbor() [3/3]

vtkStructuredAMRNeighbor::vtkStructuredAMRNeighbor ( const vtkStructuredAMRNeighbor N)
inline

Copy constructor.

Definition at line 70 of file vtkStructuredAMRNeighbor.h.

◆ ~vtkStructuredAMRNeighbor()

vtkStructuredAMRNeighbor::~vtkStructuredAMRNeighbor ( )
overridedefault

Destructor.

Member Function Documentation

◆ operator=()

vtkStructuredAMRNeighbor & vtkStructuredAMRNeighbor::operator= ( const vtkStructuredAMRNeighbor N)

Overload assignment operator.

◆ GetReceiveExtentOnGrid()

void vtkStructuredAMRNeighbor::GetReceiveExtentOnGrid ( const int  ng,
int  gridExtent[6],
int  ext[6] 
)

Returns the receive extent w.r.t.

the grid's level, i.e., not the neighbor's level.

◆ GetRelationShipString()

std::string vtkStructuredAMRNeighbor::GetRelationShipString ( )

Returns the neighbor relationship as a string (useful for debugging).

◆ ComputeSendAndReceiveExtent()

void vtkStructuredAMRNeighbor::ComputeSendAndReceiveExtent ( int  gridRealExtent[6],
int  gridGhostedExtent[6],
int  neiRealExtent[6],
int  WholeExtent[6],
const int  N 
)
overridevirtual

Computes the SendExtent and RcvExtent for this neighbor.

The method assumes that the overlap extent and orientation are already computed. Using this information, the method grows the overlap extent to form the Send and Rcv extents for this neighbor instance.

Reimplemented from vtkStructuredNeighbor.

Member Data Documentation

◆ GridOverlapExtent

int vtkStructuredAMRNeighbor::GridOverlapExtent[6]

Definition at line 48 of file vtkStructuredAMRNeighbor.h.

◆ GridLevel

int vtkStructuredAMRNeighbor::GridLevel

Definition at line 49 of file vtkStructuredAMRNeighbor.h.

◆ NeighborLevel

int vtkStructuredAMRNeighbor::NeighborLevel

Definition at line 50 of file vtkStructuredAMRNeighbor.h.

◆ RelationShip

int vtkStructuredAMRNeighbor::RelationShip

Definition at line 51 of file vtkStructuredAMRNeighbor.h.


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