VTK
vtkPUnstructuredGridGhostCellsGenerator.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPUnstructuredGridGhostCellsGenerator.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 =========================================================================*/
15 
78 #ifndef vtkPUnstructuredGridGhostCellsGenerator_h
79 #define vtkPUnstructuredGridGhostCellsGenerator_h
80 
81 #include "vtkFiltersParallelGeometryModule.h" // For export macro
83 #include <vector> // For passing data between methods
84 
86 
87 class VTKFILTERSPARALLELGEOMETRY_EXPORT vtkPUnstructuredGridGhostCellsGenerator:
89 {
91 
92 public:
93  void PrintSelf(ostream& os, vtkIndent indent) override;
94 
96 
98 
101  void SetController(vtkMultiProcessController *c);
102  vtkGetObjectMacro(Controller, vtkMultiProcessController);
104 
105 protected:
108 
110  vtkInformationVector *) override;
111 
112  void GetFirstGhostLayer(int, vtkUnstructuredGrid *);
113 
114  void ExchangeBoundsAndDetermineNeighbors(std::vector<double>&);
115  void ExtractAndReduceSurfacePointsShareData(std::vector<double>&);
116  void ComputeSharedPoints();
117 
118  void ExtractAndSendGhostCells(vtkUnstructuredGridBase *);
119 
120  void ReceiveAndMergeGhostCells(int, int, vtkUnstructuredGridBase *,
122 
123  void AddGhostLayer(int ghostLevel, int maxGhostLevel);
124 
125  void FindGhostCells();
126 
127  void AddGlobalCellIds();
128 
129  void RemoveGlobalCellIds();
130 
132 
133 private:
134  struct vtkInternals;
135  vtkInternals *Internals;
136 
138  void operator=(const vtkPUnstructuredGridGhostCellsGenerator&) = delete;
139 };
140 
141 #endif
vtkUnstructuredGridGhostCellsGenerator
Builds ghost cells for a distributed unstructured grid dataset.
Definition: vtkUnstructuredGridGhostCellsGenerator.h:42
vtkPUnstructuredGridGhostCellsGenerator
Builds ghost cells for a distributed unstructured grid dataset.
Definition: vtkPUnstructuredGridGhostCellsGenerator.h:87
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkUnstructuredGridBase
dataset represents arbitrary combinations of all possible cell types. May be mapped onto a non-standa...
Definition: vtkUnstructuredGridBase.h:34
vtkUnstructuredGridGhostCellsGenerator::New
static vtkUnstructuredGridGhostCellsGenerator * New()
vtkMultiProcessController
Multiprocessing communication superclass.
Definition: vtkMultiProcessController.h:76
vtkUnstructuredGridGhostCellsGenerator::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkUnstructuredGridGhostCellsGenerator.h
vtkUnstructuredGridGhostCellsGenerator::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:80
vtkPUnstructuredGridGhostCellsGenerator::Controller
vtkMultiProcessController * Controller
Definition: vtkPUnstructuredGridGhostCellsGenerator.h:131
vtkUnstructuredGrid
dataset represents arbitrary combinations of all possible cell types
Definition: vtkUnstructuredGrid.h:81