Salome HOME
Remove warnings
[modules/kernel.git] / src / Batch / Batch_Parametre.hxx
index ae031342feab4667af03db28e0727d36ff61a421..c572a73bfea7fc2464b81eed761312f39a6ca0d0 100644 (file)
@@ -1,3 +1,24 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library 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
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 /*
  * Parametre.hxx : 
  *
 #ifndef _PARAMETRE_H_
 #define _PARAMETRE_H_
 
+#include "Batch_Defines.hxx"
+
 #include <map>
 #include <string>
 #include "Batch_InvalidKeyException.hxx"
 #include "Batch_Versatile.hxx"
 
-
 // Ces macros permettent de simplifier l'ajout de nouvelles
 // clefs dans la map Parametre
 // TODO : remplacer ce mecanisme statique par la lecture
 // TODO : d'une descrption dans un fichier exterieur (genre XML)
 
-#define def_extern_MapKey(mk) extern const std::string & mk;
+#define def_extern_MapKey(mk) extern BATCH_EXPORT const std::string & mk;
 #define def_static_MapKey(mk) const std::string Batch::Parametre::mk(#mk);     \
   const std::string & mk = Batch::Parametre::mk;
 
 namespace Batch {
 
-  class Parametre : public std::map< std::string, Versatile >
+  class BATCH_EXPORT Parametre : public std::map< std::string, Versatile >
   {
   public:
     // Constructeur standard
     Parametre();
 
     // Constructeur par recopie
-    Parametre(const Batch::Parametre & PM);
+    Parametre(const Parametre & PM);
 
     // Operateur de recherche dans la map
     Versatile & operator [] (const std::string &);
     const Versatile & operator [] (const std::string &) const;
 
     // Operateur d'affectation
-    Parametre & operator =(const Batch::Parametre & PM);
+    Parametre & operator =(const Parametre & PM);
 
     // Declarations statique des clefs de la map
     // TODO : supprimer les declarations statiques des clefs de la map
@@ -82,6 +104,8 @@ namespace Batch {
     static const std::string USEDRAMSIZE;
     static const std::string USEDWALLTIME;
     static const std::string USER;
+    static const std::string WORKDIR;
+    static const std::string HOMEDIR;
 
   protected:
     std::map< std::string, TypeParam > TypeMap; // map interne servant a controler le type de la valeur associee a chaque clef
@@ -129,5 +153,7 @@ def_extern_MapKey(USEDDISKSIZE);
 def_extern_MapKey(USEDRAMSIZE);
 def_extern_MapKey(USEDWALLTIME);
 def_extern_MapKey(USER);
+def_extern_MapKey(WORKDIR);
+def_extern_MapKey(HOMEDIR);
 
 #endif