VTK  9.3.1
vtkBYUWriter.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
20 #ifndef vtkBYUWriter_h
21 #define vtkBYUWriter_h
22 
23 #include "vtkIOGeometryModule.h" // For export macro
24 #include "vtkWriter.h"
25 
26 VTK_ABI_NAMESPACE_BEGIN
27 class vtkPolyData;
28 
29 class VTKIOGEOMETRY_EXPORT vtkBYUWriter : public vtkWriter
30 {
31 public:
32  static vtkBYUWriter* New();
33 
34  vtkTypeMacro(vtkBYUWriter, vtkWriter);
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
38 
41  vtkSetFilePathMacro(GeometryFileName);
42  vtkGetFilePathMacro(GeometryFileName);
44 
46 
49  vtkSetFilePathMacro(DisplacementFileName);
50  vtkGetFilePathMacro(DisplacementFileName);
52 
54 
57  vtkSetFilePathMacro(ScalarFileName);
58  vtkGetFilePathMacro(ScalarFileName);
60 
62 
65  vtkSetFilePathMacro(TextureFileName);
66  vtkGetFilePathMacro(TextureFileName);
68 
70 
73  vtkSetMacro(WriteDisplacement, vtkTypeBool);
74  vtkGetMacro(WriteDisplacement, vtkTypeBool);
75  vtkBooleanMacro(WriteDisplacement, vtkTypeBool);
77 
79 
82  vtkSetMacro(WriteScalar, vtkTypeBool);
83  vtkGetMacro(WriteScalar, vtkTypeBool);
84  vtkBooleanMacro(WriteScalar, vtkTypeBool);
86 
88 
91  vtkSetMacro(WriteTexture, vtkTypeBool);
92  vtkGetMacro(WriteTexture, vtkTypeBool);
93  vtkBooleanMacro(WriteTexture, vtkTypeBool);
95 
97 
101  vtkPolyData* GetInput(int port);
103 
104 protected:
105  vtkBYUWriter();
106  ~vtkBYUWriter() override;
107 
108  void WriteData() override;
109 
117 
118  void WriteGeometryFile(FILE* fp, int numPts);
119  void WriteDisplacementFile(int numPts);
120  void WriteScalarFile(int numPts);
121  void WriteTextureFile(int numPts);
122 
123  int FillInputPortInformation(int port, vtkInformation* info) override;
124 
125 private:
126  vtkBYUWriter(const vtkBYUWriter&) = delete;
127  void operator=(const vtkBYUWriter&) = delete;
128 };
129 
130 VTK_ABI_NAMESPACE_END
131 #endif
char * TextureFileName
Definition: vtkBYUWriter.h:113
Store vtkAlgorithm input/output information.
char * ScalarFileName
Definition: vtkBYUWriter.h:112
vtkTypeBool WriteScalar
Definition: vtkBYUWriter.h:115
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:79
write MOVIE.BYU files
Definition: vtkBYUWriter.h:29
int vtkTypeBool
Definition: vtkABI.h:64
abstract class to write data to file(s)
Definition: vtkWriter.h:34
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkDataObject * GetInput()
vtkTypeBool WriteDisplacement
Definition: vtkBYUWriter.h:114
char * GeometryFileName
Definition: vtkBYUWriter.h:110
char * DisplacementFileName
Definition: vtkBYUWriter.h:111
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
static vtkAlgorithm * New()
virtual void WriteData()=0
vtkTypeBool WriteTexture
Definition: vtkBYUWriter.h:116