1------------------------------------------------------------------------------ 2-- -- 3-- Matreshka Project -- 4-- -- 5-- Ada Modeling Framework -- 6-- -- 7-- Runtime Library Component -- 8-- -- 9------------------------------------------------------------------------------ 10-- -- 11-- Copyright © 2011-2012, Vadim Godunko <vgodunko@gmail.com> -- 12-- All rights reserved. -- 13-- -- 14-- Redistribution and use in source and binary forms, with or without -- 15-- modification, are permitted provided that the following conditions -- 16-- are met: -- 17-- -- 18-- * Redistributions of source code must retain the above copyright -- 19-- notice, this list of conditions and the following disclaimer. -- 20-- -- 21-- * Redistributions in binary form must reproduce the above copyright -- 22-- notice, this list of conditions and the following disclaimer in the -- 23-- documentation and/or other materials provided with the distribution. -- 24-- -- 25-- * Neither the name of the Vadim Godunko, IE nor the names of its -- 26-- contributors may be used to endorse or promote products derived from -- 27-- this software without specific prior written permission. -- 28-- -- 29-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -- 30-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -- 31-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -- 32-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -- 33-- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -- 34-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -- 35-- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -- 36-- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -- 37-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -- 38-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -- 39-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- 40-- -- 41------------------------------------------------------------------------------ 42-- $Revision: 2714 $ $Date: 2012-03-24 10:29:08 +0400 (Sat, 24 Mar 2012) $ 43------------------------------------------------------------------------------ 44-- This file is generated, don't edit it. 45------------------------------------------------------------------------------ 46-- A transition is a directed relationship between a source vertex and a 47-- target vertex. It may be part of a compound transition, which takes the 48-- state machine from one state configuration to another, representing the 49-- complete response of the state machine to an occurrence of an event of a 50-- particular type. 51------------------------------------------------------------------------------ 52limited with AMF.UML.Behaviors; 53limited with AMF.UML.Classifiers; 54limited with AMF.UML.Constraints; 55with AMF.UML.Namespaces; 56with AMF.UML.Redefinable_Elements; 57limited with AMF.UML.Regions; 58limited with AMF.UML.State_Machines; 59limited with AMF.UML.Triggers.Collections; 60limited with AMF.UML.Vertexs; 61 62package AMF.UML.Transitions is 63 64 pragma Preelaborate; 65 66 type UML_Transition is limited interface 67 and AMF.UML.Namespaces.UML_Namespace 68 and AMF.UML.Redefinable_Elements.UML_Redefinable_Element; 69 70 type UML_Transition_Access is 71 access all UML_Transition'Class; 72 for UML_Transition_Access'Storage_Size use 0; 73 74 not overriding function Get_Container 75 (Self : not null access constant UML_Transition) 76 return AMF.UML.Regions.UML_Region_Access is abstract; 77 -- Getter of Transition::container. 78 -- 79 -- Designates the region that owns this transition. 80 81 not overriding procedure Set_Container 82 (Self : not null access UML_Transition; 83 To : AMF.UML.Regions.UML_Region_Access) is abstract; 84 -- Setter of Transition::container. 85 -- 86 -- Designates the region that owns this transition. 87 88 not overriding function Get_Effect 89 (Self : not null access constant UML_Transition) 90 return AMF.UML.Behaviors.UML_Behavior_Access is abstract; 91 -- Getter of Transition::effect. 92 -- 93 -- Specifies an optional behavior to be performed when the transition 94 -- fires. 95 96 not overriding procedure Set_Effect 97 (Self : not null access UML_Transition; 98 To : AMF.UML.Behaviors.UML_Behavior_Access) is abstract; 99 -- Setter of Transition::effect. 100 -- 101 -- Specifies an optional behavior to be performed when the transition 102 -- fires. 103 104 not overriding function Get_Guard 105 (Self : not null access constant UML_Transition) 106 return AMF.UML.Constraints.UML_Constraint_Access is abstract; 107 -- Getter of Transition::guard. 108 -- 109 -- A guard is a constraint that provides a fine-grained control over the 110 -- firing of the transition. The guard is evaluated when an event 111 -- occurrence is dispatched by the state machine. If the guard is true at 112 -- that time, the transition may be enabled, otherwise, it is disabled. 113 -- Guards should be pure expressions without side effects. Guard 114 -- expressions with side effects are ill formed. 115 116 not overriding procedure Set_Guard 117 (Self : not null access UML_Transition; 118 To : AMF.UML.Constraints.UML_Constraint_Access) is abstract; 119 -- Setter of Transition::guard. 120 -- 121 -- A guard is a constraint that provides a fine-grained control over the 122 -- firing of the transition. The guard is evaluated when an event 123 -- occurrence is dispatched by the state machine. If the guard is true at 124 -- that time, the transition may be enabled, otherwise, it is disabled. 125 -- Guards should be pure expressions without side effects. Guard 126 -- expressions with side effects are ill formed. 127 128 not overriding function Get_Kind 129 (Self : not null access constant UML_Transition) 130 return AMF.UML.UML_Transition_Kind is abstract; 131 -- Getter of Transition::kind. 132 -- 133 -- Indicates the precise type of the transition. 134 135 not overriding procedure Set_Kind 136 (Self : not null access UML_Transition; 137 To : AMF.UML.UML_Transition_Kind) is abstract; 138 -- Setter of Transition::kind. 139 -- 140 -- Indicates the precise type of the transition. 141 142 not overriding function Get_Redefined_Transition 143 (Self : not null access constant UML_Transition) 144 return AMF.UML.Transitions.UML_Transition_Access is abstract; 145 -- Getter of Transition::redefinedTransition. 146 -- 147 -- The transition that is redefined by this transition. 148 149 not overriding procedure Set_Redefined_Transition 150 (Self : not null access UML_Transition; 151 To : AMF.UML.Transitions.UML_Transition_Access) is abstract; 152 -- Setter of Transition::redefinedTransition. 153 -- 154 -- The transition that is redefined by this transition. 155 156 not overriding function Get_Redefinition_Context 157 (Self : not null access constant UML_Transition) 158 return AMF.UML.Classifiers.UML_Classifier_Access is abstract; 159 -- Getter of Transition::redefinitionContext. 160 -- 161 -- References the classifier in which context this element may be 162 -- redefined. 163 164 not overriding function Get_Source 165 (Self : not null access constant UML_Transition) 166 return AMF.UML.Vertexs.UML_Vertex_Access is abstract; 167 -- Getter of Transition::source. 168 -- 169 -- Designates the originating vertex (state or pseudostate) of the 170 -- transition. 171 172 not overriding procedure Set_Source 173 (Self : not null access UML_Transition; 174 To : AMF.UML.Vertexs.UML_Vertex_Access) is abstract; 175 -- Setter of Transition::source. 176 -- 177 -- Designates the originating vertex (state or pseudostate) of the 178 -- transition. 179 180 not overriding function Get_Target 181 (Self : not null access constant UML_Transition) 182 return AMF.UML.Vertexs.UML_Vertex_Access is abstract; 183 -- Getter of Transition::target. 184 -- 185 -- Designates the target vertex that is reached when the transition is 186 -- taken. 187 188 not overriding procedure Set_Target 189 (Self : not null access UML_Transition; 190 To : AMF.UML.Vertexs.UML_Vertex_Access) is abstract; 191 -- Setter of Transition::target. 192 -- 193 -- Designates the target vertex that is reached when the transition is 194 -- taken. 195 196 not overriding function Get_Trigger 197 (Self : not null access constant UML_Transition) 198 return AMF.UML.Triggers.Collections.Set_Of_UML_Trigger is abstract; 199 -- Getter of Transition::trigger. 200 -- 201 -- Specifies the triggers that may fire the transition. 202 203 not overriding function Containing_State_Machine 204 (Self : not null access constant UML_Transition) 205 return AMF.UML.State_Machines.UML_State_Machine_Access is abstract; 206 -- Operation Transition::containingStateMachine. 207 -- 208 -- The query containingStateMachine() returns the state machine that 209 -- contains the transition either directly or transitively. 210 211 overriding function Is_Consistent_With 212 (Self : not null access constant UML_Transition; 213 Redefinee : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access) 214 return Boolean is abstract; 215 -- Operation Transition::isConsistentWith. 216 -- 217 -- The query isConsistentWith() specifies that a redefining transition is 218 -- consistent with a redefined transition provided that the redefining 219 -- transition has the following relation to the redefined transition: A 220 -- redefining transition redefines all properties of the corresponding 221 -- redefined transition, except the source state and the trigger. 222 223 not overriding function Redefinition_Context 224 (Self : not null access constant UML_Transition) 225 return AMF.UML.Classifiers.UML_Classifier_Access is abstract; 226 -- Operation Transition::redefinitionContext. 227 -- 228 -- The redefinition context of a transition is the nearest containing 229 -- statemachine. 230 231end AMF.UML.Transitions; 232