1------------------------------------------------------------------------------
2--                                                                          --
3--                            Matreshka Project                             --
4--                                                                          --
5--                          Ada Modeling Framework                          --
6--                                                                          --
7--                        Runtime Library Component                         --
8--                                                                          --
9------------------------------------------------------------------------------
10--                                                                          --
11-- Copyright © 2012-2013, 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: 3641 $ $Date: 2013-01-07 21:52:52 +0400 (Mon, 07 Jan 2013) $
43------------------------------------------------------------------------------
44--  This file is generated, don't edit it.
45------------------------------------------------------------------------------
46with AMF.Internals.Element_Collections;
47with AMF.Internals.Tables.UTP_Element_Table;
48with AMF.Internals.Tables.UTP_Types;
49with AMF.Internals.Tables.Utp_Metamodel;
50with AMF.Internals.Utp_Coding_Rules;
51with AMF.Internals.Utp_Data_Partitions;
52with AMF.Internals.Utp_Data_Pools;
53with AMF.Internals.Utp_Data_Selectors;
54with AMF.Internals.Utp_Default_Applications;
55with AMF.Internals.Utp_Defaults;
56with AMF.Internals.Utp_Determ_Alts;
57with AMF.Internals.Utp_Finish_Actions;
58with AMF.Internals.Utp_Get_Timezone_Actions;
59with AMF.Internals.Utp_Literal_Anies;
60with AMF.Internals.Utp_Literal_Any_Or_Nulls;
61with AMF.Internals.Utp_Log_Actions;
62with AMF.Internals.Utp_Managed_Elements;
63with AMF.Internals.Utp_Read_Timer_Actions;
64with AMF.Internals.Utp_SUTs;
65with AMF.Internals.Utp_Set_Timezone_Actions;
66with AMF.Internals.Utp_Start_Timer_Actions;
67with AMF.Internals.Utp_Stop_Timer_Actions;
68with AMF.Internals.Utp_Test_Cases;
69with AMF.Internals.Utp_Test_Components;
70with AMF.Internals.Utp_Test_Contexts;
71with AMF.Internals.Utp_Test_Log_Applications;
72with AMF.Internals.Utp_Test_Logs;
73with AMF.Internals.Utp_Test_Objectives;
74with AMF.Internals.Utp_Test_Suites;
75with AMF.Internals.Utp_Time_Out_Actions;
76with AMF.Internals.Utp_Time_Out_Messages;
77with AMF.Internals.Utp_Time_Outs;
78with AMF.Internals.Utp_Timer_Running_Actions;
79with AMF.Internals.Utp_Validation_Actions;
80with AMF.Utp;
81with Matreshka.Internals.Strings;
82
83package body AMF.Internals.Tables.UTP_Constructors is
84
85   use AMF.Internals.Tables;
86   use type AMF.Internals.AMF_Collection_Of_Element;
87
88   ----------------------------
89   -- Create_Utp_Coding_Rule --
90   ----------------------------
91
92   function Create_Utp_Coding_Rule return AMF.Internals.AMF_Element is
93      Self : AMF.Internals.AMF_Element;
94
95   begin
96      UTP_Element_Table.Increment_Last;
97      Self := UTP_Element_Table.Last;
98
99      UTP_Element_Table.Table (Self).all :=
100       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Coding_Rule,
101        Extent   => 0,
102        Proxy    =>
103          new AMF.Internals.Utp_Coding_Rules.Utp_Coding_Rule_Proxy'(Element => Self),
104        Member   =>
105         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
106          2      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
107                       --  base_Namespace
108          3      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
109                       --  base_Property
110          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
111                       --  base_ValueSpecification
112          4      => (AMF.Internals.Tables.UTP_Types.M_String, Matreshka.Internals.Strings.Shared_Empty'Access),
113                       --  coding
114          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
115      UTP_Element_Table.Table (Self).Member (0) :=
116       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
117        AMF.Internals.Element_Collections.Allocate_Collections (1));
118
119      return Self;
120   end Create_Utp_Coding_Rule;
121
122   -------------------------------
123   -- Create_Utp_Data_Partition --
124   -------------------------------
125
126   function Create_Utp_Data_Partition return AMF.Internals.AMF_Element is
127      Self : AMF.Internals.AMF_Element;
128
129   begin
130      UTP_Element_Table.Increment_Last;
131      Self := UTP_Element_Table.Last;
132
133      UTP_Element_Table.Table (Self).all :=
134       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Data_Partition,
135        Extent   => 0,
136        Proxy    =>
137          new AMF.Internals.Utp_Data_Partitions.Utp_Data_Partition_Proxy'(Element => Self),
138        Member   =>
139         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
140          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
141                       --  base_Classifier
142          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
143      UTP_Element_Table.Table (Self).Member (0) :=
144       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
145        AMF.Internals.Element_Collections.Allocate_Collections (1));
146
147      return Self;
148   end Create_Utp_Data_Partition;
149
150   --------------------------
151   -- Create_Utp_Data_Pool --
152   --------------------------
153
154   function Create_Utp_Data_Pool return AMF.Internals.AMF_Element is
155      Self : AMF.Internals.AMF_Element;
156
157   begin
158      UTP_Element_Table.Increment_Last;
159      Self := UTP_Element_Table.Last;
160
161      UTP_Element_Table.Table (Self).all :=
162       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Data_Pool,
163        Extent   => 0,
164        Proxy    =>
165          new AMF.Internals.Utp_Data_Pools.Utp_Data_Pool_Proxy'(Element => Self),
166        Member   =>
167         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
168          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
169                       --  base_Classifier
170          2      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
171                       --  base_Property
172          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
173      UTP_Element_Table.Table (Self).Member (0) :=
174       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
175        AMF.Internals.Element_Collections.Allocate_Collections (1));
176
177      return Self;
178   end Create_Utp_Data_Pool;
179
180   ------------------------------
181   -- Create_Utp_Data_Selector --
182   ------------------------------
183
184   function Create_Utp_Data_Selector return AMF.Internals.AMF_Element is
185      Self : AMF.Internals.AMF_Element;
186
187   begin
188      UTP_Element_Table.Increment_Last;
189      Self := UTP_Element_Table.Last;
190
191      UTP_Element_Table.Table (Self).all :=
192       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Data_Selector,
193        Extent   => 0,
194        Proxy    =>
195          new AMF.Internals.Utp_Data_Selectors.Utp_Data_Selector_Proxy'(Element => Self),
196        Member   =>
197         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
198          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
199                       --  base_Operation
200          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
201      UTP_Element_Table.Table (Self).Member (0) :=
202       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
203        AMF.Internals.Element_Collections.Allocate_Collections (1));
204
205      return Self;
206   end Create_Utp_Data_Selector;
207
208   ------------------------
209   -- Create_Utp_Default --
210   ------------------------
211
212   function Create_Utp_Default return AMF.Internals.AMF_Element is
213      Self : AMF.Internals.AMF_Element;
214
215   begin
216      UTP_Element_Table.Increment_Last;
217      Self := UTP_Element_Table.Last;
218
219      UTP_Element_Table.Table (Self).all :=
220       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Default,
221        Extent   => 0,
222        Proxy    =>
223          new AMF.Internals.Utp_Defaults.Utp_Default_Proxy'(Element => Self),
224        Member   =>
225         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
226          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
227                       --  base_Behavior
228          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
229      UTP_Element_Table.Table (Self).Member (0) :=
230       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
231        AMF.Internals.Element_Collections.Allocate_Collections (1));
232
233      return Self;
234   end Create_Utp_Default;
235
236   ------------------------------------
237   -- Create_Utp_Default_Application --
238   ------------------------------------
239
240   function Create_Utp_Default_Application return AMF.Internals.AMF_Element is
241      Self : AMF.Internals.AMF_Element;
242
243   begin
244      UTP_Element_Table.Increment_Last;
245      Self := UTP_Element_Table.Last;
246
247      UTP_Element_Table.Table (Self).all :=
248       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Default_Application,
249        Extent   => 0,
250        Proxy    =>
251          new AMF.Internals.Utp_Default_Applications.Utp_Default_Application_Proxy'(Element => Self),
252        Member   =>
253         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
254          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
255                       --  base_Dependency
256          2      => (AMF.Internals.Tables.UTP_Types.M_Unlimited_Natural, (False, 0)),
257                       --  repetition
258          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
259      UTP_Element_Table.Table (Self).Member (0) :=
260       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
261        AMF.Internals.Element_Collections.Allocate_Collections (1));
262
263      return Self;
264   end Create_Utp_Default_Application;
265
266   ---------------------------
267   -- Create_Utp_Determ_Alt --
268   ---------------------------
269
270   function Create_Utp_Determ_Alt return AMF.Internals.AMF_Element is
271      Self : AMF.Internals.AMF_Element;
272
273   begin
274      UTP_Element_Table.Increment_Last;
275      Self := UTP_Element_Table.Last;
276
277      UTP_Element_Table.Table (Self).all :=
278       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Determ_Alt,
279        Extent   => 0,
280        Proxy    =>
281          new AMF.Internals.Utp_Determ_Alts.Utp_Determ_Alt_Proxy'(Element => Self),
282        Member   =>
283         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
284          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
285                       --  base_CombinedFragment
286          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
287      UTP_Element_Table.Table (Self).Member (0) :=
288       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
289        AMF.Internals.Element_Collections.Allocate_Collections (1));
290
291      return Self;
292   end Create_Utp_Determ_Alt;
293
294   ------------------------------
295   -- Create_Utp_Finish_Action --
296   ------------------------------
297
298   function Create_Utp_Finish_Action return AMF.Internals.AMF_Element is
299      Self : AMF.Internals.AMF_Element;
300
301   begin
302      UTP_Element_Table.Increment_Last;
303      Self := UTP_Element_Table.Last;
304
305      UTP_Element_Table.Table (Self).all :=
306       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Finish_Action,
307        Extent   => 0,
308        Proxy    =>
309          new AMF.Internals.Utp_Finish_Actions.Utp_Finish_Action_Proxy'(Element => Self),
310        Member   =>
311         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
312          2      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
313                       --  base_InvocationAction
314          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
315                       --  base_OpaqueAction
316          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
317      UTP_Element_Table.Table (Self).Member (0) :=
318       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
319        AMF.Internals.Element_Collections.Allocate_Collections (1));
320
321      return Self;
322   end Create_Utp_Finish_Action;
323
324   ------------------------------------
325   -- Create_Utp_Get_Timezone_Action --
326   ------------------------------------
327
328   function Create_Utp_Get_Timezone_Action return AMF.Internals.AMF_Element is
329      Self : AMF.Internals.AMF_Element;
330
331   begin
332      UTP_Element_Table.Increment_Last;
333      Self := UTP_Element_Table.Last;
334
335      UTP_Element_Table.Table (Self).all :=
336       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Get_Timezone_Action,
337        Extent   => 0,
338        Proxy    =>
339          new AMF.Internals.Utp_Get_Timezone_Actions.Utp_Get_Timezone_Action_Proxy'(Element => Self),
340        Member   =>
341         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
342          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
343                       --  base_ReadStructuralFeatureAction
344          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
345      UTP_Element_Table.Table (Self).Member (0) :=
346       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
347        AMF.Internals.Element_Collections.Allocate_Collections (1));
348
349      return Self;
350   end Create_Utp_Get_Timezone_Action;
351
352   ----------------------------
353   -- Create_Utp_Literal_Any --
354   ----------------------------
355
356   function Create_Utp_Literal_Any return AMF.Internals.AMF_Element is
357      Self : AMF.Internals.AMF_Element;
358
359   begin
360      UTP_Element_Table.Increment_Last;
361      Self := UTP_Element_Table.Last;
362
363      UTP_Element_Table.Table (Self).all :=
364       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Literal_Any,
365        Extent   => 0,
366        Proxy    =>
367          new AMF.Internals.Utp_Literal_Anies.Utp_Literal_Any_Proxy'(Element => Self),
368        Member   =>
369         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
370          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
371                       --  base_LiteralSpecification
372          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
373      UTP_Element_Table.Table (Self).Member (0) :=
374       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
375        AMF.Internals.Element_Collections.Allocate_Collections (1));
376
377      return Self;
378   end Create_Utp_Literal_Any;
379
380   ------------------------------------
381   -- Create_Utp_Literal_Any_Or_Null --
382   ------------------------------------
383
384   function Create_Utp_Literal_Any_Or_Null return AMF.Internals.AMF_Element is
385      Self : AMF.Internals.AMF_Element;
386
387   begin
388      UTP_Element_Table.Increment_Last;
389      Self := UTP_Element_Table.Last;
390
391      UTP_Element_Table.Table (Self).all :=
392       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Literal_Any_Or_Null,
393        Extent   => 0,
394        Proxy    =>
395          new AMF.Internals.Utp_Literal_Any_Or_Nulls.Utp_Literal_Any_Or_Null_Proxy'(Element => Self),
396        Member   =>
397         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
398          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
399                       --  base_LiteralSpecification
400          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
401      UTP_Element_Table.Table (Self).Member (0) :=
402       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
403        AMF.Internals.Element_Collections.Allocate_Collections (1));
404
405      return Self;
406   end Create_Utp_Literal_Any_Or_Null;
407
408   ---------------------------
409   -- Create_Utp_Log_Action --
410   ---------------------------
411
412   function Create_Utp_Log_Action return AMF.Internals.AMF_Element is
413      Self : AMF.Internals.AMF_Element;
414
415   begin
416      UTP_Element_Table.Increment_Last;
417      Self := UTP_Element_Table.Last;
418
419      UTP_Element_Table.Table (Self).all :=
420       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Log_Action,
421        Extent   => 0,
422        Proxy    =>
423          new AMF.Internals.Utp_Log_Actions.Utp_Log_Action_Proxy'(Element => Self),
424        Member   =>
425         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
426          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
427                       --  base_SendObjectAction
428          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
429      UTP_Element_Table.Table (Self).Member (0) :=
430       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
431        AMF.Internals.Element_Collections.Allocate_Collections (1));
432
433      return Self;
434   end Create_Utp_Log_Action;
435
436   --------------------------------
437   -- Create_Utp_Managed_Element --
438   --------------------------------
439
440   function Create_Utp_Managed_Element return AMF.Internals.AMF_Element is
441      Self : AMF.Internals.AMF_Element;
442
443   begin
444      UTP_Element_Table.Increment_Last;
445      Self := UTP_Element_Table.Last;
446
447      UTP_Element_Table.Table (Self).all :=
448       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Managed_Element,
449        Extent   => 0,
450        Proxy    =>
451          new AMF.Internals.Utp_Managed_Elements.Utp_Managed_Element_Proxy'(Element => Self),
452        Member   =>
453         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
454          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
455                       --  base_Element
456          5      => (AMF.Internals.Tables.UTP_Types.M_String, null),
457                       --  criticality
458          3      => (AMF.Internals.Tables.UTP_Types.M_String, null),
459                       --  description
460          2      => (AMF.Internals.Tables.UTP_Types.M_String, null),
461                       --  owner
462          4      => (AMF.Internals.Tables.UTP_Types.M_String, null),
463                       --  version
464          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
465      UTP_Element_Table.Table (Self).Member (0) :=
466       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
467        AMF.Internals.Element_Collections.Allocate_Collections (1));
468
469      return Self;
470   end Create_Utp_Managed_Element;
471
472   ----------------------------------
473   -- Create_Utp_Read_Timer_Action --
474   ----------------------------------
475
476   function Create_Utp_Read_Timer_Action return AMF.Internals.AMF_Element is
477      Self : AMF.Internals.AMF_Element;
478
479   begin
480      UTP_Element_Table.Increment_Last;
481      Self := UTP_Element_Table.Last;
482
483      UTP_Element_Table.Table (Self).all :=
484       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Read_Timer_Action,
485        Extent   => 0,
486        Proxy    =>
487          new AMF.Internals.Utp_Read_Timer_Actions.Utp_Read_Timer_Action_Proxy'(Element => Self),
488        Member   =>
489         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
490          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
491                       --  base_CallOperationAction
492          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
493      UTP_Element_Table.Table (Self).Member (0) :=
494       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
495        AMF.Internals.Element_Collections.Allocate_Collections (1));
496
497      return Self;
498   end Create_Utp_Read_Timer_Action;
499
500   --------------------
501   -- Create_Utp_SUT --
502   --------------------
503
504   function Create_Utp_SUT return AMF.Internals.AMF_Element is
505      Self : AMF.Internals.AMF_Element;
506
507   begin
508      UTP_Element_Table.Increment_Last;
509      Self := UTP_Element_Table.Last;
510
511      UTP_Element_Table.Table (Self).all :=
512       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_SUT,
513        Extent   => 0,
514        Proxy    =>
515          new AMF.Internals.Utp_SUTs.Utp_SUT_Proxy'(Element => Self),
516        Member   =>
517         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
518          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
519                       --  base_Property
520          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
521      UTP_Element_Table.Table (Self).Member (0) :=
522       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
523        AMF.Internals.Element_Collections.Allocate_Collections (1));
524
525      return Self;
526   end Create_Utp_SUT;
527
528   ------------------------------------
529   -- Create_Utp_Set_Timezone_Action --
530   ------------------------------------
531
532   function Create_Utp_Set_Timezone_Action return AMF.Internals.AMF_Element is
533      Self : AMF.Internals.AMF_Element;
534
535   begin
536      UTP_Element_Table.Increment_Last;
537      Self := UTP_Element_Table.Last;
538
539      UTP_Element_Table.Table (Self).all :=
540       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Set_Timezone_Action,
541        Extent   => 0,
542        Proxy    =>
543          new AMF.Internals.Utp_Set_Timezone_Actions.Utp_Set_Timezone_Action_Proxy'(Element => Self),
544        Member   =>
545         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
546          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
547                       --  base_WriteStructuralFeatureAction
548          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
549      UTP_Element_Table.Table (Self).Member (0) :=
550       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
551        AMF.Internals.Element_Collections.Allocate_Collections (1));
552
553      return Self;
554   end Create_Utp_Set_Timezone_Action;
555
556   -----------------------------------
557   -- Create_Utp_Start_Timer_Action --
558   -----------------------------------
559
560   function Create_Utp_Start_Timer_Action return AMF.Internals.AMF_Element is
561      Self : AMF.Internals.AMF_Element;
562
563   begin
564      UTP_Element_Table.Increment_Last;
565      Self := UTP_Element_Table.Last;
566
567      UTP_Element_Table.Table (Self).all :=
568       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Start_Timer_Action,
569        Extent   => 0,
570        Proxy    =>
571          new AMF.Internals.Utp_Start_Timer_Actions.Utp_Start_Timer_Action_Proxy'(Element => Self),
572        Member   =>
573         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
574          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
575                       --  base_CallOperationAction
576          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
577      UTP_Element_Table.Table (Self).Member (0) :=
578       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
579        AMF.Internals.Element_Collections.Allocate_Collections (1));
580
581      return Self;
582   end Create_Utp_Start_Timer_Action;
583
584   ----------------------------------
585   -- Create_Utp_Stop_Timer_Action --
586   ----------------------------------
587
588   function Create_Utp_Stop_Timer_Action return AMF.Internals.AMF_Element is
589      Self : AMF.Internals.AMF_Element;
590
591   begin
592      UTP_Element_Table.Increment_Last;
593      Self := UTP_Element_Table.Last;
594
595      UTP_Element_Table.Table (Self).all :=
596       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Stop_Timer_Action,
597        Extent   => 0,
598        Proxy    =>
599          new AMF.Internals.Utp_Stop_Timer_Actions.Utp_Stop_Timer_Action_Proxy'(Element => Self),
600        Member   =>
601         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
602          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
603                       --  base_CallOperationAction
604          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
605      UTP_Element_Table.Table (Self).Member (0) :=
606       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
607        AMF.Internals.Element_Collections.Allocate_Collections (1));
608
609      return Self;
610   end Create_Utp_Stop_Timer_Action;
611
612   --------------------------
613   -- Create_Utp_Test_Case --
614   --------------------------
615
616   function Create_Utp_Test_Case return AMF.Internals.AMF_Element is
617      Self : AMF.Internals.AMF_Element;
618
619   begin
620      UTP_Element_Table.Increment_Last;
621      Self := UTP_Element_Table.Last;
622
623      UTP_Element_Table.Table (Self).all :=
624       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Case,
625        Extent   => 0,
626        Proxy    =>
627          new AMF.Internals.Utp_Test_Cases.Utp_Test_Case_Proxy'(Element => Self),
628        Member   =>
629         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
630          4      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
631                       --  base_Behavior
632          5      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
633                       --  base_Operation
634          2      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
635                       --  compatibleSUTVariant
636          1      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
637                       --  compatibleSUTVersion
638          3      => (AMF.Internals.Tables.UTP_Types.M_String, null),
639                       --  priority
640          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
641      UTP_Element_Table.Table (Self).Member (0) :=
642       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
643        AMF.Internals.Element_Collections.Allocate_Collections (1));
644
645      return Self;
646   end Create_Utp_Test_Case;
647
648   -------------------------------
649   -- Create_Utp_Test_Component --
650   -------------------------------
651
652   function Create_Utp_Test_Component return AMF.Internals.AMF_Element is
653      Self : AMF.Internals.AMF_Element;
654
655   begin
656      UTP_Element_Table.Increment_Last;
657      Self := UTP_Element_Table.Last;
658
659      UTP_Element_Table.Table (Self).all :=
660       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Component,
661        Extent   => 0,
662        Proxy    =>
663          new AMF.Internals.Utp_Test_Components.Utp_Test_Component_Proxy'(Element => Self),
664        Member   =>
665         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
666          3      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
667                       --  base_StructuredClassifier
668          2      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
669                       --  compatibleSUTVariant
670          1      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
671                       --  compatibleSUTVersion
672          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
673      UTP_Element_Table.Table (Self).Member (0) :=
674       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
675        AMF.Internals.Element_Collections.Allocate_Collections (1));
676
677      return Self;
678   end Create_Utp_Test_Component;
679
680   -----------------------------
681   -- Create_Utp_Test_Context --
682   -----------------------------
683
684   function Create_Utp_Test_Context return AMF.Internals.AMF_Element is
685      Self : AMF.Internals.AMF_Element;
686
687   begin
688      UTP_Element_Table.Increment_Last;
689      Self := UTP_Element_Table.Last;
690
691      UTP_Element_Table.Table (Self).all :=
692       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Context,
693        Extent   => 0,
694        Proxy    =>
695          new AMF.Internals.Utp_Test_Contexts.Utp_Test_Context_Proxy'(Element => Self),
696        Member   =>
697         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
698          4      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
699                       --  base_BehavioredClassifier
700          3      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
701                       --  base_StructuredClassifier
702          2      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
703                       --  compatibleSUTVariant
704          1      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
705                       --  compatibleSUTVersion
706          5      => (AMF.Internals.Tables.UTP_Types.M_String, null),
707                       --  testLevel
708          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
709      UTP_Element_Table.Table (Self).Member (0) :=
710       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
711        AMF.Internals.Element_Collections.Allocate_Collections (1));
712
713      return Self;
714   end Create_Utp_Test_Context;
715
716   -------------------------
717   -- Create_Utp_Test_Log --
718   -------------------------
719
720   function Create_Utp_Test_Log return AMF.Internals.AMF_Element is
721      Self : AMF.Internals.AMF_Element;
722
723   begin
724      UTP_Element_Table.Increment_Last;
725      Self := UTP_Element_Table.Last;
726
727      UTP_Element_Table.Table (Self).all :=
728       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Log,
729        Extent   => 0,
730        Proxy    =>
731          new AMF.Internals.Utp_Test_Logs.Utp_Test_Log_Proxy'(Element => Self),
732        Member   =>
733         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
734          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
735                       --  base_Behavior
736          4      => (AMF.Internals.Tables.UTP_Types.M_String, null),
737                       --  duration
738          3      => (AMF.Internals.Tables.UTP_Types.M_String, null),
739                       --  executedAt
740          7      => (AMF.Internals.Tables.UTP_Types.M_String, null),
741                       --  sutVersion
742          2      => (AMF.Internals.Tables.UTP_Types.M_Collection_Of_String, 0),
743                       --  tester
744          5      => (AMF.Internals.Tables.UTP_Types.M_Verdict, AMF.Utp.None),
745                       --  verdict
746          6      => (AMF.Internals.Tables.UTP_Types.M_String, null),
747                       --  verdictReason
748          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
749      UTP_Element_Table.Table (Self).Member (0) :=
750       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
751        AMF.Internals.Element_Collections.Allocate_Collections (1));
752
753      return Self;
754   end Create_Utp_Test_Log;
755
756   -------------------------------------
757   -- Create_Utp_Test_Log_Application --
758   -------------------------------------
759
760   function Create_Utp_Test_Log_Application return AMF.Internals.AMF_Element is
761      Self : AMF.Internals.AMF_Element;
762
763   begin
764      UTP_Element_Table.Increment_Last;
765      Self := UTP_Element_Table.Last;
766
767      UTP_Element_Table.Table (Self).all :=
768       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Log_Application,
769        Extent   => 0,
770        Proxy    =>
771          new AMF.Internals.Utp_Test_Log_Applications.Utp_Test_Log_Application_Proxy'(Element => Self),
772        Member   =>
773         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
774          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
775                       --  base_Dependency
776          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
777      UTP_Element_Table.Table (Self).Member (0) :=
778       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
779        AMF.Internals.Element_Collections.Allocate_Collections (1));
780
781      return Self;
782   end Create_Utp_Test_Log_Application;
783
784   -------------------------------
785   -- Create_Utp_Test_Objective --
786   -------------------------------
787
788   function Create_Utp_Test_Objective return AMF.Internals.AMF_Element is
789      Self : AMF.Internals.AMF_Element;
790
791   begin
792      UTP_Element_Table.Increment_Last;
793      Self := UTP_Element_Table.Last;
794
795      UTP_Element_Table.Table (Self).all :=
796       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Objective,
797        Extent   => 0,
798        Proxy    =>
799          new AMF.Internals.Utp_Test_Objectives.Utp_Test_Objective_Proxy'(Element => Self),
800        Member   =>
801         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
802          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
803                       --  base_Dependency
804          3      => (AMF.Internals.Tables.UTP_Types.M_String, null),
805                       --  priority
806          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
807      UTP_Element_Table.Table (Self).Member (0) :=
808       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
809        AMF.Internals.Element_Collections.Allocate_Collections (1));
810
811      return Self;
812   end Create_Utp_Test_Objective;
813
814   ---------------------------
815   -- Create_Utp_Test_Suite --
816   ---------------------------
817
818   function Create_Utp_Test_Suite return AMF.Internals.AMF_Element is
819      Self : AMF.Internals.AMF_Element;
820
821   begin
822      UTP_Element_Table.Increment_Last;
823      Self := UTP_Element_Table.Last;
824
825      UTP_Element_Table.Table (Self).all :=
826       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Test_Suite,
827        Extent   => 0,
828        Proxy    =>
829          new AMF.Internals.Utp_Test_Suites.Utp_Test_Suite_Proxy'(Element => Self),
830        Member   =>
831         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
832          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
833                       --  base_Behavior
834          3      => (AMF.Internals.Tables.UTP_Types.M_String, null),
835                       --  priority
836          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
837      UTP_Element_Table.Table (Self).Member (0) :=
838       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
839        AMF.Internals.Element_Collections.Allocate_Collections (1));
840
841      --  testCase
842
843      AMF.Internals.Element_Collections.Initialize_Set_Collection
844       (Self,
845        AMF.Internals.Tables.Utp_Metamodel.MP_Utp_Test_Suite_Test_Case,
846        UTP_Element_Table.Table (Self).Member (0).Collection + 1);
847
848      return Self;
849   end Create_Utp_Test_Suite;
850
851   -------------------------
852   -- Create_Utp_Time_Out --
853   -------------------------
854
855   function Create_Utp_Time_Out return AMF.Internals.AMF_Element is
856      Self : AMF.Internals.AMF_Element;
857
858   begin
859      UTP_Element_Table.Increment_Last;
860      Self := UTP_Element_Table.Last;
861
862      UTP_Element_Table.Table (Self).all :=
863       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Time_Out,
864        Extent   => 0,
865        Proxy    =>
866          new AMF.Internals.Utp_Time_Outs.Utp_Time_Out_Proxy'(Element => Self),
867        Member   =>
868         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
869          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
870                       --  base_TimeEvent
871          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
872      UTP_Element_Table.Table (Self).Member (0) :=
873       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
874        AMF.Internals.Element_Collections.Allocate_Collections (1));
875
876      return Self;
877   end Create_Utp_Time_Out;
878
879   --------------------------------
880   -- Create_Utp_Time_Out_Action --
881   --------------------------------
882
883   function Create_Utp_Time_Out_Action return AMF.Internals.AMF_Element is
884      Self : AMF.Internals.AMF_Element;
885
886   begin
887      UTP_Element_Table.Increment_Last;
888      Self := UTP_Element_Table.Last;
889
890      UTP_Element_Table.Table (Self).all :=
891       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Time_Out_Action,
892        Extent   => 0,
893        Proxy    =>
894          new AMF.Internals.Utp_Time_Out_Actions.Utp_Time_Out_Action_Proxy'(Element => Self),
895        Member   =>
896         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
897          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
898                       --  base_AcceptEventAction
899          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
900      UTP_Element_Table.Table (Self).Member (0) :=
901       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
902        AMF.Internals.Element_Collections.Allocate_Collections (1));
903
904      return Self;
905   end Create_Utp_Time_Out_Action;
906
907   ---------------------------------
908   -- Create_Utp_Time_Out_Message --
909   ---------------------------------
910
911   function Create_Utp_Time_Out_Message return AMF.Internals.AMF_Element is
912      Self : AMF.Internals.AMF_Element;
913
914   begin
915      UTP_Element_Table.Increment_Last;
916      Self := UTP_Element_Table.Last;
917
918      UTP_Element_Table.Table (Self).all :=
919       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Time_Out_Message,
920        Extent   => 0,
921        Proxy    =>
922          new AMF.Internals.Utp_Time_Out_Messages.Utp_Time_Out_Message_Proxy'(Element => Self),
923        Member   =>
924         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
925          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
926                       --  base_Message
927          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
928      UTP_Element_Table.Table (Self).Member (0) :=
929       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
930        AMF.Internals.Element_Collections.Allocate_Collections (1));
931
932      return Self;
933   end Create_Utp_Time_Out_Message;
934
935   -------------------------------------
936   -- Create_Utp_Timer_Running_Action --
937   -------------------------------------
938
939   function Create_Utp_Timer_Running_Action return AMF.Internals.AMF_Element is
940      Self : AMF.Internals.AMF_Element;
941
942   begin
943      UTP_Element_Table.Increment_Last;
944      Self := UTP_Element_Table.Last;
945
946      UTP_Element_Table.Table (Self).all :=
947       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Timer_Running_Action,
948        Extent   => 0,
949        Proxy    =>
950          new AMF.Internals.Utp_Timer_Running_Actions.Utp_Timer_Running_Action_Proxy'(Element => Self),
951        Member   =>
952         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
953          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
954                       --  base_ReadStructuralFeatureAction
955          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
956      UTP_Element_Table.Table (Self).Member (0) :=
957       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
958        AMF.Internals.Element_Collections.Allocate_Collections (1));
959
960      return Self;
961   end Create_Utp_Timer_Running_Action;
962
963   ----------------------------------
964   -- Create_Utp_Validation_Action --
965   ----------------------------------
966
967   function Create_Utp_Validation_Action return AMF.Internals.AMF_Element is
968      Self : AMF.Internals.AMF_Element;
969
970   begin
971      UTP_Element_Table.Increment_Last;
972      Self := UTP_Element_Table.Last;
973
974      UTP_Element_Table.Table (Self).all :=
975       (Kind     => AMF.Internals.Tables.UTP_Types.E_Utp_Validation_Action,
976        Extent   => 0,
977        Proxy    =>
978          new AMF.Internals.Utp_Validation_Actions.Utp_Validation_Action_Proxy'(Element => Self),
979        Member   =>
980         (0      => (Kind => AMF.Internals.Tables.UTP_Types.M_None),
981          1      => (AMF.Internals.Tables.UTP_Types.M_Element, No_AMF_Link),
982                       --  base_CallOperationAction
983          others => (Kind => AMF.Internals.Tables.UTP_Types.M_None)));
984      UTP_Element_Table.Table (Self).Member (0) :=
985       (AMF.Internals.Tables.UTP_Types.M_Collection_Of_Element,
986        AMF.Internals.Element_Collections.Allocate_Collections (1));
987
988      return Self;
989   end Create_Utp_Validation_Action;
990
991end AMF.Internals.Tables.UTP_Constructors;
992