Go to the documentation of this file.
22 #ifndef vtkAMRBaseReader_h
23 #define vtkAMRBaseReader_h
25 #include "vtkIOAMRModule.h"
63 return( (this->EnableCaching)?
true:
false);
80 vtkSetMacro( MaxLevel,
int);
125 vtkGetStringMacro( FileName );
180 const int blockIdx,
vtkUniformGrid *block,
const char *fieldName );
187 const int blockIdx,
vtkUniformGrid *block,
const char *fieldName );
293 vtkObject *caller,
unsigned long eid,
void *clientdata,
void *calldata );
int GetNumberOfCellArrays()
virtual int GetNumberOfLevels()=0
Returns the total number of levels.
static void SelectionModifiedCallback(vtkObject *caller, unsigned long eid, void *clientdata, void *calldata)
Call-back registered with the SelectionObserver.
virtual void SetUpDataArraySelections()=0
Initializes the PointDataArraySelection & CellDataArraySelection.
void Initialize()
Initializes the AMR reader.
std::vector< int > BlockMap
virtual int FillMetaData()=0
Loads all the AMR metadata & constructs the LevelIdxPair12InternalIdx datastructure which maps (level...
void SetPointArrayStatus(const char *name, int status)
void AssignAndLoadBlocks(vtkOverlappingAMR *amrds)
This method assigns blocks to processes using block-cyclic distribution.
void SetupBlockRequest(vtkInformation *outputInfo)
Initializes the request of blocks to be loaded.
abstract base class for most VTK objects
const char * GetCellArrayName(int index)
vtkAMRDataSetCache * Cache
vtkDataArraySelection * PointDataArraySelection
vtkDataArraySelection * CellDataArraySelection
abstract superclass for arrays of numeric data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkMultiProcessController * Controller
void GetAMRData(const int blockIdx, vtkUniformGrid *block, const char *fieldName)
Loads the AMR data corresponding to the given field name.
Store on/off settings for data arrays for a vtkSource.
An abstract class that encapsulates common functionality for all AMR readers.
int GetPointArrayStatus(const char *name)
Get/Set whether the point or cell array with the given name is to be read.
int GetCellArrayStatus(const char *name)
virtual void GetAMRGridData(const int blockIdx, vtkUniformGrid *block, const char *field)=0
Loads the block data.
Multiprocessing communication superclass.
int RequestInformation(vtkInformation *rqst, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
bool IsCachingEnabled() const
a simple class to control print indentation
A base class for all algorithms that take as input vtkOverlappingAMR and produce vtkOverlappingAMR.
A concrete implementation of vtkObject that provides functionality for caching AMR blocks.
vtkCallbackCommand * SelectionObserver
void LoadCellData(const int blockIdx, vtkUniformGrid *block)
A wrapper that loops over all cell arrays and loads the cell arrays that are enabled,...
virtual int GetNumberOfBlocks()=0
Returns the total number of blocks.
vtkUniformGrid * GetAMRBlock(const int blockIdx)
Loads the AMR block corresponding to the given index.
int RequestData(vtkInformation *vtkNotUsed(request), vtkInformationVector **vtkNotUsed(inputVector), vtkInformationVector *outputVector) override
Standard Pipeline methods, subclasses may override this method if needed.
virtual int GetBlockLevel(const int blockIdx)=0
Returns the block level for the given block.
int GetBlockProcessId(const int blockIdx)
Returns the block process ID for the block corresponding to the given block index.
virtual vtkUniformGrid * GetAMRGrid(const int blockIdx)=0
Loads the block according to the index w.r.t.
hierarchical dataset of vtkUniformGrids
void SetCellArrayStatus(const char *name, int status)
const char * GetPointArrayName(int index)
Get the name of the point or cell array with the given index in the input.
void LoadPointData(const int blockIdx, vtkUniformGrid *block)
A wrapper that loops over point arrays and load the point arrays that are enabled,...
bool IsBlockMine(const int blockIdx)
Determines if the block is owned by this process based on the the block index and total number of pro...
virtual void GetAMRGridPointData(const int blockIdx, vtkUniformGrid *block, const char *field)=0
Loads the block Point data.
supports function callbacks
virtual void SetFileName(const char *fileName)=0
int FillOutputPortInformation(int port, vtkInformation *info) override
See algorithm for more info.
vtkOverlappingAMR * Metadata
int GetNumberOfPointArrays()
Get the number of point or cell arrays available in the input.
void GetAMRPointData(const int blockIdx, vtkUniformGrid *block, const char *fieldName)
Loads the AMR point data corresponding to the given field name.
void InitializeArraySelections()
Initializes the array selections.
void LoadRequestedBlocks(vtkOverlappingAMR *amrds)
This method loads all the blocks in the BlockMap for the given process.
~vtkAMRBaseReader() override
virtual void ReadMetaData()=0
Reads all the metadata from the file.
vtkTypeBool EnableCaching