00001 /* This file is part of MED. 00002 * 00003 * COPYRIGHT (C) 1999 - 2015 EDF R&D, CEA/DEN 00004 * MED is free software: you can redistribute it and/or modify 00005 * it under the terms of the GNU Lesser General Public License as published by 00006 * the Free Software Foundation, either version 3 of the License, or 00007 * (at your option) any later version. 00008 * 00009 * MED is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public License 00015 * along with MED. If not, see <http://www.gnu.org/licenses/>. 00016 */ 00017 #include "MEDversionedApi.hxx" 00018 #include "med_config.h" 00019 #include "med_utils.h" 00020 #include <iostream> 00021 00022 // extern "C" { 00023 #include "med_versioned.h" 00024 // } 00025 00026 using namespace std; 00027 00028 #define STR(chaine) # chaine 00029 #define XSTR(chaine) STR(chaine) 00030 00031 static MED_VERSIONED_API & addFortranSymbol(MED_VERSIONED_API& table) { 00032 00033 map<keyType,MedFuncType > & 00034 _table = dynamic_cast< map<keyType, 00035 MedFuncType > & > ( table ) ; 00036 00037 //Ds l'interface C/F les noms de functions résultent 00038 //d'une macro F77_FUNC 00039 // table[ XSTR(nedffamc231) ] = nedffamc231 ; 00040 // table[ XSTR(nedffamc232) ] = nedffamc232 ; 00041 #if MED_HAVE_FORTRAN == 1 00042 _table[ "nedffamc231" ] = nedffamc231 ; 00043 _table[ "nedffamc232" ] = nedffamc232 ; 00044 _table[ "nedffamc233" ] = nedffamc232 ; 00045 #endif 00046 return table; 00047 } 00048 00049 extern "C" { MED_VERSIONED_API & MedVersionedApiF=addFortranSymbol(MED_VERSIONED_API::Instance()); }