18
COMETE COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

Embed Size (px)

Citation preview

Page 1: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

COMETE

COMETECOMmunity of Extendable

Toolkit for Experiment

Grégory Viguier et Katy SaintinJanvier 2010

Page 2: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

2COMETE

Plan de la présentation

• Au commencement ATK• Contexte du projet• Évolution du besoin• Limitations rencontrées• Naissance de Comète• Comète Data Model Access• Comète Widget• L’avenir du projet

Page 3: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

3COMETE

Le Toolkit ATK

• Librairies de composants graphique java.• Visualisation de données Tango• Exécution des commandes Tango.

Page 4: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

4COMETE

Architecture logicielle d’ATK

TangORB

ESRF

ATKPanel

ESRF

ATKCore

ESRF

ATKWidget

ESRF

Introspection

command_inoutread_attribute

Test sur les types

setModel

Page 5: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

5COMETE

Contexte du projet

• Déploiement sur la machine :– Utilisation du Toolkit ATK– Utilisation de l’application ATKPanel.– Intégration dans GlobalSCREEN– Utilisateurs experts seulement.

• Déploiement sur les lignes :– Utilisation du Toolkit ATK– Utilisations des applications ATK (ATKTrend, ATKTuning…)– Intégration dans GlobalSCREEN– Utilisateurs experts seulement.

Page 6: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

6COMETE

Évolution du besoin

• Nouvelles applications non basées sur TANGO.– Archivage,– Nexus,– Passerelle.

• La machine demande des applications WEB.– Machine Status.– Mambo Web.– GlobalSCREEN Web.– Passerelle Manager.

• Les lignes reçoivent des utilisateurs non expert.– Application intégrées,– Besoins de nouvelles fonctionnalités (Plotter et

ImageViewer),– Besoin de faire du traitement offline.

Page 7: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

7COMETE

Limitations rencontrées.

• Collaboration autour de ATK– ATK développé et maintenu par l’ESRF.– Utilisation d’ATK que sur la machine à l’ESRF.– Le droit au commit est limité (voir quasi nul).

• Techniquement– ATK basé sur TangORB.– Composants n’affichant que du TANGO.– Ne suit pas toujours les normes Java Bean.

Page 8: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

8COMETE

Naissance de Comète

• Projet Open Source né le 20 juillet 2009.– http://sourceforge.net/projects/comete/

• Librairie de composants graphiques java (bean).– CometeWidget

• Modèle de données séparé et abstrait.– CometeDAO

• Implémentations par défaut– Simulé, Tango, Nexus, Salsa, Passerelle

Page 9: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

9COMETE

Première architecture

fr.soleil.comete.widgets

IJVIewerChartViewerWheelSwitch…

VueCometeWidget

fr.soleil.comete.dao

tangonexuspasserellearchiving…

ModèleCometeDAO

fr.soleil.comete.applications

GlobalSCREENMAMBOFLAMENCO…

ContrôleurApplications

setDAO

Page 10: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

10COMETE

Comète Data Model Access

• Projet GumTree.– ANSTO Expérience Neutron, Tony Lam– http://www.ansto.gov.au– Modèle d’accès aux données abstrait.

• Interfaces.– Dictionnaire => Clé, Chemin– Conteneur de données => Lien entre Dico et DataSet.– Data Set => Manipulateur de données– Data Item => Eléments d’un conteneur

• Implémentations sous forme de pluggin– ANSTO NetCDF HDF– Soleil Nexus– …

Page 11: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

11COMETE

Comète Data Model Access

ROOT

NXEntry

NXData

NXData

Type

-Taille

-Description

Attributs

1 – new DataSet

2 – new Dictionnary

3 – new Container

4 - new DataItem

DataItemget Attributes

Page 12: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

12COMETE

Nouvelle architecture

fr.soleil.comete.widgets

IJVIewerChartViewerWheelSwitch…

VueCometeWidget

fr.soleil.comete.applications

GlobalSCREENMAMBOFLAMENCO…

ContrôleurApplications

fr.soleil.comete.dao

tangodaonexusdaopasserelledaoarchivingdao…

ModèleCometeDAO

setDAO

fr.soleil.comete.pluggin

Tango plugginNexus plugginPasserelle plugginArchiving plugin…

GumTreeCometePluggin

Page 13: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

13COMETE

Comète Data Model Access

Page 14: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

14COMETE

CometeWidget

• SWING de base pour visualiser des scalaires :

Page 15: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

15COMETE

CometeWidget• Composants pour manipuler des images :

Page 16: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

16COMETE

CometeWidget

• Composants pour visualiser des graphes :

Page 17: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

17COMETE

• Remplacement de ATK :– Baladi– GlobalSCREEN– Salsa V3– Foxtrot– Mambo– Applications spécifiques Soleil (Charleston, Capoeira…)=> http://sourceforge.net/projects/cometeapps/

• Collaboration autour de Nexus– Diamond– Ansto– DESY– ESRF

• Collaboration autour de nouveau widget– 3DViewer

Avenir du projet

Page 18: COMETE COMmunity of Extendable Toolkit for Experiment Grégory Viguier et Katy Saintin Janvier 2010

18COMETE

Des questions ?

?