21#ifndef vtkAMRBaseParticlesReader_h
22#define vtkAMRBaseParticlesReader_h
24#include "vtkIOAMRModule.h"
45 vtkGetMacro(Frequency,
int);
46 vtkSetMacro(Frequency,
int);
100 inline void SetMinLocation(
const double minx,
const double miny,
const double minz)
102 this->MinLocation[0] = minx;
103 this->MinLocation[1] = miny;
104 this->MinLocation[2] = minz;
112 inline void SetMaxLocation(
const double maxx,
const double maxy,
const double maxz)
114 this->MaxLocation[0] = maxx;
115 this->MaxLocation[1] = maxy;
116 this->MaxLocation[2] = maxz;
203 vtkObject* caller,
unsigned long eid,
void* clientdata,
void* calldata);
217 double MinLocation[3];
218 double MaxLocation[3];
An abstract base class that implements all the common functionality for all particle readers.
void SetParticleArrayStatus(const char *name, int status)
Get/Set whether the particle array status.
bool CheckLocation(const double x, const double y, const double z)
Filters particles by their location.
vtkMultiProcessController * Controller
bool IsParallel()
Determines whether this reader instance is running in parallel or not.
virtual void SetFileName(VTK_FILEPATH const char *fileName)
~vtkAMRBaseParticlesReader() override
void InitializeParticleDataSelections()
Initializes the ParticleDataArraySelection object.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGetFilePathMacro(FileName)
virtual vtkPolyData * ReadParticles(const int blkIdx)=0
Reads the particles corresponding to the block associated with the given supplied block index.
int GetNumberOfParticleArrays()
Get the number of particles arrays available in the input.
virtual void ReadMetaData()=0
Reads the metadata, e.g., the number of blocks in the file.
void SetMaxLocation(const double maxx, const double maxy, const double maxz)
Sets the max location.
vtkTypeBool FilterLocation
vtkCallbackCommand * SelectionObserver
Standard Array selection variables & methods.
void SetMinLocation(const double minx, const double miny, const double minz)
Sets the min location.
int GetParticleArrayStatus(const char *name)
Get/Set whether the particle array status.
bool IsBlockMine(const int blkIdx)
Determines if the block associated with the given block index belongs to the process that executes th...
int GetBlockProcessId(const int blkIdx)
Given the block index, this method determines the process Id.
const char * GetParticleArrayName(int index)
Get the particle array name of the array associated with the given index.
void Initialize()
Initializes the AMR Particles reader NOTE: must be called in the constructor of concrete classes.
int FillOutputPortInformation(int port, vtkInformation *info) override
Standard pipeline operations.
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Standard pipeline operations.
static void SelectionModifiedCallback(vtkObject *caller, unsigned long eid, void *clientdata, void *calldata)
Call-back registered with the SelectionObserver for selecting/deselecting particles.
vtkDataArraySelection * ParticleDataArraySelection
Standard Array selection variables & methods.
virtual void SetupParticleDataSelections()=0
Sets up the ParticleDataArraySelection.
virtual int GetTotalNumberOfParticles()=0
Returns the total number of particles.
vtkAMRBaseParticlesReader()
supports function callbacks
Store on/off settings for data arrays for a vtkSource.
a simple class to control print indentation
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
Multiprocessing communication superclass.
abstract base class for most VTK objects
concrete dataset represents vertices, lines, polygons, and triangle strips