18 #ifndef vtkAMRMetaData_h
19 #define vtkAMRMetaData_h
21 #include "vtkCommonDataModelModule.h"
27 VTK_ABI_NAMESPACE_BEGIN
47 virtual void Initialize(
const std::vector<unsigned int>& blocksPerLevel);
55 virtual
void Initialize(
int numLevels, const
int* blocksPerLevel);
61 [[nodiscard]] vtkGetMacro(GridDescription,
int);
68 [[nodiscard]]
unsigned int GetNumberOfLevels() const;
74 [[nodiscard]]
unsigned int GetNumberOfBlocks(
unsigned int level) const;
80 unsigned int GetNumberOfDataSets(
unsigned int level) {
return this->GetNumberOfBlocks(level); }
85 [[nodiscard]]
unsigned int GetNumberOfBlocks()
const;
91 virtual
unsigned int GetTotalNumberOfBlocks() {
return this->GetNumberOfBlocks(); }
97 [[nodiscard]]
int GetAbsoluteBlockIndex(
unsigned int level,
unsigned int relativeBlockIdx)
const;
103 int GetIndex(
unsigned int level,
unsigned int id)
const
105 return this->GetAbsoluteBlockIndex(level,
id);
111 void ComputeIndexPair(
unsigned int index,
unsigned int&
level,
unsigned int&
id);
117 [[nodiscard]]
const std::vector<int>&
GetNumBlocks()
const {
return this->NumBlocks; }
132 void GenerateBlockLevel();
142 std::vector<int> NumBlocks = { 0 };
152 VTK_ABI_NAMESPACE_END
dynamic, self-adjusting array of unsigned int
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool VTKCOMMONCORE_EXPORT operator==(const std::string &a, const vtkStringToken &b)
#define VTK_DEPRECATED_IN_9_6_0(reason)
a simple class to control print indentation
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...