Salome HOME
Porting to Mandrake 10.1 and new products:
[modules/kernel.git] / src / Batch / Batch_Job.cxx
1 /*
2  * Job.cxx : 
3  *
4  * Auteur : Ivan DUTKA-MALEN - EDF R&D
5  * Date   : Septembre 2003
6  * Projet : SALOME 2
7  *
8  */
9
10 #include "Batch_Job.hxx"
11 #include "Batch_Parametre.hxx"
12 #include <sstream>
13 //#include "MEDMEM_STRING.hxx"
14 using namespace std;
15
16 namespace Batch {
17
18   // Constructeur
19   Job::Job() : _param(), _env()
20   {
21     // Nothing to do
22   }
23
24
25   // Constructeur
26   Job::Job(Parametre param) : _param(param), _env()
27   {
28     // Nothing to do
29   }
30
31
32   // Constructeur
33   Job::Job(Environnement env) : _param(), _env(env)
34   {
35     // Nothing to do
36   }
37
38
39   // Constructeur
40   Job::Job(Parametre param, Environnement env) : _param(param), _env(env)
41   {
42     // Nothing to do
43   }
44
45   // Operateur pour l'affichage sur un stream
46   ostream & operator <<(ostream & os, const Job & job)
47   {
48     return os << job.__str__();
49   }
50
51   // Accesseur
52   Parametre Job::getParametre() const
53   {
54     return _param;
55   }
56
57   // Accesseur
58   void Job::setParametre(const Parametre & param)
59   {
60     _param = param;
61   }
62
63   // Accesseur
64   Environnement Job::getEnvironnement() const
65   {
66     return _env;
67   }
68
69   // Accesseur
70   void Job::setEnvironnement(const Environnement & env)
71   {
72     _env = env;
73   }
74
75
76   // Methode pour l'interfacage avec Python (SWIG) : affichage en Python
77   string Job::__str__() const {
78     //MEDMEM::STRING str;
79     ostringstream str;
80     str << "<Job (" << this << ") :" << endl;
81     str << "  Parametre :" << endl;
82     Parametre::const_iterator itp;
83     for(itp=_param.begin(); itp!=_param.end(); itp++) {
84       str << "   * " << (*itp).first << " : " << (*itp).second << endl;
85     }
86     str << "  Environnement :" << endl;
87     Environnement::const_iterator ite;
88     for(ite=_env.begin(); ite!=_env.end(); ite++) {
89       str << "   * " << (*ite).first << " : " << (*ite).second << endl;
90     }
91     str << " >";
92     return str.str();
93   }
94
95
96 }