Réserver une Démo
Pré. Proc.

Statemachine héritée Gabarits

La génération de code fonctionne à l'aide d'un ensemble de gabarits de génération. À partir de la version 11.0 d' Enterprise Architect , un ensemble différent de gabarits est disponible par défaut pour la génération de code logiciel à partir d'un diagramme Statemachine en code Java, C, ANSI C++ ou C# . Vous pouvez toujours utiliser les gabarits d'origine, comme décrit ici, pour les modèles développés dans les versions antérieures d' Enterprise Architect , si vous ne souhaitez pas facilités mettre à niveau pour les nouveaux gabarit .

Basculer entre gabarits Legacy et Release 11

Accéder

Affichez la dialogue « Gérer les options Modèle », puis affichez la page « Spécifications de langue » pour la langue choisie, en utilisant l'une des méthodes décrites dans ce tableau . Si nécessaire, développez le groupement « Ingénierie Statemachine (pour le modèle actuel) » et définissez l'option « Utiliser la nouvelle Statemachine Gabarit » sur True (pour utiliser les gabarits ultérieurs) ou False (pour utiliser les gabarits hérités).

Ruban

Paramètres > Modèle > Options > Ingénierie du code source > [nom de la langue]

Transformations héritées Gabarit

Une Statemachine dans une classe génère en interne un certain nombre de constructions dans des langages logiciels pour assurer l'exécution efficace des comportements des States (do, entry et exit) et également pour coder l'effet de transition approprié lorsque cela est nécessaire.

Objets Modèle

Objets de code

Voir aussi

Énumérations

  • StateType - se compose d'une énumération pour chacun des States contenus dans la Statemachine
  • TransitionType – consiste en une énumération pour chaque transition à laquelle est associé un effet valide ; par exemple, ProcessOrder_Delivered_to_ProcessOrder_Closed
  • CommandType – consiste en une énumération pour chacun des types de comportement qu'un State peut contenir (Do, Entry, Exit)

Attributes

  • currState:StateType - une variable pour contenir les informations sur State actuel
  • nextState:StateType - une variable pour contenir les informations de State suivant, définies par les transitions de chaque State en conséquence
  • currTransition:TransitionType - une variable pour contenir les informations de transition actuelles ; elle est définie si la transition est associée à un effet valide
  • transcend:Boolean - un indicateur utilisé pour indiquer si une transition est impliquée dans la transcendance entre différentes Statemachines (ou états de sous-machines)
  • xx_history:StateType - une variable d'historique pour chaque State Statemachine /sous-machine, pour contenir des informations sur le dernier State à partir duquel la transition a eu lieu

Opérations

  • StatesProc - une procédure States , contenant une carte entre l'énumération d'un State et son fonctionnement ; elle déréférence les informations de State actuel pour invoquer la fonction de State respectif
  • TransitionsProc - une procédure de transition, contenant une carte entre l'énumération de la transition et son effet ; elle invoque l'effet de la transition
  • <<État>> - une opération pour chacun des States contenus dans la Statemachine ; cela restitue les comportements d'un State en fonction du CommandType d'entrée et exécute également ses transitions
  • initializeStateMachine - une fonction qui initialise tous les attributs liés au framework
  • runStateMachine - une fonction qui parcourt chaque State et exécute leurs comportements et transitions en conséquence
Comportement opérationnel

Notes

  • Pour pouvoir générer du code à partir de modèles comportementaux, toutes les constructions comportementales doivent être contenues dans une classe

Apprenez Plus