Salome HOME
9909c0fcd65e3b96be1b4d70b42badf535a76ede
[modules/kernel.git] / src / Batch / Batch_JobInfo.cxx
1 // Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
3 // 
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either 
7 // version 2.1 of the License.
8 // 
9 // This library is distributed in the hope that it will be useful 
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
12 // Lesser General Public License for more details.
13 //
14 // You should have received a copy of the GNU Lesser General Public  
15 // License along with this library; if not, write to the Free Software 
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17 //
18 // See http://www.salome-platform.org/
19 //
20 /*
21  * JobInfo.cxx : 
22  *
23  * Auteur : Ivan DUTKA-MALEN - EDF R&D
24  * Mail   : mailto:ivan.dutka-malen@der.edf.fr
25  * Date   : Thu Nov  6 10:05:30 2003
26  * Projet : Salome 2
27  *
28  */
29
30 #include <iostream>
31 #include <string>
32 #include <sstream>
33 //#include "MEDMEM_STRING.hxx"
34 #include "Batch_JobInfo.hxx"
35
36 namespace Batch {
37
38   // Destructeur
39   JobInfo::~JobInfo()
40   {
41     // Nothing to do
42   }
43   
44
45   // Operateur pour l'affichage sur un stream
46   ostream & operator <<(ostream & os, const JobInfo & ji)
47   {
48     return os << ji.__str__();
49   }
50
51
52   // Methodes pour l'interfacage avec Python (SWIG) : affichage en Python
53   string JobInfo::__str__() const
54   {
55     //MEDMEM::STRING sst; 
56     ostringstream sst;
57     sst << "<JobInfo (" << this << ") :" << endl;
58     sst << " ID = " <<_param[ID] << endl;
59
60     sst << "  + Parametre :" << endl;
61     Parametre::const_iterator itp;
62     for(itp=_param.begin(); itp!=_param.end(); itp++) {
63       if ( (*itp).first != ID ) {
64         sst << "    * " << (*itp).first << " = " << (*itp).second << endl;
65       }
66     }
67
68     sst << "  + Environnement :" << endl;
69     Environnement::const_iterator ite;
70     for(ite=_env.begin(); ite!=_env.end(); ite++) {
71       sst << "    * " << (*ite).first << " = " << (*ite).second << endl;
72     }
73
74     sst << " >";
75
76     return sst.str();
77   }
78
79   // Accesseur
80   Parametre JobInfo::getParametre() const
81   {
82     return _param;
83   }
84
85   // Accesseur
86   Environnement JobInfo::getEnvironnement() const
87   {
88     return _env;
89   }
90
91
92 }