Each UML Object instantiated on a UML Object Diagram is edited with the UML Object Properties Editor. When the UML Object is selected on the a UML Diagram drawing, the object's properties will be displayed in the Object tab of the Properties panel. If the properties are editable the properties can be changed with this editor.
Object Properties are listed in categories that may be expanded or collapsed. Categories include:
General: |
||
|
Object Name: |
A string editable by the user. The object name is used in the generated HDL, so meaningful object names are particularly important for readability of the generated HDL. |
Comment: |
||
Comments that will be included in the generated HDL can be entered and edited here. These comments can be used to document the code, or to provide synthesis directives. The pre comments are inserted before the objects HDL, and the post comments are included after the objects HDL. |
||
Tagged Values: |
||
Tagged Values are used to control the characteristics of the object. Values are selected from a pre-defined list of variants. Constants can only be used if previously defined as named constants. |
||
Outputs: |
||
1. |
Visibility: |
An outputs visibility is displayed as + for public (visible throughout the document), - for private (visible in this document only) or the stereotyped value of * for public and a document output pad. |
2. |
Alias: |
An alias can be defined that will be used in place of the auto generated HDL name made up of theoutputName_objectName_diagramName. |
Inputs: |
||
1. |
Visibility: |
An inputs visibility is displayed as + for public (visible throughout the document), - for private (visible in this document only) or the stereotyped value of * for public and a document input pad. |
2. |
<<Link>>: |
Interconnectivity of UML Object diagrams is defined by establishing links between UML object outputs and inputs. Each UML object input must have a single link. This link is an expression that can consist on a single UML Object output or several outputs combined by operators. The Expression Editor can be called from the inputs "..." button to allow the user to define the link expression for the input. |
Fig.16 UML Object Properties Editor
The sets of object properties for state diagram objects vary significantly with regard to state/superstates and transitions.
Object Properties for states and superstates:
Properties: |
||
|
Name: |
A string editable by the user. The object name is used in the generated HDL, so meaningful object names are particularly important for readability of the generated HDL. |
Entry: |
||
An action that occurs upon entry to the state. An action is assocated with a StateChart output and causes it's value to take the value specified by the action. The value of the action is specified using the Action Expression Editor. |
||
Do: |
||
An action that occurs as long as the state is active. An action is assocated with a StateChart output and causes it's value to take the value specified by the action. The value of the action is specified using the Action Expression Editor. |
||
Exit: |
||
An action that occurs upon exit from the state. An action is assocated with a StateChart output and causes it's value to take the value specified by the action. The value of the action is specified using the Action Expression Editor. |
Object Properties for transitions:
General: |
||
|
Guard: |
The condition that must occur for the transition to occur. Guards are boolean expressions that are specified using the Expression Editor. If the expression evaluates to true, the transition is executed, othewise it does not. The Guard Expression Editor includes a checkbox to specify that the transition "isElseGuard". This is a transition that will execute if all other transitions do not. |
Action: |
||
UMLActions specify that a StateChart Output is assigned to a particular value. UMLActions can be specified as part of a UMLState, resulting in Synchronous, or Moore outputs. In this case the output is assigned to the expression when the state is active. UMLActions can aslo be specified as part of a transition, resulting in Asynchronous, or Mealy outputs. The output is assigned to the expression as long as the guardExpression is true. |