31#ifndef vtkAMRInformation_h
32#define vtkAMRInformation_h
35#include "vtkCommonDataModelModule.h"
45class vtkAMRIndexIterator;
47class VTKCOMMONDATAMODEL_EXPORT vtkAMRInformation :
public vtkObject
50 static vtkAMRInformation*
New();
62 void Initialize(
int numLevels,
const int* blocksPerLevel);
68 vtkGetMacro(GridDescription,
int);
87 return static_cast<unsigned int>(this->NumBlocks.size() - 1);
103 int GetIndex(
unsigned int level,
unsigned int id)
const {
return this->NumBlocks[level] + id; }
118 void GetBounds(
unsigned int level,
unsigned int id,
double* bb);
123 bool GetOrigin(
unsigned int level,
unsigned int id,
double* origin);
198 unsigned int*
GetParents(
unsigned int level,
unsigned int index,
unsigned int& numParents);
205 unsigned int*
GetChildren(
unsigned int level,
unsigned int index,
unsigned int& numChildren);
228 bool FindCell(
double q[3],
unsigned int level,
unsigned int index,
int& cellIdx);
233 bool FindGrid(
double q[3],
int level,
unsigned int& gridId);
238 bool FindGrid(
double q[3],
unsigned int& level,
unsigned int& gridId);
243 const std::vector<int>&
GetNumBlocks()
const {
return this->NumBlocks; }
247 return this->AllChildren[i];
254 ~vtkAMRInformation()
override;
255 vtkAMRInformation(
const vtkAMRInformation&) =
delete;
256 void operator=(
const vtkAMRInformation&) =
delete;
258 bool HasValidOrigin();
259 bool HasValidBounds();
260 void UpdateBounds(
const int level,
const int id);
261 void AllocateBoxes(
unsigned int n);
262 void GenerateBlockLevel();
263 void CalculateParentChildRelationShip(
unsigned int level,
264 std::vector<std::vector<unsigned int>>& children,
265 std::vector<std::vector<unsigned int>>& parents);
289 std::vector<std::vector<std::vector<unsigned int>>> AllChildren;
290 std::vector<std::vector<std::vector<unsigned int>>> AllParents;
Encloses a rectangular region of voxel like cells.
dynamic, self-adjusting array of double
a simple class to control print indentation
dynamic, self-adjusting array of int
Computes the portion of a dataset which is inside a selection.
Hold a reference to a vtkObjectBase instance.
dynamic, self-adjusting array of unsigned int