vtkEnsembleDataReader.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
3 // SPDX-License-Identifier: BSD-3-Clause
14 #ifndef vtkEnsembleDataReader_h
15 #define vtkEnsembleDataReader_h
16 
17 #include "vtkDataObjectAlgorithm.h"
18 #include "vtkPVVTKExtensionsIOGeneralModule.h" //needed for exports
19 
20 #include <string> // for std::string
21 
23 {
24 public:
25  static vtkEnsembleDataReader* New();
27  void PrintSelf(ostream& os, vtkIndent indent) override;
28 
30 
33  vtkSetStringMacro(FileName);
34  vtkGetStringMacro(FileName);
36 
38 
41  vtkSetMacro(CurrentMember, unsigned int);
42  vtkGetMacro(CurrentMember, unsigned int);
44 
46 
49  unsigned int GetNumberOfMembers() const;
50  vtkGetVector2Macro(CurrentMemberRange, unsigned int);
52 
56  std::string GetFilePath(unsigned int rowIndex) const;
57 
61  void SetReader(unsigned int rowIndex, vtkAlgorithm* reader);
62 
66  void ResetReaders();
67 
72  bool UpdateMetaData();
73 
74 protected:
76  ~vtkEnsembleDataReader() override;
77 
79  vtkAlgorithm* GetCurrentReader();
80 
81 private:
82  char* FileName;
83  unsigned int CurrentMember;
84  unsigned int CurrentMemberRange[2];
85 
86  class vtkInternal;
87  vtkInternal* Internal;
88 
90  void operator=(const vtkEnsembleDataReader&) = delete;
91 };
92 
93 #endif
reader for ensemble data sets
static vtkDataObjectAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
#define VTKPVVTKEXTENSIONSIOGENERAL_EXPORT
virtual int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
void operator=(const vtkObjectBase &)