Réserver une Démo

SVP notez : Cette page d’aide n’est pas pour la dernière version d’Enterprise Architect. La dernière aide peut être trouvée ici.

Pré. Proc.

Enregistrement et Mappage Changements de State

Cette rubrique explique comment définir des contraintes par rapport à chaque State dans la Statemachine d'état sous une classe, pour définir le changement d'état à enregistrer.

Exemple

Cet exemple de dialogue State ' Propriétés ' est pour l' State appelé Parlement ; l'onglet 'Constraints' est ouvert pour montrer comment l' State est lié à la classe CXTrain.

Un State peut être défini par une seule contrainte ou par plusieurs ; dans l'exemple, le Parlement State a deux contraintes :

Les valeurs des contraintes ne peuvent être comparées que pour les types elemental, enum et string

La classe CXTrain a un membre appelé Location de type int et un membre appelé Departing.Name de type CString ; ce que cette contrainte signifie, c'est que cet State est évalué à Vrai lorsque :

  • une instance de la classe CXTrain existe et
  • sa variable membre Location a la valeur 0 et
  • la variable membre Departing.Name a la valeur Parlement

Opérateurs dans les contraintes

Il existe deux types d'opérateurs que vous pouvez utiliser sur les contraintes pour définir un State :

  • Les opérateurs logiques AND et OR peuvent être utilisés pour combiner des contraintes
  • Les opérateurs d'équivalence {= et != } peuvent être utilisés pour définir les conditions d'une contrainte
Toutes les contraintes pour un State sont soumises à une opération AND sauf indication contraire ; vous pouvez utiliser l'opération OR sur eux à la place, vous pouvez donc réécrire les contraintes dans l'exemple comme suit :

Emplacement=0 OR

Emplacement=1 AND

Departing.Name!=Centre

Voici quelques exemples d'utilisation des opérateurs d'équivalence :

Departing.Name!=Central AND

Emplacement !=1

Notes

  • Les guillemets autour des chaînes sont facultatifs ; la comparaison des chaînes est toujours sensible à la casse pour déterminer la vérité d'une contrainte

Apprenez Plus