VTK
vtkXdmf3Reader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkXdmf3Reader.h
5  Language: C++
6 
7  Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
8  All rights reserved.
9  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
10 
11  This software is distributed WITHOUT ANY WARRANTY; without even
12  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13  PURPOSE. See the above copyright notice for more information.
14 
15 =========================================================================*/
35 #ifndef vtkXdmf3Reader_h
36 #define vtkXdmf3Reader_h
37 
38 #include "vtkIOXdmf3Module.h" // For export macro
39 #include "vtkDataReader.h"
40 
42 
43 class VTKIOXDMF3_EXPORT vtkXdmf3Reader : public vtkDataReader
44 {
45 public:
46  static vtkXdmf3Reader* New();
47  vtkTypeMacro(vtkXdmf3Reader, vtkDataReader);
48  void PrintSelf(ostream& os, vtkIndent indent);
49 
51  virtual void SetFileName(const char* filename);
52 
54 
57  virtual void AddFileName(const char* filename);
58  virtual void RemoveAllFileNames();
60 
62 
65  vtkSetMacro(FileSeriesAsTime, bool);
66  vtkGetMacro(FileSeriesAsTime, bool);
68 
70  virtual int CanReadFile(const char* filename);
71 
75  int GetNumberOfPointArrays();
76 
79  const char* GetPointArrayName(int index);
80 
82 
83  int GetPointArrayStatus(const char* name);
84  void SetPointArrayStatus(const char* name, int status);
86 
88 
91  int GetNumberOfCellArrays();
92  const char* GetCellArrayName(int index);
93  void SetCellArrayStatus(const char* name, int status);
94  int GetCellArrayStatus(const char* name);
96 
98 
101  int GetNumberOfFieldArrays();
102  const char* GetFieldArrayName(int index);
103  void SetFieldArrayStatus(const char* name, int status);
104  int GetFieldArrayStatus(const char* name);
106 
108 
111  int GetNumberOfGrids();
112  const char* GetGridName(int index);
113  void SetGridStatus(const char* gridname, int status);
114  int GetGridStatus(const char* gridname);
116 
118 
122  int GetNumberOfSets();
123  const char* GetSetName(int index);
124  void SetSetStatus(const char* gridname, int status);
125  int GetSetStatus(const char* gridname);
127 
129 
131  int GetNumberOfSetArrays() { return this->GetNumberOfSets(); }
132  const char* GetSetArrayName(int index)
133  { return this->GetSetName(index); }
134  int GetSetArrayStatus(const char* name)
135  { return this->GetSetStatus(name); }
137 
140  virtual vtkGraph* GetSIL();
141 
143  int GetSILUpdateStamp();
144 
145 protected:
146  vtkXdmf3Reader();
147  ~vtkXdmf3Reader();
148 
149  //Overridden to announce that we make general DataObjects.
151 
152  //Overridden to handle RDO requests the way we need to
155 
156  //Overridden to create the correct vtkDataObject subclass for the file.
157  virtual int RequestDataObject(
159 
160  //Overridden to announce temporal information and to participate in
161  //structured extent splitting.
164 
165  //Read the XDMF and HDF input files and fill in vtk data objects.
168 
169  vtkXdmf3ArraySelection* GetFieldArraySelection();
170  vtkXdmf3ArraySelection* GetCellArraySelection();
171  vtkXdmf3ArraySelection* GetPointArraySelection();
172  vtkXdmf3ArraySelection* GetGridsSelection();
173  vtkXdmf3ArraySelection* GetSetsSelection();
179 
180 private:
181  vtkXdmf3Reader(const vtkXdmf3Reader&); // Not implemented
182  void operator=(const vtkXdmf3Reader&); // Not implemented
183 
184  bool FileSeriesAsTime;
185 
186  class Internals;
187  Internals *Internal;
188 };
189 
190 #endif
const char * GetSetArrayName(int index)
Store vtkAlgorithm input/output information.
vtkXdmf3ArraySelection * CellArraysCache
vtkXdmf3ArraySelection * FieldArraysCache
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkXdmf3ArraySelection * SetsCache
vtkXdmf3ArraySelection * GridsCache
int GetNumberOfSetArrays()
Base class for graph data types.
Definition: vtkGraph.h:288
static vtkDataReader * New()
void PrintSelf(ostream &os, vtkIndent indent)
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:48
vtkXdmf3ArraySelection * PointArraysCache
virtual int FillOutputPortInformation(int port, vtkInformation *info)
a simple class to control print indentation
Definition: vtkIndent.h:38
int GetSetArrayStatus(const char *name)
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Store zero or more vtkInformation instances.
Reads eXtensible Data Model and Format files.
virtual void SetFileName(const char *)
helper to identify requested arrays with