ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/outil/src/ot_parametres.cpp
Revision: 258
Committed: Thu Aug 12 19:10:34 2010 UTC (15 years ago) by francois
File size: 1983 byte(s)
Log Message:
Mise a jour toxfem + parametrisation compilation toxfem + bug 
comparaison

File Contents

# Content
1 #include "gestionversion.h"
2 #include "ot_parametres.h"
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 OT_PARAMETRES::OT_PARAMETRES()
18 {
19 }
20
21 OT_PARAMETRES::OT_PARAMETRES(OT_PARAMETRES &mdd)
22 {
23 int taille=nom_param.size();
24 for (int i=0;i<taille;i++)
25 {
26 nom_param.insert(nom_param.end(),mdd.nom_param[i]);
27 valeur_param.insert(valeur_param.end(),mdd.valeur_param[i]);
28 aide_param.insert(aide_param.end(),aide_param[i]);
29 }
30 }
31
32
33 OT_PARAMETRES::~OT_PARAMETRES()
34 {
35 }
36
37
38 void OT_PARAMETRES::ajouter(std::string chaine,double valeur,std::string aide)
39 {
40 nom_param.insert(nom_param.end(),chaine);
41 char mess[255];
42 sprintf(mess,"%lf",valeur);
43 valeur_param.insert(valeur_param.end(),mess);
44 aide_param.insert(aide_param.end(),aide);
45 }
46
47 void OT_PARAMETRES::ajouter(std::string chaine,std::string valeurstring,std::string aide)
48 {
49 nom_param.insert(nom_param.end(),chaine);
50 valeur_param.insert(valeur_param.end(),valeurstring);
51 aide_param.insert(aide_param.end(),aide);
52 }
53
54 void OT_PARAMETRES::enregistrer(char *nom)
55 {
56 FILE* in=fopen(nom,"wt");
57 int taille=nom_param.size();
58 for (int i=0;i<taille;i++)
59 fprintf(in,"%s = %s //%s\n",nom_param[i].c_str(),valeur_param[i].c_str(),aide_param[i].c_str());
60 fclose(in);
61 }
62
63 void OT_PARAMETRES::lire(char *nom)
64 {
65 FILE* in=fopen(nom,"rt");
66 while (!feof(in))
67 {
68 char chaine[4000];
69 fgets(chaine,4000,in);
70 char nom[255],c;
71 char nom2[255];
72 sscanf(chaine,"%s %c %s",nom,&c,nom2);
73 ajouter(nom,nom2);
74 }
75 fclose(in);
76 }
77
78
79
80 double OT_PARAMETRES::get_valeur(std::string chaine)
81 {
82 int taille=nom_param.size();
83 for (int i=0;i<taille;i++)
84 {
85 std::string valtmp=nom_param[i];
86 if (valtmp==chaine)
87 {
88 double val;
89 sscanf(valeur_param[i].c_str(),"%lf",&val);
90 return val;
91 }
92
93 }
94 return 0.;
95 }
96
97 std::string OT_PARAMETRES::get_nom(std::string chaine)
98 {
99 int taille=nom_param.size();
100 for (int i=0;i<taille;i++)
101 {
102 std::string valtmp=nom_param[i];
103 if (valtmp==chaine)
104 {
105 return valeur_param[i];
106 }
107
108 }
109 return "";
110 }
111
112 void OT_PARAMETRES::vide(void)
113 {
114 nom_param.clear();
115 valeur_param.clear();
116 }
117