FunctionTrigger : public class
Created: 2007-11-11 20:00:21
Modified: 2010-06-17 17:23:40
Project:
Advanced:
<p>FunctionTrigger represents the triggering parameters necessary to define the execution of an identified FunctionType or FunctionPrototype. When referring to a FunctionType, a FunctionTrigger applies to all FunctionPrototypes of the given type. When referring to a FunctionPrototype, the trigger is only valid for this particular FunctionPrototype.<br/></p><p><br/></p><p>Triggering is defined either as event-driven or time-driven - depending on the property triggerPolicy. If set to TIME, the timing constraint is defined with an event constraint associated with the Function’s or FunctionPrototype’s EventFunction. The function event refers to the activation of the function. If set to EVENT, one or several ports of the Function triggers the function, i.e. activates the function. In both cases, a triggerCondition is provided in the form of a Boolean expression that must evaluate to true for the function to execute. The triggerCondition syntax and grammar is unspecified.<br/></p><p><br/></p><p>In addition a FunctionTrigger may refer to a list of Modes in which the trigger will be considered as potentially active. Because of FunctionBehaviors may also refer to Modes, it is thus possible to arrange various function configurations for which different sets of triggers and behaviors are active. And this, at various level of granularity, either with a type-wise scope (by referring to a FunctionType) or specifically at prototype level (by referring to a FunctionPrototype).<br/></p><p><br/></p><p>Note that several FunctionTriggers may be assigned to the same Function (Type or Prototype), for instance to define alternative trigger conditions and/or timing constraints.<br/></p><p><br/></p><p><br/></p><p>Semantics:<br/></p><p>Association Mode defines in which modes the trigger is active<br/></p><p><br/></p><p>It is possible to have multiple triggers on a function, e.g. a slow period complemented with an event trigger allows fast response when needed but a minimal execution rate.<br/></p><p><br/></p><p><br/></p><p>Constraints:<br/></p><p>[1] The port association must not be empty when triggerPolicy is EVENT.<br/></p><p><br/></p><p>[2] The port association is empty when triggerPolicy is TIME.<br/></p><p><br/></p><p>[3] Function and functionPrototype are mutually exclusive associations. A FunctionTrigger either identifies a FunctionType or a FunctionPrototype as its target function, but not both.<br/></p><p><br/></p><p>[4] Only FunctionFlowPort of FlowDirection=in shall be referred to in the association port and at least one of them shall trigger the function<br/></p><p><br/></p><p>Extension:<br/></p><p>Class<br/></p>
Attribute Details
public String
  triggerCondition
Notes: A Boolean expression that must evaluate to true for this Function to execute. This value is used both for time and event triggered elementary functions.
public TriggerPolicyKind
  triggerPolicy
Notes: Defines the triggering policy, either EVENT or TIME. The function event refers to the activation of the function. If set to EVENT, one or several ports of the Function triggers the function, i.e., activates the function.<br />
Element Source Role Target Role Details
Behavior
Class  
Name: functionTrigger
 
Name:  
 
 
Mode
Class  
Name:  
 
Name: mode
The execution Modes in which the FunctionTrigger is active.
 
«atpPrototype» FunctionPrototype
Class  
Name:  
 
Name: functionPrototype
The FunctionPrototype that the FunctionTrigger refers to if any
 
«atpType» FunctionType
Class  
Name:  
 
Name: function
The FunctionType that the FunctionTrigger refers to if any.
 
«atpPrototype» FunctionPort
Class  
Name:  
 
Name: port
The FunctionPorts that are referred to in the FunctionTrigger if any.
 
Element Source Role Target Role Details
BehaviorConstraint
Class  
Name:  
 
Name: constrainedFunctionTrigger
The constrained function trigger.
 
Object Type Connection Notes
EAElement Class Generalization  
Behavior Class Strong