Wiki

Version 197 (Etienne Pallier, 07/10/2015 12:47 pm)

1 1 Etienne Pallier
h1. Wiki
2 1 Etienne Pallier
3 4 Etienne Pallier
4 37 Etienne Pallier
5 37 Etienne Pallier
6 39 Etienne Pallier
*ChemCam Ground Data Log Book*
7 39 Etienne Pallier
8 40 Etienne Pallier
*This is a Java GUI tool to help building an information context to be associated to an observation (a series of ChemCam shots, FOCUS, LIBS, RMI) done in a laboratory*
9 37 Etienne Pallier
10 192 Etienne Pallier
_*(Last update : 10/7/2015)*_
11 37 Etienne Pallier
12 6 Etienne Pallier
{{toc}}
13 6 Etienne Pallier
14 6 Etienne Pallier
15 6 Etienne Pallier
---
16 6 Etienne Pallier
17 4 Etienne Pallier
h2. %{margin-left:0px; font-weight:normal; font-size:150;  display:block; background-color:yellow; color:red}INFORMATIONS TECHNIQUES%
18 4 Etienne Pallier
19 161 Etienne Pallier
(TODO) Ce logiciel est installé sur le Pc Chemcam, en salle blanche : http://planetowiki.irap.omp.eu/do/view/Computers/PcChemcam2Tour
20 41 Etienne Pallier
21 1 Etienne Pallier
OLD web page for this project : http://planetowiki.irap.omp.eu/do/view/Cgdl/WebHome
22 2 Etienne Pallier
23 3 Etienne Pallier
SVN repository : http://planetoweb2.irap.omp.eu/cgdl_svn/trunk
24 3 Etienne Pallier
25 1 Etienne Pallier
26 1 Etienne Pallier
27 1 Etienne Pallier
---
28 6 Etienne Pallier
29 166 Etienne Pallier
h2. %{margin-left:0px; font-weight:normal; font-size:150;  display:block; background-color:yellow; color:red}DOWNLOAD%
30 166 Etienne Pallier
31 173 Etienne Pallier
* LAST Version July 2015 (modifications made by R. Hitier), FORMULAIRE UNIQUE :  attachment:COMING SOON
32 173 Etienne Pallier
33 172 Etienne Pallier
* Version 28/02/2011 (modifications asked by A. Cousin and made by E. Pallier) :  attachment:"cgdl_jpl_apres_modif_JPL_demandee_par_Agnes.jar"
34 167 Etienne Pallier
35 172 Etienne Pallier
* Version 2010 (last version from R. Hitier) :  attachment:ChemCamLabTool-0.4.1.jar 
36 166 Etienne Pallier
37 166 Etienne Pallier
---
38 166 Etienne Pallier
39 165 Etienne Pallier
h2. %{margin-left:0px; font-weight:normal; font-size:150;  display:block; background-color:yellow; color:red}EXECUTION%
40 165 Etienne Pallier
41 165 Etienne Pallier
42 165 Etienne Pallier
In order to run this tool (a java archive file), you need a Java Virtual Machine installed on your computer (either JRE or JDK).
43 165 Etienne Pallier
44 165 Etienne Pallier
You can run this tool two different ways :
45 165 Etienne Pallier
* by double-clicking on it
46 165 Etienne Pallier
* from the command line (Mac or Linux) : java -jar cgdl.jar 
47 165 Etienne Pallier
    
48 166 Etienne Pallier
49 166 Etienne Pallier
---
50 166 Etienne Pallier
51 166 Etienne Pallier
h2. %{margin-left:0px; font-weight:normal; font-size:150;  display:block; background-color:yellow; color:red}RECUPERATION DU PROJET%
52 166 Etienne Pallier
53 174 Etienne Pallier
SVN repository : http://planetoweb2.irap.omp.eu/cgdl_svn/trunk
54 166 Etienne Pallier
55 174 Etienne Pallier
Pour récupérer une version synchronisée (avec les dossiers .svn) et ainsi contribuer au développement du projet :
56 174 Etienne Pallier
svn co http://planetoweb2.irap.omp.eu/cgdl_svn/trunk ma_version_synchronisee_de_cgdl
57 174 Etienne Pallier
58 174 Etienne Pallier
Pour récupérer une copie statique (non synchronisée, sans les ".svn") :
59 174 Etienne Pallier
svn export http://planetoweb2.irap.omp.eu/cgdl_svn/trunk ma_version_statique_de_cgdl
60 166 Etienne Pallier
61 175 Etienne Pallier
Lire ensuite le fichier README.txt
62 165 Etienne Pallier
63 187 Etienne Pallier
h2. %{margin-left:0px; font-weight:normal; font-size:150;  display:block; background-color:yellow; color:red}2015 Juin-Juillet - TRANSFORMATION (EN VUE D'UNE COLLABORATION AVEC C-SPEC-HK)%
64 165 Etienne Pallier
65 1 Etienne Pallier
66 4 Etienne Pallier
Suite aux réunions du 29/4/15 et du 22/5/15 avec OG, WR, AC, PM, et EP,
67 42 Etienne Pallier
le nouveau besoin exprimé passe par une collaboration de cet outil avec l'autre outil [[cspechkanalyser:|C-SPEC-HK]].
68 67 Etienne Pallier
Début juin, nous avons eu une réunion avec le prestataire Richard Hitier qui nous a proposé un devis sur 6 jours,
69 67 Etienne Pallier
pour la réalisation d'une nouvelle version impliquant la refonte de l'IHM en un seul formulaire contenant tous les champs.
70 42 Etienne Pallier
71 153 Etienne Pallier
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}1. JALONS DU DEVELOPPEMENT DES NOUVELLES FONCTIONNALITES PAR LE PRESTATAIRE%
72 1 Etienne Pallier
73 43 Etienne Pallier
Le développement doit se faire en Java 8
74 43 Etienne Pallier
75 65 Etienne Pallier
Calendrier prévisionnel (non contractuel) :
76 65 Etienne Pallier
77 42 Etienne Pallier
1) Mercredi 24/6/15 : Livraison de la version existante adaptée pour qu'elle crée un fichier XML unique par contexte
78 42 Etienne Pallier
79 184 Etienne Pallier
2) Lundi 6/7/15 : Version avec Formulaire unique (au lieu du formulaire multi-onglets actuel)
80 184 Etienne Pallier
(Réunion de validation avec l'équipe Chemcam à 10h30)
81 42 Etienne Pallier
82 44 Etienne Pallier
*3) Mercredi 8/7/15 : Livraison de la version finale*
83 8 Etienne Pallier
84 154 Etienne Pallier
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}2. NOUVELLE PRESENTATION%
85 103 Etienne Pallier
86 154 Etienne Pallier
(NOUVELLE IHM, NOUVEAU FORMULAIRE, NOUVEAU WORKFLOW)
87 58 Etienne Pallier
88 23 Etienne Pallier
(Note : on change de contexte quand on change la roche, la distance, ou l’atmosphère…)
89 15 Etienne Pallier
90 95 Etienne Pallier
91 13 Etienne Pallier
Le logiciel doit démarrer automatiquement au boot du pc.
92 1 Etienne Pallier
93 135 Etienne Pallier
Il est désormais composé de seulement 2 écrans.
94 135 Etienne Pallier
95 154 Etienne Pallier
h4. 2.1. ECRAN 1 : START
96 95 Etienne Pallier
97 36 Etienne Pallier
Le premier écran *START* doit proposer les 4 choix suivants :
98 95 Etienne Pallier
99 53 Etienne Pallier
*1) Create a brand new context*
100 53 Etienne Pallier
*2) Create a new context from another one*
101 53 Etienne Pallier
*3) Modify a context*
102 53 Etienne Pallier
*4) Delete a context*
103 52 Etienne Pallier
104 96 Etienne Pallier
Dans tous les cas (sauf le 1), une liste de TOUS les contextes existants est affichée (tous les contextes créés, même ceux du passé), parmi lesquels on doit en sélectionner un.
105 96 Etienne Pallier
106 125 Etienne Pallier
Dans le cas (4), on demande confirmation avant la suppression ("Do you really want to delete this context ? <OK> <CANCEL>), puis on revient à l'écran START après la suppression. 
107 96 Etienne Pallier
108 1 Etienne Pallier
Dans tous les autres cas (1 à 3), on arrive ensuite à l'écran du formulaire unique "CONTEXT DEFINITION".
109 102 Etienne Pallier
110 182 Etienne Pallier
*Suppression (virtuelle) d'un contexte (options 3 et 4)* (*):
111 102 Etienne Pallier
Afin de faciliter l'interaction avec le logiciel C-Spec-HK, 
112 102 Etienne Pallier
les fichiers de contexte "supprimés" ne doivent pas être physiquement supprimés,
113 176 Etienne Pallier
mais seulement marqués du préfixe "_DELETED_".
114 102 Etienne Pallier
Ces fichiers "supprimés" virtuellement ne doivent plus être visibles dans la liste des contextes affichée par C-GDL.
115 102 Etienne Pallier
Ainsi, C-Spec-HK pourra se rendre compte qu'un contexte (même ancien, dans le passé) a été supprimé,
116 102 Etienne Pallier
et pourra supprimer en conséquence le dossier de contexte associé 
117 102 Etienne Pallier
(suppression virtuelle elle aussi car on préfère ne pas prendre le risque de supprimer un dossier de contexte par erreur...)
118 102 Etienne Pallier
119 154 Etienne Pallier
h4. 2.2. ECRAN 2 : CONTEXT DEFINITION
120 99 Etienne Pallier
121 1 Etienne Pallier
122 154 Etienne Pallier
*2.2.1. Différence de comportement selon l'option choisie (dans l'écran 1)*
123 96 Etienne Pallier
124 142 Etienne Pallier
Dans les 3 premiers cas (options 1 à 3), *une fois que le contexte est sauvegardé (clic sur bouton SAVE), il est FERMÉ* car on ne doit plus pouvoir le modifier, sauf en l'ouvrant à nouveau en modification (option 3). Le bouton "SAVE" devra donc plutôt être nommé *"SAVE CONTEXT (and close)"*.
125 1 Etienne Pallier
126 144 Etienne Pallier
* *1) Create a brand new context (Création d'un tout nouveau contexte) :*
127 47 Etienne Pallier
128 57 Etienne Pallier
 * date = date du jour (*modifiable pour pouvoir créer un contexte dans le passé*)
129 47 Etienne Pallier
 * start time = maintenant (modifiable)
130 47 Etienne Pallier
 * stop time = 23:59 (modifiable)
131 72 Etienne Pallier
 * Autres champs = valeurs par défaut
132 193 Etienne Pallier
 * Quand on clique sur le bouton SAVE :
133 193 Etienne Pallier
134 193 Etienne Pallier
  * a) La confirmation suivante est demandée : "Do you want to CREATE this context with the name <...> ? <OK> <CANCEL>)"
135 197 Etienne Pallier
  * b) Dans le cas (rare) où le nom du contexte existe déjà, le *message d'avertissement* suivant est affiché : "WARNING : Cannot create this context. Another context already exists with this name <...>. <OK>", et *la sauvegarde n'est pas effectuée* (il revient à l'utilisateur de changer des paramètres pour changer le nom de son contexte et ainsi pouvoir le sauvegarder, sinon il peut toujours annuler)
136 1 Etienne Pallier
137 1 Etienne Pallier
* *2) Create a new context from another one (Création d'un nouveau contexte à partir d'un contexte existant) :*
138 1 Etienne Pallier
139 1 Etienne Pallier
 * date = idem (1)
140 1 Etienne Pallier
 * start time = idem (1)
141 1 Etienne Pallier
 * stop time = idem (1)
142 1 Etienne Pallier
 * Autres champs = valeurs du contexte existant
143 194 Etienne Pallier
 * Quand on clique sur le bouton SAVE : *idem* (1)
144 1 Etienne Pallier
145 1 Etienne Pallier
* *3) Modify a context (Modification d'un contexte existant) :*
146 1 Etienne Pallier
147 1 Etienne Pallier
 * date = date du contexte existant (modifiable, bien qu'en théorie, on ne devrait pas l'autoriser, mais ça n'est pas bien grave...)
148 1 Etienne Pallier
 * start time = heure du contexte existant (modifiable)
149 1 Etienne Pallier
 * stop time = heure du contexte existant (modifiable)
150 1 Etienne Pallier
 * Autres champs = valeurs du contexte existant (idem (2))
151 197 Etienne Pallier
 * Quand on clique sur le bouton SAVE, c'est un peu plus compliqué car *on doit normalement SUPPRIMER (ou ECRASER, si le nom n'a pas changé) le contexte d'origine*. 
152 1 Etienne Pallier
153 197 Etienne Pallier
  * a) Quand l'utilisateur clique sur le bouton "SAVE", on demande confirmation : "Do you want to UPDATE this context (with the name <...>) ? <OK> <CANCEL>"
154 197 Etienne Pallier
  * b) Si le nom du contexte existe déjà :
155 197 Etienne Pallier
156 197 Etienne Pallier
   * Si c'est le nom du contexte d'origine, c'est normal (car c'est une modif), on doit l'ECRASER (le mettre à jour)
157 197 Etienne Pallier
   * Si c'est un autre nom, ça n'est pas normal, et donc le *message d'avertissement* suivant est affiché : "WARNING : Cannot update this context. Another context already exists with this name <...>. <OK>", et *la sauvegarde n'est pas effectuée* (il revient à l'utilisateur de changer des paramètres pour changer le nom de son contexte et ainsi pouvoir le sauvegarder, sinon il peut toujours annuler)
158 197 Etienne Pallier
159 197 Etienne Pallier
  * c) Sinon (le nom du contexte n'existe pas encore) : il faut SUPPRIMER le contexte d'origine (suppression virtuelle) et créer le "nouveau" contexte
160 147 Etienne Pallier
161 147 Etienne Pallier
162 147 Etienne Pallier
163 152 Etienne Pallier
164 152 Etienne Pallier
165 152 Etienne Pallier
166 154 Etienne Pallier
*2.2.2. Aspect général du formulaire*
167 147 Etienne Pallier
168 147 Etienne Pallier
Voici une maquette (incomplète mais suffisante) du nouveau formulaire proposée par AC et OG (voir surtout les 2 dernières diapos) : 
169 147 Etienne Pallier
170 147 Etienne Pallier
* Document complet (PPT) : {{thumbnail(CGDL-idees_v3.pptx, size=300, title=Dashboard_Controller)}}
171 147 Etienne Pallier
172 147 Etienne Pallier
* Nouvelle IHM proposée :
173 147 Etienne Pallier
 
174 147 Etienne Pallier
{{thumbnail(Diapositive10.jpg, size=300, title=Nouvelle_IHM)}}
175 147 Etienne Pallier
176 156 Etienne Pallier
* Liste des options pour les champs à liste déroulante : 
177 147 Etienne Pallier
178 147 Etienne Pallier
{{thumbnail(Diapositive11.jpg, size=300, title=Liste_des_champs)}}
179 45 Etienne Pallier
180 1 Etienne Pallier
181 3 Etienne Pallier
182 154 Etienne Pallier
*2.2.3. Description détaillée des champs du formulaire*
183 146 Etienne Pallier
184 152 Etienne Pallier
Afin de faciliter les changements à l'avenir, la *configuration du formulaire* unique (noms des labels, valeurs par défaut, paramètre obligatoire ou facultatif) doit être *écrite dans un fichier texte* (XML, JSON, ...). 
185 152 Etienne Pallier
On pourra nommer ce fichier "SETTINGS" ou "CONFIG"*
186 152 Etienne Pallier
187 152 Etienne Pallier
188 154 Etienne Pallier
*2.2.3.1. Panel OBSERVATION*
189 151 Etienne Pallier
190 111 Etienne Pallier
Au tout début de ce formulaire, on trouve le panel "OBSERVATION", qui contient notamment les 3 champs donnant les date et période de couverture du contexte (pris en compte pour le champ CONTEXT NAME tout en bas) :
191 1 Etienne Pallier
192 112 Etienne Pallier
*Date and time of acquisition:*
193 132 Etienne Pallier
- *[Date]* (format YYYYMMDD)
194 110 Etienne Pallier
- *[Start time]* (format HHMM)
195 110 Etienne Pallier
- *[Stop time]* (format HHMM)
196 1 Etienne Pallier
197 154 Etienne Pallier
*2.2.3.2. Panel CONTEXT NAME*
198 151 Etienne Pallier
199 113 Etienne Pallier
Tout en bas, on a le panel "CONTEXT NAME" (avec le bouton "SAVE CONTEXT (and close)"), qui contient le nom courant du contexte.
200 20 Etienne Pallier
201 110 Etienne Pallier
Ce champ est *READ ONLY* car il est construit automatiquement à partir de la valeur des 3 champs temporels du début, et de tous les champs "bleus" de tous les panels.
202 1 Etienne Pallier
203 108 Etienne Pallier
Voici le format de ce champ : *<YYYYMMDD>_<HHMM>-<HHMM>_CONTEXT_<valeurs-des-champs-bleus>.xml* (ou .json si on fait du JSON à la place du XML, option ouverte)
204 105 Etienne Pallier
avec :
205 15 Etienne Pallier
206 109 Etienne Pallier
* YYYYMMDD : Date du jour (ex, 20050529)
207 1 Etienne Pallier
208 109 Etienne Pallier
* HHMM-HHMM : temps de début puis temps de fin (ex : 0935-1147)
209 1 Etienne Pallier
Par défaut, temps début = maintenant, et temps fin = 2359 (fin de journée)
210 109 Etienne Pallier
211 109 Etienne Pallier
* <valeurs-des-champs-bleus> : concaténation des valeurs de tous les champs bleus de tous les panels
212 1 Etienne Pallier
213 152 Etienne Pallier
(Supprimer la fonctionnalité du 000, 001, 002 à la fin du nom du contexte)
214 113 Etienne Pallier
215 152 Etienne Pallier
216 152 Etienne Pallier
217 154 Etienne Pallier
*2.2.3.3. Validation du formulaire*
218 1 Etienne Pallier
219 1 Etienne Pallier
En mode "Creation from scratch (1)", au début, tous les titres de tous les panels sont ROUGE car non remplis (ils peuvent être verts si les valeurs par défaut sont suffisantes),
220 151 Etienne Pallier
sauf les panels facultatifs tels que "NOTES"... qui sont VERT, et le bouton "SAVE CONTEXT (and close)" est désactivé.
221 136 Etienne Pallier
Le titre d'un panel passe au VERT quand son contenu est suffisemment rempli.
222 136 Etienne Pallier
Quand tous les panels sont VERT, le panel "CONTEXT NAME" passe lui aussi au VERT, et son bouton "SAVE CONTEXT (and close)" devient disponible.
223 136 Etienne Pallier
224 154 Etienne Pallier
*2.2.3.4. Autres remarques*
225 136 Etienne Pallier
226 136 Etienne Pallier
Prévoir un bouton "RESET" permettant de remettre toutes les valeurs par défaut. Ce bouton ne sera présent que dans l'option (1) "Creation of a new Context".
227 136 Etienne Pallier
228 136 Etienne Pallier
Ajouter un *panel "Notebook"* sur lequel on pourra prendre des notes diverses.
229 136 Etienne Pallier
230 136 Etienne Pallier
231 136 Etienne Pallier
232 136 Etienne Pallier
233 113 Etienne Pallier
234 113 Etienne Pallier
235 114 Etienne Pallier
(NB: Dans la version précédente de C-GDL, le contexte n'était pas créé séparément, mais il était ajouté à un fichier CgdlContextList.xml dans le répertoire du programme, trié par date puis par nom de cible)
236 28 Etienne Pallier
237 159 Etienne Pallier
h4. 2.3. AUTRES CHANGEMENTS SUR LE LOGICIEL
238 1 Etienne Pallier
239 160 Etienne Pallier
_*ATTENTION, CETTE SECTION N'EST PAS FORCEMENT TRES A JOUR CAR ELLE PART DE LA PHILO DE L'ANCIEN FORMULAIRE (multi-onglets), mais à consulter quand même*_
240 134 Etienne Pallier
241 119 Etienne Pallier
Outre le nouveau fonctionnement décrit ci-dessus, les *adaptations* suivantes ont été demandées.
242 116 Etienne Pallier
243 123 Etienne Pallier
_(Le bouton "Reset it" ne doit pas faire un "Next" après le reset (on peut d'ailleurs appeler ce bouton "Reset" tout simplement). Il remet les valeurs par défaut dans tous les champs de l'écran.)_
244 3 Etienne Pallier
245 117 Etienne Pallier
*Panel Observation* :
246 3 Etienne Pallier
- Observation type : Cible LIBS par défaut (d'ailleurs, on peut enlever RMI et FOCUS)
247 34 Etienne Pallier
248 117 Etienne Pallier
*Panel Target* :
249 3 Etienne Pallier
Valeurs par défaut :
250 3 Etienne Pallier
- granulo : unknown
251 3 Etienne Pallier
- rough : unknown
252 3 Etienne Pallier
- size : 1-5 cm
253 3 Etienne Pallier
- albedo : remplacer 0 par unknown
254 3 Etienne Pallier
- origin : ajouter PELLET
255 3 Etienne Pallier
- composition : unknown
256 34 Etienne Pallier
257 117 Etienne Pallier
*Panel Environment* :
258 34 Etienne Pallier
- Atmosphere (en bleu car pris en compte pour le nom du contexte) : Mars par défaut
259 3 Etienne Pallier
- pressure : controlled par défaut
260 34 Etienne Pallier
261 117 Etienne Pallier
*Panel Hardware* :
262 34 Etienne Pallier
Valeurs par défaut :
263 3 Etienne Pallier
- Location (en bleu car pris en compte dans le nom du contexte) : IRAP
264 3 Etienne Pallier
- body unit : + Chemcam EM 2013 (par défaut)
265 34 Etienne Pallier
- Ctrl/cde : LANL/GSE
266 34 Etienne Pallier
- Mast : ChemCam EQM
267 3 Etienne Pallier
- Fiber : ChemCam FM-like
268 34 Etienne Pallier
269 117 Etienne Pallier
*Panel Distance* :
270 34 Etienne Pallier
- "Distance to target" => "Approximate dist to target"
271 34 Etienne Pallier
- enlever « obtained »
272 3 Etienne Pallier
- "st" => "step"
273 34 Etienne Pallier
274 117 Etienne Pallier
*Panel Miscellaneous* :
275 34 Etienne Pallier
- "Temperature of laser" => "Instrument chamber temperature"
276 3 Etienne Pallier
- "More comments" => "Description", doit contenir le commentaire suivant par défaut :
277 3 Etienne Pallier
"Sample in Martian chamber
278 34 Etienne Pallier
With folding mirror
279 34 Etienne Pallier
Laser in instrument chamber" 
280 34 Etienne Pallier
- Laser pulse : supprimer
281 34 Etienne Pallier
- SOH : yes par défaut
282 3 Etienne Pallier
- Laser freq : 3 Hz par défaut
283 1 Etienne Pallier
- Existing of laser : désactiver