VTK  9.2.6
vtkHyperTreeGridGhostCellsGenerator.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHyperTreeGridGhostCellsGenerator.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 =========================================================================*/
36 #ifndef vtkHyperTreeGridGhostCellsGenerator_h
37 #define vtkHyperTreeGridGhostCellsGenerator_h
38 
39 #include "vtkFiltersParallelModule.h" // For export macro
41 
42 #include <vector> // For vtkHypertreeGridGhostCellsGenerator::ExtractInterface
43 
44 class vtkBitArray;
45 class vtkCellData;
46 class vtkHyperTreeGrid;
48 
49 class VTKFILTERSPARALLEL_EXPORT vtkHyperTreeGridGhostCellsGenerator
51 {
52 public:
55  void PrintSelf(ostream& os, vtkIndent indent) override;
56 
57 protected:
60 
61  struct vtkInternals;
62 
66  int FillOutputPortInformation(int, vtkInformation*) override;
67 
72 
76  void CopyInputTreeToOutput(vtkHyperTreeGridNonOrientedCursor* inCursor,
77  vtkHyperTreeGridNonOrientedCursor* outCursor, vtkCellData* inCellData, vtkCellData* outCellData,
78  vtkBitArray* inMask, vtkBitArray* outMask);
79 
100  void ExtractInterface(vtkHyperTreeGridNonOrientedCursor* inCursor, vtkBitArray* isParent,
101  std::vector<vtkIdType>& indices, vtkHyperTreeGrid* grid, unsigned int mask, vtkIdType& pos);
102 
115  vtkIdType CreateGhostTree(vtkHyperTreeGridNonOrientedCursor* outCursor, vtkBitArray* isParent,
116  vtkIdType* indices, vtkIdType&& pos = 0);
117 
118  vtkInternals* Internals;
119 
120 private:
122  void operator=(const vtkHyperTreeGridGhostCellsGenerator&) = delete;
123 };
124 
125 #endif /* vtkHyperTreeGridGhostCellsGenerator */
int FillOutputPortInformation(int, vtkInformation *) override
Define default input and output port types.
Store vtkAlgorithm input/output information.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
represent and manipulate cell attribute data
Definition: vtkCellData.h:41
int vtkIdType
Definition: vtkType.h:332
Objects for traversal a HyperTreeGrid.
Generated ghost cells (HyperTree's distributed).
a simple class to control print indentation
Definition: vtkIndent.h:39
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
dynamic, self-adjusting array of bits
Definition: vtkBitArray.h:36
Superclass for algorithms that produce a hyper tree grid as output.
static vtkAlgorithm * New()
general representation of visualization data
Definition: vtkDataObject.h:65
virtual int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *)=0
Main routine to process individual trees in the grid This is pure virtual method to be implemented by...