-// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2010 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
#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 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;
+#include "Batch_Defines.hxx"
+#include "Batch_Versatile.hxx"
namespace Batch {
// Operateur d'affectation
Parametre & operator =(const Parametre & PM);
- // Declarations statique des clefs de la map
- // TODO : supprimer les declarations statiques des clefs de la map
- static const std::string ACCOUNT;
- static const std::string ARGUMENTS;
- static const std::string CHECKPOINT;
- static const std::string CKPTINTERVAL;
- static const std::string CREATIONTIME;
- static const std::string EGROUP;
- static const std::string ELIGIBLETIME;
- static const std::string ENDTIME;
- static const std::string EUSER;
- static const std::string EXECUTABLE;
- static const std::string EXECUTIONHOST;
- static const std::string EXITCODE;
- static const std::string HOLD;
- static const std::string ID;
- static const std::string INFILE;
- static const std::string MAIL;
- static const std::string MAXCPUTIME;
- static const std::string MAXDISKSIZE;
- static const std::string MAXRAMSIZE;
- static const std::string MAXWALLTIME;
- static const std::string MODIFICATIONTIME;
- static const std::string NAME;
- static const std::string NBPROC;
- static const std::string OUTFILE;
- static const std::string PID;
- static const std::string QUEUE;
- static const std::string QUEUEDTIME;
- static const std::string SERVER;
- static const std::string STARTTIME;
- static const std::string STATE;
- static const std::string TEXT;
- static const std::string TMPDIR;
- static const std::string USEDCPUTIME;
- static const std::string USEDDISKSIZE;
- 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
-
- private:
-
};
}
-def_extern_MapKey(ACCOUNT)
-def_extern_MapKey(ARGUMENTS)
-def_extern_MapKey(CHECKPOINT)
-def_extern_MapKey(CKPTINTERVAL)
-def_extern_MapKey(CREATIONTIME)
-def_extern_MapKey(EGROUP)
-def_extern_MapKey(ELIGIBLETIME)
-def_extern_MapKey(ENDTIME)
-def_extern_MapKey(EUSER)
-def_extern_MapKey(EXECUTABLE)
-def_extern_MapKey(EXECUTIONHOST)
-def_extern_MapKey(EXITCODE)
-def_extern_MapKey(HOLD)
-def_extern_MapKey(ID)
-def_extern_MapKey(INFILE)
-def_extern_MapKey(MAIL)
-def_extern_MapKey(MAXCPUTIME)
-def_extern_MapKey(MAXDISKSIZE)
-def_extern_MapKey(MAXRAMSIZE)
-def_extern_MapKey(MAXWALLTIME)
-def_extern_MapKey(MODIFICATIONTIME)
-def_extern_MapKey(NAME)
-def_extern_MapKey(NBPROC)
-def_extern_MapKey(OUTFILE)
-def_extern_MapKey(PID)
-def_extern_MapKey(QUEUE)
-def_extern_MapKey(QUEUEDTIME)
-def_extern_MapKey(SERVER)
-def_extern_MapKey(STARTTIME)
-def_extern_MapKey(STATE)
-def_extern_MapKey(TEXT)
-def_extern_MapKey(TMPDIR)
-def_extern_MapKey(USEDCPUTIME)
-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