33 #ifndef vtkADIOS2CoreImageReader_h 
   34 #define vtkADIOS2CoreImageReader_h 
   43 #include "vtkSetGet.h"                  
   46 #include "vtkIOADIOS2Module.h"  
   68   using Params = std::map<std::string, std::string>;
 
   81   virtual int CanReadFile(
const char* filename);
 
   91   void SetFileName(
const char* filename);
 
   98   vtkSetVector3Macro(Origin, 
double);
 
   99   vtkGetVector3Macro(Origin, 
double);
 
  107   vtkSetVector3Macro(Spacing, 
double);
 
  108   vtkGetVector3Macro(Spacing, 
double);
 
  127   vtkSetMacro(DimensionArrayAsCell, 
bool);
 
  128   vtkGetMacro(DimensionArrayAsCell, 
bool);
 
  129   vtkBooleanMacro(DimensionArrayAsCell, 
bool);
 
  152   int GetNumberOfArrays();
 
  153   const char* GetArrayName(
int index);
 
  160   void SetArrayStatus(
const char* 
name, 
int status);
 
  161   int GetArrayStatus(
const char* 
name);
 
  172   vtkSetMacro(IsColumnMajor, 
bool);
 
  173   vtkGetMacro(IsColumnMajor, 
bool);
 
  174   vtkBooleanMacro(IsColumnMajor, 
bool);
 
  181   void SetActiveScalar(
const std::pair<std::string, VarType>& inqVars);
 
  182   std::pair<std::string, VarType>& GetActiveScalar();
 
  183   const std::pair<std::string, VarType>& GetActiveScalar() 
const;
 
  225   void UpdateDimensionFromDimensionArray();
 
  228   bool OpenAndReadMetaData();
 
  231   void ConvertArraySelectionToInqVar();
 
  234   bool InitWorkDistribution();
 
  239   bool GatherTimeSteps();
 
  242   template <
typename T>
 
  243   void CalculateWorkDistribution(
const std::string& varName);
 
  246   template <
typename T, 
template <
typename...> 
class U>
 
  251   template <
typename T>
 
  252   void GatherTimeStepsFromADIOSTimeArray();
 
  270   struct vtkADIOS2CoreImageReaderImpl;
 
  271   std::unique_ptr<vtkADIOS2CoreImageReaderImpl> 
Impl;