VTK
vtkExodusIIReaderVariableCheck.h
Go to the documentation of this file.
1 #ifndef __vtkExodusIIReaderVariableCheck_h
2 #define __vtkExodusIIReaderVariableCheck_h
3 
4 #include "vtkExodusIIReaderPrivate.h" // for ArrayInfoType
5 
6 #include <vtksys/RegularExpression.hxx> // for integration point names
7 #include <vtksys/String.hxx> // STL Header for Start/StartInternal/Add
8 #include <vtkstd/vector> // STL Header for glommed array names
9 #include <vtkstd/set> // STL Header for integration point names
10 
18 {
19 public:
21  virtual bool Start( vtksys_stl::string name, const int* truth, int numTruth );
23  virtual bool StartInternal( vtksys_stl::string name, const int* truth, int numTruth ) = 0;
25  virtual bool Add( vtksys_stl::string name, const int* truth ) = 0;
27  virtual vtkstd::vector<vtksys_stl::string>::size_type Length();
29  virtual int Accept(
30  vtkstd::vector<vtkExodusIIReaderPrivate::ArrayInfoType>& arr,
31  int startIndex, vtkExodusIIReaderPrivate* priv, int objtyp );
32 
33 protected:
39  bool CheckTruth( const int* truth );
40  bool UniquifyName(
42  vtkstd::vector<vtkExodusIIReaderPrivate::ArrayInfoType>& arrays );
43 
44  int GlomType;
45  vtkstd::vector<int> SeqTruth;
47  vtkstd::vector<vtksys_stl::string> OriginalNames;
48 };
49 
52 {
53 public:
55  virtual bool StartInternal( vtksys_stl::string name, const int*, int );
56  virtual bool Add( vtksys_stl::string, const int* );
57 };
58 
61 {
62 public:
63  vtkExodusIIReaderVectorCheck( const char* seq, int n );
64  virtual bool StartInternal( vtksys_stl::string name, const int*, int );
65  virtual bool Add( vtksys_stl::string name, const int* truth );
66  virtual vtkstd::vector<vtksys_stl::string>::size_type Length();
67 protected:
70 };
71 
79 {
80 public:
81  vtkExodusIIReaderTensorCheck( const char* seq, int n, int rank, int dim );
82  virtual bool StartInternal( vtksys_stl::string name, const int*, int );
83  virtual bool Add( vtksys_stl::string name, const int* truth );
84  virtual vtkstd::vector<vtksys_stl::string>::size_type Length();
85 protected:
87  vtkTypeUInt64 NumEndings;
88  int Dimension;
89  int Rank;
91 };
92 
95 {
96 public:
98  virtual bool StartInternal( vtksys_stl::string name, const int*, int );
99  virtual bool Add( vtksys_stl::string name, const int* );
100  virtual vtkstd::vector<vtksys_stl::string>::size_type Length();
101  /*
102  virtual int Accept(
103  vtkstd::vector<vtkExodusIIReaderPrivate::ArrayInfoType>& arr, int startIndex, vtkExodusIIReaderPrivate* priv, int objtyp )
104  {
105  }
106  */
107 protected:
109  bool AddIntegrationPoint( vtksys_stl::string iptName );
110 
111  vtksys::RegularExpression RegExp;
114  vtkstd::vector<int> IntPtMin;
115  vtkstd::vector<int> IntPtMax;
116  vtkstd::set<vtksys_stl::string> IntPtNames;
117  vtkTypeUInt64 Rank;
119 };
120 
121 #endif // __vtkExodusIIReaderVariableCheck_h