VTK  9.3.20240916
vtkTemporalDelimitedTextReader.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
29#ifndef vtkTemporalDelimitedTextReader_h
30#define vtkTemporalDelimitedTextReader_h
31
33
34#include "vtkIOInfovisModule.h" // module export
35#include "vtkNew.h" // For ReadTable field
36
37#include <map> // To store the TimeMap
38#include <vector> // To store the TimeMap
39
40VTK_ABI_NAMESPACE_BEGIN
42{
43public:
46 void PrintSelf(ostream& os, vtkIndent indent) override;
47
49
56 vtkGetMacro(TimeColumnName, std::string);
57 void SetTimeColumnName(std::string name);
59
61
69 vtkGetMacro(TimeColumnId, int);
70 void SetTimeColumnId(int idx);
72
74
79 vtkGetMacro(RemoveTimeStepColumn, bool);
82
91
92protected:
94 ~vtkTemporalDelimitedTextReader() override = default;
95
103 vtkInformationVector* outputVector) override;
105 vtkInformationVector* outputVector) override;
106
114
120
121 // Time column fields
122 std::string TimeColumnName;
124 vtkIdType TimeColumnId = -1;
125 bool RemoveTimeStepColumn = true;
126 std::map<double, std::vector<vtkIdType>> TimeMap;
127
128 // Input file content and update
130 vtkMTimeType LastReadTime = 0;
132
133private:
135 void operator=(const vtkTemporalDelimitedTextReader&) = delete;
136};
137
138VTK_ABI_NAMESPACE_END
139#endif
reads in delimited ascii or unicode text files and outputs a vtkTable data structure.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Allocate and hold a VTK object.
Definition vtkNew.h:167
reads a delimited ascii or unicode text files and and output a temporal vtkTable.
vtkMTimeType GetMTime() override
Internal fields of this reader use a specific MTime (InternalMTime).
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
In order to fill the TIME_STEPS and TIME_RANGE keys, this method call the ReadData function that actu...
void SetRemoveTimeStepColumn(bool rts)
Set the RemoveTimeStepColumn flag If this boolean is true, the output will not contain the Time step ...
static vtkTemporalDelimitedTextReader * New()
~vtkTemporalDelimitedTextReader() override=default
std::map< double, std::vector< vtkIdType > > TimeMap
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
bool EnforceColumnName()
This function checks if a user specified column has been set and check if this input is valid.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void InternalModified()
When parameters specific of this reader are modified, we do not want to re-read the input file.
void SetTimeColumnName(std::string name)
Get/Set the name of the column to use as time indicator.
void SetTimeColumnId(int idx)
Get/Set the column to use as time indicator.
record modification and/or execution time
int vtkIdType
Definition vtkType.h:315
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:270