/usr/include/freefoam/conversion/STARCDMeshWriter.H is in libfreefoam-dev 0.1.0+dfsg-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 | /*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::meshWriters::STARCD
Description
Writes polyMesh in pro-STAR (v4) bnd/cel/vrt format
Alternatively, extracts the surface of the FOAM mesh into
pro-STAR (v4) .cel/.vrt/ format.
This can be useful, for example, for surface morphing in an external
package.
The cellTableId and cellTable information are used (if available).
Otherwise the cellZones are used (if available).
SourceFiles
STARCDMeshWriter.C
\*---------------------------------------------------------------------------*/
#ifndef STARCDMeshWriter_H
#define STARCDMeshWriter_H
#include <conversion/meshWriter.H>
#include <OpenFOAM/IOstream.H>
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace meshWriters
{
/*---------------------------------------------------------------------------*\
Class meshWriters::STARCD Declaration
\*---------------------------------------------------------------------------*/
class STARCD
:
public meshWriter
{
// Private Data
static const char* defaultBoundaryName;
// Private Member Functions
//- Disallow default bitwise copy construct
STARCD(const STARCD&);
//- Disallow default bitwise assignment
void operator=(const STARCD&);
//- Pro-STAR 4+ header format
static void writeHeader(Ostream&, const char* filetype);
//- Write points
void writePoints(const fileName& baseName) const;
//- Write cells
void writeCells(const fileName& baseName) const;
//- Write boundary
void writeBoundary(const fileName& baseName) const;
void getCellTable();
label findDefaultBoundary() const;
public:
// Static data members
//- Face addressing from OpenFOAM faces -> pro-STAR faces
static const label foamToStarFaceAddr[4][6];
// Constructors
//- Open a file for writing
STARCD
(
const polyMesh&,
const scalar scaleFactor = 1.0
);
//- Destructor
virtual ~STARCD();
// Member Functions
// Edit
//- Remove STAR-CD files for the baseName
void rmFiles(const fileName& baseName) const;
// Write
//- Write volume mesh
virtual bool write
(
const fileName& meshName = fileName::null
) const;
//- Write surface mesh with optional triangulation
virtual bool writeSurface
(
const fileName& meshName = fileName::null,
const bool& triangulate = false
) const;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace meshWriters
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************ vim: set sw=4 sts=4 et: ************************ //
|