VTK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
home
demarle
Builds
VTK
release
Utilities
Doxygen
dox
Filters
Geometry
vtkStructuredAMRNeighbor.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkStructuredAMRNeighbor.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
29
#ifndef vtkStructuredAMRNeighbor_h
30
#define vtkStructuredAMRNeighbor_h
31
32
#include "vtkFiltersGeometryModule.h"
// For export macro
33
#include "
vtkStructuredNeighbor.h
"
34
35
class
VTKFILTERSGEOMETRY_EXPORT
vtkStructuredAMRNeighbor
:
36
public
vtkStructuredNeighbor
37
{
38
public
:
39
40
// An enum that defines the neighbor relationship between the 2 grids.
41
enum
NeighborRelationship
42
{
43
PARENT
,
// Neighbor fully contains this grid
44
PARTIALLY_OVERLAPPING_PARENT
,
// Neighbor partially contains this grid
45
CHILD
,
// This grid fully contains the neighbor
46
PARTIALLY_OVERLAPPING_CHILD
,
// This grid partially contains the neighbor
47
SAME_LEVEL_SIBLING
,
// Grids are adjacent at the same level
48
COARSE_TO_FINE_SIBLING
,
// Grid is adjacent with a finer neighbor
49
FINE_TO_COARSE_SIBLING
,
// Grid is adjacent with a coarser neighbor
50
UNDEFINED
51
};
52
53
// NOTE: The OverlapExtent stores the overlap w.r.t. the neighboring grid
54
// Consequently, GridOverlapExtent stores the overlap extent w.r.t. this grid.
55
int
GridOverlapExtent[6];
// The overlap extent w.r.t. this grid
56
int
GridLevel
;
// The level of the grid that has this neighbor
57
int
NeighborLevel
;
// The level of the neighboring grid
58
int
RelationShip
;
// The relationship of the grid with this neighbor
59
63
vtkStructuredAMRNeighbor
();
64
71
vtkStructuredAMRNeighbor
(
72
const
int
gridLevel,
73
const
int
neiID,
const
int
neighborLevel,
74
int
gridOverlap[6],
int
neiOverlap[6],
75
int
orient[3],
76
const
int
relationShip);
77
81
vtkStructuredAMRNeighbor
(
const
vtkStructuredAMRNeighbor
&N) :
82
vtkStructuredNeighbor
(N) { *
this
= N; }
83
87
~vtkStructuredAMRNeighbor
() VTK_OVERRIDE {}
88
92
vtkStructuredAMRNeighbor
&
operator=
(
const
vtkStructuredAMRNeighbor
&N);
93
98
void
GetReceiveExtentOnGrid(
const
int
ng,
int
gridExtent[6],
int
ext[6]);
99
103
std::string
GetRelationShipString();
104
106
112
void
ComputeSendAndReceiveExtent
(
113
int
gridRealExtent[6],
int
gridGhostedExtent[6],
int
neiRealExtent[6],
114
int
WholeExtent[6],
const
int
N) VTK_OVERRIDE;
115
};
117
118
#endif
/* vtkStructuredAMRNeighbor_h */
119
// VTK-HeaderTest-Exclude: vtkStructuredAMRNeighbor.h
vtkStructuredAMRNeighbor::NeighborLevel
int NeighborLevel
Definition:
vtkStructuredAMRNeighbor.h:57
vtkStructuredAMRNeighbor::vtkStructuredAMRNeighbor
vtkStructuredAMRNeighbor(const vtkStructuredAMRNeighbor &N)
Copy constructor.
Definition:
vtkStructuredAMRNeighbor.h:81
vtkStructuredAMRNeighbor::GridLevel
int GridLevel
Definition:
vtkStructuredAMRNeighbor.h:56
vtkStructuredAMRNeighbor::COARSE_TO_FINE_SIBLING
Definition:
vtkStructuredAMRNeighbor.h:48
vtkStructuredNeighbor::operator=
vtkStructuredNeighbor & operator=(const vtkStructuredNeighbor &N)
Overload assignment operator.
Definition:
vtkStructuredNeighbor.h:103
vtkX3D::string
Definition:
vtkX3D.h:490
vtkStructuredAMRNeighbor::PARTIALLY_OVERLAPPING_CHILD
Definition:
vtkStructuredAMRNeighbor.h:46
vtkStructuredNeighbor.h
vtkStructuredNeighbor
An internal, light-weight class used to store neighbor information.
Definition:
vtkStructuredNeighbor.h:31
vtkStructuredAMRNeighbor::PARTIALLY_OVERLAPPING_PARENT
Definition:
vtkStructuredAMRNeighbor.h:44
vtkStructuredAMRNeighbor::~vtkStructuredAMRNeighbor
~vtkStructuredAMRNeighbor() override
Destructor.
Definition:
vtkStructuredAMRNeighbor.h:87
vtkStructuredAMRNeighbor::PARENT
Definition:
vtkStructuredAMRNeighbor.h:43
vtkStructuredAMRNeighbor
An internal, light-weight object used to store neighbor information for AMR grids.
Definition:
vtkStructuredAMRNeighbor.h:35
vtkStructuredNeighbor::ComputeSendAndReceiveExtent
virtual void ComputeSendAndReceiveExtent(int gridRealExtent[6], int gridGhostedExtent[6], int neiRealExtent[6], int WholeExtent[6], const int N)
Computes the SendExtent and the RcvExtent for this neighbor.
vtkStructuredAMRNeighbor::RelationShip
int RelationShip
Definition:
vtkStructuredAMRNeighbor.h:58
vtkStructuredAMRNeighbor::SAME_LEVEL_SIBLING
Definition:
vtkStructuredAMRNeighbor.h:47
vtkStructuredAMRNeighbor::FINE_TO_COARSE_SIBLING
Definition:
vtkStructuredAMRNeighbor.h:49
vtkStructuredAMRNeighbor::NeighborRelationship
NeighborRelationship
Definition:
vtkStructuredAMRNeighbor.h:41
vtkStructuredAMRNeighbor::CHILD
Definition:
vtkStructuredAMRNeighbor.h:45
Generated by
1.8.9.1