foamVtkLegacyAsciiFormatter.H
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2017-2022 OpenCFD Ltd.
9-------------------------------------------------------------------------------
10License
11 This file is part of OpenFOAM.
12
13 OpenFOAM is free software: you can redistribute it and/or modify it
14 under the terms of the GNU General Public License as published by
15 the Free Software Foundation, either version 3 of the License, or
16 (at your option) any later version.
17
18 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26Class
27 Foam::vtk::legacyAsciiFormatter
28
29Description
30 Formatting as per Foam::vtk::asciiFormatter, but with
31 naming for legacy output.
32
33SourceFiles
34 foamVtkLegacyAsciiFormatter.C
35
36\*---------------------------------------------------------------------------*/
37
38#ifndef Foam_vtk_legacyAsciiFormatter_H
39#define Foam_vtk_legacyAsciiFormatter_H
40
42
43// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44
45namespace Foam
46{
47namespace vtk
48{
49
50/*---------------------------------------------------------------------------*\
51 Class vtk::legacyAsciiFormatter Declaration
52\*---------------------------------------------------------------------------*/
55:
57{
58 // Private Data Members
59
60 static const char* legacyName_;
61 static const outputOptions opts_;
62
63
64 // Private Member Functions
65
66 //- No copy construct
68
69 //- No copy assignment
70 void operator=(const legacyAsciiFormatter&) = delete;
71
72
73public:
74
75 // Constructors
76
77 //- Construct and attach to an output stream, use default precision
78 explicit legacyAsciiFormatter(std::ostream& os);
79
80 //- Construct and attach to an output stream, use specified precision
81 legacyAsciiFormatter(std::ostream& os, unsigned prec);
82
83
84 //- Destructor
85 virtual ~legacyAsciiFormatter() = default;
86
87
88 // Member Functions
89
90 //- The output is LEGACY_ASCII.
91 virtual const vtk::outputOptions& opts() const;
92
93 //- Name for the legacy ascii output type ("ASCII")
94 virtual const char* name() const;
95
96 //- Name for the XML append encoding (unused).
97 // Currently identical to name(), but do not rely on this.
98 virtual const char* encoding() const;
99
100
101 // Disable some XML-only methods
103 inline virtual formatter& endTag(vtk::fileTag) { return *this; }
104 inline virtual formatter& endDataArray() { return *this; }
105 inline virtual formatter& endFieldData() { return *this; }
106 inline virtual formatter& endCellData() { return *this; }
107 inline virtual formatter& endPointData() { return *this; }
108 inline virtual formatter& endPiece() { return *this; }
109 inline virtual formatter& endVTKFile() { return *this; }
110};
111
112
113// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
114
115} // End namespace vtk
116} // End namespace Foam
117
118// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119
120#endif
121
122// ************************************************************************* //
Inline ASCII output. Adds spaces between entries and a newline every 9 items (for consistency with wh...
Abstract class for a VTK output stream formatter.
std::ostream & os() noexcept
Access to the underlying output stream.
Formatting as per Foam::vtk::asciiFormatter, but with naming for legacy output.
virtual formatter & endPointData()
End "PointData" XML section.
virtual formatter & endVTKFile()
End "VTKFile" XML section.
virtual formatter & endTag(vtk::fileTag)
An end XML tag with sanity check.
virtual formatter & endCellData()
End "CellData" XML section.
virtual ~legacyAsciiFormatter()=default
Destructor.
virtual const vtk::outputOptions & opts() const
The output is LEGACY_ASCII.
virtual const char * name() const
Name for the legacy ascii output type ("ASCII")
virtual formatter & endDataArray()
End "DataArray" XML section.
virtual formatter & endPiece()
End "Piece" XML section.
virtual formatter & endFieldData()
End "FieldData" XML section.
virtual const char * encoding() const
Name for the XML append encoding (unused).
Encapsulated combinations of output format options. This is primarily useful when defining the output...
fileTag
Some common XML tags for vtk files.
Definition: foamVtkCore.H:114
Namespace for OpenFOAM.