Vous êtes ici

GENIUS


GENIUS est une couche logicielle basée sur Swing, 100% codée en Java (pas de génération de code) permettant de créer plus facilement des IHM pour outils scientifiques quelle que soit le type de plateforme.

 

 

En effet, dans le monde Java, l’appel à des couches logicielles plus basiques telles que Swing peut devenir relativement complexe à utiliser et à maintenir parce qu’elles restent à relativement bas niveau (même si elles permettent de faire beaucoup de choses). De plus, des IHM pour des outils de dynamique du vol (ou plus généralement des outils scientifiques) ont la plupart du temps besoin :

  • De saisir des données numériques
  • De lire /écrire ces données dans des fichiers
  • D’exécuter des calculs sur la base de ces données
  • De visualiser des résultats

 

Aussi les principaux avantages de GENIUS sont :

  • D’avoir une approche simplifiée en particulier sur la gestion des évènements (AVANT/APRES)
  • De gérer efficacement des affichages conditionnels
  • De proposer de manière intégrée la gestion des fichiers de données au format XML
  • De gérer les unités
  • De gérer les lancements de calculs quel que soit l’OS (grâce à Java).

GENIUS bénéficie également du retour d’expérience des outils utilisés au CNES depuis plusieurs dizaines d’années en particulier dans le domaine opérationnel. Il dispose ainsi de fonctionnalité très intéressantes comme :

  • La gestion des domaines de validité d’un paramètre et la gestion d’erreur sur un ensemble de données

  • La gestion de valeurs par défaut, de référence ou de valeurs modifiées
  • Le « copier/coller » de widgets
  • Etc.

GENIUS est actuellement utilisé en interne CNES pour le développement de la plupart des outils experts comme PSIMU ainsi que d’autres outils à vocation plus opérationnelle comme ELECTRA.

GENIUS est fourni en mode Open Source sous licence Apache 2.0. La Java doc est accessible  via ce site (voir Documentation) ainsi que bientôt un Wiki.

Pour être utilisé, il faut aussi se procurer les produits suivants :

Java ≥ 1.6


Windows, Linux