Wiki
Version 94 (Etienne Pallier, 06/26/2015 04:26 pm) → Version 95/198 (Etienne Pallier, 06/26/2015 04:27 pm)
h1. Wiki
*ChemCam Ground Data Log Book*
*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*
{{toc}}
---
h2. %{margin-left:0px; font-weight:normal; font-size:150; display:block; background-color:yellow; color:red}INFORMATIONS TECHNIQUES%
Ce logiciel est installé sur le Pc Chemcam, en salle blanche : http://planetowiki.irap.omp.eu/do/view/Computers/PcChemcam2Tour
OLD web page for this project : http://planetowiki.irap.omp.eu/do/view/Cgdl/WebHome
SVN repository : http://planetoweb2.irap.omp.eu/cgdl_svn/trunk
---
h2. %{margin-left:0px; font-weight:normal; font-size:150; display:block; background-color:yellow; color:red}Collaboration avec l'outil C-SPEC-HK%
Suite aux réunions du 29/4/15 et du 22/5/15 avec OG, WR, AC, PM, et EP,
le nouveau besoin exprimé passe par une collaboration de cet outil avec l'autre outil [[cspechkanalyser:|C-SPEC-HK]].
Début juin, nous avons eu une réunion avec le prestataire Richard Hitier qui nous a proposé un devis sur 6 jours,
pour la réalisation d'une nouvelle version impliquant la refonte de l'IHM en un seul formulaire contenant tous les champs.
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}JALONS DU DEVELOPPEMENT DES NOUVELLES FONCTIONNALITES PAR LE PRESTATAIRE%
Le développement doit se faire en Java 8
Calendrier prévisionnel (non contractuel) :
1) Mercredi 24/6/15 : Livraison de la version existante adaptée pour qu'elle crée un fichier XML unique par contexte
2) Mercredi 1/7/15 : Version avec Formulaire unique (au lieu du formulaire multi-onglets actuel)
A prévoir : Réunion de validation avec l'équipe Chemcam
*3) Mercredi 8/7/15 : Livraison de la version finale*
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}NOUVEAU WORKFLOW%
Voici une maquette du nouveau formulaire proposée par AC et OG : {{thumbnail(CGDL-idees_v3.pptx, size=300, title=Dashboard_Controller)}}
(Note : on change de contexte quand on change la roche, la distance, ou l’atmosphère…)
Le logiciel doit démarrer automatiquement au boot du pc.
h4. ECRAN 1 : START
Le premier écran *START* doit proposer les 4 choix suivants :
*1) Create a brand new context*
*2) Create a new context from another one*
*3) Modify a context*
*4) Delete a context*
*ATTENTION* : 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)"*.
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.
*Différences entre les options 1 à 3* :
* *(1) Création d'un tout nouveau contexte :*
* date = date du jour (*modifiable pour pouvoir créer un contexte dans le passé*)
* start time = maintenant (modifiable)
* stop time = 23:59 (modifiable)
* Autres champs = valeurs par défaut
* Quand on clique sur le bouton SAVE : la confirmation suivante est demandée : "Do you want to save this context with the name <...> ? (ok/cancel)"
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 : A context already exists with this name <...>. <OK>",
et la sauvegarde n'est pas effectuée.
* *(2) Création d'un nouveau contexte à partir d'un contexte existant :*
* date = idem (1)
* start time = idem (1)
* stop time = idem (1)
* Autres champs = valeurs du contexte existant
* Quand on clique sur le bouton SAVE : idem (1)
* *(3) Modification d'un contexte existant :*
* date = date du contexte existant (modifiable, bien qu'en théorie, on ne devrait pas l'autoriser, mais ça n'est pas bien grave...)
* start time = heure du contexte existant (modifiable)
* stop time = heure du contexte existant (modifiable)
* Autres champs = valeurs du contexte existant (idem (2))
* Quand on clique sur le bouton SAVE : on doit normalement supprimer (ou écraser, si le nom n'a pas changé) le contexte sélectionné au départ. Quand l'utilisateur clique sur le bouton "SAVE", on demande confirmation : "Do you want to update this context (with the name <...>) ? <OK> <CANCEL>"
*Suppression d'un contexte (options 3 et 4)* :
Afin de faciliter l'interaction avec le logiciel C-Spec-HK,
les fichiers de contexte "supprimés" ne doivent pas être physiquement supprimés,
mais seulement marqués du préfixe "_TO-BE-DELETED_".
Ces fichiers "supprimés" virtuellement ne doivent plus être visibles dans la liste des contextes affichée par C-GDL.
Ainsi, C-Spec-HK pourra se rendre compte qu'un contexte (même ancien, dans le passé) a été supprimé,
et pourra supprimer en conséquence le dossier de contexte associé
(suppression virtuelle elle aussi car on préfère ne pas prendre le risque de supprimer un dossier de contexte par erreur...)
Dans tous les cas (sauf le 4), on arrive ensuite à l'écran du formulaire unique.
Ce formulaire contient tout en bas un champ général (avec le bouton "SAVE CONTEXT (and close)") :
- *[CONTEXT NAME]*
Ce champ est *READ ONLY* car il est construit automatiquement à partir de la valeur de tous les champs "bleus" de tous les panels (au début, avec des valeurs par défaut)
Voici le format de ce champ, YYYYMMDD_HHMM-HHMM_context_<valeurs-des-champs-bleus>, avec :
* YYYYMMDD : Date du jour (ex, 20050529)
* HHMM-HHMM : temps de début puis temps de fin (ex : 0935-1147)
Par défaut, temps début = maintenant, et temps fin = 2359 (fin de journée)
* <valeurs-des-champs-bleus> : concaténation des valeurs de tous les champs bleus de tous les onglets
(Le fichier contexte résultant portera ce nom avec l'extension ".xml", une fois la sauvegarde faite)
Les 2 champs suivants permettent éventuellement de modifier les valeurs par défaut du temps début et temps fin (format HHMM) :
- *[Start time]*
- *[Stop time]*
Après avoir rempli les autres champs de cet écran "Observation", on passe à l'écran suivant ("Target") en cliquant sur le bouton "Next" (sauf si les valeurs remplies ne sont pas correctes),
et ainsi de suite, jusqu'au dernier écran "END".
L'écran "END" permet d'enregistrer le contexte (à condition que tous les onglets soient valides, et donc au vert) avec un bouton "SAVE CONTEXT"
Le contexte est ainsi sauvegardé dans un fichier individuel (pas dans un fichier global de tous les contextes)
(Actuellement, ce fichier n'est pas créé séparément, il est ajouté à un fichier CgdlContextList.xml dans le répertoire du programme, trié par date puis par nom de cible)
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}AUTRES CHANGEMENTS SUR LE LOGICIEL%
Outre le nouveau fonctionnement (workflow) décrit ci-dessus, les *adaptations* suivantes ont été demandées.
Supprimer la fonctionnalité du 000, 001, 002 à la fin du nom du contexte
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.
Le contenu des écrans (nom des paramètres, paramètre obligatoire ou facultatif, paramètre pris en compte pour le nom du contexte ou pas, type, valeur par défaut...)
doit être écrit dans un fichier texte (XML, JSON, ...) afin de faciliter les changements à l'avenir. On pourra nommer ce fichier "SETTINGS" ou "CONFIG"
Ajouter un écran (onglet) "Notebook" sur lequel on pourra prendre des notes diverses (juste avant l'écran "END")
*Ecran Observation* :
- Observation type : Cible LIBS par défaut (d'ailleurs, on peut enlever RMI et FOCUS)
*Ecran Target* :
Valeurs par défaut :
- granulo : unknown
- rough : unknown
- size : 1-5 cm
- albedo : remplacer 0 par unknown
- origin : ajouter PELLET
- composition : unknown
*Ecran Environment* :
- Atmosphere (en bleu car pris en compte pour le nom du contexte) : Mars par défaut
- pressure : controlled par défaut
*Ecran Hardware* :
Valeurs par défaut :
- Location (en bleu car pris en compte dans le nom du contexte) : IRAP
- body unit : + Chemcam EM 2013 (par défaut)
- Ctrl/cde : LANL/GSE
- Mast : ChemCam EQM
- Fiber : ChemCam FM-like
*Ecran Distance* :
- "Distance to target" => "Approximate dist to target"
- enlever « obtained »
- "st" => "step"
*Ecran Miscellaneous* :
- "Temperature of laser" => "Instrument chamber temperature"
- "More comments" => "Description", doit contenir le commentaire suivant par défaut :
"Sample in Martian chamber
With folding mirror
Laser in instrument chamber"
- Laser pulse : supprimer
- SOH : yes par défaut
- Laser freq : 3 Hz par défaut
- Existing of laser : désactiver
*Ecran END* :
- ajouter un bouton "RESET ALL" qui remet TOUS les écrans à leurs valeurs par défaut (déclenche une action reset sur chaque écran)
*ChemCam Ground Data Log Book*
*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*
{{toc}}
---
h2. %{margin-left:0px; font-weight:normal; font-size:150; display:block; background-color:yellow; color:red}INFORMATIONS TECHNIQUES%
Ce logiciel est installé sur le Pc Chemcam, en salle blanche : http://planetowiki.irap.omp.eu/do/view/Computers/PcChemcam2Tour
OLD web page for this project : http://planetowiki.irap.omp.eu/do/view/Cgdl/WebHome
SVN repository : http://planetoweb2.irap.omp.eu/cgdl_svn/trunk
---
h2. %{margin-left:0px; font-weight:normal; font-size:150; display:block; background-color:yellow; color:red}Collaboration avec l'outil C-SPEC-HK%
Suite aux réunions du 29/4/15 et du 22/5/15 avec OG, WR, AC, PM, et EP,
le nouveau besoin exprimé passe par une collaboration de cet outil avec l'autre outil [[cspechkanalyser:|C-SPEC-HK]].
Début juin, nous avons eu une réunion avec le prestataire Richard Hitier qui nous a proposé un devis sur 6 jours,
pour la réalisation d'une nouvelle version impliquant la refonte de l'IHM en un seul formulaire contenant tous les champs.
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}JALONS DU DEVELOPPEMENT DES NOUVELLES FONCTIONNALITES PAR LE PRESTATAIRE%
Le développement doit se faire en Java 8
Calendrier prévisionnel (non contractuel) :
1) Mercredi 24/6/15 : Livraison de la version existante adaptée pour qu'elle crée un fichier XML unique par contexte
2) Mercredi 1/7/15 : Version avec Formulaire unique (au lieu du formulaire multi-onglets actuel)
A prévoir : Réunion de validation avec l'équipe Chemcam
*3) Mercredi 8/7/15 : Livraison de la version finale*
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}NOUVEAU WORKFLOW%
Voici une maquette du nouveau formulaire proposée par AC et OG : {{thumbnail(CGDL-idees_v3.pptx, size=300, title=Dashboard_Controller)}}
(Note : on change de contexte quand on change la roche, la distance, ou l’atmosphère…)
Le logiciel doit démarrer automatiquement au boot du pc.
h4. ECRAN 1 : START
Le premier écran *START* doit proposer les 4 choix suivants :
*1) Create a brand new context*
*2) Create a new context from another one*
*3) Modify a context*
*4) Delete a context*
*ATTENTION* : 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)"*.
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.
*Différences entre les options 1 à 3* :
* *(1) Création d'un tout nouveau contexte :*
* date = date du jour (*modifiable pour pouvoir créer un contexte dans le passé*)
* start time = maintenant (modifiable)
* stop time = 23:59 (modifiable)
* Autres champs = valeurs par défaut
* Quand on clique sur le bouton SAVE : la confirmation suivante est demandée : "Do you want to save this context with the name <...> ? (ok/cancel)"
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 : A context already exists with this name <...>. <OK>",
et la sauvegarde n'est pas effectuée.
* *(2) Création d'un nouveau contexte à partir d'un contexte existant :*
* date = idem (1)
* start time = idem (1)
* stop time = idem (1)
* Autres champs = valeurs du contexte existant
* Quand on clique sur le bouton SAVE : idem (1)
* *(3) Modification d'un contexte existant :*
* date = date du contexte existant (modifiable, bien qu'en théorie, on ne devrait pas l'autoriser, mais ça n'est pas bien grave...)
* start time = heure du contexte existant (modifiable)
* stop time = heure du contexte existant (modifiable)
* Autres champs = valeurs du contexte existant (idem (2))
* Quand on clique sur le bouton SAVE : on doit normalement supprimer (ou écraser, si le nom n'a pas changé) le contexte sélectionné au départ. Quand l'utilisateur clique sur le bouton "SAVE", on demande confirmation : "Do you want to update this context (with the name <...>) ? <OK> <CANCEL>"
*Suppression d'un contexte (options 3 et 4)* :
Afin de faciliter l'interaction avec le logiciel C-Spec-HK,
les fichiers de contexte "supprimés" ne doivent pas être physiquement supprimés,
mais seulement marqués du préfixe "_TO-BE-DELETED_".
Ces fichiers "supprimés" virtuellement ne doivent plus être visibles dans la liste des contextes affichée par C-GDL.
Ainsi, C-Spec-HK pourra se rendre compte qu'un contexte (même ancien, dans le passé) a été supprimé,
et pourra supprimer en conséquence le dossier de contexte associé
(suppression virtuelle elle aussi car on préfère ne pas prendre le risque de supprimer un dossier de contexte par erreur...)
Dans tous les cas (sauf le 4), on arrive ensuite à l'écran du formulaire unique.
Ce formulaire contient tout en bas un champ général (avec le bouton "SAVE CONTEXT (and close)") :
- *[CONTEXT NAME]*
Ce champ est *READ ONLY* car il est construit automatiquement à partir de la valeur de tous les champs "bleus" de tous les panels (au début, avec des valeurs par défaut)
Voici le format de ce champ, YYYYMMDD_HHMM-HHMM_context_<valeurs-des-champs-bleus>, avec :
* YYYYMMDD : Date du jour (ex, 20050529)
* HHMM-HHMM : temps de début puis temps de fin (ex : 0935-1147)
Par défaut, temps début = maintenant, et temps fin = 2359 (fin de journée)
* <valeurs-des-champs-bleus> : concaténation des valeurs de tous les champs bleus de tous les onglets
(Le fichier contexte résultant portera ce nom avec l'extension ".xml", une fois la sauvegarde faite)
Les 2 champs suivants permettent éventuellement de modifier les valeurs par défaut du temps début et temps fin (format HHMM) :
- *[Start time]*
- *[Stop time]*
Après avoir rempli les autres champs de cet écran "Observation", on passe à l'écran suivant ("Target") en cliquant sur le bouton "Next" (sauf si les valeurs remplies ne sont pas correctes),
et ainsi de suite, jusqu'au dernier écran "END".
L'écran "END" permet d'enregistrer le contexte (à condition que tous les onglets soient valides, et donc au vert) avec un bouton "SAVE CONTEXT"
Le contexte est ainsi sauvegardé dans un fichier individuel (pas dans un fichier global de tous les contextes)
(Actuellement, ce fichier n'est pas créé séparément, il est ajouté à un fichier CgdlContextList.xml dans le répertoire du programme, trié par date puis par nom de cible)
h3. %{margin-left:30px; font-weight:normal; display:block; background-color:lightgrey; color:black;}AUTRES CHANGEMENTS SUR LE LOGICIEL%
Outre le nouveau fonctionnement (workflow) décrit ci-dessus, les *adaptations* suivantes ont été demandées.
Supprimer la fonctionnalité du 000, 001, 002 à la fin du nom du contexte
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.
Le contenu des écrans (nom des paramètres, paramètre obligatoire ou facultatif, paramètre pris en compte pour le nom du contexte ou pas, type, valeur par défaut...)
doit être écrit dans un fichier texte (XML, JSON, ...) afin de faciliter les changements à l'avenir. On pourra nommer ce fichier "SETTINGS" ou "CONFIG"
Ajouter un écran (onglet) "Notebook" sur lequel on pourra prendre des notes diverses (juste avant l'écran "END")
*Ecran Observation* :
- Observation type : Cible LIBS par défaut (d'ailleurs, on peut enlever RMI et FOCUS)
*Ecran Target* :
Valeurs par défaut :
- granulo : unknown
- rough : unknown
- size : 1-5 cm
- albedo : remplacer 0 par unknown
- origin : ajouter PELLET
- composition : unknown
*Ecran Environment* :
- Atmosphere (en bleu car pris en compte pour le nom du contexte) : Mars par défaut
- pressure : controlled par défaut
*Ecran Hardware* :
Valeurs par défaut :
- Location (en bleu car pris en compte dans le nom du contexte) : IRAP
- body unit : + Chemcam EM 2013 (par défaut)
- Ctrl/cde : LANL/GSE
- Mast : ChemCam EQM
- Fiber : ChemCam FM-like
*Ecran Distance* :
- "Distance to target" => "Approximate dist to target"
- enlever « obtained »
- "st" => "step"
*Ecran Miscellaneous* :
- "Temperature of laser" => "Instrument chamber temperature"
- "More comments" => "Description", doit contenir le commentaire suivant par défaut :
"Sample in Martian chamber
With folding mirror
Laser in instrument chamber"
- Laser pulse : supprimer
- SOH : yes par défaut
- Laser freq : 3 Hz par défaut
- Existing of laser : désactiver
*Ecran END* :
- ajouter un bouton "RESET ALL" qui remet TOUS les écrans à leurs valeurs par défaut (déclenche une action reset sur chaque écran)