3 #ifndef vtkExodusIIReaderVariableCheck_h
4 #define vtkExodusIIReaderVariableCheck_h
11 #include <vtksys/RegularExpression.hxx>
19 VTK_ABI_NAMESPACE_BEGIN
30 virtual std::vector<std::string>::size_type
Length();
32 virtual int Accept(std::vector<vtkExodusIIReaderPrivate::ArrayInfoType>& arr,
int startIndex,
43 std::vector<vtkExodusIIReaderPrivate::ArrayInfoType>& arrays);
67 std::vector<std::string>::size_type
Length()
override;
86 std::vector<std::string>::size_type
Length()
override;
104 std::vector<std::string>::size_type
Length()
override;
126 VTK_ABI_NAMESPACE_END
This looks for integration-point variables whose names contain an element shape and digits specifying...
bool Add(std::string name, const int *) override
Add a name to the sequence. Returns true if any more names may be added.
vtkExodusIIReaderIntPointCheck()
vtksys::RegularExpression RegExp
std::set< std::string > IntPtNames
bool StartInternal(std::string name, const int *, int) override
Subclasses implement this and returns true if any more names are acceptable.
bool AddIntegrationPoint(std::string iptName)
std::vector< int > IntPtMax
std::vector< std::string >::size_type Length() override
Returns the length of the sequence (or 0 if the match is incorrect or incomplete).
bool StartIntegrationPoints(std::string cellType, std::string iptName)
std::vector< int > IntPtMin
This class holds metadata for an Exodus file.
This always accepts a single array name as a scalar. It is the fallback for all other checkers.
bool Add(std::string, const int *) override
Add a name to the sequence. Returns true if any more names may be added.
bool StartInternal(std::string name, const int *, int) override
Subclasses implement this and returns true if any more names are acceptable.
vtkExodusIIReaderScalarCheck()
This looks for symmetric tensors of a given rank and dimension.
vtkExodusIIReaderTensorCheck(const char *seq, int n, int rank, int dim)
bool StartInternal(std::string name, const int *, int) override
Subclasses implement this and returns true if any more names are acceptable.
bool Add(std::string name, const int *truth) override
Add a name to the sequence. Returns true if any more names may be added.
std::vector< std::string >::size_type Length() override
Returns the length of the sequence (or 0 if the match is incorrect or incomplete).
Abstract base class for glomming arrays of variable names.
bool CheckTruth(const int *truth)
Utility that subclasses may call from within Add() to verify that the new variable is defined on the ...
bool UniquifyName(vtkExodusIIReaderPrivate::ArrayInfoType &ainfo, std::vector< vtkExodusIIReaderPrivate::ArrayInfoType > &arrays)
virtual std::vector< std::string >::size_type Length()
Returns the length of the sequence (or 0 if the match is incorrect or incomplete).
virtual int Accept(std::vector< vtkExodusIIReaderPrivate::ArrayInfoType > &arr, int startIndex, vtkExodusIIReaderPrivate *priv, int objtyp)
Accept this sequence. (Add an entry to the end of arr.) Must return Length().
virtual bool Add(std::string name, const int *truth)=0
Add a name to the sequence. Returns true if any more names may be added.
std::vector< std::string > OriginalNames
virtual bool StartInternal(std::string name, const int *truth, int numTruth)=0
Subclasses implement this and returns true if any more names are acceptable.
virtual bool Start(std::string name, const int *truth, int numTruth)
Initialize a sequence of names. Returns true if any more names are acceptable.
std::vector< int > SeqTruth
vtkExodusIIReaderVariableCheck()
virtual ~vtkExodusIIReaderVariableCheck()
This looks for n-D vectors whose names are identical except for a single final character.
bool Add(std::string name, const int *truth) override
Add a name to the sequence. Returns true if any more names may be added.
bool StartInternal(std::string name, const int *, int) override
Subclasses implement this and returns true if any more names are acceptable.
vtkExodusIIReaderVectorCheck(const char *seq, int n)
std::vector< std::string >::size_type Length() override
Returns the length of the sequence (or 0 if the match is incorrect or incomplete).
A struct to hold information about time-varying arrays.