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

Legacy Statemachine Gabarits

La génération de code fonctionne à l'aide d'un ensemble de gabarits de génération. Depuis 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 les mettre à niveau pour le nouveau gabarit facilités .

Basculer entre gabarits Legacy et Release 11

Accéder

Affichez la boîte de dialogue "Gérer les options du Modèle ", puis affichez la page "Spécifications de la langue" pour la langue choisie, en utilisant l'une des méthodes décrites dans ce tableau . Si nécessaire, développez le groupement ' Statemachine Engineering (for current model)' et définissez l'option 'Use the new Statemachine Gabarit ' sur True (pour utiliser les derniers gabarits ) ou False (pour utiliser les Legacy gabarits ).

Ruban

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

Transformations héritées de Gabarit

Une Statemachine d'état dans une classe génère en interne un certain nombre de constructions dans des langages logiciels pour fournir une exécution efficace des comportements des States (faire, entrée et sortie) et également pour coder l'effet de transition approprié si nécessaire.

Objets Modèle

Objets codés

Voir également

Énumérations

  • StateType - consiste en une énumération pour chacun des States contenus dans la Statemachine
  • TransitionType – consiste en une énumération pour chaque transition qui a un effet valide qui lui est associé ; par exemple, ProcessOrder_Delivered_to_ProcessOrder_Closed
  • CommandType - consiste en une énumération pour chacun des types de comportement qu'un State peut contenir (faire, entrée, sortie)

Attributes

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

Opérations

  • StatesProc - une procédure d' States , contenant une carte entre l'énumération d'un State et son opération ; il déréférence les informations de l' State actuel pour invoquer la fonction de l' State respectif
  • TransitionsProc - une procédure Transitions, contenant une carte entre l'énumération de la Transition et son effet ; il invoque l'effet de transition
  • <<State>> - une opération pour chacun des States contenus dans la Statemachine ; cela rend les comportements d'un State basés sur l'entrée CommandType, 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 de fonctionnement

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