OpenMesh: OpenMesh/Core/IO/writer/VTKWriter.hh Source File

| OpenMesh

VTKWriter.hh
1 //=============================================================================
2 //
3 // Implements an IOManager writer module for VTK files
4 //
5 //=============================================================================
6
7 #ifndef __VTKWRITER_HH__
8 #define __VTKWRITER_HH__
9
10 //=== INCLUDES ================================================================
11
12 #include <string>
13 #include <iosfwd>
14
15 #include <OpenMesh/Core/System/config.h>
16 #include <OpenMesh/Core/Utils/SingletonT.hh>
17 #include <OpenMesh/Core/IO/exporter/BaseExporter.hh>
18 #include <OpenMesh/Core/IO/writer/BaseWriter.hh>
19
20 //== NAMESPACES ===============================================================
21
22 namespace OpenMesh {
23 namespace IO {
24
25 //=== IMPLEMENTATION ==========================================================
26
27 class OPENMESHDLLEXPORT _VTKWriter_ : public BaseWriter
28 {
29 public:
30 _VTKWriter_();
31
32 std::string get_description() const override { return "VTK"; }
33 std::string get_extensions() const override { return "vtk"; }
34
35 bool write(const std::string&, BaseExporter&, Options, std::streamsize _precision = 6) const override;
36 bool write(std::ostream&, BaseExporter&, Options, std::streamsize _precision = 6) const override;
37
38 size_t binary_size(BaseExporter&, Options) const override { return 0; }
39 };
40
41 //== TYPE DEFINITION ==========================================================
42
44 extern _VTKWriter_ __VTKWriterinstance;
45 OPENMESHDLLEXPORT _VTKWriter_& VTKWriter();
46
47 //=============================================================================
48 } // namespace IO
49 } // namespace OpenMesh
50 //=============================================================================
51 #endif
52 //=============================================================================
OpenMesh
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:59
OpenMesh::IO::__VTKWriterinstance
_VTKWriter_ __VTKWriterinstance
Declare the single entity of the OBJ writer.
Definition: VTKWriter.cc:18
OpenMesh::IO::BaseExporter
Base class for exporter modules.
Definition: BaseExporter.hh:85
OpenMesh::IO::Options
Set options for reader/writer modules.
Definition: Options.hh:91
OpenMesh::IO::BaseWriter
Base class for all writer modules.
Definition: BaseWriter.hh:84
OpenMesh::IO::_VTKWriter_
Definition: VTKWriter.hh:28
OpenMesh::IO::_VTKWriter_::binary_size
size_t binary_size(BaseExporter &, Options) const override
Returns expected size of file if binary format is supported else 0.
Definition: VTKWriter.hh:38
OpenMesh::IO::_VTKWriter_::get_description
std::string get_description() const override
Return short description of the supported file format.
Definition: VTKWriter.hh:32
OpenMesh::IO::_VTKWriter_::get_extensions
std::string get_extensions() const override
Return file format's extension.
Definition: VTKWriter.hh:33