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 =========================================================================*/
32 #ifndef vtkXdmf3Reader_h
33 #define vtkXdmf3Reader_h
34 
35 #include "vtkIOXdmf3Module.h" // For export macro
36 #include "vtkDataReader.h"
37 
39 
40 class VTKIOXDMF3_EXPORT vtkXdmf3Reader : public vtkDataReader
41 {
42 public:
43  static vtkXdmf3Reader* New();
44  vtkTypeMacro(vtkXdmf3Reader, vtkDataReader);
45  void PrintSelf(ostream& os, vtkIndent indent);
46 
48  virtual void SetFileName(const char* filename);
49 
51 
54  virtual void AddFileName(const char* filename);
55  virtual void RemoveAllFileNames();
57 
59 
62  vtkSetMacro(FileSeriesAsTime, bool);
63  vtkGetMacro(FileSeriesAsTime, bool);
65 
67  virtual int CanReadFile(const char* filename);
68 
72  int GetNumberOfPointArrays();
73 
76  const char* GetPointArrayName(int index);
77 
79 
80  int GetPointArrayStatus(const char* name);
81  void SetPointArrayStatus(const char* name, int status);
83 
85 
88  int GetNumberOfCellArrays();
89  const char* GetCellArrayName(int index);
90  void SetCellArrayStatus(const char* name, int status);
91  int GetCellArrayStatus(const char* name);
93 
95 
98  int GetNumberOfFieldArrays();
99  const char* GetFieldArrayName(int index);
100  void SetFieldArrayStatus(const char* name, int status);
101  int GetFieldArrayStatus(const char* name);
103 
105 
108  int GetNumberOfGrids();
109  const char* GetGridName(int index);
110  void SetGridStatus(const char* gridname, int status);
111  int GetGridStatus(const char* gridname);
113 
115 
119  int GetNumberOfSets();
120  const char* GetSetName(int index);
121  void SetSetStatus(const char* gridname, int status);
122  int GetSetStatus(const char* gridname);
124 
126 
128  int GetNumberOfSetArrays() { return this->GetNumberOfSets(); }
129  const char* GetSetArrayName(int index)
130  { return this->GetSetName(index); }
131  int GetSetArrayStatus(const char* name)
132  { return this->GetSetStatus(name); }
134 
137  virtual vtkGraph* GetSIL();
138 
140  int GetSILUpdateStamp();
141 
142 protected:
143  vtkXdmf3Reader();
144  ~vtkXdmf3Reader();
145 
146  //Overridden to announce that we make general DataObjects.
148 
149  //Overridden to handle RDO requests the way we need to
152 
153  //Overridden to create the correct vtkDataObject subclass for the file.
154  virtual int RequestDataObject(
156 
157  //Overridden to announce temporal information and to participate in
158  //structured extent splitting.
161 
162  //Read the XDMF and HDF input files and fill in vtk data objects.
165 
166  vtkXdmf3ArraySelection* GetFieldArraySelection();
167  vtkXdmf3ArraySelection* GetCellArraySelection();
168  vtkXdmf3ArraySelection* GetPointArraySelection();
169  vtkXdmf3ArraySelection* GetGridsSelection();
170  vtkXdmf3ArraySelection* GetSetsSelection();
176 
177 private:
178  vtkXdmf3Reader(const vtkXdmf3Reader&); // Not implemented
179  void operator=(const vtkXdmf3Reader&); // Not implemented
180 
181  bool FileSeriesAsTime;
182 
183  class Internals;
184  Internals *Internal;
185 };
186 
187 #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