VTK  9.1.0
vtkMCubesReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkMCubesReader.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 =========================================================================*/
82 #ifndef vtkMCubesReader_h
83 #define vtkMCubesReader_h
84 
85 #include "vtkIOGeometryModule.h" // For export macro
86 #include "vtkPolyDataAlgorithm.h"
87 
88 #define VTK_FILE_BYTE_ORDER_BIG_ENDIAN 0
89 #define VTK_FILE_BYTE_ORDER_LITTLE_ENDIAN 1
90 
92 
93 class VTKIOGEOMETRY_EXPORT vtkMCubesReader : public vtkPolyDataAlgorithm
94 {
95 public:
97  void PrintSelf(ostream& os, vtkIndent indent) override;
98 
102  static vtkMCubesReader* New();
103 
105 
111 
113 
116  vtkSetFilePathMacro(LimitsFileName);
117  vtkGetFilePathMacro(LimitsFileName);
119 
121 
124  vtkSetClampMacro(HeaderSize, int, 0, VTK_INT_MAX);
125  vtkGetMacro(HeaderSize, int);
127 
129 
135  vtkSetMacro(FlipNormals, vtkTypeBool);
136  vtkGetMacro(FlipNormals, vtkTypeBool);
137  vtkBooleanMacro(FlipNormals, vtkTypeBool);
139 
141 
144  vtkSetMacro(Normals, vtkTypeBool);
145  vtkGetMacro(Normals, vtkTypeBool);
146  vtkBooleanMacro(Normals, vtkTypeBool);
148 
150 
166  void SetDataByteOrder(int);
169 
171 
174  vtkSetMacro(SwapBytes, vtkTypeBool);
175  vtkGetMacro(SwapBytes, vtkTypeBool);
176  vtkBooleanMacro(SwapBytes, vtkTypeBool);
178 
180 
185  vtkGetObjectMacro(Locator, vtkIncrementalPointLocator);
187 
192 
196  vtkMTimeType GetMTime() override;
197 
198 protected:
200  ~vtkMCubesReader() override;
201 
203 
204  char* FileName;
211 
212 private:
213  vtkMCubesReader(const vtkMCubesReader&) = delete;
214  void operator=(const vtkMCubesReader&) = delete;
215 };
216 
217 #endif
vtkMCubesReader::SwapBytes
vtkTypeBool SwapBytes
Definition: vtkMCubesReader.h:207
vtkMCubesReader::New
static vtkMCubesReader * New()
Construct object with FlipNormals turned off and Normals set to true.
VTK_INT_MAX
#define VTK_INT_MAX
Definition: vtkType.h:155
vtkMCubesReader::Locator
vtkIncrementalPointLocator * Locator
Definition: vtkMCubesReader.h:206
vtkMCubesReader::GetDataByteOrderAsString
const char * GetDataByteOrderAsString()
These methods should be used instead of the SwapBytes methods.
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:145
vtkMCubesReader::SetDataByteOrderToLittleEndian
void SetDataByteOrderToLittleEndian()
These methods should be used instead of the SwapBytes methods.
vtkMCubesReader::GetDataByteOrder
int GetDataByteOrder()
These methods should be used instead of the SwapBytes methods.
vtkMCubesReader::FlipNormals
vtkTypeBool FlipNormals
Definition: vtkMCubesReader.h:209
vtkMCubesReader::vtkSetFilePathMacro
vtkSetFilePathMacro(FileName)
Specify file name of marching cubes file.
vtkMCubesReader::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkMCubesReader::SetDataByteOrderToBigEndian
void SetDataByteOrderToBigEndian()
These methods should be used instead of the SwapBytes methods.
vtkMCubesReader::GetMTime
vtkMTimeType GetMTime() override
Return the mtime also considering the locator.
vtkMCubesReader::LimitsFileName
char * LimitsFileName
Definition: vtkMCubesReader.h:205
vtkPolyDataAlgorithm.h
vtkMCubesReader::vtkMCubesReader
vtkMCubesReader()
vtkMCubesReader::CreateDefaultLocator
void CreateDefaultLocator()
Create default locator.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkMCubesReader::HeaderSize
int HeaderSize
Definition: vtkMCubesReader.h:208
vtkMCubesReader::FileName
char * FileName
Definition: vtkMCubesReader.h:204
vtkIncrementalPointLocator
Abstract class in support of both point location and point insertion.
Definition: vtkIncrementalPointLocator.h:52
vtkMCubesReader::SetDataByteOrder
void SetDataByteOrder(int)
These methods should be used instead of the SwapBytes methods.
vtkMCubesReader::~vtkMCubesReader
~vtkMCubesReader() override
vtkMCubesReader::Normals
vtkTypeBool Normals
Definition: vtkMCubesReader.h:210
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:183
vtkMCubesReader::vtkSetFilePathMacro
vtkSetFilePathMacro(LimitsFileName)
Set / get the file name of the marching cubes limits file.
vtkMCubesReader
read binary marching cubes file
Definition: vtkMCubesReader.h:94
vtkMCubesReader::vtkGetFilePathMacro
vtkGetFilePathMacro(LimitsFileName)
Set / get the file name of the marching cubes limits file.
vtkMCubesReader::vtkGetFilePathMacro
vtkGetFilePathMacro(FileName)
Specify file name of marching cubes file.
vtkMCubesReader::SetLocator
void SetLocator(vtkIncrementalPointLocator *locator)
Set / get a spatial locator for merging points.
vtkMCubesReader::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
vtkPolyDataAlgorithm
Superclass for algorithms that produce only polydata as output.
Definition: vtkPolyDataAlgorithm.h:151