22 #ifndef vtkPGenericIOMultiBlockReader_h 23 #define vtkPGenericIOMultiBlockReader_h 25 #include "vtkMultiBlockDataSetAlgorithm.h" 26 #include "vtkPVVTKExtensionsCosmoToolsModule.h" 30 class vtkCallbackCommand;
31 class vtkDataArraySelection;
32 class vtkMultiProcessController;
35 class vtkUnstructuredGrid;
36 class vtkInformationDoubleKey;
41 class GenericIOReader;
45 :
public vtkMultiBlockDataSetAlgorithm
62 ostream& os, vtkIndent indent);
68 vtkSetStringMacro(XAxisVariableName) vtkGetStringMacro(XAxisVariableName)
75 vtkSetStringMacro(YAxisVariableName) vtkGetStringMacro(YAxisVariableName)
82 vtkSetStringMacro(ZAxisVariableName) vtkGetStringMacro(ZAxisVariableName)
89 vtkSetStringMacro(FileName) vtkGetStringMacro(FileName)
96 vtkSetMacro(GenericIOType,
int) vtkGetMacro(GenericIOType,
int)
112 vtkGetObjectMacro(ArrayList, vtkStringArray)
120 vtkGetObjectMacro(PointDataArraySelection, vtkDataArraySelection)
128 vtkGetMacro(Controller, vtkMultiProcessController*)
129 vtkSetMacro(Controller, vtkMultiProcessController*)
135 int GetNumberOfPointArrays();
140 const char* GetPointArrayName(
int i);
145 int GetPointArrayStatus(
const char* name);
150 void SetPointArrayStatus(
const char* name,
int status);
158 vtkSetStringMacro(HaloIdVariableName) vtkGetStringMacro(HaloIdVariableName)
167 vtkIdType GetRequestedHaloId(vtkIdType i);
175 vtkIdType GetNumberOfRequestedHaloIds();
184 void SetNumberOfRequestedHaloIds(vtkIdType numIds);
192 void AddRequestedHaloId(vtkIdType haloId);
200 void ClearRequestedHaloIds();
208 void SetRequestedHaloId(vtkIdType i, vtkIdType haloId);
234 gio::GenericIOReader* GetInternalReader();
236 bool ReaderParametersChanged();
240 void LoadRawVariableDataForBlock(
const std::string& varName,
int blockId);
242 void LoadRawDataForBlock(
int blockId);
244 void GetPointFromRawData(
int xType,
void* xBuffer,
int yType,
void* yBuffer,
int zType,
245 void* zBuffer, vtkIdType
id,
double point[3]);
247 void LoadCoordinatesForBlock(
248 vtkUnstructuredGrid* grid, std::set<vtkIdType>& pointsInSelectedHalos,
int blockId);
250 void LoadDataArraysForBlock(
251 vtkUnstructuredGrid* grid,
const std::set<vtkIdType>& pointsInSelectedHalos,
int blockId);
253 vtkUnstructuredGrid* LoadBlock(
int blockId);
258 static void SelectionModifiedCallback(
259 vtkObject* caller,
unsigned long eid,
void* clientdata,
void* calldata);
262 virtual int RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
263 virtual int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
269 class vtkGenericIOMultiBlockMetaData;
270 vtkGenericIOMultiBlockMetaData* MetaData;
vtkStringArray * ArrayList
vtkCallbackCommand * SelectionObserver
vtkDataArraySelection * PointDataArraySelection
Creates a vtkMultiBlockDataSet from a GenericIO file.
vtkMultiProcessController * Controller
char * HaloIdVariableName
gio::GenericIOReader * Reader