VTK
vtkPExodusIIReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPExodusIIReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*----------------------------------------------------------------------------
16  Copyright (c) Sandia Corporation
17  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18 ----------------------------------------------------------------------------*/
19 
38 #ifndef vtkPExodusIIReader_h
39 #define vtkPExodusIIReader_h
40 
41 #include "vtkIOParallelExodusModule.h" // For export macro
42 #include "vtkExodusIIReader.h"
43 
44 #include <vector> // Required for vector
45 
46 class vtkTimerLog;
48 
50 {
51 public:
54  void PrintSelf( ostream& os, vtkIndent indent );
55 
57 
63 
65 
72  vtkSetStringMacro(FilePattern);
73  vtkGetStringMacro(FilePattern);
74  vtkSetStringMacro(FilePrefix);
75  vtkGetStringMacro(FilePrefix);
77 
79 
81  void SetFileRange( int, int );
82  void SetFileRange( int* r ) { this->SetFileRange( r[0], r[1] ); }
83  vtkGetVector2Macro(FileRange,int);
85 
90  void SetFileNames( int nfiles, const char** names );
91 
92  virtual void SetFileName( const char* name );
93 
95  char** GetFileNames() { return this->FileNames; }
96 
98  int GetNumberOfFileNames() { return this->NumberOfFileNames; }
99 
101 
102  vtkGetMacro(NumberOfFiles,int);
104 
107 
111  virtual void Broadcast( vtkMultiProcessController* ctrl );
112 
114 
121  vtkGetMacro(VariableCacheSize,double);
122  vtkSetMacro(VariableCacheSize,double);
124 
125 protected:
128 
130 
131  int DeterminePattern( const char* file );
132  static int DetermineFileId( const char* file );
134 
135  //holds the size of the variable cache in GigaBytes
137 
138  // **KEN** Previous discussions concluded with std classes in header
139  // files is bad. Perhaps we should change ReaderList.
140 
144  char* FilePattern;
146  char* FilePrefix;
149  int FileRange[2];
150  int CurrentFileRange[2];
152  char **FileNames;
154 //BTX
155  std::vector<vtkExodusIIReader*> ReaderList;
156  std::vector<int> NumberOfPointsPerFile;
157  std::vector<int> NumberOfCellsPerFile;
158 //ETX
159 
161 
162  int Timing;
164 
167 
168 private:
169  vtkPExodusIIReader( const vtkPExodusIIReader& ); // Not implemented
170  void operator = ( const vtkPExodusIIReader& ); // Not implemented
171 };
172 
173 #endif
vtkPExodusIIReader::FileNames
char ** FileNames
Definition: vtkPExodusIIReader.h:152
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkPExodusIIReader::GetTotalNumberOfElements
virtual vtkIdType GetTotalNumberOfElements()
vtkGetVector2Macro
#define vtkGetVector2Macro(name, type)
Definition: vtkSetGet.h:270
vtkIdType
int vtkIdType
Definition: vtkType.h:275
vtkPExodusIIReader::RequestInformation
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkPExodusIIReader::MultiFileName
char * MultiFileName
Definition: vtkPExodusIIReader.h:148
vtkPExodusIIReader::NumberOfCellsPerFile
std::vector< int > NumberOfCellsPerFile
Definition: vtkPExodusIIReader.h:157
vtkPExodusIIReader::SetFileNames
void SetFileNames(int nfiles, const char **names)
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkgl::names
GLuint GLuint * names
Definition: vtkgl.h:19215
vtkExodusIIReader
Read exodus 2 files .ex2.
Definition: vtkExodusIIReader.h:56
vtkPExodusIIReader::SetFileRange
void SetFileRange(int *r)
Definition: vtkPExodusIIReader.h:82
vtkPExodusIIReader::NumberOfFileNames
int NumberOfFileNames
Definition: vtkPExodusIIReader.h:153
vtkPExodusIIReader::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkPExodusIIReader::GetNumberOfFileNames
int GetNumberOfFileNames()
Definition: vtkPExodusIIReader.h:98
vtkPExodusIIReader::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkPExodusIIReader::GetFileNames
char ** GetFileNames()
Definition: vtkPExodusIIReader.h:95
vtkPExodusIIReader::CurrentFilePrefix
char * CurrentFilePrefix
Definition: vtkPExodusIIReader.h:147
vtkPExodusIIReader::GetTotalNumberOfNodes
virtual vtkIdType GetTotalNumberOfNodes()
vtkPExodusIIReader
Read Exodus II files (.exii)
Definition: vtkPExodusIIReader.h:50
vtkPExodusIIReader::CurrentFilePattern
char * CurrentFilePattern
Definition: vtkPExodusIIReader.h:145
vtkgl::name
GLuint const GLchar * name
Definition: vtkgl.h:11983
vtkPExodusIIReader::New
static vtkPExodusIIReader * New()
vtkgl::c
const GLubyte * c
Definition: vtkgl.h:15720
vtkPExodusIIReader::FilePrefix
char * FilePrefix
Definition: vtkPExodusIIReader.h:146
VTKIOPARALLELEXODUS_EXPORT
#define VTKIOPARALLELEXODUS_EXPORT
Definition: vtkIOParallelExodusModule.h:15
vtkMultiProcessController
Multiprocessing communication superclass.
Definition: vtkMultiProcessController.h:85
vtkIOParallelExodusModule.h
vtkPExodusIIReader::ReaderList
std::vector< vtkExodusIIReader * > ReaderList
Definition: vtkPExodusIIReader.h:155
vtkPExodusIIReader::DeterminePattern
int DeterminePattern(const char *file)
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSetStringMacro
#define vtkSetStringMacro(name)
Definition: vtkSetGet.h:104
vtkPExodusIIReader::Timing
int Timing
Definition: vtkPExodusIIReader.h:162
vtkPExodusIIReader::NumberOfPointsPerFile
std::vector< int > NumberOfPointsPerFile
Definition: vtkPExodusIIReader.h:156
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkGetStringMacro
vtkGetStringMacro(ExtensionsString)
vtkPExodusIIReader::SetController
void SetController(vtkMultiProcessController *c)
vtkPExodusIIReader::Broadcast
virtual void Broadcast(vtkMultiProcessController *ctrl)
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkPExodusIIReader::VariableCacheSize
double VariableCacheSize
Definition: vtkPExodusIIReader.h:136
vtkTimerLog
Timer support and logging.
Definition: vtkTimerLog.h:82
vtkPExodusIIReader::SetFileName
virtual void SetFileName(const char *name)
vtkgl::r
GLdouble GLdouble GLdouble r
Definition: vtkgl.h:11610
vtkPExodusIIReader::ProcSize
vtkIdType ProcSize
Definition: vtkPExodusIIReader.h:143
vtkExodusIIReader.h
vtkPExodusIIReader::LastCommonTimeStep
int LastCommonTimeStep
Definition: vtkPExodusIIReader.h:160
vtkPExodusIIReader::SetFileRange
void SetFileRange(int, int)
vtkPExodusIIReader::~vtkPExodusIIReader
~vtkPExodusIIReader()
vtkPExodusIIReader::DetermineFileId
static int DetermineFileId(const char *file)
vtkPExodusIIReader::TimerLog
vtkTimerLog * TimerLog
Definition: vtkPExodusIIReader.h:163
vtkPExodusIIReader::vtkPExodusIIReader
vtkPExodusIIReader()
vtkPExodusIIReader::Controller
vtkMultiProcessController * Controller
Definition: vtkPExodusIIReader.h:141
vtkPExodusIIReader::NumberOfFiles
int NumberOfFiles
Definition: vtkPExodusIIReader.h:151
vtkPExodusIIReader::ProcRank
vtkIdType ProcRank
Definition: vtkPExodusIIReader.h:142
vtkPExodusIIReader::FilePattern
char * FilePattern
Definition: vtkPExodusIIReader.h:144