16 #ifndef vtkFileSeriesHelper_h
17 #define vtkFileSeriesHelper_h
21 #include "vtkIOCGNSReaderModule.h"
27 VTK_ABI_NAMESPACE_BEGIN
46 void RemoveAllFileNames();
47 void AddFileName(
const char* fname);
48 void SetFileNames(
const std::vector<std::string>& filenames);
54 unsigned int GetNumberOfFiles()
const;
67 virtual bool ReadMetaFile(
const char* metafilename);
88 vtkSetMacro(IgnoreReaderTime,
bool);
89 vtkGetMacro(IgnoreReaderTime,
bool);
90 vtkBooleanMacro(IgnoreReaderTime,
bool);
110 virtual bool UpdateInformation(
vtkAlgorithm* reader,
const FileNameFunctorType& ftor);
122 const std::vector<double>&
GetTimeSteps()
const {
return this->AggregatedTimeSteps; }
127 const std::pair<double, double>&
GetTimeRange(
bool* isvalid =
nullptr)
const
129 if (isvalid !=
nullptr)
131 *isvalid = this->AggregatedTimeRangeValid;
133 return this->AggregatedTimeRange;
145 vtkGetMacro(PartitionedFiles,
bool);
156 std::vector<std::string> GetActiveFiles(
vtkInformation* outInfo)
const;
170 const std::pair<double, double>&
GetTimeRange()
const {
return this->TimeRange; }
171 const std::vector<double>&
GetTimeSteps()
const {
return this->TimeSteps; }
179 std::pair<double, double> TimeRange;
180 std::vector<double> TimeSteps;
195 std::vector<std::string> SplitFiles(
196 const std::vector<std::string>& files,
int piece,
int numPieces)
const;
198 void Broadcast(
int srcRank);
200 std::vector<double> AggregatedTimeSteps;
201 bool AggregatedTimeRangeValid;
202 std::pair<double, double> AggregatedTimeRange;
206 VTK_ABI_NAMESPACE_END
abstract base class for most VTK objects
const std::vector< double > & GetTimeSteps() const
Returns the timesteps determined.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
stream used to pass data across processes using vtkMultiProcessController.
vtkTypeUInt32 vtkMTimeType
record modification and/or execution time
bool VTKCOMMONCORE_EXPORT operator==(const std::string &a, const vtkStringToken &b)
Superclass for all sources, filters, and sinks in VTK.
a simple class to control print indentation
std::vector< std::string > FileNames
const std::pair< double, double > & GetTimeRange(bool *isvalid=nullptr) const
Returns the time range determined.
Helper class to process file series.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkMultiProcessController * Controller
std::vector< vtkTimeInformation > Information
Multiprocessing communication superclass.