21 #ifndef vtkADIOS2CoreImageReader_h
22 #define vtkADIOS2CoreImageReader_h
30 #include "vtkSetGet.h"
33 #include "vtkIOADIOS2Module.h"
35 VTK_ABI_NAMESPACE_BEGIN
57 using Params = std::map<std::string, std::string>;
70 virtual int CanReadFile(
VTK_FILEPATH const char* filename);
87 vtkSetVector3Macro(Origin,
double);
88 vtkGetVector3Macro(Origin,
double);
96 vtkSetVector3Macro(Spacing,
double);
97 vtkGetVector3Macro(Spacing,
double);
116 vtkSetMacro(DimensionArrayAsCell,
bool);
117 vtkGetMacro(DimensionArrayAsCell,
bool);
118 vtkBooleanMacro(DimensionArrayAsCell,
bool);
141 int GetNumberOfArrays();
142 const char* GetArrayName(
int index);
149 void SetArrayStatus(
const char*
name,
int status);
150 int GetArrayStatus(
const char*
name);
161 vtkSetMacro(IsColumnMajor,
bool);
162 vtkGetMacro(IsColumnMajor,
bool);
163 vtkBooleanMacro(IsColumnMajor,
bool);
170 void SetActiveScalar(
const std::pair<std::string, VarType>& inqVars);
171 std::pair<std::string, VarType>& GetActiveScalar();
172 const std::pair<std::string, VarType>& GetActiveScalar()
const;
213 void UpdateDimensionFromDimensionArray();
216 bool OpenAndReadMetaData();
219 void ConvertArraySelectionToInqVar();
222 bool InitWorkDistribution();
227 bool GatherTimeSteps();
230 template <
typename T>
231 void CalculateWorkDistribution(
const std::string& varName);
234 template <
typename T,
template <
typename...>
class U>
239 template <
typename T>
240 void GatherTimeStepsFromADIOSTimeArray();
258 struct vtkADIOS2CoreImageReaderImpl;
259 std::unique_ptr<vtkADIOS2CoreImageReaderImpl>
Impl;
265 VTK_ABI_NAMESPACE_END
std::vector< std::pair< std::string, VarType >> InquireVariablesType
abstract class to specify dataset behavior
static vtkDataObjectAlgorithm * New()
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
a vtkAbstractArray subclass for strings
a simple class to control print indentation
bool DimensionArrayAsCell
topologically and geometrically regular array of data
abstract superclass for arrays of numeric data
std::map< std::string, Params > StringToParams
represent and manipulate attribute data in a dataset
std::string DimensionArray
Superclass for algorithms that produce only data object as output.
object to represent cell connectivity
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Composite dataset that organizes datasets into blocks.
std::unique_ptr< vtkADIOS2CoreImageReaderImpl > Impl
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkSmartPointer< vtkMultiProcessController > Controller
std::map< std::string, std::string > Params
general representation of visualization data
std::string TimeStepArray
represent and manipulate fields of data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Multiprocessing communication superclass.