Wiki

Version 196 (Etienne Pallier, 07/10/2015 12:38 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 195 Etienne Pallier
  * b) Dans le cas (rare) où on crée un contexte avec un nom qui 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 196 Etienne Pallier
 * Quand on clique sur le bouton SAVE, c'est un peu plus compliqué car *on doit normalement supprimer (ou écraser, si le nom n'a pas changé) le contexte d'origine*. 
152 194 Etienne Pallier
153 194 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 194 Etienne Pallier
   * _Attention, si on doit supprimer le contexte d'origine, *il s'agit toujours d'une suppression VIRTUELLE* (*)_
155 147 Etienne Pallier
156 147 Etienne Pallier
157 147 Etienne Pallier
158 152 Etienne Pallier
159 152 Etienne Pallier
160 152 Etienne Pallier
161 154 Etienne Pallier
*2.2.2. Aspect général du formulaire*
162 147 Etienne Pallier
163 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) : 
164 147 Etienne Pallier
165 147 Etienne Pallier
* Document complet (PPT) : {{thumbnail(CGDL-idees_v3.pptx, size=300, title=Dashboard_Controller)}}
166 147 Etienne Pallier
167 147 Etienne Pallier
* Nouvelle IHM proposée :
168 147 Etienne Pallier
 
169 147 Etienne Pallier
{{thumbnail(Diapositive10.jpg, size=300, title=Nouvelle_IHM)}}
170 147 Etienne Pallier
171 156 Etienne Pallier
* Liste des options pour les champs à liste déroulante : 
172 147 Etienne Pallier
173 147 Etienne Pallier
{{thumbnail(Diapositive11.jpg, size=300, title=Liste_des_champs)}}
174 45 Etienne Pallier
175 1 Etienne Pallier
176 3 Etienne Pallier
177 154 Etienne Pallier
*2.2.3. Description détaillée des champs du formulaire*
178 146 Etienne Pallier
179 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, ...). 
180 152 Etienne Pallier
On pourra nommer ce fichier "SETTINGS" ou "CONFIG"*
181 152 Etienne Pallier
182 152 Etienne Pallier
183 154 Etienne Pallier
*2.2.3.1. Panel OBSERVATION*
184 151 Etienne Pallier
185 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) :
186 1 Etienne Pallier
187 112 Etienne Pallier
*Date and time of acquisition:*
188 132 Etienne Pallier
- *[Date]* (format YYYYMMDD)
189 110 Etienne Pallier
- *[Start time]* (format HHMM)
190 110 Etienne Pallier
- *[Stop time]* (format HHMM)
191 1 Etienne Pallier
192 154 Etienne Pallier
*2.2.3.2. Panel CONTEXT NAME*
193 151 Etienne Pallier
194 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.
195 20 Etienne Pallier
196 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.
197 1 Etienne Pallier
198 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)
199 105 Etienne Pallier
avec :
200 15 Etienne Pallier
201 109 Etienne Pallier
* YYYYMMDD : Date du jour (ex, 20050529)
202 1 Etienne Pallier
203 109 Etienne Pallier
* HHMM-HHMM : temps de début puis temps de fin (ex : 0935-1147)
204 1 Etienne Pallier
Par défaut, temps début = maintenant, et temps fin = 2359 (fin de journée)
205 109 Etienne Pallier
206 109 Etienne Pallier
* <valeurs-des-champs-bleus> : concaténation des valeurs de tous les champs bleus de tous les panels
207 1 Etienne Pallier
208 152 Etienne Pallier
(Supprimer la fonctionnalité du 000, 001, 002 à la fin du nom du contexte)
209 113 Etienne Pallier
210 152 Etienne Pallier
211 152 Etienne Pallier
212 154 Etienne Pallier
*2.2.3.3. Validation du formulaire*
213 1 Etienne Pallier
214 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),
215 151 Etienne Pallier
sauf les panels facultatifs tels que "NOTES"... qui sont VERT, et le bouton "SAVE CONTEXT (and close)" est désactivé.
216 136 Etienne Pallier
Le titre d'un panel passe au VERT quand son contenu est suffisemment rempli.
217 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.
218 136 Etienne Pallier
219 154 Etienne Pallier
*2.2.3.4. Autres remarques*
220 136 Etienne Pallier
221 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".
222 136 Etienne Pallier
223 136 Etienne Pallier
Ajouter un *panel "Notebook"* sur lequel on pourra prendre des notes diverses.
224 136 Etienne Pallier
225 136 Etienne Pallier
226 136 Etienne Pallier
227 136 Etienne Pallier
228 113 Etienne Pallier
229 113 Etienne Pallier
230 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)
231 28 Etienne Pallier
232 159 Etienne Pallier
h4. 2.3. AUTRES CHANGEMENTS SUR LE LOGICIEL
233 1 Etienne Pallier
234 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*_
235 134 Etienne Pallier
236 119 Etienne Pallier
Outre le nouveau fonctionnement décrit ci-dessus, les *adaptations* suivantes ont été demandées.
237 116 Etienne Pallier
238 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.)_
239 3 Etienne Pallier
240 117 Etienne Pallier
*Panel Observation* :
241 3 Etienne Pallier
- Observation type : Cible LIBS par défaut (d'ailleurs, on peut enlever RMI et FOCUS)
242 34 Etienne Pallier
243 117 Etienne Pallier
*Panel Target* :
244 3 Etienne Pallier
Valeurs par défaut :
245 3 Etienne Pallier
- granulo : unknown
246 3 Etienne Pallier
- rough : unknown
247 3 Etienne Pallier
- size : 1-5 cm
248 3 Etienne Pallier
- albedo : remplacer 0 par unknown
249 3 Etienne Pallier
- origin : ajouter PELLET
250 3 Etienne Pallier
- composition : unknown
251 34 Etienne Pallier
252 117 Etienne Pallier
*Panel Environment* :
253 34 Etienne Pallier
- Atmosphere (en bleu car pris en compte pour le nom du contexte) : Mars par défaut
254 3 Etienne Pallier
- pressure : controlled par défaut
255 34 Etienne Pallier
256 117 Etienne Pallier
*Panel Hardware* :
257 34 Etienne Pallier
Valeurs par défaut :
258 3 Etienne Pallier
- Location (en bleu car pris en compte dans le nom du contexte) : IRAP
259 3 Etienne Pallier
- body unit : + Chemcam EM 2013 (par défaut)
260 34 Etienne Pallier
- Ctrl/cde : LANL/GSE
261 34 Etienne Pallier
- Mast : ChemCam EQM
262 3 Etienne Pallier
- Fiber : ChemCam FM-like
263 34 Etienne Pallier
264 117 Etienne Pallier
*Panel Distance* :
265 34 Etienne Pallier
- "Distance to target" => "Approximate dist to target"
266 34 Etienne Pallier
- enlever « obtained »
267 3 Etienne Pallier
- "st" => "step"
268 34 Etienne Pallier
269 117 Etienne Pallier
*Panel Miscellaneous* :
270 34 Etienne Pallier
- "Temperature of laser" => "Instrument chamber temperature"
271 3 Etienne Pallier
- "More comments" => "Description", doit contenir le commentaire suivant par défaut :
272 3 Etienne Pallier
"Sample in Martian chamber
273 34 Etienne Pallier
With folding mirror
274 34 Etienne Pallier
Laser in instrument chamber" 
275 34 Etienne Pallier
- Laser pulse : supprimer
276 34 Etienne Pallier
- SOH : yes par défaut
277 3 Etienne Pallier
- Laser freq : 3 Hz par défaut
278 1 Etienne Pallier
- Existing of laser : désactiver