VTK  9.3.1
vtkOMFReader.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
3 
4 #ifndef vtkOMFReader_h
5 #define vtkOMFReader_h
6 
8 #include "vtkIOOMFModule.h" // For export macro
9 
10 VTK_ABI_NAMESPACE_BEGIN
12 class vtkStringArray;
13 
27 class VTKIOOMF_EXPORT vtkOMFReader : public vtkDataObjectAlgorithm
28 {
29 public:
31  void PrintSelf(ostream& os, vtkIndent indent) override;
32 
36  static vtkOMFReader* New();
37 
39 
42  vtkSetFilePathMacro(FileName);
43  vtkGetFilePathMacro(FileName);
45 
47 
52  bool GetDataElementArrayStatus(const char* name);
53  void SetDataElementArrayStatus(const char* name, int status);
54  int GetNumberOfDataElementArrays();
55  const char* GetDataElementArrayName(int index);
56  vtkDataArraySelection* GetDataElementArraySelection();
58 
62  vtkMTimeType GetMTime() override;
63 
65 
68  vtkSetMacro(WriteOutTextures, bool);
69  vtkGetMacro(WriteOutTextures, bool);
71 
73 
78  vtkSetMacro(ColumnMajorOrdering, bool);
79  vtkGetMacro(ColumnMajorOrdering, bool);
81 
82 protected:
83  vtkOMFReader();
84  ~vtkOMFReader() override;
85 
86  int RequestDataObject(vtkInformation* request, vtkInformationVector** inputVector,
87  vtkInformationVector* outputVector) override;
88  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
89  vtkInformationVector* outputVector) override;
90  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
91  vtkInformationVector* outputVector) override;
92 
94 
95  char* FileName;
96  bool WriteOutTextures = true;
97  bool ColumnMajorOrdering = false;
98 
99 private:
100  vtkOMFReader(const vtkOMFReader&) = delete;
101  void operator=(const vtkOMFReader&) = delete;
102 
103  struct ReaderImpl;
104  ReaderImpl* Impl;
105 };
106 
107 VTK_ABI_NAMESPACE_END
108 #endif
virtual int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
static vtkDataObjectAlgorithm * New()
a vtkAbstractArray subclass for strings
Read Open Mining Format files.
Definition: vtkOMFReader.h:27
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
a simple class to control print indentation
Definition: vtkIndent.h:28
Store on/off settings for data arrays, etc.
virtual vtkMTimeType GetMTime()
Return this object's modified time.
Superclass for algorithms that produce only data object as output.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Store zero or more vtkInformation instances.
char * FileName
Definition: vtkOMFReader.h:95
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.