VTK  9.1.0
vtkTemporalDelimitedTextReader.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkTemporalDelimitedTextReader.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=========================================================================*/
38#ifndef vtkTemporalDelimitedTextReader_h
39#define vtkTemporalDelimitedTextReader_h
40
42
43#include "vtkIOInfovisModule.h" // module export
44#include "vtkNew.h" // For ReadTable field
45
46#include <map> // To store the TimeMap
47#include <vector> // To store the TimeMap
48
50{
51public:
54 void PrintSelf(ostream& os, vtkIndent indent) override;
55
57
64 vtkGetMacro(TimeColumnName, std::string);
65 void SetTimeColumnName(const std::string name);
67
69
77 vtkGetMacro(TimeColumnId, int);
78 void SetTimeColumnId(const int idx);
80
82
87 vtkGetMacro(RemoveTimeStepColumn, bool);
90
99
100protected:
103
111 vtkInformationVector* outputVector) override;
113 vtkInformationVector* outputVector) override;
114
122
128
129 // Time column fields
130 std::string TimeColumnName = "";
131 std::string InternalColumnName = "";
132 vtkIdType TimeColumnId = -1;
133 bool RemoveTimeStepColumn = true;
134 std::map<double, std::vector<vtkIdType>> TimeMap;
135
136 // Input file content and update
138 vtkMTimeType LastReadTime = 0;
140
141private:
143 void operator=(const vtkTemporalDelimitedTextReader&) = delete;
144};
145
146#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:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Allocate and hold a VTK object.
Definition: vtkNew.h:165
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 SetTimeColumnId(const int idx)
Get/Set the column to use as time indicator.
void SetTimeColumnName(const std::string name)
Get/Set the name of the column to use as time indicator.
record modification and/or execution time
Definition: vtkTimeStamp.h:52
int vtkIdType
Definition: vtkType.h:332
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287