------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- This source file was automatically generated by Platypus -- see http://dossen.univ-brest.fr/apl -- -- Any modification of this file will be lost. -- Please see the "platypus" directory instead : it contains the Cheddar's -- model and its meta-model. ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- Cheddar is a GNU GPL real-time scheduling analysis tool. -- This program provides services to automatically check schedulability and -- other performance criteria of real-time architecture models. -- -- Copyright (C) 2002-2016 Frank Singhoff, Alain Plantec, Jerome Legrand -- -- The Cheddar project was started in 2002 by -- Frank Singhoff, Lab-STICC UMR 6285 laboratory, Université de Bretagne Occidentale -- -- Cheddar has been published in the "Agence de Protection des Programmes/France" in 2008. -- Since 2008, Ellidiss technologies also contributes to the development of -- Cheddar and provides industrial support. -- -- The full list of contributors and sponsors can be found in AUTHORS.txt and SPONSORS.txt -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -- -- -- Contact : cheddar@listes.univ-brest.fr -- To post to this mailing list, you must be subscribed -- (see http//beru.univ-brest.fr/~singhoff/cheddar for details) -- ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ with Ada.Strings.Unbounded; use Ada.Strings.Unbounded; with Framework_Config; use Framework_Config; with id_generators; use id_generators; with Text_io; use Text_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Convert_Strings; with Convert_Unbounded_Strings; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Lists; with standards_io; use standards_io; use standards_io.boolean_io; use standards_io.natural_io; use standards_io.double_io; with doubles; use doubles; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package ARINC_653_Schema is type ARINC_653_Object; type ARINC_653_Object_Ptr is access all ARINC_653_Object'Class; type Error_ID_Type; type Error_ID_Type_Ptr is access all Error_ID_Type'Class; type Error_ID_Action_Type; type Error_ID_Action_Type_Ptr is access all Error_ID_Action_Type'Class; type Error_ID_Level_Type; type Error_ID_Level_Type_Ptr is access all Error_ID_Level_Type'Class; type System_State_Entry_Type; type System_State_Entry_Type_Ptr is access all System_State_Entry_Type'Class; type SysHM_Ext_Type; type SysHM_Ext_Type_Ptr is access all SysHM_Ext_Type'Class; type System_HM_TableType; type System_HM_TableType_Ptr is access all System_HM_TableType'Class; type Mod_HM_Ext_Type; type Mod_HM_Ext_Type_Ptr is access all Mod_HM_Ext_Type'Class; type Module_HM_Type; type Module_HM_Type_Ptr is access all Module_HM_Type'Class; type PortExt_Type; type PortExt_Type_Ptr is access all PortExt_Type'Class; type PortType; type PortType_Ptr is access all PortType'Class; type SamplingPortType; type SamplingPortType_Ptr is access all SamplingPortType'Class; type ProcExt_Type; type ProcExt_Type_Ptr is access all ProcExt_Type'Class; type ProcessType; type ProcessType_Ptr is access all ProcessType'Class; type QueuingPortType; type QueuingPortType_Ptr is access all QueuingPortType'Class; type PartitionExt_Type; type PartitionExt_Type_Ptr is access all PartitionExt_Type'Class; type PartitionType; type PartitionType_Ptr is access all PartitionType'Class; type Memory_Requirements; type Memory_Requirements_Ptr is access all Memory_Requirements'Class; type Memory_Ext_Type; type Memory_Ext_Type_Ptr is access all Memory_Ext_Type'Class; type Partition_Memory_Element; type Partition_Memory_Element_Ptr is access all Partition_Memory_Element'Class; type Partition_Sched_Ext_Type; type Partition_Sched_Ext_Type_Ptr is access all Partition_Sched_Ext_Type'Class; type Window_Schedule_Element; type Window_Schedule_Element_Ptr is access all Window_Schedule_Element'Class; type Window_Sched_Ext_Type; type Window_Sched_Ext_Type_Ptr is access all Window_Sched_Ext_Type'Class; type Partition_Schedule_Element; type Partition_Schedule_Element_Ptr is access all Partition_Schedule_Element'Class; type Module_Schedule_Type; type Module_Schedule_Type_Ptr is access all Module_Schedule_Type'Class; type Part_HM_Ext_Type; type Part_HM_Ext_Type_Ptr is access all Part_HM_Ext_Type'Class; type Partition_HM_Type; type Partition_HM_Type_Ptr is access all Partition_HM_Type'Class; type Pseudo_Partition; type Pseudo_Partition_Ptr is access all Pseudo_Partition'Class; type Standard_Partition; type Standard_Partition_Ptr is access all Standard_Partition'Class; type PortMap_Ext_Type; type PortMap_Ext_Type_Ptr is access all PortMap_Ext_Type'Class; type PortMappingType; type PortMappingType_Ptr is access all PortMappingType'Class; type Channel; type Channel_Ptr is access all Channel'Class; type ModExt_Type; type ModExt_Type_Ptr is access all ModExt_Type'Class; type ARINC_653_Module; type ARINC_653_Module_Ptr is access all ARINC_653_Module'Class; type ModuleActionType is ( IGNORE, SHUTDOWN, RESET); procedure To_ModuleActionType is new Convert_Strings(ModuleActionType, IGNORE); procedure To_ModuleActionType is new Convert_Unbounded_Strings(ModuleActionType, IGNORE); function XML_String (obj : in ModuleActionType) return Unbounded_String; function XML_Ref_String (obj : in ModuleActionType) return Unbounded_String; package ModuleActionType_io is new text_io.enumeration_io(ModuleActionType); use ModuleActionType_io; type PartitionActionType is ( IGNORE, IDLE, WARM_START, COLD_START); procedure To_PartitionActionType is new Convert_Strings(PartitionActionType, IGNORE); procedure To_PartitionActionType is new Convert_Unbounded_Strings(PartitionActionType, IGNORE); function XML_String (obj : in PartitionActionType) return Unbounded_String; function XML_Ref_String (obj : in PartitionActionType) return Unbounded_String; package PartitionActionType_io is new text_io.enumeration_io(PartitionActionType); use PartitionActionType_io; type ErrorLevelType is ( MODULE, PARTITION, PROCESS); procedure To_ErrorLevelType is new Convert_Strings(ErrorLevelType, MODULE); procedure To_ErrorLevelType is new Convert_Unbounded_Strings(ErrorLevelType, MODULE); function XML_String (obj : in ErrorLevelType) return Unbounded_String; function XML_Ref_String (obj : in ErrorLevelType) return Unbounded_String; package ErrorLevelType_io is new text_io.enumeration_io(ErrorLevelType); use ErrorLevelType_io; type ErrorCodeType is ( DEADLINE_MISSED, APPLICATION_ERROR, NUMERIC_ERROR, ILLEGAL_REQUEST, STACK_OVERFLOW, MEMORY_VIOLATION, HARDWARE_FAULT, POWER_FAILURE); procedure To_ErrorCodeType is new Convert_Strings(ErrorCodeType, DEADLINE_MISSED); procedure To_ErrorCodeType is new Convert_Unbounded_Strings(ErrorCodeType, DEADLINE_MISSED); function XML_String (obj : in ErrorCodeType) return Unbounded_String; function XML_Ref_String (obj : in ErrorCodeType) return Unbounded_String; package ErrorCodeType_io is new text_io.enumeration_io(ErrorCodeType); use ErrorCodeType_io; type DirectionType is ( SOURCE, DESTINATION); procedure To_DirectionType is new Convert_Strings(DirectionType, SOURCE); procedure To_DirectionType is new Convert_Unbounded_Strings(DirectionType, SOURCE); function XML_String (obj : in DirectionType) return Unbounded_String; function XML_Ref_String (obj : in DirectionType) return Unbounded_String; package DirectionType_io is new text_io.enumeration_io(DirectionType); use DirectionType_io; type CriticalityType is ( LEVEL_A, LEVEL_B, LEVEL_C, LEVEL_D, LEVEL_E); procedure To_CriticalityType is new Convert_Strings(CriticalityType, LEVEL_A); procedure To_CriticalityType is new Convert_Unbounded_Strings(CriticalityType, LEVEL_A); function XML_String (obj : in CriticalityType) return Unbounded_String; function XML_Ref_String (obj : in CriticalityType) return Unbounded_String; package CriticalityType_io is new text_io.enumeration_io(CriticalityType); use CriticalityType_io; type PortMappingType_Choice_Type is ( Pseudo_Partition_Choice, Standard_Partition_Choice); procedure To_PortMappingType_Choice_Type is new Convert_Strings(PortMappingType_Choice_Type, Pseudo_Partition_Choice); procedure To_PortMappingType_Choice_Type is new Convert_Unbounded_Strings(PortMappingType_Choice_Type, Pseudo_Partition_Choice); function XML_String (obj : in PortMappingType_Choice_Type) return Unbounded_String; function XML_Ref_String (obj : in PortMappingType_Choice_Type) return Unbounded_String; package PortMappingType_Choice_Type_io is new text_io.enumeration_io(PortMappingType_Choice_Type); use PortMappingType_Choice_Type_io; -- --------= ARINC_653_Object =-------- type ARINC_653_Object is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; end record; procedure Initialize(obj : in out ARINC_653_Object); procedure Put(obj : in ARINC_653_Object); procedure Put(obj : in ARINC_653_Object_Ptr); procedure Put_Name(obj : in ARINC_653_Object_Ptr); procedure Build_Attributes_XML_String(obj : in ARINC_653_Object; result : in out Unbounded_String); function XML_String(obj : in ARINC_653_Object) return Unbounded_String; function XML_String(obj : in ARINC_653_Object_Ptr) return Unbounded_String; function XML_Ref_String(obj : in ARINC_653_Object) return Unbounded_String; function XML_Ref_String(obj : in ARINC_653_Object_Ptr) return Unbounded_String; function Copy(obj : in ARINC_653_Object_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in ARINC_653_Object) return ARINC_653_Object_Ptr; function type_of(obj : in ARINC_653_Object) return unbounded_string_list; function type_of(obj : in ARINC_653_Object_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (ARINC_653_Object'Class, ARINC_653_Object_Ptr); -- --------= Error_ID_Type =-------- type Error_ID_Type is new ARINC_653_Object with record ErrorIdentifier : Unbounded_String; Description : Unbounded_String; PartitionAction : PartitionActionType; ModuleAction : ModuleActionType; end record; procedure Initialize(obj : in out Error_ID_Type); procedure Put(obj : in Error_ID_Type); procedure Put(obj : in Error_ID_Type_Ptr); procedure Put_Name(obj : in Error_ID_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Error_ID_Type; result : in out Unbounded_String); function XML_String(obj : in Error_ID_Type) return Unbounded_String; function XML_String(obj : in Error_ID_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Type) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Type_Ptr) return Unbounded_String; function Copy(obj : in Error_ID_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Error_ID_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Error_ID_Type) return unbounded_string_list; function type_of(obj : in Error_ID_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Error_ID_Type'Class, Error_ID_Type_Ptr); -- --------= Error_ID_Action_Type =-------- type Error_ID_Action_Type is new Error_ID_Type with null record; procedure Initialize(obj : in out Error_ID_Action_Type); procedure Put(obj : in Error_ID_Action_Type); procedure Put(obj : in Error_ID_Action_Type_Ptr); procedure Put_Name(obj : in Error_ID_Action_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Error_ID_Action_Type; result : in out Unbounded_String); function XML_String(obj : in Error_ID_Action_Type) return Unbounded_String; function XML_String(obj : in Error_ID_Action_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Action_Type) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Action_Type_Ptr) return Unbounded_String; function Copy(obj : in Error_ID_Action_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Error_ID_Action_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Error_ID_Action_Type) return unbounded_string_list; function type_of(obj : in Error_ID_Action_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Error_ID_Action_Type'Class, Error_ID_Action_Type_Ptr); -- --------= Error_ID_Level_Type =-------- type Error_ID_Level_Type is new Error_ID_Type with record ErrorLevel : ErrorLevelType; ErrorCode : ErrorCodeType; end record; procedure Initialize(obj : in out Error_ID_Level_Type); procedure Put(obj : in Error_ID_Level_Type); procedure Put(obj : in Error_ID_Level_Type_Ptr); procedure Put_Name(obj : in Error_ID_Level_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Error_ID_Level_Type; result : in out Unbounded_String); function XML_String(obj : in Error_ID_Level_Type) return Unbounded_String; function XML_String(obj : in Error_ID_Level_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Level_Type) return Unbounded_String; function XML_Ref_String(obj : in Error_ID_Level_Type_Ptr) return Unbounded_String; function Copy(obj : in Error_ID_Level_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Error_ID_Level_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Error_ID_Level_Type) return unbounded_string_list; function type_of(obj : in Error_ID_Level_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Error_ID_Level_Type'Class, Error_ID_Level_Type_Ptr); package Error_ID_Type_List_Package is new Lists(Error_ID_Type_Ptr, Put, Free, XML_String); use Error_ID_Type_List_Package; subtype Error_ID_Type_Iterator is Error_ID_Type_List_Package.iterator; subtype Error_ID_Type_Iterator_Ptr is Error_ID_Type_List_Package.iterator_Ptr; subtype Error_ID_Type_List is Error_ID_Type_List_Package.List; subtype Error_ID_Type_List_Ptr is Error_ID_Type_List_Package.List_Ptr; -- --------= System_State_Entry_Type =-------- type System_State_Entry_Type is new ARINC_653_Object with record Error_ID_Action : Error_ID_Type_List; SystemState : Unbounded_String; Description : Unbounded_String; end record; procedure Initialize(obj : in out System_State_Entry_Type); procedure Put(obj : in System_State_Entry_Type); procedure Put(obj : in System_State_Entry_Type_Ptr); procedure Put_Name(obj : in System_State_Entry_Type_Ptr); procedure Build_Attributes_XML_String(obj : in System_State_Entry_Type; result : in out Unbounded_String); function XML_String(obj : in System_State_Entry_Type) return Unbounded_String; function XML_String(obj : in System_State_Entry_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in System_State_Entry_Type) return Unbounded_String; function XML_Ref_String(obj : in System_State_Entry_Type_Ptr) return Unbounded_String; function Copy(obj : in System_State_Entry_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in System_State_Entry_Type) return ARINC_653_Object_Ptr; function type_of(obj : in System_State_Entry_Type) return unbounded_string_list; function type_of(obj : in System_State_Entry_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (System_State_Entry_Type'Class, System_State_Entry_Type_Ptr); package System_State_Entry_Type_List_Package is new Lists(System_State_Entry_Type_Ptr, Put, Free, XML_String); use System_State_Entry_Type_List_Package; subtype System_State_Entry_Type_Iterator is System_State_Entry_Type_List_Package.iterator; subtype System_State_Entry_Type_Iterator_Ptr is System_State_Entry_Type_List_Package.iterator_Ptr; subtype System_State_Entry_Type_List is System_State_Entry_Type_List_Package.List; subtype System_State_Entry_Type_List_Ptr is System_State_Entry_Type_List_Package.List_Ptr; -- --------= SysHM_Ext_Type =-------- type SysHM_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out SysHM_Ext_Type); procedure Put(obj : in SysHM_Ext_Type); procedure Put(obj : in SysHM_Ext_Type_Ptr); procedure Put_Name(obj : in SysHM_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in SysHM_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in SysHM_Ext_Type) return Unbounded_String; function XML_String(obj : in SysHM_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in SysHM_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in SysHM_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in SysHM_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in SysHM_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in SysHM_Ext_Type) return unbounded_string_list; function type_of(obj : in SysHM_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (SysHM_Ext_Type'Class, SysHM_Ext_Type_Ptr); package SysHM_Ext_Type_List_Package is new Lists(SysHM_Ext_Type_Ptr, Put, Free, XML_String); use SysHM_Ext_Type_List_Package; subtype SysHM_Ext_Type_Iterator is SysHM_Ext_Type_List_Package.iterator; subtype SysHM_Ext_Type_Iterator_Ptr is SysHM_Ext_Type_List_Package.iterator_Ptr; subtype SysHM_Ext_Type_List is SysHM_Ext_Type_List_Package.List; subtype SysHM_Ext_Type_List_Ptr is SysHM_Ext_Type_List_Package.List_Ptr; -- --------= System_HM_TableType =-------- type System_HM_TableType is new ARINC_653_Object with record System_State_Entry : System_State_Entry_Type_List; SysHM_Ext : SysHM_Ext_Type_List; end record; procedure Initialize(obj : in out System_HM_TableType); procedure Put(obj : in System_HM_TableType); procedure Put(obj : in System_HM_TableType_Ptr); procedure Put_Name(obj : in System_HM_TableType_Ptr); procedure Build_Attributes_XML_String(obj : in System_HM_TableType; result : in out Unbounded_String); function XML_String(obj : in System_HM_TableType) return Unbounded_String; function XML_String(obj : in System_HM_TableType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in System_HM_TableType) return Unbounded_String; function XML_Ref_String(obj : in System_HM_TableType_Ptr) return Unbounded_String; function Copy(obj : in System_HM_TableType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in System_HM_TableType) return ARINC_653_Object_Ptr; function type_of(obj : in System_HM_TableType) return unbounded_string_list; function type_of(obj : in System_HM_TableType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (System_HM_TableType'Class, System_HM_TableType_Ptr); -- --------= Mod_HM_Ext_Type =-------- type Mod_HM_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out Mod_HM_Ext_Type); procedure Put(obj : in Mod_HM_Ext_Type); procedure Put(obj : in Mod_HM_Ext_Type_Ptr); procedure Put_Name(obj : in Mod_HM_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Mod_HM_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in Mod_HM_Ext_Type) return Unbounded_String; function XML_String(obj : in Mod_HM_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Mod_HM_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in Mod_HM_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in Mod_HM_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Mod_HM_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Mod_HM_Ext_Type) return unbounded_string_list; function type_of(obj : in Mod_HM_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Mod_HM_Ext_Type'Class, Mod_HM_Ext_Type_Ptr); package Mod_HM_Ext_Type_List_Package is new Lists(Mod_HM_Ext_Type_Ptr, Put, Free, XML_String); use Mod_HM_Ext_Type_List_Package; subtype Mod_HM_Ext_Type_Iterator is Mod_HM_Ext_Type_List_Package.iterator; subtype Mod_HM_Ext_Type_Iterator_Ptr is Mod_HM_Ext_Type_List_Package.iterator_Ptr; subtype Mod_HM_Ext_Type_List is Mod_HM_Ext_Type_List_Package.List; subtype Mod_HM_Ext_Type_List_Ptr is Mod_HM_Ext_Type_List_Package.List_Ptr; -- --------= Module_HM_Type =-------- type Module_HM_Type is new ARINC_653_Object with record System_State_Entry : System_State_Entry_Type_List; Mod_HM_Ext : Mod_HM_Ext_Type_List; ModuleCallback : Unbounded_String; end record; procedure Initialize(obj : in out Module_HM_Type); procedure Put(obj : in Module_HM_Type); procedure Put(obj : in Module_HM_Type_Ptr); procedure Put_Name(obj : in Module_HM_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Module_HM_Type; result : in out Unbounded_String); function XML_String(obj : in Module_HM_Type) return Unbounded_String; function XML_String(obj : in Module_HM_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Module_HM_Type) return Unbounded_String; function XML_Ref_String(obj : in Module_HM_Type_Ptr) return Unbounded_String; function Copy(obj : in Module_HM_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Module_HM_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Module_HM_Type) return unbounded_string_list; function type_of(obj : in Module_HM_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Module_HM_Type'Class, Module_HM_Type_Ptr); -- --------= PortExt_Type =-------- type PortExt_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out PortExt_Type); procedure Put(obj : in PortExt_Type); procedure Put(obj : in PortExt_Type_Ptr); procedure Put_Name(obj : in PortExt_Type_Ptr); procedure Build_Attributes_XML_String(obj : in PortExt_Type; result : in out Unbounded_String); function XML_String(obj : in PortExt_Type) return Unbounded_String; function XML_String(obj : in PortExt_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PortExt_Type) return Unbounded_String; function XML_Ref_String(obj : in PortExt_Type_Ptr) return Unbounded_String; function Copy(obj : in PortExt_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PortExt_Type) return ARINC_653_Object_Ptr; function type_of(obj : in PortExt_Type) return unbounded_string_list; function type_of(obj : in PortExt_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PortExt_Type'Class, PortExt_Type_Ptr); package PortExt_Type_List_Package is new Lists(PortExt_Type_Ptr, Put, Free, XML_String); use PortExt_Type_List_Package; subtype PortExt_Type_Iterator is PortExt_Type_List_Package.iterator; subtype PortExt_Type_Iterator_Ptr is PortExt_Type_List_Package.iterator_Ptr; subtype PortExt_Type_List is PortExt_Type_List_Package.List; subtype PortExt_Type_List_Ptr is PortExt_Type_List_Package.List_Ptr; -- --------= PortType =-------- type PortType is new ARINC_653_Object with record PortExt : PortExt_Type_List; Name : Unbounded_String; MaxMessageSize : Unbounded_String; Direction : DirectionType; end record; procedure Initialize(obj : in out PortType); procedure Put(obj : in PortType); procedure Put(obj : in PortType_Ptr); procedure Put_Name(obj : in PortType_Ptr); procedure Build_Attributes_XML_String(obj : in PortType; result : in out Unbounded_String); function XML_String(obj : in PortType) return Unbounded_String; function XML_String(obj : in PortType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PortType) return Unbounded_String; function XML_Ref_String(obj : in PortType_Ptr) return Unbounded_String; function Copy(obj : in PortType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PortType) return ARINC_653_Object_Ptr; function type_of(obj : in PortType) return unbounded_string_list; function type_of(obj : in PortType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PortType'Class, PortType_Ptr); -- --------= SamplingPortType =-------- type SamplingPortType is new PortType with record RefreshRateSeconds : Double; end record; procedure Initialize(obj : in out SamplingPortType); procedure Put(obj : in SamplingPortType); procedure Put(obj : in SamplingPortType_Ptr); procedure Put_Name(obj : in SamplingPortType_Ptr); procedure Build_Attributes_XML_String(obj : in SamplingPortType; result : in out Unbounded_String); function XML_String(obj : in SamplingPortType) return Unbounded_String; function XML_String(obj : in SamplingPortType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in SamplingPortType) return Unbounded_String; function XML_Ref_String(obj : in SamplingPortType_Ptr) return Unbounded_String; function Copy(obj : in SamplingPortType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in SamplingPortType) return ARINC_653_Object_Ptr; function type_of(obj : in SamplingPortType) return unbounded_string_list; function type_of(obj : in SamplingPortType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (SamplingPortType'Class, SamplingPortType_Ptr); -- --------= ProcExt_Type =-------- type ProcExt_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out ProcExt_Type); procedure Put(obj : in ProcExt_Type); procedure Put(obj : in ProcExt_Type_Ptr); procedure Put_Name(obj : in ProcExt_Type_Ptr); procedure Build_Attributes_XML_String(obj : in ProcExt_Type; result : in out Unbounded_String); function XML_String(obj : in ProcExt_Type) return Unbounded_String; function XML_String(obj : in ProcExt_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in ProcExt_Type) return Unbounded_String; function XML_Ref_String(obj : in ProcExt_Type_Ptr) return Unbounded_String; function Copy(obj : in ProcExt_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in ProcExt_Type) return ARINC_653_Object_Ptr; function type_of(obj : in ProcExt_Type) return unbounded_string_list; function type_of(obj : in ProcExt_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (ProcExt_Type'Class, ProcExt_Type_Ptr); package ProcExt_Type_List_Package is new Lists(ProcExt_Type_Ptr, Put, Free, XML_String); use ProcExt_Type_List_Package; subtype ProcExt_Type_Iterator is ProcExt_Type_List_Package.iterator; subtype ProcExt_Type_Iterator_Ptr is ProcExt_Type_List_Package.iterator_Ptr; subtype ProcExt_Type_List is ProcExt_Type_List_Package.List; subtype ProcExt_Type_List_Ptr is ProcExt_Type_List_Package.List_Ptr; -- --------= ProcessType =-------- type ProcessType is new ARINC_653_Object with record ProcExt : ProcExt_Type_List; Name : Unbounded_String; StackSize : Unbounded_String; end record; procedure Initialize(obj : in out ProcessType); procedure Put(obj : in ProcessType); procedure Put(obj : in ProcessType_Ptr); procedure Put_Name(obj : in ProcessType_Ptr); procedure Build_Attributes_XML_String(obj : in ProcessType; result : in out Unbounded_String); function XML_String(obj : in ProcessType) return Unbounded_String; function XML_String(obj : in ProcessType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in ProcessType) return Unbounded_String; function XML_Ref_String(obj : in ProcessType_Ptr) return Unbounded_String; function Copy(obj : in ProcessType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in ProcessType) return ARINC_653_Object_Ptr; function type_of(obj : in ProcessType) return unbounded_string_list; function type_of(obj : in ProcessType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (ProcessType'Class, ProcessType_Ptr); -- --------= QueuingPortType =-------- type QueuingPortType is new PortType with record MaxNbMessages : Natural; end record; procedure Initialize(obj : in out QueuingPortType); procedure Put(obj : in QueuingPortType); procedure Put(obj : in QueuingPortType_Ptr); procedure Put_Name(obj : in QueuingPortType_Ptr); procedure Build_Attributes_XML_String(obj : in QueuingPortType; result : in out Unbounded_String); function XML_String(obj : in QueuingPortType) return Unbounded_String; function XML_String(obj : in QueuingPortType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in QueuingPortType) return Unbounded_String; function XML_Ref_String(obj : in QueuingPortType_Ptr) return Unbounded_String; function Copy(obj : in QueuingPortType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in QueuingPortType) return ARINC_653_Object_Ptr; function type_of(obj : in QueuingPortType) return unbounded_string_list; function type_of(obj : in QueuingPortType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (QueuingPortType'Class, QueuingPortType_Ptr); package SamplingPortType_List_Package is new Lists(SamplingPortType_Ptr, Put, Free, XML_String); use SamplingPortType_List_Package; subtype SamplingPortType_Iterator is SamplingPortType_List_Package.iterator; subtype SamplingPortType_Iterator_Ptr is SamplingPortType_List_Package.iterator_Ptr; subtype SamplingPortType_List is SamplingPortType_List_Package.List; subtype SamplingPortType_List_Ptr is SamplingPortType_List_Package.List_Ptr; package QueuingPortType_List_Package is new Lists(QueuingPortType_Ptr, Put, Free, XML_String); use QueuingPortType_List_Package; subtype QueuingPortType_Iterator is QueuingPortType_List_Package.iterator; subtype QueuingPortType_Iterator_Ptr is QueuingPortType_List_Package.iterator_Ptr; subtype QueuingPortType_List is QueuingPortType_List_Package.List; subtype QueuingPortType_List_Ptr is QueuingPortType_List_Package.List_Ptr; package ProcessType_List_Package is new Lists(ProcessType_Ptr, Put, Free, XML_String); use ProcessType_List_Package; subtype ProcessType_Iterator is ProcessType_List_Package.iterator; subtype ProcessType_Iterator_Ptr is ProcessType_List_Package.iterator_Ptr; subtype ProcessType_List is ProcessType_List_Package.List; subtype ProcessType_List_Ptr is ProcessType_List_Package.List_Ptr; -- --------= PartitionExt_Type =-------- type PartitionExt_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out PartitionExt_Type); procedure Put(obj : in PartitionExt_Type); procedure Put(obj : in PartitionExt_Type_Ptr); procedure Put_Name(obj : in PartitionExt_Type_Ptr); procedure Build_Attributes_XML_String(obj : in PartitionExt_Type; result : in out Unbounded_String); function XML_String(obj : in PartitionExt_Type) return Unbounded_String; function XML_String(obj : in PartitionExt_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PartitionExt_Type) return Unbounded_String; function XML_Ref_String(obj : in PartitionExt_Type_Ptr) return Unbounded_String; function Copy(obj : in PartitionExt_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PartitionExt_Type) return ARINC_653_Object_Ptr; function type_of(obj : in PartitionExt_Type) return unbounded_string_list; function type_of(obj : in PartitionExt_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PartitionExt_Type'Class, PartitionExt_Type_Ptr); package PartitionExt_Type_List_Package is new Lists(PartitionExt_Type_Ptr, Put, Free, XML_String); use PartitionExt_Type_List_Package; subtype PartitionExt_Type_Iterator is PartitionExt_Type_List_Package.iterator; subtype PartitionExt_Type_Iterator_Ptr is PartitionExt_Type_List_Package.iterator_Ptr; subtype PartitionExt_Type_List is PartitionExt_Type_List_Package.List; subtype PartitionExt_Type_List_Ptr is PartitionExt_Type_List_Package.List_Ptr; -- --------= PartitionType =-------- type PartitionType is new ARINC_653_Object with record Sampling_Port : SamplingPortType_List; Queuing_Port : QueuingPortType_List; Process : ProcessType_List; PartitionExt : PartitionExt_Type_List; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; Criticality : CriticalityType; SystemPartition : Boolean; EntryPoint : Unbounded_String; end record; procedure Initialize(obj : in out PartitionType); procedure Put(obj : in PartitionType); procedure Put(obj : in PartitionType_Ptr); procedure Put_Name(obj : in PartitionType_Ptr); procedure Build_Attributes_XML_String(obj : in PartitionType; result : in out Unbounded_String); function XML_String(obj : in PartitionType) return Unbounded_String; function XML_String(obj : in PartitionType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PartitionType) return Unbounded_String; function XML_Ref_String(obj : in PartitionType_Ptr) return Unbounded_String; function Copy(obj : in PartitionType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PartitionType) return ARINC_653_Object_Ptr; function type_of(obj : in PartitionType) return unbounded_string_list; function type_of(obj : in PartitionType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PartitionType'Class, PartitionType_Ptr); package PartitionType_List_Package is new Lists(PartitionType_Ptr, Put, Free, XML_String); use PartitionType_List_Package; subtype PartitionType_Iterator is PartitionType_List_Package.iterator; subtype PartitionType_Iterator_Ptr is PartitionType_List_Package.iterator_Ptr; subtype PartitionType_List is PartitionType_List_Package.List; subtype PartitionType_List_Ptr is PartitionType_List_Package.List_Ptr; -- --------= Memory_Requirements =-------- type Memory_Requirements is new ARINC_653_Object with record regionName : Unbounded_String; memory_type : Unbounded_String; sizeBytes : Unbounded_String; physicalAddress : Unbounded_String; memoryAccess : Unbounded_String; end record; procedure Initialize(obj : in out Memory_Requirements); procedure Put(obj : in Memory_Requirements); procedure Put(obj : in Memory_Requirements_Ptr); procedure Put_Name(obj : in Memory_Requirements_Ptr); procedure Build_Attributes_XML_String(obj : in Memory_Requirements; result : in out Unbounded_String); function XML_String(obj : in Memory_Requirements) return Unbounded_String; function XML_String(obj : in Memory_Requirements_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Memory_Requirements) return Unbounded_String; function XML_Ref_String(obj : in Memory_Requirements_Ptr) return Unbounded_String; function Copy(obj : in Memory_Requirements_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Memory_Requirements) return ARINC_653_Object_Ptr; function type_of(obj : in Memory_Requirements) return unbounded_string_list; function type_of(obj : in Memory_Requirements_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Memory_Requirements'Class, Memory_Requirements_Ptr); -- --------= Memory_Ext_Type =-------- type Memory_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out Memory_Ext_Type); procedure Put(obj : in Memory_Ext_Type); procedure Put(obj : in Memory_Ext_Type_Ptr); procedure Put_Name(obj : in Memory_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Memory_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in Memory_Ext_Type) return Unbounded_String; function XML_String(obj : in Memory_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Memory_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in Memory_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in Memory_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Memory_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Memory_Ext_Type) return unbounded_string_list; function type_of(obj : in Memory_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Memory_Ext_Type'Class, Memory_Ext_Type_Ptr); package Memory_Ext_Type_List_Package is new Lists(Memory_Ext_Type_Ptr, Put, Free, XML_String); use Memory_Ext_Type_List_Package; subtype Memory_Ext_Type_Iterator is Memory_Ext_Type_List_Package.iterator; subtype Memory_Ext_Type_Iterator_Ptr is Memory_Ext_Type_List_Package.iterator_Ptr; subtype Memory_Ext_Type_List is Memory_Ext_Type_List_Package.List; subtype Memory_Ext_Type_List_Ptr is Memory_Ext_Type_List_Package.List_Ptr; -- --------= Partition_Memory_Element =-------- type Partition_Memory_Element is new ARINC_653_Object with record Memory_Requirements : Memory_Requirements_Ptr; Memory_Ext : Memory_Ext_Type_List; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; end record; procedure Initialize(obj : in out Partition_Memory_Element); procedure Put(obj : in Partition_Memory_Element); procedure Put(obj : in Partition_Memory_Element_Ptr); procedure Put_Name(obj : in Partition_Memory_Element_Ptr); procedure Build_Attributes_XML_String(obj : in Partition_Memory_Element; result : in out Unbounded_String); function XML_String(obj : in Partition_Memory_Element) return Unbounded_String; function XML_String(obj : in Partition_Memory_Element_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Partition_Memory_Element) return Unbounded_String; function XML_Ref_String(obj : in Partition_Memory_Element_Ptr) return Unbounded_String; function Copy(obj : in Partition_Memory_Element_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Partition_Memory_Element) return ARINC_653_Object_Ptr; function type_of(obj : in Partition_Memory_Element) return unbounded_string_list; function type_of(obj : in Partition_Memory_Element_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Partition_Memory_Element'Class, Partition_Memory_Element_Ptr); package Partition_Memory_Element_List_Package is new Lists(Partition_Memory_Element_Ptr, Put, Free, XML_String); use Partition_Memory_Element_List_Package; subtype Partition_Memory_Element_Iterator is Partition_Memory_Element_List_Package.iterator; subtype Partition_Memory_Element_Iterator_Ptr is Partition_Memory_Element_List_Package.iterator_Ptr; subtype Partition_Memory_Element_List is Partition_Memory_Element_List_Package.List; subtype Partition_Memory_Element_List_Ptr is Partition_Memory_Element_List_Package.List_Ptr; -- --------= Partition_Sched_Ext_Type =-------- type Partition_Sched_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out Partition_Sched_Ext_Type); procedure Put(obj : in Partition_Sched_Ext_Type); procedure Put(obj : in Partition_Sched_Ext_Type_Ptr); procedure Put_Name(obj : in Partition_Sched_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Partition_Sched_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in Partition_Sched_Ext_Type) return Unbounded_String; function XML_String(obj : in Partition_Sched_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Partition_Sched_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in Partition_Sched_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in Partition_Sched_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Partition_Sched_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Partition_Sched_Ext_Type) return unbounded_string_list; function type_of(obj : in Partition_Sched_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Partition_Sched_Ext_Type'Class, Partition_Sched_Ext_Type_Ptr); package Partition_Sched_Ext_Type_List_Package is new Lists(Partition_Sched_Ext_Type_Ptr, Put, Free, XML_String); use Partition_Sched_Ext_Type_List_Package; subtype Partition_Sched_Ext_Type_Iterator is Partition_Sched_Ext_Type_List_Package.iterator; subtype Partition_Sched_Ext_Type_Iterator_Ptr is Partition_Sched_Ext_Type_List_Package.iterator_Ptr; subtype Partition_Sched_Ext_Type_List is Partition_Sched_Ext_Type_List_Package.List; subtype Partition_Sched_Ext_Type_List_Ptr is Partition_Sched_Ext_Type_List_Package.List_Ptr; -- --------= Window_Schedule_Element =-------- type Window_Schedule_Element is new ARINC_653_Object with record WindowIdentifier : Unbounded_String; WindowStartSeconds : Double; WindowDurationSeconds : Double; PartitionPeriodStart : Boolean; end record; procedure Initialize(obj : in out Window_Schedule_Element); procedure Put(obj : in Window_Schedule_Element); procedure Put(obj : in Window_Schedule_Element_Ptr); procedure Put_Name(obj : in Window_Schedule_Element_Ptr); procedure Build_Attributes_XML_String(obj : in Window_Schedule_Element; result : in out Unbounded_String); function XML_String(obj : in Window_Schedule_Element) return Unbounded_String; function XML_String(obj : in Window_Schedule_Element_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Window_Schedule_Element) return Unbounded_String; function XML_Ref_String(obj : in Window_Schedule_Element_Ptr) return Unbounded_String; function Copy(obj : in Window_Schedule_Element_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Window_Schedule_Element) return ARINC_653_Object_Ptr; function type_of(obj : in Window_Schedule_Element) return unbounded_string_list; function type_of(obj : in Window_Schedule_Element_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Window_Schedule_Element'Class, Window_Schedule_Element_Ptr); package Window_Schedule_Element_List_Package is new Lists(Window_Schedule_Element_Ptr, Put, Free, XML_String); use Window_Schedule_Element_List_Package; subtype Window_Schedule_Element_Iterator is Window_Schedule_Element_List_Package.iterator; subtype Window_Schedule_Element_Iterator_Ptr is Window_Schedule_Element_List_Package.iterator_Ptr; subtype Window_Schedule_Element_List is Window_Schedule_Element_List_Package.List; subtype Window_Schedule_Element_List_Ptr is Window_Schedule_Element_List_Package.List_Ptr; -- --------= Window_Sched_Ext_Type =-------- type Window_Sched_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out Window_Sched_Ext_Type); procedure Put(obj : in Window_Sched_Ext_Type); procedure Put(obj : in Window_Sched_Ext_Type_Ptr); procedure Put_Name(obj : in Window_Sched_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Window_Sched_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in Window_Sched_Ext_Type) return Unbounded_String; function XML_String(obj : in Window_Sched_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Window_Sched_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in Window_Sched_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in Window_Sched_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Window_Sched_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Window_Sched_Ext_Type) return unbounded_string_list; function type_of(obj : in Window_Sched_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Window_Sched_Ext_Type'Class, Window_Sched_Ext_Type_Ptr); package Window_Sched_Ext_Type_List_Package is new Lists(Window_Sched_Ext_Type_Ptr, Put, Free, XML_String); use Window_Sched_Ext_Type_List_Package; subtype Window_Sched_Ext_Type_Iterator is Window_Sched_Ext_Type_List_Package.iterator; subtype Window_Sched_Ext_Type_Iterator_Ptr is Window_Sched_Ext_Type_List_Package.iterator_Ptr; subtype Window_Sched_Ext_Type_List is Window_Sched_Ext_Type_List_Package.List; subtype Window_Sched_Ext_Type_List_Ptr is Window_Sched_Ext_Type_List_Package.List_Ptr; -- --------= Partition_Schedule_Element =-------- type Partition_Schedule_Element is new ARINC_653_Object with record Window_Schedule : Window_Schedule_Element_List; Window_Sched_Ext : Window_Sched_Ext_Type_List; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PeriodSeconds : Double; PeriodDurationSeconds : Double; end record; procedure Initialize(obj : in out Partition_Schedule_Element); procedure Put(obj : in Partition_Schedule_Element); procedure Put(obj : in Partition_Schedule_Element_Ptr); procedure Put_Name(obj : in Partition_Schedule_Element_Ptr); procedure Build_Attributes_XML_String(obj : in Partition_Schedule_Element; result : in out Unbounded_String); function XML_String(obj : in Partition_Schedule_Element) return Unbounded_String; function XML_String(obj : in Partition_Schedule_Element_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Partition_Schedule_Element) return Unbounded_String; function XML_Ref_String(obj : in Partition_Schedule_Element_Ptr) return Unbounded_String; function Copy(obj : in Partition_Schedule_Element_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Partition_Schedule_Element) return ARINC_653_Object_Ptr; function type_of(obj : in Partition_Schedule_Element) return unbounded_string_list; function type_of(obj : in Partition_Schedule_Element_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Partition_Schedule_Element'Class, Partition_Schedule_Element_Ptr); package Partition_Schedule_Element_List_Package is new Lists(Partition_Schedule_Element_Ptr, Put, Free, XML_String); use Partition_Schedule_Element_List_Package; subtype Partition_Schedule_Element_Iterator is Partition_Schedule_Element_List_Package.iterator; subtype Partition_Schedule_Element_Iterator_Ptr is Partition_Schedule_Element_List_Package.iterator_Ptr; subtype Partition_Schedule_Element_List is Partition_Schedule_Element_List_Package.List; subtype Partition_Schedule_Element_List_Ptr is Partition_Schedule_Element_List_Package.List_Ptr; -- --------= Module_Schedule_Type =-------- type Module_Schedule_Type is new ARINC_653_Object with record Partition_Schedule : Partition_Schedule_Element_List; Partition_Sched_Ext : Partition_Sched_Ext_Type_List; MajorFrameSeconds : Double; end record; procedure Initialize(obj : in out Module_Schedule_Type); procedure Put(obj : in Module_Schedule_Type); procedure Put(obj : in Module_Schedule_Type_Ptr); procedure Put_Name(obj : in Module_Schedule_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Module_Schedule_Type; result : in out Unbounded_String); function XML_String(obj : in Module_Schedule_Type) return Unbounded_String; function XML_String(obj : in Module_Schedule_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Module_Schedule_Type) return Unbounded_String; function XML_Ref_String(obj : in Module_Schedule_Type_Ptr) return Unbounded_String; function Copy(obj : in Module_Schedule_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Module_Schedule_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Module_Schedule_Type) return unbounded_string_list; function type_of(obj : in Module_Schedule_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Module_Schedule_Type'Class, Module_Schedule_Type_Ptr); -- --------= Part_HM_Ext_Type =-------- type Part_HM_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out Part_HM_Ext_Type); procedure Put(obj : in Part_HM_Ext_Type); procedure Put(obj : in Part_HM_Ext_Type_Ptr); procedure Put_Name(obj : in Part_HM_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Part_HM_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in Part_HM_Ext_Type) return Unbounded_String; function XML_String(obj : in Part_HM_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Part_HM_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in Part_HM_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in Part_HM_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Part_HM_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Part_HM_Ext_Type) return unbounded_string_list; function type_of(obj : in Part_HM_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Part_HM_Ext_Type'Class, Part_HM_Ext_Type_Ptr); package Part_HM_Ext_Type_List_Package is new Lists(Part_HM_Ext_Type_Ptr, Put, Free, XML_String); use Part_HM_Ext_Type_List_Package; subtype Part_HM_Ext_Type_Iterator is Part_HM_Ext_Type_List_Package.iterator; subtype Part_HM_Ext_Type_Iterator_Ptr is Part_HM_Ext_Type_List_Package.iterator_Ptr; subtype Part_HM_Ext_Type_List is Part_HM_Ext_Type_List_Package.List; subtype Part_HM_Ext_Type_List_Ptr is Part_HM_Ext_Type_List_Package.List_Ptr; -- --------= Partition_HM_Type =-------- type Partition_HM_Type is new ARINC_653_Object with record System_State_Entry : System_State_Entry_Type_List; Part_HM_Ext : Part_HM_Ext_Type_List; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PartitionCallback : Unbounded_String; end record; procedure Initialize(obj : in out Partition_HM_Type); procedure Put(obj : in Partition_HM_Type); procedure Put(obj : in Partition_HM_Type_Ptr); procedure Put_Name(obj : in Partition_HM_Type_Ptr); procedure Build_Attributes_XML_String(obj : in Partition_HM_Type; result : in out Unbounded_String); function XML_String(obj : in Partition_HM_Type) return Unbounded_String; function XML_String(obj : in Partition_HM_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Partition_HM_Type) return Unbounded_String; function XML_Ref_String(obj : in Partition_HM_Type_Ptr) return Unbounded_String; function Copy(obj : in Partition_HM_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Partition_HM_Type) return ARINC_653_Object_Ptr; function type_of(obj : in Partition_HM_Type) return unbounded_string_list; function type_of(obj : in Partition_HM_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Partition_HM_Type'Class, Partition_HM_Type_Ptr); package Partition_HM_Type_List_Package is new Lists(Partition_HM_Type_Ptr, Put, Free, XML_String); use Partition_HM_Type_List_Package; subtype Partition_HM_Type_Iterator is Partition_HM_Type_List_Package.iterator; subtype Partition_HM_Type_Iterator_Ptr is Partition_HM_Type_List_Package.iterator_Ptr; subtype Partition_HM_Type_List is Partition_HM_Type_List_Package.List; subtype Partition_HM_Type_List_Ptr is Partition_HM_Type_List_Package.List_Ptr; -- --------= Pseudo_Partition =-------- type Pseudo_Partition is new ARINC_653_Object with record Name : Unbounded_String; PhysicalAddress : Unbounded_String; partition_procedure : Unbounded_String; end record; procedure Initialize(obj : in out Pseudo_Partition); procedure Put(obj : in Pseudo_Partition); procedure Put(obj : in Pseudo_Partition_Ptr); procedure Put_Name(obj : in Pseudo_Partition_Ptr); procedure Build_Attributes_XML_String(obj : in Pseudo_Partition; result : in out Unbounded_String); function XML_String(obj : in Pseudo_Partition) return Unbounded_String; function XML_String(obj : in Pseudo_Partition_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Pseudo_Partition) return Unbounded_String; function XML_Ref_String(obj : in Pseudo_Partition_Ptr) return Unbounded_String; function Copy(obj : in Pseudo_Partition_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Pseudo_Partition) return ARINC_653_Object_Ptr; function type_of(obj : in Pseudo_Partition) return unbounded_string_list; function type_of(obj : in Pseudo_Partition_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Pseudo_Partition'Class, Pseudo_Partition_Ptr); -- --------= Standard_Partition =-------- type Standard_Partition is new ARINC_653_Object with record PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PortName : Unbounded_String; PhysicalAddress : Unbounded_String; end record; procedure Initialize(obj : in out Standard_Partition); procedure Put(obj : in Standard_Partition); procedure Put(obj : in Standard_Partition_Ptr); procedure Put_Name(obj : in Standard_Partition_Ptr); procedure Build_Attributes_XML_String(obj : in Standard_Partition; result : in out Unbounded_String); function XML_String(obj : in Standard_Partition) return Unbounded_String; function XML_String(obj : in Standard_Partition_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Standard_Partition) return Unbounded_String; function XML_Ref_String(obj : in Standard_Partition_Ptr) return Unbounded_String; function Copy(obj : in Standard_Partition_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Standard_Partition) return ARINC_653_Object_Ptr; function type_of(obj : in Standard_Partition) return unbounded_string_list; function type_of(obj : in Standard_Partition_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Standard_Partition'Class, Standard_Partition_Ptr); type PortMappingType_Choice (type_of_PortMappingType_Choice : PortMappingType_Choice_Type ) is record case type_of_PortMappingType_Choice is when pseudo_partition_Choice => pseudo_partition : Pseudo_Partition_Ptr; when standard_partition_Choice => standard_partition : Standard_Partition_Ptr; end case; end record; type PortMappingType_Choice_Ptr is access all PortMappingType_Choice; procedure Initialize(obj : out PortMappingType_Choice_Ptr); procedure Put(obj : in PortMappingType_Choice_Ptr); function Copy(obj : in PortMappingType_Choice_Ptr) return PortMappingType_Choice_Ptr; function Copy(obj : in PortMappingType_Choice) return PortMappingType_Choice_Ptr; function XML_String(obj : in PortMappingType_Choice) return Unbounded_String; function XML_String(obj : in PortMappingType_Choice_Ptr) return Unbounded_String; procedure Free is new Unchecked_Deallocation (PortMappingType_Choice, PortMappingType_Choice_Ptr); function XML_Ref_String(obj : in PortMappingType_Choice) return Unbounded_String; function XML_Ref_String(obj : in PortMappingType_Choice_Ptr) return Unbounded_String; -- --------= PortMap_Ext_Type =-------- type PortMap_Ext_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out PortMap_Ext_Type); procedure Put(obj : in PortMap_Ext_Type); procedure Put(obj : in PortMap_Ext_Type_Ptr); procedure Put_Name(obj : in PortMap_Ext_Type_Ptr); procedure Build_Attributes_XML_String(obj : in PortMap_Ext_Type; result : in out Unbounded_String); function XML_String(obj : in PortMap_Ext_Type) return Unbounded_String; function XML_String(obj : in PortMap_Ext_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PortMap_Ext_Type) return Unbounded_String; function XML_Ref_String(obj : in PortMap_Ext_Type_Ptr) return Unbounded_String; function Copy(obj : in PortMap_Ext_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PortMap_Ext_Type) return ARINC_653_Object_Ptr; function type_of(obj : in PortMap_Ext_Type) return unbounded_string_list; function type_of(obj : in PortMap_Ext_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PortMap_Ext_Type'Class, PortMap_Ext_Type_Ptr); package PortMap_Ext_Type_List_Package is new Lists(PortMap_Ext_Type_Ptr, Put, Free, XML_String); use PortMap_Ext_Type_List_Package; subtype PortMap_Ext_Type_Iterator is PortMap_Ext_Type_List_Package.iterator; subtype PortMap_Ext_Type_Iterator_Ptr is PortMap_Ext_Type_List_Package.iterator_Ptr; subtype PortMap_Ext_Type_List is PortMap_Ext_Type_List_Package.List; subtype PortMap_Ext_Type_List_Ptr is PortMap_Ext_Type_List_Package.List_Ptr; -- --------= PortMappingType =-------- type PortMappingType is new ARINC_653_Object with record choice : PortMappingType_Choice_Ptr; PortMap_Ext : PortMap_Ext_Type_List; end record; procedure Initialize(obj : in out PortMappingType); procedure Put(obj : in PortMappingType); procedure Put(obj : in PortMappingType_Ptr); procedure Put_Name(obj : in PortMappingType_Ptr); procedure Build_Attributes_XML_String(obj : in PortMappingType; result : in out Unbounded_String); function XML_String(obj : in PortMappingType) return Unbounded_String; function XML_String(obj : in PortMappingType_Ptr) return Unbounded_String; function XML_Ref_String(obj : in PortMappingType) return Unbounded_String; function XML_Ref_String(obj : in PortMappingType_Ptr) return Unbounded_String; function Copy(obj : in PortMappingType_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in PortMappingType) return ARINC_653_Object_Ptr; function type_of(obj : in PortMappingType) return unbounded_string_list; function type_of(obj : in PortMappingType_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (PortMappingType'Class, PortMappingType_Ptr); package PortMappingType_List_Package is new Lists(PortMappingType_Ptr, Put, Free, XML_String); use PortMappingType_List_Package; subtype PortMappingType_Iterator is PortMappingType_List_Package.iterator; subtype PortMappingType_Iterator_Ptr is PortMappingType_List_Package.iterator_Ptr; subtype PortMappingType_List is PortMappingType_List_Package.List; subtype PortMappingType_List_Ptr is PortMappingType_List_Package.List_Ptr; -- --------= Channel =-------- type Channel is new ARINC_653_Object with record Source : PortMappingType_Ptr; Destination : PortMappingType_List; ChannelIdentifier : Unbounded_String; ChannelName : Unbounded_String; end record; procedure Initialize(obj : in out Channel); procedure Put(obj : in Channel); procedure Put(obj : in Channel_Ptr); procedure Put_Name(obj : in Channel_Ptr); procedure Build_Attributes_XML_String(obj : in Channel; result : in out Unbounded_String); function XML_String(obj : in Channel) return Unbounded_String; function XML_String(obj : in Channel_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Channel) return Unbounded_String; function XML_Ref_String(obj : in Channel_Ptr) return Unbounded_String; function Copy(obj : in Channel_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in Channel) return ARINC_653_Object_Ptr; function type_of(obj : in Channel) return unbounded_string_list; function type_of(obj : in Channel_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Channel'Class, Channel_Ptr); package Channel_List_Package is new Lists(Channel_Ptr, Put, Free, XML_String); use Channel_List_Package; subtype Channel_Iterator is Channel_List_Package.iterator; subtype Channel_Iterator_Ptr is Channel_List_Package.iterator_Ptr; subtype Channel_List is Channel_List_Package.List; subtype Channel_List_Ptr is Channel_List_Package.List_Ptr; -- --------= ModExt_Type =-------- type ModExt_Type is new ARINC_653_Object with null record; procedure Initialize(obj : in out ModExt_Type); procedure Put(obj : in ModExt_Type); procedure Put(obj : in ModExt_Type_Ptr); procedure Put_Name(obj : in ModExt_Type_Ptr); procedure Build_Attributes_XML_String(obj : in ModExt_Type; result : in out Unbounded_String); function XML_String(obj : in ModExt_Type) return Unbounded_String; function XML_String(obj : in ModExt_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in ModExt_Type) return Unbounded_String; function XML_Ref_String(obj : in ModExt_Type_Ptr) return Unbounded_String; function Copy(obj : in ModExt_Type_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in ModExt_Type) return ARINC_653_Object_Ptr; function type_of(obj : in ModExt_Type) return unbounded_string_list; function type_of(obj : in ModExt_Type_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (ModExt_Type'Class, ModExt_Type_Ptr); package ModExt_Type_List_Package is new Lists(ModExt_Type_Ptr, Put, Free, XML_String); use ModExt_Type_List_Package; subtype ModExt_Type_Iterator is ModExt_Type_List_Package.iterator; subtype ModExt_Type_Iterator_Ptr is ModExt_Type_List_Package.iterator_Ptr; subtype ModExt_Type_List is ModExt_Type_List_Package.List; subtype ModExt_Type_List_Ptr is ModExt_Type_List_Package.List_Ptr; -- --------= ARINC_653_Module =-------- type ARINC_653_Module is new ARINC_653_Object with record System_HM_List : System_HM_TableType_Ptr; Module_HM_List : Module_HM_Type_Ptr; Partition : PartitionType_List; Partition_Memory : Partition_Memory_Element_List; Module_Schedule : Module_Schedule_Type_Ptr; Partition_HM_List : Partition_HM_Type_List; Connection_List : Channel_List; ModExt : ModExt_Type_List; ModuleName : Unbounded_String; ModuleVersion : Unbounded_String; ModuleId : Unbounded_String; end record; procedure Initialize(obj : in out ARINC_653_Module); procedure Put(obj : in ARINC_653_Module); procedure Put(obj : in ARINC_653_Module_Ptr); procedure Put_Name(obj : in ARINC_653_Module_Ptr); procedure Build_Attributes_XML_String(obj : in ARINC_653_Module; result : in out Unbounded_String); function XML_String(obj : in ARINC_653_Module) return Unbounded_String; function XML_String(obj : in ARINC_653_Module_Ptr) return Unbounded_String; function XML_Ref_String(obj : in ARINC_653_Module) return Unbounded_String; function XML_Ref_String(obj : in ARINC_653_Module_Ptr) return Unbounded_String; function Copy(obj : in ARINC_653_Module_Ptr) return ARINC_653_Object_Ptr; function Copy(obj : in ARINC_653_Module) return ARINC_653_Object_Ptr; function type_of(obj : in ARINC_653_Module) return unbounded_string_list; function type_of(obj : in ARINC_653_Module_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (ARINC_653_Module'Class, ARINC_653_Module_Ptr); End ARINC_653_Schema;