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 region is an orthogonal part of either a composite state or a state 47-- machine. It contains states and transitions. 48------------------------------------------------------------------------------ 49limited with AMF.UML.Classifiers; 50with AMF.UML.Namespaces; 51with AMF.UML.Redefinable_Elements; 52limited with AMF.UML.State_Machines; 53limited with AMF.UML.States; 54limited with AMF.UML.Transitions.Collections; 55limited with AMF.UML.Vertexs.Collections; 56 57package AMF.UML.Regions is 58 59 pragma Preelaborate; 60 61 type UML_Region is limited interface 62 and AMF.UML.Namespaces.UML_Namespace 63 and AMF.UML.Redefinable_Elements.UML_Redefinable_Element; 64 65 type UML_Region_Access is 66 access all UML_Region'Class; 67 for UML_Region_Access'Storage_Size use 0; 68 69 not overriding function Get_Extended_Region 70 (Self : not null access constant UML_Region) 71 return AMF.UML.Regions.UML_Region_Access is abstract; 72 -- Getter of Region::extendedRegion. 73 -- 74 -- The region of which this region is an extension. 75 76 not overriding procedure Set_Extended_Region 77 (Self : not null access UML_Region; 78 To : AMF.UML.Regions.UML_Region_Access) is abstract; 79 -- Setter of Region::extendedRegion. 80 -- 81 -- The region of which this region is an extension. 82 83 not overriding function Get_Redefinition_Context 84 (Self : not null access constant UML_Region) 85 return AMF.UML.Classifiers.UML_Classifier_Access is abstract; 86 -- Getter of Region::redefinitionContext. 87 -- 88 -- References the classifier in which context this element may be 89 -- redefined. 90 91 not overriding function Get_State 92 (Self : not null access constant UML_Region) 93 return AMF.UML.States.UML_State_Access is abstract; 94 -- Getter of Region::state. 95 -- 96 -- The State that owns the Region. If a Region is owned by a State, then 97 -- it cannot also be owned by a StateMachine. 98 99 not overriding procedure Set_State 100 (Self : not null access UML_Region; 101 To : AMF.UML.States.UML_State_Access) is abstract; 102 -- Setter of Region::state. 103 -- 104 -- The State that owns the Region. If a Region is owned by a State, then 105 -- it cannot also be owned by a StateMachine. 106 107 not overriding function Get_State_Machine 108 (Self : not null access constant UML_Region) 109 return AMF.UML.State_Machines.UML_State_Machine_Access is abstract; 110 -- Getter of Region::stateMachine. 111 -- 112 -- The StateMachine that owns the Region. If a Region is owned by a 113 -- StateMachine, then it cannot also be owned by a State. 114 115 not overriding procedure Set_State_Machine 116 (Self : not null access UML_Region; 117 To : AMF.UML.State_Machines.UML_State_Machine_Access) is abstract; 118 -- Setter of Region::stateMachine. 119 -- 120 -- The StateMachine that owns the Region. If a Region is owned by a 121 -- StateMachine, then it cannot also be owned by a State. 122 123 not overriding function Get_Subvertex 124 (Self : not null access constant UML_Region) 125 return AMF.UML.Vertexs.Collections.Set_Of_UML_Vertex is abstract; 126 -- Getter of Region::subvertex. 127 -- 128 -- The set of vertices that are owned by this region. 129 130 not overriding function Get_Transition 131 (Self : not null access constant UML_Region) 132 return AMF.UML.Transitions.Collections.Set_Of_UML_Transition is abstract; 133 -- Getter of Region::transition. 134 -- 135 -- The set of transitions owned by the region. 136 137 not overriding function Belongs_To_PSM 138 (Self : not null access constant UML_Region) 139 return Boolean is abstract; 140 -- Operation Region::belongsToPSM. 141 -- 142 -- The operation belongsToPSM () checks if the region belongs to a 143 -- protocol state machine 144 145 not overriding function Containing_State_Machine 146 (Self : not null access constant UML_Region) 147 return AMF.UML.State_Machines.UML_State_Machine_Access is abstract; 148 -- Operation Region::containingStateMachine. 149 -- 150 -- The operation containingStateMachine() returns the sate machine in 151 -- which this Region is defined 152 153 overriding function Is_Consistent_With 154 (Self : not null access constant UML_Region; 155 Redefinee : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access) 156 return Boolean is abstract; 157 -- Operation Region::isConsistentWith. 158 -- 159 -- The query isConsistentWith() specifies that a redefining region is 160 -- consistent with a redefined region provided that the redefining region 161 -- is an extension of the redefined region, i.e. it adds vertices and 162 -- transitions and it redefines states and transitions of the redefined 163 -- region. 164 165 not overriding function Is_Redefinition_Context_Valid 166 (Self : not null access constant UML_Region; 167 Redefined : AMF.UML.Regions.UML_Region_Access) 168 return Boolean is abstract; 169 -- Operation Region::isRedefinitionContextValid. 170 -- 171 -- The query isRedefinitionContextValid() specifies whether the 172 -- redefinition contexts of a region are properly related to the 173 -- redefinition contexts of the specified region to allow this element to 174 -- redefine the other. The containing statemachine/state of a redefining 175 -- region must redefine the containing statemachine/state of the redefined 176 -- region. 177 178 not overriding function Redefinition_Context 179 (Self : not null access constant UML_Region) 180 return AMF.UML.Classifiers.UML_Classifier_Access is abstract; 181 -- Operation Region::redefinitionContext. 182 -- 183 -- The redefinition context of a region is the nearest containing 184 -- statemachine 185 186end AMF.UML.Regions; 187