00001 /*---------------------------------------------------------------------------*\ 00002 ========= | 00003 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox 00004 \\ / O peration | 00005 \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. 00006 \\/ M anipulation | 00007 ------------------------------------------------------------------------------- 00008 License 00009 This file is part of OpenFOAM. 00010 00011 OpenFOAM is free software: you can redistribute it and/or modify it 00012 under the terms of the GNU General Public License as published by 00013 the Free Software Foundation, either version 3 of the License, or 00014 (at your option) any later version. 00015 00016 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT 00017 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00018 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00019 for more details. 00020 00021 You should have received a copy of the GNU General Public License 00022 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. 00023 00024 Class 00025 Foam::proxySurfaceWriter 00026 00027 Description 00028 00029 SourceFiles 00030 proxySurfaceWriter.C 00031 00032 \*---------------------------------------------------------------------------*/ 00033 00034 #ifndef proxySurfaceWriter_H 00035 #define proxySurfaceWriter_H 00036 00037 #include <sampling/surfaceWriter.H> 00038 00039 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00040 00041 namespace Foam 00042 { 00043 00044 /*---------------------------------------------------------------------------*\ 00045 Class proxySurfaceWriter Declaration 00046 \*---------------------------------------------------------------------------*/ 00047 00048 template<class Type> 00049 class proxySurfaceWriter 00050 : 00051 public surfaceWriter<Type> 00052 { 00053 00054 // Private data 00055 00056 //- The associated file extension 00057 word ext_; 00058 00059 public: 00060 00061 //- Runtime type information 00062 TypeName("proxy"); 00063 00064 00065 // Constructors 00066 00067 //- Construct for a given extension 00068 proxySurfaceWriter(const word& ext); 00069 00070 00071 // Destructor 00072 00073 virtual ~proxySurfaceWriter(); 00074 00075 00076 // Member Functions 00077 00078 //- Always write separate geometry file 00079 virtual bool separateFiles() 00080 { 00081 return true; 00082 } 00083 00084 // Write 00085 00086 //- Write geometry to file. 00087 virtual void write 00088 ( 00089 const fileName& outputDir, 00090 const fileName& surfaceName, 00091 const pointField& points, 00092 const faceList& faces, 00093 const bool verbose = false 00094 ) const; 00095 00096 00097 //- Writes single surface to file. 00098 virtual void write 00099 ( 00100 const fileName& outputDir, 00101 const fileName& surfaceName, 00102 const pointField& points, 00103 const faceList& faces, 00104 const fileName& fieldName, 00105 const Field<Type>& values, 00106 const bool verbose = false 00107 ) const 00108 {} 00109 }; 00110 00111 00112 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00113 00114 } // End namespace Foam 00115 00116 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00117 00118 #ifdef NoRepository 00119 # include "proxySurfaceWriter.C" 00120 #endif 00121 00122 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00123 00124 #endif 00125 00126 // ************************ vim: set sw=4 sts=4 et: ************************ //