FreeFem 3.5.x
|
00001 // -*- Mode: c++ -*- 00002 // 00003 // SUMMARY: 00004 // USAGE: 00005 // 00006 // ORG: Christophe Prud'homme 00007 // AUTHOR: Christophe Prud'homme 00008 // E-MAIL: prudhomm@users.sourceforge.net 00009 // 00010 // DESCRIPTION: 00011 /* 00012 This program is free software; you can redistribute it and/or modify 00013 it under the terms of the GNU General Public License as published by 00014 the Free Software Foundation; either version 2 of the License, or 00015 (at your option) any later version. 00016 00017 This program is distributed in the hope that it will be useful, 00018 but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00020 GNU General Public License for more details. 00021 00022 You should have received a copy of the GNU General Public License 00023 along with this program; if not, write to the Free Software 00024 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00025 00026 */ 00027 // 00028 // < description of the code here> 00029 // 00030 // DESCRIP-END. 00031 // 00032 #ifndef __femident_H 00033 #ifdef __GNUG__ 00034 #pragma interface 00035 #endif 00036 #define __femident_H 1 00037 00038 #include <femCommon.hpp> 00039 00040 00041 #include <femMisc.hpp> 00042 00043 namespace fem 00044 { 00045 typedef enum 00046 { 00047 lpar, rpar, lbrace, rbrace, cste, newvar, oldvar, op_plus, op_minus, star, 00048 slash, modulo, lt, le, gt, ge, eq, neq, comma, semicolon, colon,sine, 00049 cosine,logarithm, exponential, root, absolute, expo, acose, asine, tane, et, 00050 coshe, sinhe, tanhe, ou, mini, maxi, partial_x, partial_y, si, alors, 00051 autrement, loop, error, _end, becomes, fdecl, symb_bdy, symb_build, atane, fctdef, 00052 symb_solv, symb_dch, symb_frr, symb_id, symb_lapl, symb_div, trace, 00053 changewait,trace3d, chaine, 00054 sauve, charge, sauvmsh, chargmsh, arret, fctfile, div_x, div_y, symb_convect,evalfct, 00055 symb_exec, sauvetout, symb_user, partreal, partimag, symb_system, symb_pde, 00056 id_bdy, dnu_bdy, 00057 d_xx, d_xy, d_yy, d_yx, symb_complex, symb_precise, prodscal, one, wait_state, 00058 nowait, nographics, rhsconvect,adaptmesh,polygon,gint,bint,bracketr,bracketl,varsolve,penall 00059 } Symbol; 00060 00061 DECLARE_CLASS( ident ); 00062 00063 00071 class ident 00072 { 00073 public: 00074 00078 00079 00081 00085 00087 ident(); 00089 ident(ident const&); 00091 ~ident(); 00093 ident& operator=( ident const& ); 00094 00095 00096 char *name; 00097 Symbol symb; 00098 creal value; 00099 creal *table; 00101 00102 private: 00103 00104 00105 }; 00106 } 00107 #endif /* __ident_H */ 00108