Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.
Topic |
Prev | Next |
Recording and Mapping State Changes
This topic discusses how to set constraints against each State in the StateMachine under a Class, to define the change in state to be recorded.
Topics
Topic |
Detail |
See also |
---|---|---|
Example |
This example of a 'State Properties' dialog is for the State called Parliament; the 'Constraints' tab is open to show how the State is linked to the Class CXTrain. A State can be defined by a single constraint or by many; in the example, the State Parliament has two constraints:
The values of constraints can only be compared for elemental, enum and string types The CXTrain Class has a member called Location of type int, and a member called Departing.Name of type CString; what this constraint means is that this State is evaluated to True when:
|
Reporting a State Machine |
Operators in Constraints |
There are two types of operators you can use on constraints to define a State:
All the constraints for a State are subject to an AND operation unless otherwise specified; you can use the OR operation on them instead, so you could rewrite the constraints in the example as: Location=0 OR Location=1 AND Departing.Name!=Central Here are some examples of using the equivalence operators: Departing.Name!=Central AND Location!=1 |
Notes
Learn more