------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Statements; use Statements; with Automaton; use Automaton; use automaton.Transition_Lists_Package; use automaton.State_Lists_Package; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Sections is type Generic_Section; type Generic_Section_Ptr is access all Generic_Section'Class; type Computation_Section; type Computation_Section_Ptr is access all Computation_Section'Class; type Synchronization_Section; type Synchronization_Section_Ptr is access all Synchronization_Section'Class; type Sections_Type is ( Automaton_Type, Start_Type, Priority_Type, Election_Type, Activation_Type, Check_Resource_Type, Allocate_Resource_Type, Release_Resource_Type, Gather_Event_Analyzer_Type, Display_Event_Analyzer_Type); procedure To_Sections_Type is new Convert_Strings(Sections_Type, Automaton_Type); procedure To_Sections_Type is new Convert_Unbounded_Strings(Sections_Type, Automaton_Type); function XML_String (obj : in Sections_Type) return Unbounded_String; function XML_Ref_String (obj : in Sections_Type) return Unbounded_String; package Sections_Type_io is new text_io.enumeration_io(Sections_Type); use Sections_Type_io; -- --------= Generic_Section =-------- type Generic_Section is new Named_Object with record section_type : Sections_Type; file_name : Unbounded_String; end record; procedure Initialize(obj : in out Generic_Section); procedure Put(obj : in Generic_Section); procedure Put(obj : in Generic_Section_Ptr); procedure Put_Name(obj : in Generic_Section_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Section; result : in out Unbounded_String); function XML_String(obj : in Generic_Section) return Unbounded_String; function XML_String(obj : in Generic_Section_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Section) return Unbounded_String; function XML_Ref_String(obj : in Generic_Section_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Section) return Unbounded_String; function Get_Name (obj : in Generic_Section_Ptr) return Unbounded_String; function Copy(obj : in Generic_Section_Ptr) return Generic_Section_Ptr; function Copy(obj : in Generic_Section) return Generic_Section_Ptr; function type_of(obj : in Generic_Section) return unbounded_string_list; function type_of(obj : in Generic_Section_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Section'Class, Generic_Section_Ptr); -- --------= Computation_Section =-------- type Computation_Section is new Generic_Section with record first_statement : Generic_Statement_Ptr; end record; procedure Initialize(obj : in out Computation_Section); procedure Put(obj : in Computation_Section); procedure Put(obj : in Computation_Section_Ptr); procedure Put_Name(obj : in Computation_Section_Ptr); procedure Build_Attributes_XML_String(obj : in Computation_Section; result : in out Unbounded_String); function XML_String(obj : in Computation_Section) return Unbounded_String; function XML_String(obj : in Computation_Section_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Computation_Section) return Unbounded_String; function XML_Ref_String(obj : in Computation_Section_Ptr) return Unbounded_String; function Get_Name (obj : in Computation_Section) return Unbounded_String; function Get_Name (obj : in Computation_Section_Ptr) return Unbounded_String; function Copy(obj : in Computation_Section_Ptr) return Generic_Section_Ptr; function Copy(obj : in Computation_Section) return Generic_Section_Ptr; function type_of(obj : in Computation_Section) return unbounded_string_list; function type_of(obj : in Computation_Section_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Computation_Section'Class, Computation_Section_Ptr); -- --------= Synchronization_Section =-------- type Synchronization_Section is new Generic_Section with record state_list : State_Lists; transition_list : Transition_Lists; end record; procedure Initialize(obj : in out Synchronization_Section); procedure Put(obj : in Synchronization_Section); procedure Put(obj : in Synchronization_Section_Ptr); procedure Put_Name(obj : in Synchronization_Section_Ptr); procedure Build_Attributes_XML_String(obj : in Synchronization_Section; result : in out Unbounded_String); function XML_String(obj : in Synchronization_Section) return Unbounded_String; function XML_String(obj : in Synchronization_Section_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Synchronization_Section) return Unbounded_String; function XML_Ref_String(obj : in Synchronization_Section_Ptr) return Unbounded_String; function Get_Name (obj : in Synchronization_Section) return Unbounded_String; function Get_Name (obj : in Synchronization_Section_Ptr) return Unbounded_String; function Copy(obj : in Synchronization_Section_Ptr) return Generic_Section_Ptr; function Copy(obj : in Synchronization_Section) return Generic_Section_Ptr; function type_of(obj : in Synchronization_Section) return unbounded_string_list; function type_of(obj : in Synchronization_Section_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Synchronization_Section'Class, Synchronization_Section_Ptr); End Sections; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with standards_io; use standards_io; use standards_io.natural_io; 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 ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Batteries is type Battery; type Battery_Ptr is access all Battery'Class; -- --------= Battery =-------- type Battery is new Named_Object with record capacity : Natural; rechargeable_power : Natural; cpu_name : Unbounded_String; e_max : Natural; initial_energy : Natural; end record; procedure Initialize(obj : in out Battery); procedure Put(obj : in Battery); procedure Put(obj : in Battery_Ptr); procedure Put_Name(obj : in Battery_Ptr); procedure Build_Attributes_XML_String(obj : in Battery; result : in out Unbounded_String); function XML_String(obj : in Battery) return Unbounded_String; function XML_String(obj : in Battery_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Battery) return Unbounded_String; function XML_Ref_String(obj : in Battery_Ptr) return Unbounded_String; function Get_Name (obj : in Battery) return Unbounded_String; function Get_Name (obj : in Battery_Ptr) return Unbounded_String; function Copy(obj : in Battery_Ptr) return Battery_Ptr; function Copy(obj : in Battery) return Battery_Ptr; function type_of(obj : in Battery) return unbounded_string_list; function type_of(obj : in Battery_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Battery'Class, Battery_Ptr); End Batteries; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Xml_Architecture_Parser_Interface is type XML_Units is ( batteries_xml, core_units_xml, address_spaces_xml, processors_xml, memories_xml, buffers_xml, resources_xml, dependencies_xml, networks_xml, messages_xml, tasks_xml, task_groups_xml, deployments_xml, resource_entities_xml, consumer_entities_xml, event_analyzers_xml, caches_xml, cache_blocks_xml, cfgs_xml, cfg_nodes_xml, cfg_edges_xml, basic_blocks_xml, cache_access_profile_xml, ucbs_xml, ecbs_xml, scheduling_errors_xml, execution_units_xml, data_accesses_xml); procedure To_XML_Units is new Convert_Strings(XML_Units, batteries_xml); procedure To_XML_Units is new Convert_Unbounded_Strings(XML_Units, batteries_xml); function XML_String (obj : in XML_Units) return Unbounded_String; function XML_Ref_String (obj : in XML_Units) return Unbounded_String; package XML_Units_io is new text_io.enumeration_io(XML_Units); use XML_Units_io; End Xml_Architecture_Parser_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with standards_io; use standards_io; use standards_io.boolean_io; use standards_io.natural_io; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with Lists; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Memories is type Generic_Memory; type Generic_Memory_Ptr is access all Generic_Memory'Class; type DRAM_Memory; type DRAM_Memory_Ptr is access all DRAM_Memory'Class; type Kalray_Memory; type Kalray_Memory_Ptr is access all Kalray_Memory'Class; type Memory_Record; type Memory_Record_Ptr is access all Memory_Record; type Memory_Type is ( Generic_Memory_Type, DRAM_Type, Kalray_Type); procedure To_Memory_Type is new Convert_Strings(Memory_Type, Generic_Memory_Type); procedure To_Memory_Type is new Convert_Unbounded_Strings(Memory_Type, Generic_Memory_Type); function XML_String (obj : in Memory_Type) return Unbounded_String; function XML_Ref_String (obj : in Memory_Type) return Unbounded_String; package Memory_Type_io is new text_io.enumeration_io(Memory_Type); use Memory_Type_io; -- --------= Generic_Memory =-------- type Generic_Memory is new Named_Object with record size : Natural; access_latency : Natural; memory_category : Memory_Type; end record; procedure Initialize(obj : in out Generic_Memory); procedure Put(obj : in Generic_Memory); procedure Put(obj : in Generic_Memory_Ptr); procedure Put_Name(obj : in Generic_Memory_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Memory; result : in out Unbounded_String); function XML_String(obj : in Generic_Memory) return Unbounded_String; function XML_String(obj : in Generic_Memory_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Memory) return Unbounded_String; function XML_Ref_String(obj : in Generic_Memory_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Memory) return Unbounded_String; function Get_Name (obj : in Generic_Memory_Ptr) return Unbounded_String; function Copy(obj : in Generic_Memory_Ptr) return Generic_Memory_Ptr; function Copy(obj : in Generic_Memory) return Generic_Memory_Ptr; function type_of(obj : in Generic_Memory) return unbounded_string_list; function type_of(obj : in Generic_Memory_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Memory'Class, Generic_Memory_Ptr); package Memories_Table_Package is new Tables(Generic_Memory_Ptr, Max_Memories, Put, XML_String, XML_Ref_String); use Memories_Table_Package; subtype Memories_Range is Memories_Table_Package.table_range; subtype Memories_Range_Ptr is Memories_Table_Package.table_range_Ptr; subtype Memories_Table is Memories_Table_Package.table; subtype Memories_Table_Ptr is Memories_Table_Package.table_Ptr; package Generic_Memory_List_Package is new Lists(Generic_Memory_Ptr, Put, Free, XML_Ref_String); use Generic_Memory_List_Package; subtype Generic_Memory_Iterator is Generic_Memory_List_Package.iterator; subtype Generic_Memory_Iterator_Ptr is Generic_Memory_List_Package.iterator_Ptr; subtype Generic_Memory_List is Generic_Memory_List_Package.list; subtype Generic_Memory_List_Ptr is Generic_Memory_List_Package.list_Ptr; -- --------= DRAM_Memory =-------- type DRAM_Memory is new Generic_Memory with record shared_access_latency : Natural; private_access_latency : Natural; l_rw_inter : Natural; l_act_inter : Natural; l_pre_inter : Natural; n_reorder : Natural; l_conhit : Natural; l_conf : Natural; end record; procedure Initialize(obj : in out DRAM_Memory); procedure Put(obj : in DRAM_Memory); procedure Put(obj : in DRAM_Memory_Ptr); procedure Put_Name(obj : in DRAM_Memory_Ptr); procedure Build_Attributes_XML_String(obj : in DRAM_Memory; result : in out Unbounded_String); function XML_String(obj : in DRAM_Memory) return Unbounded_String; function XML_String(obj : in DRAM_Memory_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DRAM_Memory) return Unbounded_String; function XML_Ref_String(obj : in DRAM_Memory_Ptr) return Unbounded_String; function Get_Name (obj : in DRAM_Memory) return Unbounded_String; function Get_Name (obj : in DRAM_Memory_Ptr) return Unbounded_String; function Copy(obj : in DRAM_Memory_Ptr) return Generic_Memory_Ptr; function Copy(obj : in DRAM_Memory) return Generic_Memory_Ptr; function type_of(obj : in DRAM_Memory) return unbounded_string_list; function type_of(obj : in DRAM_Memory_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (DRAM_Memory'Class, DRAM_Memory_Ptr); -- --------= Kalray_Memory =-------- type Kalray_Memory is new Generic_Memory with record nb_bank : Natural; partition_mode : Boolean; end record; procedure Initialize(obj : in out Kalray_Memory); procedure Put(obj : in Kalray_Memory); procedure Put(obj : in Kalray_Memory_Ptr); procedure Put_Name(obj : in Kalray_Memory_Ptr); procedure Build_Attributes_XML_String(obj : in Kalray_Memory; result : in out Unbounded_String); function XML_String(obj : in Kalray_Memory) return Unbounded_String; function XML_String(obj : in Kalray_Memory_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Kalray_Memory) return Unbounded_String; function XML_Ref_String(obj : in Kalray_Memory_Ptr) return Unbounded_String; function Get_Name (obj : in Kalray_Memory) return Unbounded_String; function Get_Name (obj : in Kalray_Memory_Ptr) return Unbounded_String; function Copy(obj : in Kalray_Memory_Ptr) return Generic_Memory_Ptr; function Copy(obj : in Kalray_Memory) return Generic_Memory_Ptr; function type_of(obj : in Kalray_Memory) return unbounded_string_list; function type_of(obj : in Kalray_Memory_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Kalray_Memory'Class, Kalray_Memory_Ptr); -- --------= Memory_Record =-------- type Memory_Record is record size : Natural; access_latency : Natural; memory_category : Memory_Type; shared_access_latency : Natural; private_access_latency : Natural; l_rw_inter : Natural; l_act_inter : Natural; l_pre_inter : Natural; n_reorder : Natural; l_conhit : Natural; l_conf : Natural; nb_bank : Natural; partition_mode : Boolean; end record; procedure Initialize(obj : out Memory_Record); procedure Put(obj : in Memory_Record); procedure Put(obj : in Memory_Record_Ptr); function Copy(obj : in Memory_Record_Ptr) return Memory_Record_Ptr; function Copy(obj : in Memory_Record) return Memory_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Memory_Record; result : in out Unbounded_String); function XML_String(obj : in Memory_Record) return Unbounded_String; function XML_String(obj : in Memory_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Memory_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Memory_Record, Memory_Record_Ptr); End Memories; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Messages; use Messages; with Tasks; use Tasks; with Buffers; use Buffers; with Resources; use Resources; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package Dependencies is type Dependency_Type is ( Precedence_Dependency, Queueing_Buffer_Dependency, Asynchronous_Communication_Dependency, Time_Triggered_Communication_Dependency, Resource_Dependency, Remote_Procedure_Call_Dependency, Black_Board_Buffer_Dependency); procedure To_Dependency_Type is new Convert_Strings(Dependency_Type, Precedence_Dependency); procedure To_Dependency_Type is new Convert_Unbounded_Strings(Dependency_Type, Precedence_Dependency); function XML_String (obj : in Dependency_Type) return Unbounded_String; function XML_Ref_String (obj : in Dependency_Type) return Unbounded_String; package Dependency_Type_io is new text_io.enumeration_io(Dependency_Type); use Dependency_Type_io; type Time_Triggered_Communication_Timing_Property_Type is ( Sampled_Timing, Immediate_Timing, Delayed_Timing); procedure To_Time_Triggered_Communication_Timing_Property_Type is new Convert_Strings(Time_Triggered_Communication_Timing_Property_Type, Sampled_Timing); procedure To_Time_Triggered_Communication_Timing_Property_Type is new Convert_Unbounded_Strings(Time_Triggered_Communication_Timing_Property_Type, Sampled_Timing); function XML_String (obj : in Time_Triggered_Communication_Timing_Property_Type) return Unbounded_String; function XML_Ref_String (obj : in Time_Triggered_Communication_Timing_Property_Type) return Unbounded_String; package Time_Triggered_Communication_Timing_Property_Type_io is new text_io.enumeration_io(Time_Triggered_Communication_Timing_Property_Type); use Time_Triggered_Communication_Timing_Property_Type_io; type Orientation_Dependency_Type is ( From_Object_To_Task, From_Task_To_Object); procedure To_Orientation_Dependency_Type is new Convert_Strings(Orientation_Dependency_Type, From_Object_To_Task); procedure To_Orientation_Dependency_Type is new Convert_Unbounded_Strings(Orientation_Dependency_Type, From_Object_To_Task); function XML_String (obj : in Orientation_Dependency_Type) return Unbounded_String; function XML_Ref_String (obj : in Orientation_Dependency_Type) return Unbounded_String; package Orientation_Dependency_Type_io is new text_io.enumeration_io(Orientation_Dependency_Type); use Orientation_Dependency_Type_io; type Asynchronous_Communication_Protocol_Property_Type is ( First_Message, All_Messages); procedure To_Asynchronous_Communication_Protocol_Property_Type is new Convert_Strings(Asynchronous_Communication_Protocol_Property_Type, First_Message); procedure To_Asynchronous_Communication_Protocol_Property_Type is new Convert_Unbounded_Strings(Asynchronous_Communication_Protocol_Property_Type, First_Message); function XML_String (obj : in Asynchronous_Communication_Protocol_Property_Type) return Unbounded_String; function XML_Ref_String (obj : in Asynchronous_Communication_Protocol_Property_Type) return Unbounded_String; package Asynchronous_Communication_Protocol_Property_Type_io is new text_io.enumeration_io(Asynchronous_Communication_Protocol_Property_Type); use Asynchronous_Communication_Protocol_Property_Type_io; type Dependency (type_of_dependency : Dependency_Type ) is record case type_of_dependency is when precedence_dependency => precedence_sink : Generic_Task_Ptr; precedence_source : Generic_Task_Ptr; when queueing_buffer_dependency => buffer_dependent_task : Generic_Task_Ptr; buffer_orientation : Orientation_Dependency_Type; buffer_dependency_object : Buffer_Ptr; when asynchronous_communication_dependency => asynchronous_communication_dependent_task : Generic_Task_Ptr; asynchronous_communication_orientation : Orientation_Dependency_Type; asynchronous_communication_dependency_object : Generic_Message_Ptr; asynchronous_communication_protocol_property : Asynchronous_Communication_Protocol_Property_Type; when time_triggered_communication_dependency => time_triggered_communication_sink : Generic_Task_Ptr; time_triggered_communication_source : Generic_Task_Ptr; time_triggered_timing_property : Time_Triggered_Communication_Timing_Property_Type; when resource_dependency => resource_dependency_resource : Generic_Resource_Ptr; resource_dependency_task : Generic_Task_Ptr; when remote_procedure_call_dependency => remote_procedure_call_client : Generic_Task_Ptr; remote_procedure_call_server : Generic_Task_Ptr; when black_board_Buffer_dependency => black_board_dependent_task : Generic_Task_Ptr; black_board_orientation : Orientation_Dependency_Type; black_board_dependency_object : Buffer_Ptr; end case; end record; type Dependency_Ptr is access all Dependency; procedure Initialize(obj : out Dependency_Ptr); procedure Put(obj : in Dependency_Ptr); function Copy(obj : in Dependency_Ptr) return Dependency_Ptr; function Copy(obj : in Dependency) return Dependency_Ptr; function XML_String(obj : in Dependency) return Unbounded_String; function XML_String(obj : in Dependency_Ptr) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Dependency, Dependency_Ptr); function XML_Ref_String(obj : in Dependency) return Unbounded_String; function XML_Ref_String(obj : in Dependency_Ptr) return Unbounded_String; End Dependencies; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Scheduler_Interface; use Scheduler_Interface; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package Scheduler is type Generic_Scheduler; type Generic_Scheduler_Ptr is access all Generic_Scheduler'Class; type Aperiodic_Task_Server_Protocol; type Aperiodic_Task_Server_Protocol_Ptr is access all Aperiodic_Task_Server_Protocol'Class; type Polling_Server_Protocol; type Polling_Server_Protocol_Ptr is access all Polling_Server_Protocol'Class; type Deferred_Server_Protocol; type Deferred_Server_Protocol_Ptr is access all Deferred_Server_Protocol'Class; type Sporadic_Server_Protocol; type Sporadic_Server_Protocol_Ptr is access all Sporadic_Server_Protocol'Class; type Hierarchical_Protocol; type Hierarchical_Protocol_Ptr is access all Hierarchical_Protocol'Class; type Compiled_User_Defined_Protocol; type Compiled_User_Defined_Protocol_Ptr is access all Compiled_User_Defined_Protocol'Class; type Automata_User_Defined_Protocol; type Automata_User_Defined_Protocol_Ptr is access all Automata_User_Defined_Protocol'Class; type Pipeline_User_Defined_Protocol; type Pipeline_User_Defined_Protocol_Ptr is access all Pipeline_User_Defined_Protocol'Class; type User_Defined_Protocol; type User_Defined_Protocol_Ptr is access all User_Defined_Protocol'Class; type Earliest_Deadline_First_Protocol; type Earliest_Deadline_First_Protocol_Ptr is access all Earliest_Deadline_First_Protocol'Class; type Least_Laxity_First_Protocol; type Least_Laxity_First_Protocol_Ptr is access all Least_Laxity_First_Protocol'Class; type Rate_Monotonic_Protocol; type Rate_Monotonic_Protocol_Ptr is access all Rate_Monotonic_Protocol'Class; type Deadline_Monotonic_Protocol; type Deadline_Monotonic_Protocol_Ptr is access all Deadline_Monotonic_Protocol'Class; type Round_Robin_Protocol; type Round_Robin_Protocol_Ptr is access all Round_Robin_Protocol'Class; type Time_Sharing_Based_On_Wait_Time_Protocol; type Time_Sharing_Based_On_Wait_Time_Protocol_Ptr is access all Time_Sharing_Based_On_Wait_Time_Protocol'Class; type Posix_1003_Highest_Priority_First_Protocol; type Posix_1003_Highest_Priority_First_Protocol_Ptr is access all Posix_1003_Highest_Priority_First_Protocol'Class; type D_Over_Protocol; type D_Over_Protocol_Ptr is access all D_Over_Protocol'Class; type Maximum_Urgency_First_Based_On_Laxity_Protocol; type Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr is access all Maximum_Urgency_First_Based_On_Laxity_Protocol'Class; type Maximum_Urgency_First_Based_On_Deadline_Protocol; type Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr is access all Maximum_Urgency_First_Based_On_Deadline_Protocol'Class; type Time_Sharing_Based_On_Cpu_Usage_Protocol; type Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr is access all Time_Sharing_Based_On_Cpu_Usage_Protocol'Class; type No_Scheduling_Protocol; type No_Scheduling_Protocol_Ptr is access all No_Scheduling_Protocol'Class; type Hierarchical_Cyclic_Protocol; type Hierarchical_Cyclic_Protocol_Ptr is access all Hierarchical_Cyclic_Protocol'Class; type Hierarchical_Round_Robin_Protocol; type Hierarchical_Round_Robin_Protocol_Ptr is access all Hierarchical_Round_Robin_Protocol'Class; type Hierarchical_Fixed_Priority_Protocol; type Hierarchical_Fixed_Priority_Protocol_Ptr is access all Hierarchical_Fixed_Priority_Protocol'Class; type Hierarchical_Offline_Protocol; type Hierarchical_Offline_Protocol_Ptr is access all Hierarchical_Offline_Protocol'Class; type Fixed_Priority_Protocol; type Fixed_Priority_Protocol_Ptr is access all Fixed_Priority_Protocol'Class; type Dynamic_Priority_Protocol; type Dynamic_Priority_Protocol_Ptr is access all Dynamic_Priority_Protocol'Class; -- --------= Generic_Scheduler =-------- type Generic_Scheduler is new Generic_Object with record parameters : Scheduling_Parameters; end record; procedure Initialize(obj : in out Generic_Scheduler); procedure Put(obj : in Generic_Scheduler); procedure Put(obj : in Generic_Scheduler_Ptr); procedure Put_Name(obj : in Generic_Scheduler_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Scheduler; result : in out Unbounded_String); function XML_String(obj : in Generic_Scheduler) return Unbounded_String; function XML_String(obj : in Generic_Scheduler_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Scheduler) return Unbounded_String; function XML_Ref_String(obj : in Generic_Scheduler_Ptr) return Unbounded_String; function Copy(obj : in Generic_Scheduler_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Generic_Scheduler) return Generic_Scheduler_Ptr; function type_of(obj : in Generic_Scheduler) return unbounded_string_list; function type_of(obj : in Generic_Scheduler_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Scheduler'Class, Generic_Scheduler_Ptr); -- --------= Aperiodic_Task_Server_Protocol =-------- type Aperiodic_Task_Server_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Aperiodic_Task_Server_Protocol); procedure Put(obj : in Aperiodic_Task_Server_Protocol); procedure Put(obj : in Aperiodic_Task_Server_Protocol_Ptr); procedure Put_Name(obj : in Aperiodic_Task_Server_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Aperiodic_Task_Server_Protocol; result : in out Unbounded_String); function XML_String(obj : in Aperiodic_Task_Server_Protocol) return Unbounded_String; function XML_String(obj : in Aperiodic_Task_Server_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Task_Server_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Task_Server_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Aperiodic_Task_Server_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Aperiodic_Task_Server_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Aperiodic_Task_Server_Protocol) return unbounded_string_list; function type_of(obj : in Aperiodic_Task_Server_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Aperiodic_Task_Server_Protocol'Class, Aperiodic_Task_Server_Protocol_Ptr); -- --------= Polling_Server_Protocol =-------- type Polling_Server_Protocol is new Aperiodic_Task_Server_Protocol with null record; procedure Initialize(obj : in out Polling_Server_Protocol); procedure Put(obj : in Polling_Server_Protocol); procedure Put(obj : in Polling_Server_Protocol_Ptr); procedure Put_Name(obj : in Polling_Server_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Polling_Server_Protocol; result : in out Unbounded_String); function XML_String(obj : in Polling_Server_Protocol) return Unbounded_String; function XML_String(obj : in Polling_Server_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Polling_Server_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Polling_Server_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Polling_Server_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Polling_Server_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Polling_Server_Protocol) return unbounded_string_list; function type_of(obj : in Polling_Server_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Polling_Server_Protocol'Class, Polling_Server_Protocol_Ptr); -- --------= Deferred_Server_Protocol =-------- type Deferred_Server_Protocol is new Aperiodic_Task_Server_Protocol with null record; procedure Initialize(obj : in out Deferred_Server_Protocol); procedure Put(obj : in Deferred_Server_Protocol); procedure Put(obj : in Deferred_Server_Protocol_Ptr); procedure Put_Name(obj : in Deferred_Server_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Deferred_Server_Protocol; result : in out Unbounded_String); function XML_String(obj : in Deferred_Server_Protocol) return Unbounded_String; function XML_String(obj : in Deferred_Server_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Deferred_Server_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Deferred_Server_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Deferred_Server_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Deferred_Server_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Deferred_Server_Protocol) return unbounded_string_list; function type_of(obj : in Deferred_Server_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Deferred_Server_Protocol'Class, Deferred_Server_Protocol_Ptr); -- --------= Sporadic_Server_Protocol =-------- type Sporadic_Server_Protocol is new Aperiodic_Task_Server_Protocol with null record; procedure Initialize(obj : in out Sporadic_Server_Protocol); procedure Put(obj : in Sporadic_Server_Protocol); procedure Put(obj : in Sporadic_Server_Protocol_Ptr); procedure Put_Name(obj : in Sporadic_Server_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Sporadic_Server_Protocol; result : in out Unbounded_String); function XML_String(obj : in Sporadic_Server_Protocol) return Unbounded_String; function XML_String(obj : in Sporadic_Server_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Sporadic_Server_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Sporadic_Server_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Sporadic_Server_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Sporadic_Server_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Sporadic_Server_Protocol) return unbounded_string_list; function type_of(obj : in Sporadic_Server_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Sporadic_Server_Protocol'Class, Sporadic_Server_Protocol_Ptr); -- --------= Hierarchical_Protocol =-------- type Hierarchical_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Hierarchical_Protocol); procedure Put(obj : in Hierarchical_Protocol); procedure Put(obj : in Hierarchical_Protocol_Ptr); procedure Put_Name(obj : in Hierarchical_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Hierarchical_Protocol; result : in out Unbounded_String); function XML_String(obj : in Hierarchical_Protocol) return Unbounded_String; function XML_String(obj : in Hierarchical_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Hierarchical_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Hierarchical_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Hierarchical_Protocol) return unbounded_string_list; function type_of(obj : in Hierarchical_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Hierarchical_Protocol'Class, Hierarchical_Protocol_Ptr); -- --------= Compiled_User_Defined_Protocol =-------- type Compiled_User_Defined_Protocol is new User_Defined_Protocol with null record; procedure Initialize(obj : in out Compiled_User_Defined_Protocol); procedure Put(obj : in Compiled_User_Defined_Protocol); procedure Put(obj : in Compiled_User_Defined_Protocol_Ptr); procedure Put_Name(obj : in Compiled_User_Defined_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Compiled_User_Defined_Protocol; result : in out Unbounded_String); function XML_String(obj : in Compiled_User_Defined_Protocol) return Unbounded_String; function XML_String(obj : in Compiled_User_Defined_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Compiled_User_Defined_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Compiled_User_Defined_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Compiled_User_Defined_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Compiled_User_Defined_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Compiled_User_Defined_Protocol) return unbounded_string_list; function type_of(obj : in Compiled_User_Defined_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Compiled_User_Defined_Protocol'Class, Compiled_User_Defined_Protocol_Ptr); -- --------= Automata_User_Defined_Protocol =-------- type Automata_User_Defined_Protocol is new User_Defined_Protocol with null record; procedure Initialize(obj : in out Automata_User_Defined_Protocol); procedure Put(obj : in Automata_User_Defined_Protocol); procedure Put(obj : in Automata_User_Defined_Protocol_Ptr); procedure Put_Name(obj : in Automata_User_Defined_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Automata_User_Defined_Protocol; result : in out Unbounded_String); function XML_String(obj : in Automata_User_Defined_Protocol) return Unbounded_String; function XML_String(obj : in Automata_User_Defined_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Automata_User_Defined_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Automata_User_Defined_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Automata_User_Defined_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Automata_User_Defined_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Automata_User_Defined_Protocol) return unbounded_string_list; function type_of(obj : in Automata_User_Defined_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Automata_User_Defined_Protocol'Class, Automata_User_Defined_Protocol_Ptr); -- --------= Pipeline_User_Defined_Protocol =-------- type Pipeline_User_Defined_Protocol is new User_Defined_Protocol with null record; procedure Initialize(obj : in out Pipeline_User_Defined_Protocol); procedure Put(obj : in Pipeline_User_Defined_Protocol); procedure Put(obj : in Pipeline_User_Defined_Protocol_Ptr); procedure Put_Name(obj : in Pipeline_User_Defined_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Pipeline_User_Defined_Protocol; result : in out Unbounded_String); function XML_String(obj : in Pipeline_User_Defined_Protocol) return Unbounded_String; function XML_String(obj : in Pipeline_User_Defined_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Pipeline_User_Defined_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Pipeline_User_Defined_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Pipeline_User_Defined_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Pipeline_User_Defined_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Pipeline_User_Defined_Protocol) return unbounded_string_list; function type_of(obj : in Pipeline_User_Defined_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Pipeline_User_Defined_Protocol'Class, Pipeline_User_Defined_Protocol_Ptr); -- --------= User_Defined_Protocol =-------- type User_Defined_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out User_Defined_Protocol); procedure Put(obj : in User_Defined_Protocol); procedure Put(obj : in User_Defined_Protocol_Ptr); procedure Put_Name(obj : in User_Defined_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in User_Defined_Protocol; result : in out Unbounded_String); function XML_String(obj : in User_Defined_Protocol) return Unbounded_String; function XML_String(obj : in User_Defined_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in User_Defined_Protocol) return Unbounded_String; function XML_Ref_String(obj : in User_Defined_Protocol_Ptr) return Unbounded_String; function Copy(obj : in User_Defined_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in User_Defined_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in User_Defined_Protocol) return unbounded_string_list; function type_of(obj : in User_Defined_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (User_Defined_Protocol'Class, User_Defined_Protocol_Ptr); -- --------= Earliest_Deadline_First_Protocol =-------- type Earliest_Deadline_First_Protocol is new Dynamic_Priority_Protocol with null record; procedure Initialize(obj : in out Earliest_Deadline_First_Protocol); procedure Put(obj : in Earliest_Deadline_First_Protocol); procedure Put(obj : in Earliest_Deadline_First_Protocol_Ptr); procedure Put_Name(obj : in Earliest_Deadline_First_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Earliest_Deadline_First_Protocol; result : in out Unbounded_String); function XML_String(obj : in Earliest_Deadline_First_Protocol) return Unbounded_String; function XML_String(obj : in Earliest_Deadline_First_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Earliest_Deadline_First_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Earliest_Deadline_First_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Earliest_Deadline_First_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Earliest_Deadline_First_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Earliest_Deadline_First_Protocol) return unbounded_string_list; function type_of(obj : in Earliest_Deadline_First_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Earliest_Deadline_First_Protocol'Class, Earliest_Deadline_First_Protocol_Ptr); -- --------= Least_Laxity_First_Protocol =-------- type Least_Laxity_First_Protocol is new Dynamic_Priority_Protocol with null record; procedure Initialize(obj : in out Least_Laxity_First_Protocol); procedure Put(obj : in Least_Laxity_First_Protocol); procedure Put(obj : in Least_Laxity_First_Protocol_Ptr); procedure Put_Name(obj : in Least_Laxity_First_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Least_Laxity_First_Protocol; result : in out Unbounded_String); function XML_String(obj : in Least_Laxity_First_Protocol) return Unbounded_String; function XML_String(obj : in Least_Laxity_First_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Least_Laxity_First_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Least_Laxity_First_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Least_Laxity_First_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Least_Laxity_First_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Least_Laxity_First_Protocol) return unbounded_string_list; function type_of(obj : in Least_Laxity_First_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Least_Laxity_First_Protocol'Class, Least_Laxity_First_Protocol_Ptr); -- --------= Rate_Monotonic_Protocol =-------- type Rate_Monotonic_Protocol is new Fixed_Priority_Protocol with null record; procedure Initialize(obj : in out Rate_Monotonic_Protocol); procedure Put(obj : in Rate_Monotonic_Protocol); procedure Put(obj : in Rate_Monotonic_Protocol_Ptr); procedure Put_Name(obj : in Rate_Monotonic_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Rate_Monotonic_Protocol; result : in out Unbounded_String); function XML_String(obj : in Rate_Monotonic_Protocol) return Unbounded_String; function XML_String(obj : in Rate_Monotonic_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Rate_Monotonic_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Rate_Monotonic_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Rate_Monotonic_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Rate_Monotonic_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Rate_Monotonic_Protocol) return unbounded_string_list; function type_of(obj : in Rate_Monotonic_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Rate_Monotonic_Protocol'Class, Rate_Monotonic_Protocol_Ptr); -- --------= Deadline_Monotonic_Protocol =-------- type Deadline_Monotonic_Protocol is new Fixed_Priority_Protocol with null record; procedure Initialize(obj : in out Deadline_Monotonic_Protocol); procedure Put(obj : in Deadline_Monotonic_Protocol); procedure Put(obj : in Deadline_Monotonic_Protocol_Ptr); procedure Put_Name(obj : in Deadline_Monotonic_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Deadline_Monotonic_Protocol; result : in out Unbounded_String); function XML_String(obj : in Deadline_Monotonic_Protocol) return Unbounded_String; function XML_String(obj : in Deadline_Monotonic_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Deadline_Monotonic_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Deadline_Monotonic_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Deadline_Monotonic_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Deadline_Monotonic_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Deadline_Monotonic_Protocol) return unbounded_string_list; function type_of(obj : in Deadline_Monotonic_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Deadline_Monotonic_Protocol'Class, Deadline_Monotonic_Protocol_Ptr); -- --------= Round_Robin_Protocol =-------- type Round_Robin_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Round_Robin_Protocol); procedure Put(obj : in Round_Robin_Protocol); procedure Put(obj : in Round_Robin_Protocol_Ptr); procedure Put_Name(obj : in Round_Robin_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Round_Robin_Protocol; result : in out Unbounded_String); function XML_String(obj : in Round_Robin_Protocol) return Unbounded_String; function XML_String(obj : in Round_Robin_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Round_Robin_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Round_Robin_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Round_Robin_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Round_Robin_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Round_Robin_Protocol) return unbounded_string_list; function type_of(obj : in Round_Robin_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Round_Robin_Protocol'Class, Round_Robin_Protocol_Ptr); -- --------= Time_Sharing_Based_On_Wait_Time_Protocol =-------- type Time_Sharing_Based_On_Wait_Time_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Time_Sharing_Based_On_Wait_Time_Protocol); procedure Put(obj : in Time_Sharing_Based_On_Wait_Time_Protocol); procedure Put(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr); procedure Put_Name(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Time_Sharing_Based_On_Wait_Time_Protocol; result : in out Unbounded_String); function XML_String(obj : in Time_Sharing_Based_On_Wait_Time_Protocol) return Unbounded_String; function XML_String(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Time_Sharing_Based_On_Wait_Time_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Time_Sharing_Based_On_Wait_Time_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Time_Sharing_Based_On_Wait_Time_Protocol) return unbounded_string_list; function type_of(obj : in Time_Sharing_Based_On_Wait_Time_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Time_Sharing_Based_On_Wait_Time_Protocol'Class, Time_Sharing_Based_On_Wait_Time_Protocol_Ptr); -- --------= Posix_1003_Highest_Priority_First_Protocol =-------- type Posix_1003_Highest_Priority_First_Protocol is new Fixed_Priority_Protocol with null record; procedure Initialize(obj : in out Posix_1003_Highest_Priority_First_Protocol); procedure Put(obj : in Posix_1003_Highest_Priority_First_Protocol); procedure Put(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr); procedure Put_Name(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Posix_1003_Highest_Priority_First_Protocol; result : in out Unbounded_String); function XML_String(obj : in Posix_1003_Highest_Priority_First_Protocol) return Unbounded_String; function XML_String(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Posix_1003_Highest_Priority_First_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Posix_1003_Highest_Priority_First_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Posix_1003_Highest_Priority_First_Protocol) return unbounded_string_list; function type_of(obj : in Posix_1003_Highest_Priority_First_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Posix_1003_Highest_Priority_First_Protocol'Class, Posix_1003_Highest_Priority_First_Protocol_Ptr); -- --------= D_Over_Protocol =-------- type D_Over_Protocol is new Dynamic_Priority_Protocol with null record; procedure Initialize(obj : in out D_Over_Protocol); procedure Put(obj : in D_Over_Protocol); procedure Put(obj : in D_Over_Protocol_Ptr); procedure Put_Name(obj : in D_Over_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in D_Over_Protocol; result : in out Unbounded_String); function XML_String(obj : in D_Over_Protocol) return Unbounded_String; function XML_String(obj : in D_Over_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in D_Over_Protocol) return Unbounded_String; function XML_Ref_String(obj : in D_Over_Protocol_Ptr) return Unbounded_String; function Copy(obj : in D_Over_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in D_Over_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in D_Over_Protocol) return unbounded_string_list; function type_of(obj : in D_Over_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (D_Over_Protocol'Class, D_Over_Protocol_Ptr); -- --------= Maximum_Urgency_First_Based_On_Laxity_Protocol =-------- type Maximum_Urgency_First_Based_On_Laxity_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Maximum_Urgency_First_Based_On_Laxity_Protocol); procedure Put(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol); procedure Put(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr); procedure Put_Name(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol; result : in out Unbounded_String); function XML_String(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol) return Unbounded_String; function XML_String(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol) return unbounded_string_list; function type_of(obj : in Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Maximum_Urgency_First_Based_On_Laxity_Protocol'Class, Maximum_Urgency_First_Based_On_Laxity_Protocol_Ptr); -- --------= Maximum_Urgency_First_Based_On_Deadline_Protocol =-------- type Maximum_Urgency_First_Based_On_Deadline_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Maximum_Urgency_First_Based_On_Deadline_Protocol); procedure Put(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol); procedure Put(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr); procedure Put_Name(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol; result : in out Unbounded_String); function XML_String(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol) return Unbounded_String; function XML_String(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol) return unbounded_string_list; function type_of(obj : in Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Maximum_Urgency_First_Based_On_Deadline_Protocol'Class, Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr); -- --------= Time_Sharing_Based_On_Cpu_Usage_Protocol =-------- type Time_Sharing_Based_On_Cpu_Usage_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Time_Sharing_Based_On_Cpu_Usage_Protocol); procedure Put(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol); procedure Put(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr); procedure Put_Name(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol; result : in out Unbounded_String); function XML_String(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol) return Unbounded_String; function XML_String(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol) return unbounded_string_list; function type_of(obj : in Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Time_Sharing_Based_On_Cpu_Usage_Protocol'Class, Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr); -- --------= No_Scheduling_Protocol =-------- type No_Scheduling_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out No_Scheduling_Protocol); procedure Put(obj : in No_Scheduling_Protocol); procedure Put(obj : in No_Scheduling_Protocol_Ptr); procedure Put_Name(obj : in No_Scheduling_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in No_Scheduling_Protocol; result : in out Unbounded_String); function XML_String(obj : in No_Scheduling_Protocol) return Unbounded_String; function XML_String(obj : in No_Scheduling_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in No_Scheduling_Protocol) return Unbounded_String; function XML_Ref_String(obj : in No_Scheduling_Protocol_Ptr) return Unbounded_String; function Copy(obj : in No_Scheduling_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in No_Scheduling_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in No_Scheduling_Protocol) return unbounded_string_list; function type_of(obj : in No_Scheduling_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (No_Scheduling_Protocol'Class, No_Scheduling_Protocol_Ptr); -- --------= Hierarchical_Cyclic_Protocol =-------- type Hierarchical_Cyclic_Protocol is new Hierarchical_Protocol with null record; procedure Initialize(obj : in out Hierarchical_Cyclic_Protocol); procedure Put(obj : in Hierarchical_Cyclic_Protocol); procedure Put(obj : in Hierarchical_Cyclic_Protocol_Ptr); procedure Put_Name(obj : in Hierarchical_Cyclic_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Hierarchical_Cyclic_Protocol; result : in out Unbounded_String); function XML_String(obj : in Hierarchical_Cyclic_Protocol) return Unbounded_String; function XML_String(obj : in Hierarchical_Cyclic_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Cyclic_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Cyclic_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Hierarchical_Cyclic_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Hierarchical_Cyclic_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Hierarchical_Cyclic_Protocol) return unbounded_string_list; function type_of(obj : in Hierarchical_Cyclic_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Hierarchical_Cyclic_Protocol'Class, Hierarchical_Cyclic_Protocol_Ptr); -- --------= Hierarchical_Round_Robin_Protocol =-------- type Hierarchical_Round_Robin_Protocol is new Hierarchical_Protocol with null record; procedure Initialize(obj : in out Hierarchical_Round_Robin_Protocol); procedure Put(obj : in Hierarchical_Round_Robin_Protocol); procedure Put(obj : in Hierarchical_Round_Robin_Protocol_Ptr); procedure Put_Name(obj : in Hierarchical_Round_Robin_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Hierarchical_Round_Robin_Protocol; result : in out Unbounded_String); function XML_String(obj : in Hierarchical_Round_Robin_Protocol) return Unbounded_String; function XML_String(obj : in Hierarchical_Round_Robin_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Round_Robin_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Round_Robin_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Hierarchical_Round_Robin_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Hierarchical_Round_Robin_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Hierarchical_Round_Robin_Protocol) return unbounded_string_list; function type_of(obj : in Hierarchical_Round_Robin_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Hierarchical_Round_Robin_Protocol'Class, Hierarchical_Round_Robin_Protocol_Ptr); -- --------= Hierarchical_Fixed_Priority_Protocol =-------- type Hierarchical_Fixed_Priority_Protocol is new Hierarchical_Protocol with null record; procedure Initialize(obj : in out Hierarchical_Fixed_Priority_Protocol); procedure Put(obj : in Hierarchical_Fixed_Priority_Protocol); procedure Put(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr); procedure Put_Name(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Hierarchical_Fixed_Priority_Protocol; result : in out Unbounded_String); function XML_String(obj : in Hierarchical_Fixed_Priority_Protocol) return Unbounded_String; function XML_String(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Fixed_Priority_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Hierarchical_Fixed_Priority_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Hierarchical_Fixed_Priority_Protocol) return unbounded_string_list; function type_of(obj : in Hierarchical_Fixed_Priority_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Hierarchical_Fixed_Priority_Protocol'Class, Hierarchical_Fixed_Priority_Protocol_Ptr); -- --------= Hierarchical_Offline_Protocol =-------- type Hierarchical_Offline_Protocol is new Hierarchical_Protocol with null record; procedure Initialize(obj : in out Hierarchical_Offline_Protocol); procedure Put(obj : in Hierarchical_Offline_Protocol); procedure Put(obj : in Hierarchical_Offline_Protocol_Ptr); procedure Put_Name(obj : in Hierarchical_Offline_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Hierarchical_Offline_Protocol; result : in out Unbounded_String); function XML_String(obj : in Hierarchical_Offline_Protocol) return Unbounded_String; function XML_String(obj : in Hierarchical_Offline_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Offline_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Hierarchical_Offline_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Hierarchical_Offline_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Hierarchical_Offline_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Hierarchical_Offline_Protocol) return unbounded_string_list; function type_of(obj : in Hierarchical_Offline_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Hierarchical_Offline_Protocol'Class, Hierarchical_Offline_Protocol_Ptr); -- --------= Fixed_Priority_Protocol =-------- type Fixed_Priority_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Fixed_Priority_Protocol); procedure Put(obj : in Fixed_Priority_Protocol); procedure Put(obj : in Fixed_Priority_Protocol_Ptr); procedure Put_Name(obj : in Fixed_Priority_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Fixed_Priority_Protocol; result : in out Unbounded_String); function XML_String(obj : in Fixed_Priority_Protocol) return Unbounded_String; function XML_String(obj : in Fixed_Priority_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Fixed_Priority_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Fixed_Priority_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Fixed_Priority_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Fixed_Priority_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Fixed_Priority_Protocol) return unbounded_string_list; function type_of(obj : in Fixed_Priority_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Fixed_Priority_Protocol'Class, Fixed_Priority_Protocol_Ptr); -- --------= Dynamic_Priority_Protocol =-------- type Dynamic_Priority_Protocol is new Generic_Scheduler with null record; procedure Initialize(obj : in out Dynamic_Priority_Protocol); procedure Put(obj : in Dynamic_Priority_Protocol); procedure Put(obj : in Dynamic_Priority_Protocol_Ptr); procedure Put_Name(obj : in Dynamic_Priority_Protocol_Ptr); procedure Build_Attributes_XML_String(obj : in Dynamic_Priority_Protocol; result : in out Unbounded_String); function XML_String(obj : in Dynamic_Priority_Protocol) return Unbounded_String; function XML_String(obj : in Dynamic_Priority_Protocol_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Dynamic_Priority_Protocol) return Unbounded_String; function XML_Ref_String(obj : in Dynamic_Priority_Protocol_Ptr) return Unbounded_String; function Copy(obj : in Dynamic_Priority_Protocol_Ptr) return Generic_Scheduler_Ptr; function Copy(obj : in Dynamic_Priority_Protocol) return Generic_Scheduler_Ptr; function type_of(obj : in Dynamic_Priority_Protocol) return unbounded_string_list; function type_of(obj : in Dynamic_Priority_Protocol_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Dynamic_Priority_Protocol'Class, Dynamic_Priority_Protocol_Ptr); End Scheduler; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Simulations; use Simulations; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Expressions is type Generic_Expression; type Generic_Expression_Ptr is access all Generic_Expression'Class; type Constant_Expression; type Constant_Expression_Ptr is access all Constant_Expression'Class; type Variable_Expression; type Variable_Expression_Ptr is access all Variable_Expression'Class; type Array_Variable_Expression; type Array_Variable_Expression_Ptr is access all Array_Variable_Expression'Class; type Binary_Expression; type Binary_Expression_Ptr is access all Binary_Expression'Class; type Unary_Expression; type Unary_Expression_Ptr is access all Unary_Expression'Class; type Operator_Type is ( Plus_Type, Minus_Type, Divide_Type, Multiply_Type, Exponential_Type, Modulo_Type, Equal_Type, Not_Equal_Type, Equal_Less_Type, Equal_Greater_Type, Inferior_Type, Superior_Type, Logic_And_Type, Logic_Or_Type, Logic_Not_Type, Min_Operator_Type, Max_Operator_type, Min_To_Index_Type, Max_To_Index_Type, Lcm_Type, Abs_Type, To_Integer_Type, To_Double_Type, Get_Resource_Index_Type, Get_Task_Index_Type, Get_Message_Index_Type, Get_Buffer_Index_Type, Concatenate_Type); procedure To_Operator_Type is new Convert_Strings(Operator_Type, Plus_Type); procedure To_Operator_Type is new Convert_Unbounded_Strings(Operator_Type, Plus_Type); function XML_String (obj : in Operator_Type) return Unbounded_String; function XML_Ref_String (obj : in Operator_Type) return Unbounded_String; package Operator_Type_io is new text_io.enumeration_io(Operator_Type); use Operator_Type_io; type Expressions_Type is ( Constant_Type, Variable_Type, Array_Variable_Type, Binary_Type, Unary_Type, Random_Type); procedure To_Expressions_Type is new Convert_Strings(Expressions_Type, Constant_Type); procedure To_Expressions_Type is new Convert_Unbounded_Strings(Expressions_Type, Constant_Type); function XML_String (obj : in Expressions_Type) return Unbounded_String; function XML_Ref_String (obj : in Expressions_Type) return Unbounded_String; package Expressions_Type_io is new text_io.enumeration_io(Expressions_Type); use Expressions_Type_io; -- --------= Generic_Expression =-------- type Generic_Expression is new Named_Object with record expression_type : Expressions_Type; end record; procedure Initialize(obj : in out Generic_Expression); procedure Put(obj : in Generic_Expression); procedure Put(obj : in Generic_Expression_Ptr); procedure Put_Name(obj : in Generic_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Expression; result : in out Unbounded_String); function XML_String(obj : in Generic_Expression) return Unbounded_String; function XML_String(obj : in Generic_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Expression) return Unbounded_String; function XML_Ref_String(obj : in Generic_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Expression) return Unbounded_String; function Get_Name (obj : in Generic_Expression_Ptr) return Unbounded_String; function Copy(obj : in Generic_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Generic_Expression) return Generic_Expression_Ptr; function type_of(obj : in Generic_Expression) return unbounded_string_list; function type_of(obj : in Generic_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Expression'Class, Generic_Expression_Ptr); -- --------= Constant_Expression =-------- type Constant_Expression is new Generic_Expression with record VALUE : Simulation_Value; end record; procedure Initialize(obj : in out Constant_Expression); procedure Put(obj : in Constant_Expression); procedure Put(obj : in Constant_Expression_Ptr); procedure Put_Name(obj : in Constant_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Constant_Expression; result : in out Unbounded_String); function XML_String(obj : in Constant_Expression) return Unbounded_String; function XML_String(obj : in Constant_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Constant_Expression) return Unbounded_String; function XML_Ref_String(obj : in Constant_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Constant_Expression) return Unbounded_String; function Get_Name (obj : in Constant_Expression_Ptr) return Unbounded_String; function Copy(obj : in Constant_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Constant_Expression) return Generic_Expression_Ptr; function type_of(obj : in Constant_Expression) return unbounded_string_list; function type_of(obj : in Constant_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Constant_Expression'Class, Constant_Expression_Ptr); -- --------= Variable_Expression =-------- type Variable_Expression is new Generic_Expression with record identifier : Unbounded_String; variable_type : Simulation_Type; end record; procedure Initialize(obj : in out Variable_Expression); procedure Put(obj : in Variable_Expression); procedure Put(obj : in Variable_Expression_Ptr); procedure Put_Name(obj : in Variable_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Variable_Expression; result : in out Unbounded_String); function XML_String(obj : in Variable_Expression) return Unbounded_String; function XML_String(obj : in Variable_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Variable_Expression) return Unbounded_String; function XML_Ref_String(obj : in Variable_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Variable_Expression) return Unbounded_String; function Get_Name (obj : in Variable_Expression_Ptr) return Unbounded_String; function Copy(obj : in Variable_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Variable_Expression) return Generic_Expression_Ptr; function type_of(obj : in Variable_Expression) return unbounded_string_list; function type_of(obj : in Variable_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Variable_Expression'Class, Variable_Expression_Ptr); -- --------= Array_Variable_Expression =-------- type Array_Variable_Expression is new Variable_Expression with record array_index : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Array_Variable_Expression); procedure Put(obj : in Array_Variable_Expression); procedure Put(obj : in Array_Variable_Expression_Ptr); procedure Put_Name(obj : in Array_Variable_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Array_Variable_Expression; result : in out Unbounded_String); function XML_String(obj : in Array_Variable_Expression) return Unbounded_String; function XML_String(obj : in Array_Variable_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Array_Variable_Expression) return Unbounded_String; function XML_Ref_String(obj : in Array_Variable_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Array_Variable_Expression) return Unbounded_String; function Get_Name (obj : in Array_Variable_Expression_Ptr) return Unbounded_String; function Copy(obj : in Array_Variable_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Array_Variable_Expression) return Generic_Expression_Ptr; function type_of(obj : in Array_Variable_Expression) return unbounded_string_list; function type_of(obj : in Array_Variable_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Array_Variable_Expression'Class, Array_Variable_Expression_Ptr); -- --------= Binary_Expression =-------- type Binary_Expression is new Variable_Expression with record rvalue : Generic_Expression_Ptr; lvalue : Generic_Expression_Ptr; operator : Operator_Type; end record; procedure Initialize(obj : in out Binary_Expression); procedure Put(obj : in Binary_Expression); procedure Put(obj : in Binary_Expression_Ptr); procedure Put_Name(obj : in Binary_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Binary_Expression; result : in out Unbounded_String); function XML_String(obj : in Binary_Expression) return Unbounded_String; function XML_String(obj : in Binary_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Binary_Expression) return Unbounded_String; function XML_Ref_String(obj : in Binary_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Binary_Expression) return Unbounded_String; function Get_Name (obj : in Binary_Expression_Ptr) return Unbounded_String; function Copy(obj : in Binary_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Binary_Expression) return Generic_Expression_Ptr; function type_of(obj : in Binary_Expression) return unbounded_string_list; function type_of(obj : in Binary_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Binary_Expression'Class, Binary_Expression_Ptr); -- --------= Unary_Expression =-------- type Unary_Expression is new Variable_Expression with record operator : Operator_Type; VALUE : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Unary_Expression); procedure Put(obj : in Unary_Expression); procedure Put(obj : in Unary_Expression_Ptr); procedure Put_Name(obj : in Unary_Expression_Ptr); procedure Build_Attributes_XML_String(obj : in Unary_Expression; result : in out Unbounded_String); function XML_String(obj : in Unary_Expression) return Unbounded_String; function XML_String(obj : in Unary_Expression_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Unary_Expression) return Unbounded_String; function XML_Ref_String(obj : in Unary_Expression_Ptr) return Unbounded_String; function Get_Name (obj : in Unary_Expression) return Unbounded_String; function Get_Name (obj : in Unary_Expression_Ptr) return Unbounded_String; function Copy(obj : in Unary_Expression_Ptr) return Generic_Expression_Ptr; function Copy(obj : in Unary_Expression) return Generic_Expression_Ptr; function type_of(obj : in Unary_Expression) return unbounded_string_list; function type_of(obj : in Unary_Expression_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Unary_Expression'Class, Unary_Expression_Ptr); End Expressions; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package AADL_Parser_Interface is type Binding_Record_Type; type Binding_Record_Type_Ptr is access all Binding_Record_Type; -- --------= Binding_Record_Type =-------- type Binding_Record_Type is record cpu_name : Unbounded_String; address_space_name : Unbounded_String; end record; procedure Initialize(obj : out Binding_Record_Type); procedure Put(obj : in Binding_Record_Type); procedure Put(obj : in Binding_Record_Type_Ptr); function Copy(obj : in Binding_Record_Type_Ptr) return Binding_Record_Type_Ptr; function Copy(obj : in Binding_Record_Type) return Binding_Record_Type_Ptr; procedure Build_Attributes_XML_String(obj : in Binding_Record_Type; result : in out Unbounded_String); function XML_String(obj : in Binding_Record_Type) return Unbounded_String; function XML_String(obj : in Binding_Record_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Binding_Record_Type) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Binding_Record_Type, Binding_Record_Type_Ptr); package Processor_Binding_Package is new Tables(Binding_Record_Type, Framework_Config.Max_Address_Spaces, Put, XML_String, XML_Ref_String); use Processor_Binding_Package; subtype Processor_Binding_Table is Processor_Binding_Package.table; subtype Processor_Binding_Table_Ptr is Processor_Binding_Package.table_Ptr; subtype Processor_Binding_Range is Processor_Binding_Package.table_range; subtype Processor_Binding_Range_Ptr is Processor_Binding_Package.table_range_Ptr; End AADL_Parser_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Parameters; use Parameters; use Parameters.Framework_Parameters_Table_Package; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Call_Framework_Interface is type Framework_Request; type Framework_Request_Ptr is access all Framework_Request; type Framework_Response; type Framework_Response_Ptr is access all Framework_Response; type Framework_Statement_Type is ( Scheduling_Simulation_Basics, Scheduling_Simulation_Time_Line, Scheduling_Simulation_Preemption_Number, Scheduling_Simulation_Context_Switch_Number, Scheduling_Simulation_Response_Time, Scheduling_Simulation_All_Response_Times, Scheduling_Simulation_Blocking_Time, Scheduling_Simulation_Priority_Inversion, Scheduling_Simulation_Deadlock, Scheduling_Simulation_Run_Event_Handler, Scheduling_Feasibility_Basics, Scheduling_Feasibility_Periodic_Task_Worst_Case_Response_Time, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Audsley, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Tindell, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Palencia, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_WCDOPS_Plus, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_WCDOPS_Plus_NIM, Scheduling_Feasibility_Cpu_Utilization, Scheduling_Feasibility_Compute_Worst_Case_Blocking_Time, Scheduling_Feasibility_Compute_And_Set_Worst_Case_Blocking_Time, Scheduling_Feasibility_Compute_Resource_Ceiling_Priority, Scheduling_Feasibility_Compute_And_Set_Resource_Ceiling_Priority, Scheduling_Feasibility_Tests_Compositional, Scheduling_Feasibility_Demand_Bound_Function, Scheduling_Feasibility_Interval, Scheduling_Feasibility_First_Fit, Scheduling_Feasibility_General_Task, Scheduling_Feasibility_Next_Fit, Scheduling_Feasibility_Best_Fit, Scheduling_Feasibility_Small_Task, Scheduling_Set_Priorities_According_To_Deadline_Monotonic, Scheduling_Set_Priorities_According_To_Rate_Monotonic, Scheduling_Set_Priorities_According_To_Audsley_OPA, Scheduling_Set_Priorities_According_To_OPA_CRPD_PT, Scheduling_Set_Priorities_According_To_OPA_CRPD_PT_Simplified, Scheduling_Set_Priorities_According_To_OPA_CRPD_Tree, Select_Feasibility_Tests_Simple, Select_Feasibility_Test_By_Name, Scheduling_Compute_Scheduling_Anomalies, Memory_Set_Footprint_Analysis, Memory_Compute_Footprint_Analysis, Memory_Analysis_Interferences_Delays, Buffer_Feasibility_Tests, Buffer_Scheduling_Simulation, Random_Response_Time_Density, Dependency_Compute_End_To_End_Response_Time_One_Step, Dependency_Set_End_To_End_Response_Time_One_Step, Dependency_Compute_End_To_End_Response_Time_All_Steps, Dependency_Set_End_To_End_Response_Time_All_Steps, Dependency_Compute_Chetto_Blazewicz_Priority, Dependency_Compute_Chetto_Blazewicz_Deadline, Dependency_Set_Chetto_Blazewicz_Priority, Dependency_Set_Chetto_Blazewicz_Deadline, Cache_Analysis_Compute_Cache_Access_Profile, Cache_Analysis_Import_CFG, Cache_Analysis_Import_CFG_And_Compute_Cache_Access_Profile, Network_NoC_Compute_Communication_Delay, Network_NoC_Compute_Path_Delay, Network_NoC_Compute_Direct_Interference_Delay, Network_NoC_Compute_Indirect_Interference_Delay, Network_Compute_NoC_Transformation_ECTM_SAF, Network_Set_NoC_Transformation_ECTM_SAF, Network_Compute_NoC_Transformation_ECTM_Wormhole, Network_Set_NoC_Transformation_ECTM_Wormhole, Network_Compute_NoC_Transformation_WCCTM_SAF, Network_Set_NoC_Transformation_WCCTM_SAF, Network_Compute_NoC_Transformation_WCCTM_Wormhole, Network_Set_NoC_Transformation_WCCTM_Wormhole, Network_Compute_Spacewire_Transformation_SCM, Network_Set_Spacewire_Transformation_SCM, MILS_Compute_security_chinese_wall, MILS_Compute_security_Warshall, MILS_Compute_security_bell_lapadula, MILS_Compute_security_biba); pragma convention (C, Framework_Statement_Type); procedure To_Framework_Statement_Type is new Convert_Strings(Framework_Statement_Type, Scheduling_Simulation_Basics); procedure To_Framework_Statement_Type is new Convert_Unbounded_Strings(Framework_Statement_Type, Scheduling_Simulation_Basics); function XML_String (obj : in Framework_Statement_Type) return Unbounded_String; function XML_Ref_String (obj : in Framework_Statement_Type) return Unbounded_String; package Framework_Statement_Type_io is new text_io.enumeration_io(Framework_Statement_Type); use Framework_Statement_Type_io; type Partioning_Type is ( General_Task, Best_Fit, First_Fit, Next_Fit, Small_Task); procedure To_Partioning_Type is new Convert_Strings(Partioning_Type, General_Task); procedure To_Partioning_Type is new Convert_Unbounded_Strings(Partioning_Type, General_Task); function XML_String (obj : in Partioning_Type) return Unbounded_String; function XML_Ref_String (obj : in Partioning_Type) return Unbounded_String; package Partioning_Type_io is new text_io.enumeration_io(Partioning_Type); use Partioning_Type_io; type Output_Format is ( Xml_Output, String_Output, Raw_Output); pragma convention (C, Output_Format); procedure To_Output_Format is new Convert_Strings(Output_Format, Xml_Output); procedure To_Output_Format is new Convert_Unbounded_Strings(Output_Format, Xml_Output); function XML_String (obj : in Output_Format) return Unbounded_String; function XML_Ref_String (obj : in Output_Format) return Unbounded_String; package Output_Format_io is new text_io.enumeration_io(Output_Format); use Output_Format_io; type Transaction_Wcrt_Type is ( Periodic, Tindell, Audsley, Palencia, Wcdops_plus, Wcdops_plus_nim); procedure To_Transaction_Wcrt_Type is new Convert_Strings(Transaction_Wcrt_Type, Periodic); procedure To_Transaction_Wcrt_Type is new Convert_Unbounded_Strings(Transaction_Wcrt_Type, Periodic); function XML_String (obj : in Transaction_Wcrt_Type) return Unbounded_String; function XML_Ref_String (obj : in Transaction_Wcrt_Type) return Unbounded_String; package Transaction_Wcrt_Type_io is new text_io.enumeration_io(Transaction_Wcrt_Type); use Transaction_Wcrt_Type_io; type CRPD_Computation_Approach_Type is ( No_CRPD, ECB_Only, ECB_Union_Multiset, UCB_Union_Multiset, Combined_Multiset); procedure To_CRPD_Computation_Approach_Type is new Convert_Strings(CRPD_Computation_Approach_Type, No_CRPD); procedure To_CRPD_Computation_Approach_Type is new Convert_Unbounded_Strings(CRPD_Computation_Approach_Type, No_CRPD); function XML_String (obj : in CRPD_Computation_Approach_Type) return Unbounded_String; function XML_Ref_String (obj : in CRPD_Computation_Approach_Type) return Unbounded_String; package CRPD_Computation_Approach_Type_io is new text_io.enumeration_io(CRPD_Computation_Approach_Type); use CRPD_Computation_Approach_Type_io; type Memory_Interference_Computation_Approach_Type is ( No_Memory_Interference, DRAM_Single_Arbiter, Kalray_Multi_Arbiter); procedure To_Memory_Interference_Computation_Approach_Type is new Convert_Strings(Memory_Interference_Computation_Approach_Type, No_Memory_Interference); procedure To_Memory_Interference_Computation_Approach_Type is new Convert_Unbounded_Strings(Memory_Interference_Computation_Approach_Type, No_Memory_Interference); function XML_String (obj : in Memory_Interference_Computation_Approach_Type) return Unbounded_String; function XML_Ref_String (obj : in Memory_Interference_Computation_Approach_Type) return Unbounded_String; package Memory_Interference_Computation_Approach_Type_io is new text_io.enumeration_io(Memory_Interference_Computation_Approach_Type); use Memory_Interference_Computation_Approach_Type_io; type Perform_Order is ( Total_Order, Causal_Order); pragma convention (C, Perform_Order); procedure To_Perform_Order is new Convert_Strings(Perform_Order, Total_Order); procedure To_Perform_Order is new Convert_Unbounded_Strings(Perform_Order, Total_Order); function XML_String (obj : in Perform_Order) return Unbounded_String; function XML_Ref_String (obj : in Perform_Order) return Unbounded_String; package Perform_Order_io is new text_io.enumeration_io(Perform_Order); use Perform_Order_io; -- --------= Framework_Request =-------- type Framework_Request is record statement : Framework_Statement_Type; param : Framework_Parameters_Table; target : Unbounded_String; end record; procedure Initialize(obj : out Framework_Request); procedure Put(obj : in Framework_Request); procedure Put(obj : in Framework_Request_Ptr); function Copy(obj : in Framework_Request_Ptr) return Framework_Request_Ptr; function Copy(obj : in Framework_Request) return Framework_Request_Ptr; procedure Build_Attributes_XML_String(obj : in Framework_Request; result : in out Unbounded_String); function XML_String(obj : in Framework_Request) return Unbounded_String; function XML_String(obj : in Framework_Request_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Framework_Request) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Framework_Request, Framework_Request_Ptr); package Framework_Request_Package is new Tables(Framework_Request, Max_Requests, Put, XML_String, XML_Ref_String); use Framework_Request_Package; subtype Framework_Request_Range is Framework_Request_Package.table_range; subtype Framework_Request_Range_Ptr is Framework_Request_Package.table_range_Ptr; subtype Framework_Request_Table is Framework_Request_Package.table; subtype Framework_Request_Table_Ptr is Framework_Request_Package.table_Ptr; -- --------= Framework_Response =-------- type Framework_Response is record title : Unbounded_String; text : Unbounded_String; end record; procedure Initialize(obj : out Framework_Response); procedure Put(obj : in Framework_Response); procedure Put(obj : in Framework_Response_Ptr); function Copy(obj : in Framework_Response_Ptr) return Framework_Response_Ptr; function Copy(obj : in Framework_Response) return Framework_Response_Ptr; procedure Build_Attributes_XML_String(obj : in Framework_Response; result : in out Unbounded_String); function XML_String(obj : in Framework_Response) return Unbounded_String; function XML_String(obj : in Framework_Response_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Framework_Response) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Framework_Response, Framework_Response_Ptr); package Framework_Response_Package is new Tables(Framework_Response, Max_Requests, Put, XML_String, XML_Ref_String); use Framework_Response_Package; subtype Framework_Response_Range is Framework_Response_Package.table_range; subtype Framework_Response_Range_Ptr is Framework_Response_Package.table_range_Ptr; subtype Framework_Response_Table is Framework_Response_Package.table; subtype Framework_Response_Table_Ptr is Framework_Response_Package.table_Ptr; End Call_Framework_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with CFG_Nodes; use CFG_Nodes; use CFG_Nodes.CFG_Nodes_Table_Package; with CFG_Edges; use CFG_Edges; use CFG_Edges.CFG_Edges_Table_Package; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package CFGs is type CFG; type CFG_Ptr is access all CFG'Class; -- --------= CFG =-------- type CFG is new Named_Object with record nodes : CFG_Nodes_Table; edges : CFG_Edges_Table; end record; procedure Initialize(obj : in out CFG); procedure Put(obj : in CFG); procedure Put(obj : in CFG_Ptr); procedure Put_Name(obj : in CFG_Ptr); procedure Build_Attributes_XML_String(obj : in CFG; result : in out Unbounded_String); function XML_String(obj : in CFG) return Unbounded_String; function XML_String(obj : in CFG_Ptr) return Unbounded_String; function XML_Ref_String(obj : in CFG) return Unbounded_String; function XML_Ref_String(obj : in CFG_Ptr) return Unbounded_String; function Get_Name (obj : in CFG) return Unbounded_String; function Get_Name (obj : in CFG_Ptr) return Unbounded_String; function Copy(obj : in CFG_Ptr) return CFG_Ptr; function Copy(obj : in CFG) return CFG_Ptr; function type_of(obj : in CFG) return unbounded_string_list; function type_of(obj : in CFG_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (CFG'Class, CFG_Ptr); End CFGs; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Laws; use Laws; with Expressions; use Expressions; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.boolean_io; use standards_io.natural_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Statements is type Generic_Statement; type Generic_Statement_Ptr is access all Generic_Statement'Class; type Nop_Statement; type Nop_Statement_Ptr is access all Nop_Statement'Class; type Exit_Statement; type Exit_Statement_Ptr is access all Exit_Statement'Class; type Put_Statement; type Put_Statement_Ptr is access all Put_Statement'Class; type If_Statement; type If_Statement_Ptr is access all If_Statement'Class; type Assign_Statement; type Assign_Statement_Ptr is access all Assign_Statement'Class; type Clock_Statement; type Clock_Statement_Ptr is access all Clock_Statement'Class; type Delete_Precedence_Statement; type Delete_Precedence_Statement_Ptr is access all Delete_Precedence_Statement'Class; type Add_Precedence_Statement; type Add_Precedence_Statement_Ptr is access all Add_Precedence_Statement'Class; type For_Statement; type For_Statement_Ptr is access all For_Statement'Class; type Return_Statement; type Return_Statement_Ptr is access all Return_Statement'Class; type While_Statement; type While_Statement_Ptr is access all While_Statement'Class; type Random_Initialize_Statement; type Random_Initialize_Statement_Ptr is access all Random_Initialize_Statement'Class; type Set_Statement; type Set_Statement_Ptr is access all Set_Statement'Class; type Subprogram_Statement; type Subprogram_Statement_Ptr is access all Subprogram_Statement'Class; type Subprogram_Call_Statement; type Subprogram_Call_Statement_Ptr is access all Subprogram_Call_Statement'Class; type Statements_Type is ( Put_Statement_Type, Nop_Statement_Type, Exit_Statement_Type, If_Statement_Type, Assign_Statement_Type, For_Statement_Type, Return_Statement_Type, While_Statement_Type, Add_Precedence_Statement_Type, Delete_Precedence_Statement_Type, Set_Statement_Type, Clock_Statement_Type, Subprogram_Statement_Type, Subprogram_Call_Statement_Type, Random_Initialize_Statement_Type); procedure To_Statements_Type is new Convert_Strings(Statements_Type, Put_Statement_Type); procedure To_Statements_Type is new Convert_Unbounded_Strings(Statements_Type, Put_Statement_Type); function XML_String (obj : in Statements_Type) return Unbounded_String; function XML_Ref_String (obj : in Statements_Type) return Unbounded_String; package Statements_Type_io is new text_io.enumeration_io(Statements_Type); use Statements_Type_io; type Table_Types is ( Task_Table_Type, Message_Table_Type, Processor_Table_Type, Buffer_Table_Type, Time_Unit_Table_Type, Resource_Table_Type); procedure To_Table_Types is new Convert_Strings(Table_Types, Task_Table_Type); procedure To_Table_Types is new Convert_Unbounded_Strings(Table_Types, Task_Table_Type); function XML_String (obj : in Table_Types) return Unbounded_String; function XML_Ref_String (obj : in Table_Types) return Unbounded_String; package Table_Types_io is new text_io.enumeration_io(Table_Types); use Table_Types_io; -- --------= Generic_Statement =-------- type Generic_Statement is new Generic_Object with record statement_type : Statements_Type; line_number : Natural; file_name : Unbounded_String; next_statement : Generic_Statement_Ptr; end record; procedure Initialize(obj : in out Generic_Statement); procedure Put(obj : in Generic_Statement); procedure Put(obj : in Generic_Statement_Ptr); procedure Put_Name(obj : in Generic_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Statement; result : in out Unbounded_String); function XML_String(obj : in Generic_Statement) return Unbounded_String; function XML_String(obj : in Generic_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Statement) return Unbounded_String; function XML_Ref_String(obj : in Generic_Statement_Ptr) return Unbounded_String; function Copy(obj : in Generic_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Generic_Statement) return Generic_Statement_Ptr; function type_of(obj : in Generic_Statement) return unbounded_string_list; function type_of(obj : in Generic_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Statement'Class, Generic_Statement_Ptr); -- --------= Nop_Statement =-------- type Nop_Statement is new Generic_Statement with null record; procedure Initialize(obj : in out Nop_Statement); procedure Put(obj : in Nop_Statement); procedure Put(obj : in Nop_Statement_Ptr); procedure Put_Name(obj : in Nop_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Nop_Statement; result : in out Unbounded_String); function XML_String(obj : in Nop_Statement) return Unbounded_String; function XML_String(obj : in Nop_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Nop_Statement) return Unbounded_String; function XML_Ref_String(obj : in Nop_Statement_Ptr) return Unbounded_String; function Copy(obj : in Nop_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Nop_Statement) return Generic_Statement_Ptr; function type_of(obj : in Nop_Statement) return unbounded_string_list; function type_of(obj : in Nop_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Nop_Statement'Class, Nop_Statement_Ptr); -- --------= Exit_Statement =-------- type Exit_Statement is new Generic_Statement with null record; procedure Initialize(obj : in out Exit_Statement); procedure Put(obj : in Exit_Statement); procedure Put(obj : in Exit_Statement_Ptr); procedure Put_Name(obj : in Exit_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Exit_Statement; result : in out Unbounded_String); function XML_String(obj : in Exit_Statement) return Unbounded_String; function XML_String(obj : in Exit_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Exit_Statement) return Unbounded_String; function XML_Ref_String(obj : in Exit_Statement_Ptr) return Unbounded_String; function Copy(obj : in Exit_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Exit_Statement) return Generic_Statement_Ptr; function type_of(obj : in Exit_Statement) return unbounded_string_list; function type_of(obj : in Exit_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Exit_Statement'Class, Exit_Statement_Ptr); -- --------= Put_Statement =-------- type Put_Statement is new Generic_Statement with record put_from : Generic_Expression_Ptr; put_to : Generic_Expression_Ptr; expression_to_be_displayed : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Put_Statement); procedure Put(obj : in Put_Statement); procedure Put(obj : in Put_Statement_Ptr); procedure Put_Name(obj : in Put_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Put_Statement; result : in out Unbounded_String); function XML_String(obj : in Put_Statement) return Unbounded_String; function XML_String(obj : in Put_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Put_Statement) return Unbounded_String; function XML_Ref_String(obj : in Put_Statement_Ptr) return Unbounded_String; function Copy(obj : in Put_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Put_Statement) return Generic_Statement_Ptr; function type_of(obj : in Put_Statement) return unbounded_string_list; function type_of(obj : in Put_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Put_Statement'Class, Put_Statement_Ptr); -- --------= If_Statement =-------- type If_Statement is new Generic_Statement with record bool_expression : Generic_Expression_Ptr; else_statement : Generic_Statement_Ptr; then_statement : Generic_Statement_Ptr; end record; procedure Initialize(obj : in out If_Statement); procedure Put(obj : in If_Statement); procedure Put(obj : in If_Statement_Ptr); procedure Put_Name(obj : in If_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in If_Statement; result : in out Unbounded_String); function XML_String(obj : in If_Statement) return Unbounded_String; function XML_String(obj : in If_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in If_Statement) return Unbounded_String; function XML_Ref_String(obj : in If_Statement_Ptr) return Unbounded_String; function Copy(obj : in If_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in If_Statement) return Generic_Statement_Ptr; function type_of(obj : in If_Statement) return unbounded_string_list; function type_of(obj : in If_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (If_Statement'Class, If_Statement_Ptr); -- --------= Assign_Statement =-------- type Assign_Statement is new Generic_Statement with record lvalue : Generic_Expression_Ptr; rvalue : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Assign_Statement); procedure Put(obj : in Assign_Statement); procedure Put(obj : in Assign_Statement_Ptr); procedure Put_Name(obj : in Assign_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Assign_Statement; result : in out Unbounded_String); function XML_String(obj : in Assign_Statement) return Unbounded_String; function XML_String(obj : in Assign_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Assign_Statement) return Unbounded_String; function XML_Ref_String(obj : in Assign_Statement_Ptr) return Unbounded_String; function Copy(obj : in Assign_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Assign_Statement) return Generic_Statement_Ptr; function type_of(obj : in Assign_Statement) return unbounded_string_list; function type_of(obj : in Assign_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Assign_Statement'Class, Assign_Statement_Ptr); -- --------= Clock_Statement =-------- type Clock_Statement is new Assign_Statement with null record; procedure Initialize(obj : in out Clock_Statement); procedure Put(obj : in Clock_Statement); procedure Put(obj : in Clock_Statement_Ptr); procedure Put_Name(obj : in Clock_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Clock_Statement; result : in out Unbounded_String); function XML_String(obj : in Clock_Statement) return Unbounded_String; function XML_String(obj : in Clock_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Clock_Statement) return Unbounded_String; function XML_Ref_String(obj : in Clock_Statement_Ptr) return Unbounded_String; function Copy(obj : in Clock_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Clock_Statement) return Generic_Statement_Ptr; function type_of(obj : in Clock_Statement) return unbounded_string_list; function type_of(obj : in Clock_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Clock_Statement'Class, Clock_Statement_Ptr); -- --------= Delete_Precedence_Statement =-------- type Delete_Precedence_Statement is new Generic_Statement with record Delete_Source : Unbounded_String; Delete_Sink : Unbounded_String; end record; procedure Initialize(obj : in out Delete_Precedence_Statement); procedure Put(obj : in Delete_Precedence_Statement); procedure Put(obj : in Delete_Precedence_Statement_Ptr); procedure Put_Name(obj : in Delete_Precedence_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Delete_Precedence_Statement; result : in out Unbounded_String); function XML_String(obj : in Delete_Precedence_Statement) return Unbounded_String; function XML_String(obj : in Delete_Precedence_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Delete_Precedence_Statement) return Unbounded_String; function XML_Ref_String(obj : in Delete_Precedence_Statement_Ptr) return Unbounded_String; function Copy(obj : in Delete_Precedence_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Delete_Precedence_Statement) return Generic_Statement_Ptr; function type_of(obj : in Delete_Precedence_Statement) return unbounded_string_list; function type_of(obj : in Delete_Precedence_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Delete_Precedence_Statement'Class, Delete_Precedence_Statement_Ptr); -- --------= Add_Precedence_Statement =-------- type Add_Precedence_Statement is new Generic_Statement with record Add_Source : Unbounded_String; Add_Sink : Unbounded_String; end record; procedure Initialize(obj : in out Add_Precedence_Statement); procedure Put(obj : in Add_Precedence_Statement); procedure Put(obj : in Add_Precedence_Statement_Ptr); procedure Put_Name(obj : in Add_Precedence_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Add_Precedence_Statement; result : in out Unbounded_String); function XML_String(obj : in Add_Precedence_Statement) return Unbounded_String; function XML_String(obj : in Add_Precedence_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Add_Precedence_Statement) return Unbounded_String; function XML_Ref_String(obj : in Add_Precedence_Statement_Ptr) return Unbounded_String; function Copy(obj : in Add_Precedence_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Add_Precedence_Statement) return Generic_Statement_Ptr; function type_of(obj : in Add_Precedence_Statement) return unbounded_string_list; function type_of(obj : in Add_Precedence_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Add_Precedence_Statement'Class, Add_Precedence_Statement_Ptr); -- --------= For_Statement =-------- type For_Statement is new Generic_Statement with record for_type : Table_Types; included_statement : Generic_Statement_Ptr; for_index : Variable_Expression_Ptr; end record; procedure Initialize(obj : in out For_Statement); procedure Put(obj : in For_Statement); procedure Put(obj : in For_Statement_Ptr); procedure Put_Name(obj : in For_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in For_Statement; result : in out Unbounded_String); function XML_String(obj : in For_Statement) return Unbounded_String; function XML_String(obj : in For_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in For_Statement) return Unbounded_String; function XML_Ref_String(obj : in For_Statement_Ptr) return Unbounded_String; function Copy(obj : in For_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in For_Statement) return Generic_Statement_Ptr; function type_of(obj : in For_Statement) return unbounded_string_list; function type_of(obj : in For_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (For_Statement'Class, For_Statement_Ptr); -- --------= Return_Statement =-------- type Return_Statement is new Generic_Statement with record return_value : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Return_Statement); procedure Put(obj : in Return_Statement); procedure Put(obj : in Return_Statement_Ptr); procedure Put_Name(obj : in Return_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Return_Statement; result : in out Unbounded_String); function XML_String(obj : in Return_Statement) return Unbounded_String; function XML_String(obj : in Return_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Return_Statement) return Unbounded_String; function XML_Ref_String(obj : in Return_Statement_Ptr) return Unbounded_String; function Copy(obj : in Return_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Return_Statement) return Generic_Statement_Ptr; function type_of(obj : in Return_Statement) return unbounded_string_list; function type_of(obj : in Return_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Return_Statement'Class, Return_Statement_Ptr); -- --------= While_Statement =-------- type While_Statement is new Generic_Statement with record included_statement : Generic_Statement_Ptr; condition : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out While_Statement); procedure Put(obj : in While_Statement); procedure Put(obj : in While_Statement_Ptr); procedure Put_Name(obj : in While_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in While_Statement; result : in out Unbounded_String); function XML_String(obj : in While_Statement) return Unbounded_String; function XML_String(obj : in While_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in While_Statement) return Unbounded_String; function XML_Ref_String(obj : in While_Statement_Ptr) return Unbounded_String; function Copy(obj : in While_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in While_Statement) return Generic_Statement_Ptr; function type_of(obj : in While_Statement) return unbounded_string_list; function type_of(obj : in While_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (While_Statement'Class, While_Statement_Ptr); -- --------= Random_Initialize_Statement =-------- type Random_Initialize_Statement is new Generic_Statement with record lvalue : Unbounded_String; law : Laws_Type; parameter1 : Generic_Expression_Ptr; parameter2 : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Random_Initialize_Statement); procedure Put(obj : in Random_Initialize_Statement); procedure Put(obj : in Random_Initialize_Statement_Ptr); procedure Put_Name(obj : in Random_Initialize_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Random_Initialize_Statement; result : in out Unbounded_String); function XML_String(obj : in Random_Initialize_Statement) return Unbounded_String; function XML_String(obj : in Random_Initialize_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Random_Initialize_Statement) return Unbounded_String; function XML_Ref_String(obj : in Random_Initialize_Statement_Ptr) return Unbounded_String; function Copy(obj : in Random_Initialize_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Random_Initialize_Statement) return Generic_Statement_Ptr; function type_of(obj : in Random_Initialize_Statement) return unbounded_string_list; function type_of(obj : in Random_Initialize_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Random_Initialize_Statement'Class, Random_Initialize_Statement_Ptr); -- --------= Set_Statement =-------- type Set_Statement is new Generic_Statement with record set_id : Unbounded_String; set_value : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Set_Statement); procedure Put(obj : in Set_Statement); procedure Put(obj : in Set_Statement_Ptr); procedure Put_Name(obj : in Set_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Set_Statement; result : in out Unbounded_String); function XML_String(obj : in Set_Statement) return Unbounded_String; function XML_String(obj : in Set_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Set_Statement) return Unbounded_String; function XML_Ref_String(obj : in Set_Statement_Ptr) return Unbounded_String; function Copy(obj : in Set_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Set_Statement) return Generic_Statement_Ptr; function type_of(obj : in Set_Statement) return unbounded_string_list; function type_of(obj : in Set_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Set_Statement'Class, Set_Statement_Ptr); -- --------= Subprogram_Statement =-------- type Subprogram_Statement is new Generic_Statement with record included_statement : Generic_Statement_Ptr; is_a_function : Boolean; subprogram_name : Unbounded_String; end record; procedure Initialize(obj : in out Subprogram_Statement); procedure Put(obj : in Subprogram_Statement); procedure Put(obj : in Subprogram_Statement_Ptr); procedure Put_Name(obj : in Subprogram_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Subprogram_Statement; result : in out Unbounded_String); function XML_String(obj : in Subprogram_Statement) return Unbounded_String; function XML_String(obj : in Subprogram_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Subprogram_Statement) return Unbounded_String; function XML_Ref_String(obj : in Subprogram_Statement_Ptr) return Unbounded_String; function Copy(obj : in Subprogram_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Subprogram_Statement) return Generic_Statement_Ptr; function type_of(obj : in Subprogram_Statement) return unbounded_string_list; function type_of(obj : in Subprogram_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Subprogram_Statement'Class, Subprogram_Statement_Ptr); -- --------= Subprogram_Call_Statement =-------- type Subprogram_Call_Statement is new Generic_Statement with record is_a_function : Boolean; called_subprogram : Generic_Statement_Ptr; return_value : Generic_Expression_Ptr; end record; procedure Initialize(obj : in out Subprogram_Call_Statement); procedure Put(obj : in Subprogram_Call_Statement); procedure Put(obj : in Subprogram_Call_Statement_Ptr); procedure Put_Name(obj : in Subprogram_Call_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in Subprogram_Call_Statement; result : in out Unbounded_String); function XML_String(obj : in Subprogram_Call_Statement) return Unbounded_String; function XML_String(obj : in Subprogram_Call_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Subprogram_Call_Statement) return Unbounded_String; function XML_Ref_String(obj : in Subprogram_Call_Statement_Ptr) return Unbounded_String; function Copy(obj : in Subprogram_Call_Statement_Ptr) return Generic_Statement_Ptr; function Copy(obj : in Subprogram_Call_Statement) return Generic_Statement_Ptr; function type_of(obj : in Subprogram_Call_Statement) return unbounded_string_list; function type_of(obj : in Subprogram_Call_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Subprogram_Call_Statement'Class, Subprogram_Call_Statement_Ptr); End Statements; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Processors; use Processors; use Processors.Generic_Processor_List_Package; with Memories; use Memories; use Memories.Generic_Memory_List_Package; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with standards_io; use standards_io; use standards_io.natural_io; with Indexed_Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Networks is type Generic_Network; type Generic_Network_Ptr is access all Generic_Network'Class; type Position; type Position_Ptr is access all Position; type NOC_Network; type NOC_Network_Ptr is access all NOC_Network'Class; type Spacewire_Network; type Spacewire_Network_Ptr is access all Spacewire_Network'Class; type Bus_Network; type Bus_Network_Ptr is access all Bus_Network'Class; type Networks_Delay_Type is ( Bounded_Delay, Jitter_Delay, Parametric_Delay); procedure To_Networks_Delay_Type is new Convert_Strings(Networks_Delay_Type, Bounded_Delay); procedure To_Networks_Delay_Type is new Convert_Unbounded_Strings(Networks_Delay_Type, Bounded_Delay); function XML_String (obj : in Networks_Delay_Type) return Unbounded_String; function XML_Ref_String (obj : in Networks_Delay_Type) return Unbounded_String; package Networks_Delay_Type_io is new text_io.enumeration_io(Networks_Delay_Type); use Networks_Delay_Type_io; type Networks_Architecture_Type is ( Shared_Bus, Star, Point_To_Point_Link, Crossbar, NoC, Spacewire); procedure To_Networks_Architecture_Type is new Convert_Strings(Networks_Architecture_Type, Shared_Bus); procedure To_Networks_Architecture_Type is new Convert_Unbounded_Strings(Networks_Architecture_Type, Shared_Bus); function XML_String (obj : in Networks_Architecture_Type) return Unbounded_String; function XML_Ref_String (obj : in Networks_Architecture_Type) return Unbounded_String; package Networks_Architecture_Type_io is new text_io.enumeration_io(Networks_Architecture_Type); use Networks_Architecture_Type_io; type Topology_Type is ( Mesh_Topology, Torus_Topology); procedure To_Topology_Type is new Convert_Strings(Topology_Type, Mesh_Topology); procedure To_Topology_Type is new Convert_Unbounded_Strings(Topology_Type, Mesh_Topology); function XML_String (obj : in Topology_Type) return Unbounded_String; function XML_Ref_String (obj : in Topology_Type) return Unbounded_String; package Topology_Type_io is new text_io.enumeration_io(Topology_Type); use Topology_Type_io; type Routing_Type is ( XY, YX, XYX, Programmable_Routing); procedure To_Routing_Type is new Convert_Strings(Routing_Type, XY); procedure To_Routing_Type is new Convert_Unbounded_Strings(Routing_Type, XY); function XML_String (obj : in Routing_Type) return Unbounded_String; function XML_Ref_String (obj : in Routing_Type) return Unbounded_String; package Routing_Type_io is new text_io.enumeration_io(Routing_Type); use Routing_Type_io; type NoC_Preemption_Level_Type is ( Flit, Packet); procedure To_NoC_Preemption_Level_Type is new Convert_Strings(NoC_Preemption_Level_Type, Flit); procedure To_NoC_Preemption_Level_Type is new Convert_Unbounded_Strings(NoC_Preemption_Level_Type, Flit); function XML_String (obj : in NoC_Preemption_Level_Type) return Unbounded_String; function XML_Ref_String (obj : in NoC_Preemption_Level_Type) return Unbounded_String; package NoC_Preemption_Level_Type_io is new text_io.enumeration_io(NoC_Preemption_Level_Type); use NoC_Preemption_Level_Type_io; type Switching_Type is ( Wormwole, Store_And_Forward, Virtual_Cut_Through); procedure To_Switching_Type is new Convert_Strings(Switching_Type, Wormwole); procedure To_Switching_Type is new Convert_Unbounded_Strings(Switching_Type, Wormwole); function XML_String (obj : in Switching_Type) return Unbounded_String; function XML_Ref_String (obj : in Switching_Type) return Unbounded_String; package Switching_Type_io is new text_io.enumeration_io(Switching_Type); use Switching_Type_io; type Data_Memorisation_Type is ( Virtual_Channel, Input_Port_Buffer, Output_Port_Buffer); procedure To_Data_Memorisation_Type is new Convert_Strings(Data_Memorisation_Type, Virtual_Channel); procedure To_Data_Memorisation_Type is new Convert_Unbounded_Strings(Data_Memorisation_Type, Virtual_Channel); function XML_String (obj : in Data_Memorisation_Type) return Unbounded_String; function XML_Ref_String (obj : in Data_Memorisation_Type) return Unbounded_String; package Data_Memorisation_Type_io is new text_io.enumeration_io(Data_Memorisation_Type); use Data_Memorisation_Type_io; type Arbitration_Type is ( TDMA, Fixed_Priority_Based, Non_Conservative_Round_Robin, Conservative_Round_Robin, Round_Robin_Bandwidth_Reservation); procedure To_Arbitration_Type is new Convert_Strings(Arbitration_Type, TDMA); procedure To_Arbitration_Type is new Convert_Unbounded_Strings(Arbitration_Type, TDMA); function XML_String (obj : in Arbitration_Type) return Unbounded_String; function XML_Ref_String (obj : in Arbitration_Type) return Unbounded_String; package Arbitration_Type_io is new text_io.enumeration_io(Arbitration_Type); use Arbitration_Type_io; -- --------= Generic_Network =-------- type Generic_Network is new Named_Object with record network_delay : Networks_Delay_Type; network_architecture_type : Networks_Architecture_Type; end record; procedure Initialize(obj : in out Generic_Network); procedure Put(obj : in Generic_Network); procedure Put(obj : in Generic_Network_Ptr); procedure Put_Name(obj : in Generic_Network_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Network; result : in out Unbounded_String); function XML_String(obj : in Generic_Network) return Unbounded_String; function XML_String(obj : in Generic_Network_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Network) return Unbounded_String; function XML_Ref_String(obj : in Generic_Network_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Network) return Unbounded_String; function Get_Name (obj : in Generic_Network_Ptr) return Unbounded_String; function Copy(obj : in Generic_Network_Ptr) return Generic_Network_Ptr; function Copy(obj : in Generic_Network) return Generic_Network_Ptr; function type_of(obj : in Generic_Network) return unbounded_string_list; function type_of(obj : in Generic_Network_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Network'Class, Generic_Network_Ptr); -- --------= Position =-------- type Position is record X : Natural; Y : Natural; end record; procedure Initialize(obj : out Position); procedure Put(obj : in Position); procedure Put(obj : in Position_Ptr); function Copy(obj : in Position_Ptr) return Position_Ptr; function Copy(obj : in Position) return Position_Ptr; procedure Build_Attributes_XML_String(obj : in Position; result : in out Unbounded_String); function XML_String(obj : in Position) return Unbounded_String; function XML_String(obj : in Position_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Position) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Position, Position_Ptr); package Positions_Table_Package is new Indexed_Tables(Position, Unbounded_String, Framework_Config.Max_Positions, 0, Put, Initialize, Put, Convert, XML_String, XML_String, to_unbounded_string("processor_name")); use Positions_Table_Package; subtype Positions_Range is Positions_Table_Package.indexed_table_range; subtype Positions_Range_Ptr is Positions_Table_Package.indexed_table_range_Ptr; subtype Positions_Table is Positions_Table_Package.indexed_table; subtype Positions_Table_Ptr is Positions_Table_Package.indexed_table_Ptr; -- --------= NOC_Network =-------- type NOC_Network is new Generic_Network with record topology : Topology_Type; number_of_processor : Natural; link_delay : Natural; dimension : Natural; number_of_virtual_channel : Natural; routing_protocol : Routing_Type; switching_protocol : Switching_Type; processor_positions : Positions_Table; end record; procedure Initialize(obj : in out NOC_Network); procedure Put(obj : in NOC_Network); procedure Put(obj : in NOC_Network_Ptr); procedure Put_Name(obj : in NOC_Network_Ptr); procedure Build_Attributes_XML_String(obj : in NOC_Network; result : in out Unbounded_String); function XML_String(obj : in NOC_Network) return Unbounded_String; function XML_String(obj : in NOC_Network_Ptr) return Unbounded_String; function XML_Ref_String(obj : in NOC_Network) return Unbounded_String; function XML_Ref_String(obj : in NOC_Network_Ptr) return Unbounded_String; function Get_Name (obj : in NOC_Network) return Unbounded_String; function Get_Name (obj : in NOC_Network_Ptr) return Unbounded_String; function Copy(obj : in NOC_Network_Ptr) return Generic_Network_Ptr; function Copy(obj : in NOC_Network) return Generic_Network_Ptr; function type_of(obj : in NOC_Network) return unbounded_string_list; function type_of(obj : in NOC_Network_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (NOC_Network'Class, NOC_Network_Ptr); -- --------= Spacewire_Network =-------- type Spacewire_Network is new Generic_Network with record number_of_processor : Natural; link_delay : Natural; Xdimension : Natural; Ydimension : Natural; routing_protocol : Routing_Type; processor_positions : Positions_Table; end record; procedure Initialize(obj : in out Spacewire_Network); procedure Put(obj : in Spacewire_Network); procedure Put(obj : in Spacewire_Network_Ptr); procedure Put_Name(obj : in Spacewire_Network_Ptr); procedure Build_Attributes_XML_String(obj : in Spacewire_Network; result : in out Unbounded_String); function XML_String(obj : in Spacewire_Network) return Unbounded_String; function XML_String(obj : in Spacewire_Network_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Spacewire_Network) return Unbounded_String; function XML_Ref_String(obj : in Spacewire_Network_Ptr) return Unbounded_String; function Get_Name (obj : in Spacewire_Network) return Unbounded_String; function Get_Name (obj : in Spacewire_Network_Ptr) return Unbounded_String; function Copy(obj : in Spacewire_Network_Ptr) return Generic_Network_Ptr; function Copy(obj : in Spacewire_Network) return Generic_Network_Ptr; function type_of(obj : in Spacewire_Network) return unbounded_string_list; function type_of(obj : in Spacewire_Network_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Spacewire_Network'Class, Spacewire_Network_Ptr); -- --------= Bus_Network =-------- type Bus_Network is new Generic_Network with record processor_list : Generic_Processor_List; memory_list : Generic_Memory_List; bus_arbitration : Arbitration_Type; memory_word_access_time : Natural; maximum_interbank_interferences_memory_delay : Natural; end record; procedure Initialize(obj : in out Bus_Network); procedure Put(obj : in Bus_Network); procedure Put(obj : in Bus_Network_Ptr); procedure Put_Name(obj : in Bus_Network_Ptr); procedure Build_Attributes_XML_String(obj : in Bus_Network; result : in out Unbounded_String); function XML_String(obj : in Bus_Network) return Unbounded_String; function XML_String(obj : in Bus_Network_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Bus_Network) return Unbounded_String; function XML_Ref_String(obj : in Bus_Network_Ptr) return Unbounded_String; function Get_Name (obj : in Bus_Network) return Unbounded_String; function Get_Name (obj : in Bus_Network_Ptr) return Unbounded_String; function Copy(obj : in Bus_Network_Ptr) return Generic_Network_Ptr; function Copy(obj : in Bus_Network) return Generic_Network_Ptr; function type_of(obj : in Bus_Network) return unbounded_string_list; function type_of(obj : in Bus_Network_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Bus_Network'Class, Bus_Network_Ptr); End Networks; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Data_Accesses is type Data_Access; type Data_Access_Ptr is access all Data_Access'Class; type Data_Access_Record; type Data_Access_Record_Ptr is access all Data_Access_Record; type Data_Access_Type is ( Read_Data, Write_Data); procedure To_Data_Access_Type is new Convert_Strings(Data_Access_Type, Read_Data); procedure To_Data_Access_Type is new Convert_Unbounded_Strings(Data_Access_Type, Read_Data); function XML_String (obj : in Data_Access_Type) return Unbounded_String; function XML_Ref_String (obj : in Data_Access_Type) return Unbounded_String; package Data_Access_Type_io is new text_io.enumeration_io(Data_Access_Type); use Data_Access_Type_io; -- --------= Data_Access =-------- type Data_Access is new Named_Object with record Access_Type : Data_Access_Type; Memory_Address : Natural; Time_Constraint_Name : Unbounded_String; Size : Natural; end record; procedure Initialize(obj : in out Data_Access); procedure Put(obj : in Data_Access); procedure Put(obj : in Data_Access_Ptr); procedure Put_Name(obj : in Data_Access_Ptr); procedure Build_Attributes_XML_String(obj : in Data_Access; result : in out Unbounded_String); function XML_String(obj : in Data_Access) return Unbounded_String; function XML_String(obj : in Data_Access_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Data_Access) return Unbounded_String; function XML_Ref_String(obj : in Data_Access_Ptr) return Unbounded_String; function Get_Name (obj : in Data_Access) return Unbounded_String; function Get_Name (obj : in Data_Access_Ptr) return Unbounded_String; function Copy(obj : in Data_Access_Ptr) return Data_Access_Ptr; function Copy(obj : in Data_Access) return Data_Access_Ptr; function type_of(obj : in Data_Access) return unbounded_string_list; function type_of(obj : in Data_Access_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Data_Access'Class, Data_Access_Ptr); package Data_Accesses_Table_Package is new Tables(Data_Access_Ptr, Max_Data_Accesses, Put, XML_String, XML_Ref_String); use Data_Accesses_Table_Package; subtype Data_Accesses_Range is Data_Accesses_Table_Package.table_range; subtype Data_Accesses_Range_Ptr is Data_Accesses_Table_Package.table_range_Ptr; subtype Data_Accesses_Table is Data_Accesses_Table_Package.table; subtype Data_Accesses_Table_Ptr is Data_Accesses_Table_Package.table_Ptr; -- --------= Data_Access_Record =-------- type Data_Access_Record is record Access_Type : Data_Access_Type; Memory_Address : Natural; Time_Constraint_Name : Unbounded_String; Size : Natural; end record; procedure Initialize(obj : out Data_Access_Record); procedure Put(obj : in Data_Access_Record); procedure Put(obj : in Data_Access_Record_Ptr); function Copy(obj : in Data_Access_Record_Ptr) return Data_Access_Record_Ptr; function Copy(obj : in Data_Access_Record) return Data_Access_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Data_Access_Record; result : in out Unbounded_String); function XML_String(obj : in Data_Access_Record) return Unbounded_String; function XML_String(obj : in Data_Access_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Data_Access_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Data_Access_Record, Data_Access_Record_Ptr); End Data_Accesses; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; Package CFG_Nodes is type CFG_Node; type CFG_Node_Ptr is access all CFG_Node'Class; type CFG_Node_Record; type CFG_Node_Record_Ptr is access all CFG_Node_Record; type CFG_Graph_Type is ( CFG_Basic_Block, CFG_Atomic_Operation, DFG_Basic_block, CFG_Execution_Unit); procedure To_CFG_Graph_Type is new Convert_Strings(CFG_Graph_Type, CFG_Basic_Block); procedure To_CFG_Graph_Type is new Convert_Unbounded_Strings(CFG_Graph_Type, CFG_Basic_Block); function XML_String (obj : in CFG_Graph_Type) return Unbounded_String; function XML_Ref_String (obj : in CFG_Graph_Type) return Unbounded_String; package CFG_Graph_Type_io is new text_io.enumeration_io(CFG_Graph_Type); use CFG_Graph_Type_io; type CFG_Node_Type is ( Start_Node, Middle_Node, Terminate_Node); procedure To_CFG_Node_Type is new Convert_Strings(CFG_Node_Type, Start_Node); procedure To_CFG_Node_Type is new Convert_Unbounded_Strings(CFG_Node_Type, Start_Node); function XML_String (obj : in CFG_Node_Type) return Unbounded_String; function XML_Ref_String (obj : in CFG_Node_Type) return Unbounded_String; package CFG_Node_Type_io is new text_io.enumeration_io(CFG_Node_Type); use CFG_Node_Type_io; -- --------= CFG_Node =-------- type CFG_Node is new Named_Object with record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; procedure Initialize(obj : in out CFG_Node); procedure Put(obj : in CFG_Node); procedure Put(obj : in CFG_Node_Ptr); procedure Put_Name(obj : in CFG_Node_Ptr); procedure Build_Attributes_XML_String(obj : in CFG_Node; result : in out Unbounded_String); function XML_String(obj : in CFG_Node) return Unbounded_String; function XML_String(obj : in CFG_Node_Ptr) return Unbounded_String; function XML_Ref_String(obj : in CFG_Node) return Unbounded_String; function XML_Ref_String(obj : in CFG_Node_Ptr) return Unbounded_String; function Get_Name (obj : in CFG_Node) return Unbounded_String; function Get_Name (obj : in CFG_Node_Ptr) return Unbounded_String; function Copy(obj : in CFG_Node_Ptr) return CFG_Node_Ptr; function Copy(obj : in CFG_Node) return CFG_Node_Ptr; function type_of(obj : in CFG_Node) return unbounded_string_list; function type_of(obj : in CFG_Node_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (CFG_Node'Class, CFG_Node_Ptr); package CFG_Nodes_Table_Package is new Tables(CFG_Node_Ptr, Framework_Config.Max_CFG_Nodes, Put, XML_String, XML_Ref_String); use CFG_Nodes_Table_Package; subtype CFG_Nodes_Range is CFG_Nodes_Table_Package.table_range; subtype CFG_Nodes_Range_Ptr is CFG_Nodes_Table_Package.table_range_Ptr; subtype CFG_Nodes_Table is CFG_Nodes_Table_Package.table; subtype CFG_Nodes_Table_Ptr is CFG_Nodes_Table_Package.table_Ptr; -- --------= CFG_Node_Record =-------- type CFG_Node_Record is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; procedure Initialize(obj : out CFG_Node_Record); procedure Put(obj : in CFG_Node_Record); procedure Put(obj : in CFG_Node_Record_Ptr); function Copy(obj : in CFG_Node_Record_Ptr) return CFG_Node_Record_Ptr; function Copy(obj : in CFG_Node_Record) return CFG_Node_Record_Ptr; procedure Build_Attributes_XML_String(obj : in CFG_Node_Record; result : in out Unbounded_String); function XML_String(obj : in CFG_Node_Record) return Unbounded_String; function XML_String(obj : in CFG_Node_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in CFG_Node_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (CFG_Node_Record, CFG_Node_Record_Ptr); End CFG_Nodes; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Simulations is type Simulation_Type is ( Simulation_Boolean, Simulation_Integer, Simulation_Double, Simulation_Random, Simulation_String, Simulation_clock, Simulation_Array_Boolean, Simulation_Array_Integer, Simulation_Array_Double, Simulation_Array_Random, Simulation_Array_String, Simulation_array_clock, Simulation_Time_Unit_Array_Boolean, Simulation_Time_Unit_Array_Integer, Simulation_Time_Unit_Array_Double, Simulation_Time_Unit_Array_String); procedure To_Simulation_Type is new Convert_Strings(Simulation_Type, Simulation_Boolean); procedure To_Simulation_Type is new Convert_Unbounded_Strings(Simulation_Type, Simulation_Boolean); function XML_String (obj : in Simulation_Type) return Unbounded_String; function XML_Ref_String (obj : in Simulation_Type) return Unbounded_String; package Simulation_Type_io is new text_io.enumeration_io(Simulation_Type); use Simulation_Type_io; End Simulations; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; with Ada.Numerics.Aux; use Ada.Numerics.Aux; 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; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with CFG_Nodes; use CFG_Nodes; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Execution_Units is type Execution_Unit; type Execution_Unit_Ptr is access all Execution_Unit'Class; type Execution_Unit_Record; type Execution_Unit_Record_Ptr is access all Execution_Unit_Record; type Execution_Unit_Type is ( Compatible_phase, Memory_phase, Execute_phase, Read, Write, Non_identified); procedure To_Execution_Unit_Type is new Convert_Strings(Execution_Unit_Type, Compatible_phase); procedure To_Execution_Unit_Type is new Convert_Unbounded_Strings(Execution_Unit_Type, Compatible_phase); function XML_String (obj : in Execution_Unit_Type) return Unbounded_String; function XML_Ref_String (obj : in Execution_Unit_Type) return Unbounded_String; package Execution_Unit_Type_io is new text_io.enumeration_io(Execution_Unit_Type); use Execution_Unit_Type_io; -- --------= Execution_Unit =-------- type Execution_Unit is new CFG_Node with record Unit_type : Execution_Unit_Type; Time_Constraint_Name : Unbounded_String; Capacity : Natural; end record; procedure Initialize(obj : in out Execution_Unit); procedure Put(obj : in Execution_Unit); procedure Put(obj : in Execution_Unit_Ptr); procedure Put_Name(obj : in Execution_Unit_Ptr); procedure Build_Attributes_XML_String(obj : in Execution_Unit; result : in out Unbounded_String); function XML_String(obj : in Execution_Unit) return Unbounded_String; function XML_String(obj : in Execution_Unit_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Execution_Unit) return Unbounded_String; function XML_Ref_String(obj : in Execution_Unit_Ptr) return Unbounded_String; function Get_Name (obj : in Execution_Unit) return Unbounded_String; function Get_Name (obj : in Execution_Unit_Ptr) return Unbounded_String; function Copy(obj : in Execution_Unit_Ptr) return Execution_Unit_Ptr; function Copy(obj : in Execution_Unit) return Execution_Unit_Ptr; function type_of(obj : in Execution_Unit) return unbounded_string_list; function type_of(obj : in Execution_Unit_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Execution_Unit'Class, Execution_Unit_Ptr); package Execution_Units_Table_Package is new Tables(Execution_Unit_Ptr, Framework_Config.Max_CFG_Nodes, Put, XML_String, XML_Ref_String); use Execution_Units_Table_Package; subtype Execution_Units_Range is Execution_Units_Table_Package.table_range; subtype Execution_Units_Range_Ptr is Execution_Units_Table_Package.table_range_Ptr; subtype Execution_Units_Table is Execution_Units_Table_Package.table; subtype Execution_Units_Table_Ptr is Execution_Units_Table_Package.table_Ptr; -- --------= Execution_Unit_Record =-------- type Execution_Unit_Record is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; unit_type : Execution_Unit_Type; time_constraint_name : Unbounded_String; capacity : Natural; end record; procedure Initialize(obj : out Execution_Unit_Record); procedure Put(obj : in Execution_Unit_Record); procedure Put(obj : in Execution_Unit_Record_Ptr); function Copy(obj : in Execution_Unit_Record_Ptr) return Execution_Unit_Record_Ptr; function Copy(obj : in Execution_Unit_Record) return Execution_Unit_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Execution_Unit_Record; result : in out Unbounded_String); function XML_String(obj : in Execution_Unit_Record) return Unbounded_String; function XML_String(obj : in Execution_Unit_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Execution_Unit_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Execution_Unit_Record, Execution_Unit_Record_Ptr); End Execution_Units; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 standards_io; use standards_io; use standards_io.boolean_io; Package AADL_Config is -- Activate AADL Debug switch Aadl_Debug : Boolean := False; -- Include system/sub-system name in Cheddar's features name Aadl_Import_With_System_Name : Boolean := True; -- Transform event port to task precedencies Aadl_Import_Event_To_Precedencies : Boolean := False; -- Transform event port to task precedencies Aadl_Import_Event_Data_To_Precedencies : Boolean := False; Aadl_Import_Event_To_Buffers_Messages : Boolean := True; -- Transform event port to buffers and messages (it automatically includes buffer/message task dependencies) Aadl_Import_Event_Data_To_Buffers_Messages : Boolean := True; -- Transform task precedencies to event data port connexions Aadl_Export_Precedencies_To_Event_Data : Boolean := False; -- Transform task precedencies to event port connexions Aadl_Export_Precedencies_To_Event : Boolean := False; -- Transform task precedencies to a Cheddar property Aadl_Export_Precedencies_To_Properties : Boolean := True; -- Process the second AADL import pass which binds software components to hardware components Aadl_Process_Second_Import_Pass : Boolean := True; -- Process the third AADL import pass which build component relationships (i.e. connections) Aadl_Process_Third_Import_Pass : Boolean := True; End AADL_Config; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; Package Offsets is type Offset_Type; type Offset_Type_Ptr is access all Offset_Type; -- --------= Offset_Type =-------- type Offset_Type is record offset_value : Natural; activation : Natural; end record; procedure Initialize(obj : out Offset_Type); procedure Put(obj : in Offset_Type); procedure Put(obj : in Offset_Type_Ptr); function Copy(obj : in Offset_Type_Ptr) return Offset_Type_Ptr; function Copy(obj : in Offset_Type) return Offset_Type_Ptr; procedure Build_Attributes_XML_String(obj : in Offset_Type; result : in out Unbounded_String); function XML_String(obj : in Offset_Type) return Unbounded_String; function XML_String(obj : in Offset_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Offset_Type) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Offset_Type, Offset_Type_Ptr); package Offsets_Table_Package is new Tables(Offset_Type, Max_Offsets, Put, XML_String, XML_String); use Offsets_Table_Package; subtype Offsets_Range is Offsets_Table_Package.table_range; subtype Offsets_Range_Ptr is Offsets_Table_Package.table_range_Ptr; subtype Offsets_Table is Offsets_Table_Package.table; subtype Offsets_Table_Ptr is Offsets_Table_Package.table_Ptr; End Offsets; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Sets; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Objects is type Generic_Object; type Generic_Object_Ptr is access all Generic_Object'Class; type Named_Object; type Named_Object_Ptr is access all Named_Object'Class; type Objects_Type is ( Buffer_Object_Type, Processor_Object_Type, Cache_Block_Object_Type, Cache_Object_Type, Memory_Object_Type, Battery_Object_Type, Task_Object_Type, Resource_Object_Type, Address_Space_Object_Type, Message_Object_Type, State_Object_Type, Transition_Object_Type, Statement_Object_Type, Expression_Object_Type, Synchronization_Object_Type, Section_Object_Type, Network_Object_Type, Connexion_Object_Type, Core_Object_Type, Event_Analyzer_Type, Deployment_Type, Task_Group_Object_Type, CFG_Node_Object_Type, CFG_Edge_Object_Type, CFG_Object_Type, Cache_Access_Profile_Object_Type, Scheduling_Error_Object_Type, NoC_Type, Execution_Unit_Object_Type, Data_Access_Object_Type); procedure To_Objects_Type is new Convert_Strings(Objects_Type, Buffer_Object_Type); procedure To_Objects_Type is new Convert_Unbounded_Strings(Objects_Type, Buffer_Object_Type); function XML_String (obj : in Objects_Type) return Unbounded_String; function XML_Ref_String (obj : in Objects_Type) return Unbounded_String; package Objects_Type_io is new text_io.enumeration_io(Objects_Type); use Objects_Type_io; -- --------= Generic_Object =-------- type Generic_Object is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; object_type : Objects_Type; end record; procedure Initialize(obj : in out Generic_Object); procedure Put(obj : in Generic_Object); procedure Put(obj : in Generic_Object_Ptr); procedure Put_Name(obj : in Generic_Object_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Object; result : in out Unbounded_String); function XML_String(obj : in Generic_Object) return Unbounded_String; function XML_String(obj : in Generic_Object_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Object) return Unbounded_String; function XML_Ref_String(obj : in Generic_Object_Ptr) return Unbounded_String; function Copy(obj : in Generic_Object_Ptr) return Generic_Object_Ptr; function Copy(obj : in Generic_Object) return Generic_Object_Ptr; function type_of(obj : in Generic_Object) return unbounded_string_list; function type_of(obj : in Generic_Object_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Object'Class, Generic_Object_Ptr); -- --------= Named_Object =-------- type Named_Object is new Generic_Object with record name : Unbounded_String; end record; procedure Initialize(obj : in out Named_Object); procedure Put(obj : in Named_Object); procedure Put(obj : in Named_Object_Ptr); procedure Put_Name(obj : in Named_Object_Ptr); procedure Build_Attributes_XML_String(obj : in Named_Object; result : in out Unbounded_String); function XML_String(obj : in Named_Object) return Unbounded_String; function XML_String(obj : in Named_Object_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Named_Object) return Unbounded_String; function XML_Ref_String(obj : in Named_Object_Ptr) return Unbounded_String; function Get_Name (obj : in Named_Object) return Unbounded_String; function Get_Name (obj : in Named_Object_Ptr) return Unbounded_String; function Copy(obj : in Named_Object_Ptr) return Generic_Object_Ptr; function Copy(obj : in Named_Object) return Generic_Object_Ptr; function type_of(obj : in Named_Object) return unbounded_string_list; function type_of(obj : in Named_Object_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Named_Object'Class, Named_Object_Ptr); package Generic_Object_Set_Package is new Sets(Max_Element => Framework_Config.Max_Objects, Element => Generic_Object_Ptr, Free => Free, Copy => Copy, Put => Put, XML_String => XML_String, XML_Ref_String => XML_Ref_String); use Generic_Object_Set_Package; subtype Generic_Objects_Range is Generic_Object_Set_Package.element_range; subtype Generic_Objects_Range_Ptr is Generic_Object_Set_Package.element_range_Ptr; subtype Generic_Objects_Set is Generic_Object_Set_Package.set; subtype Generic_Objects_Set_Ptr is Generic_Object_Set_Package.set_Ptr; End Objects; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Scheduling_Errors is type Scheduling_Error; type Scheduling_Error_Ptr is access all Scheduling_Error'Class; type Scheduling_Error_Record; type Scheduling_Error_Record_Ptr is access all Scheduling_Error_Record; type Error_Type_Type is ( Early_Service_Start, Late_Service_Termination, Core_Failure, Cache_Failure); procedure To_Error_Type_Type is new Convert_Strings(Error_Type_Type, Early_Service_Start); procedure To_Error_Type_Type is new Convert_Unbounded_Strings(Error_Type_Type, Early_Service_Start); function XML_String (obj : in Error_Type_Type) return Unbounded_String; function XML_Ref_String (obj : in Error_Type_Type) return Unbounded_String; package Error_Type_Type_io is new text_io.enumeration_io(Error_Type_Type); use Error_Type_Type_io; type Error_Action_Type is ( Reschedule, Stop_Schedule, User_Defined); procedure To_Error_Action_Type is new Convert_Strings(Error_Action_Type, Reschedule); procedure To_Error_Action_Type is new Convert_Unbounded_Strings(Error_Action_Type, Reschedule); function XML_String (obj : in Error_Action_Type) return Unbounded_String; function XML_Ref_String (obj : in Error_Action_Type) return Unbounded_String; package Error_Action_Type_io is new text_io.enumeration_io(Error_Action_Type); use Error_Action_Type_io; -- --------= Scheduling_Error =-------- type Scheduling_Error is new Named_Object with record error_type : Error_Type_Type; time : Natural; error_action : Error_Action_Type; user_defined_action : Unbounded_String; end record; procedure Initialize(obj : in out Scheduling_Error); procedure Put(obj : in Scheduling_Error); procedure Put(obj : in Scheduling_Error_Ptr); procedure Put_Name(obj : in Scheduling_Error_Ptr); procedure Build_Attributes_XML_String(obj : in Scheduling_Error; result : in out Unbounded_String); function XML_String(obj : in Scheduling_Error) return Unbounded_String; function XML_String(obj : in Scheduling_Error_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Error) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Error_Ptr) return Unbounded_String; function Get_Name (obj : in Scheduling_Error) return Unbounded_String; function Get_Name (obj : in Scheduling_Error_Ptr) return Unbounded_String; function Copy(obj : in Scheduling_Error_Ptr) return Scheduling_Error_Ptr; function Copy(obj : in Scheduling_Error) return Scheduling_Error_Ptr; function type_of(obj : in Scheduling_Error) return unbounded_string_list; function type_of(obj : in Scheduling_Error_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Scheduling_Error'Class, Scheduling_Error_Ptr); package Scheduling_Errors_Table_Package is new Tables(Scheduling_Error_Ptr, Max_Scheduling_Errors, Put, XML_String, XML_Ref_String); use Scheduling_Errors_Table_Package; subtype Scheduling_Errors_Range is Scheduling_Errors_Table_Package.table_range; subtype Scheduling_Errors_Range_Ptr is Scheduling_Errors_Table_Package.table_range_Ptr; subtype Scheduling_Errors_Table is Scheduling_Errors_Table_Package.table; subtype Scheduling_Errors_Table_Ptr is Scheduling_Errors_Table_Package.table_Ptr; -- --------= Scheduling_Error_Record =-------- type Scheduling_Error_Record is record error_type : Error_Type_Type; time : Natural; error_action : Error_Action_Type; user_defined_action : Unbounded_String; end record; procedure Initialize(obj : out Scheduling_Error_Record); procedure Put(obj : in Scheduling_Error_Record); procedure Put(obj : in Scheduling_Error_Record_Ptr); function Copy(obj : in Scheduling_Error_Record_Ptr) return Scheduling_Error_Record_Ptr; function Copy(obj : in Scheduling_Error_Record) return Scheduling_Error_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Scheduling_Error_Record; result : in out Unbounded_String); function XML_String(obj : in Scheduling_Error_Record) return Unbounded_String; function XML_String(obj : in Scheduling_Error_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Error_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Scheduling_Error_Record, Scheduling_Error_Record_Ptr); End Scheduling_Errors; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Generic_Graph; use Generic_Graph; with Tasks; use Tasks; with Buffers; use Buffers; with Messages; use Messages; with Dependencies; use Dependencies; with Resources; use Resources; with Processors; use Processors; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package DP_Graph is type Task_Node; type Task_Node_Ptr is access all Task_Node'Class; type Time_Triggered_Communication_Edge; type Time_Triggered_Communication_Edge_Ptr is access all Time_Triggered_Communication_Edge'Class; type Resource_Edge; type Resource_Edge_Ptr is access all Resource_Edge'Class; type Precedence_Edge; type Precedence_Edge_Ptr is access all Precedence_Edge'Class; type Communication_Edge; type Communication_Edge_Ptr is access all Communication_Edge'Class; type Buffer_Edge; type Buffer_Edge_Ptr is access all Buffer_Edge'Class; -- --------= Task_Node =-------- type Task_Node is new Generic_Node with record TaskRef : Generic_Task_Ptr; Kind : Tasks_Type; Proc : Generic_Processor_Ptr; end record; procedure Initialize(obj : in out Task_Node); procedure Put(obj : in Task_Node); procedure Put(obj : in Task_Node_Ptr); procedure Put_Name(obj : in Task_Node_Ptr); procedure Build_Attributes_XML_String(obj : in Task_Node; result : in out Unbounded_String); function XML_String(obj : in Task_Node) return Unbounded_String; function XML_String(obj : in Task_Node_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Task_Node) return Unbounded_String; function XML_Ref_String(obj : in Task_Node_Ptr) return Unbounded_String; function Copy(obj : in Task_Node_Ptr) return Task_Node_Ptr; function Copy(obj : in Task_Node) return Task_Node_Ptr; function type_of(obj : in Task_Node) return unbounded_string_list; function type_of(obj : in Task_Node_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Task_Node'Class, Task_Node_Ptr); -- --------= Time_Triggered_Communication_Edge =-------- type Time_Triggered_Communication_Edge is new Generic_Edge with record Timing_Property : Time_Triggered_Communication_Timing_Property_Type; Time_Triggered_Communication_Sink : Task_Node_Ptr; Time_Triggered_Communication_Source : Task_Node_Ptr; end record; procedure Initialize(obj : in out Time_Triggered_Communication_Edge); procedure Put(obj : in Time_Triggered_Communication_Edge); procedure Put(obj : in Time_Triggered_Communication_Edge_Ptr); procedure Put_Name(obj : in Time_Triggered_Communication_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Time_Triggered_Communication_Edge; result : in out Unbounded_String); function XML_String(obj : in Time_Triggered_Communication_Edge) return Unbounded_String; function XML_String(obj : in Time_Triggered_Communication_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Time_Triggered_Communication_Edge) return Unbounded_String; function XML_Ref_String(obj : in Time_Triggered_Communication_Edge_Ptr) return Unbounded_String; function Copy(obj : in Time_Triggered_Communication_Edge_Ptr) return Time_Triggered_Communication_Edge_Ptr; function Copy(obj : in Time_Triggered_Communication_Edge) return Time_Triggered_Communication_Edge_Ptr; function type_of(obj : in Time_Triggered_Communication_Edge) return unbounded_string_list; function type_of(obj : in Time_Triggered_Communication_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Time_Triggered_Communication_Edge'Class, Time_Triggered_Communication_Edge_Ptr); -- --------= Resource_Edge =-------- type Resource_Edge is new Generic_Edge with record Resource_Dependency_Resource : Generic_Resource_Ptr; end record; procedure Initialize(obj : in out Resource_Edge); procedure Put(obj : in Resource_Edge); procedure Put(obj : in Resource_Edge_Ptr); procedure Put_Name(obj : in Resource_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Resource_Edge; result : in out Unbounded_String); function XML_String(obj : in Resource_Edge) return Unbounded_String; function XML_String(obj : in Resource_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Resource_Edge) return Unbounded_String; function XML_Ref_String(obj : in Resource_Edge_Ptr) return Unbounded_String; function Copy(obj : in Resource_Edge_Ptr) return Resource_Edge_Ptr; function Copy(obj : in Resource_Edge) return Resource_Edge_Ptr; function type_of(obj : in Resource_Edge) return unbounded_string_list; function type_of(obj : in Resource_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Resource_Edge'Class, Resource_Edge_Ptr); -- --------= Precedence_Edge =-------- type Precedence_Edge is new Generic_Edge with null record; procedure Initialize(obj : in out Precedence_Edge); procedure Put(obj : in Precedence_Edge); procedure Put(obj : in Precedence_Edge_Ptr); procedure Put_Name(obj : in Precedence_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Precedence_Edge; result : in out Unbounded_String); function XML_String(obj : in Precedence_Edge) return Unbounded_String; function XML_String(obj : in Precedence_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Precedence_Edge) return Unbounded_String; function XML_Ref_String(obj : in Precedence_Edge_Ptr) return Unbounded_String; function Copy(obj : in Precedence_Edge_Ptr) return Precedence_Edge_Ptr; function Copy(obj : in Precedence_Edge) return Precedence_Edge_Ptr; function type_of(obj : in Precedence_Edge) return unbounded_string_list; function type_of(obj : in Precedence_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Precedence_Edge'Class, Precedence_Edge_Ptr); -- --------= Communication_Edge =-------- type Communication_Edge is new Generic_Edge with record Communication_Dependency_Object : Generic_Message_Ptr; end record; procedure Initialize(obj : in out Communication_Edge); procedure Put(obj : in Communication_Edge); procedure Put(obj : in Communication_Edge_Ptr); procedure Put_Name(obj : in Communication_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Communication_Edge; result : in out Unbounded_String); function XML_String(obj : in Communication_Edge) return Unbounded_String; function XML_String(obj : in Communication_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Communication_Edge) return Unbounded_String; function XML_Ref_String(obj : in Communication_Edge_Ptr) return Unbounded_String; function Copy(obj : in Communication_Edge_Ptr) return Communication_Edge_Ptr; function Copy(obj : in Communication_Edge) return Communication_Edge_Ptr; function type_of(obj : in Communication_Edge) return unbounded_string_list; function type_of(obj : in Communication_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Communication_Edge'Class, Communication_Edge_Ptr); -- --------= Buffer_Edge =-------- type Buffer_Edge is new Generic_Edge with record Buffer_Dependency_Object : Buffer_Ptr; end record; procedure Initialize(obj : in out Buffer_Edge); procedure Put(obj : in Buffer_Edge); procedure Put(obj : in Buffer_Edge_Ptr); procedure Put_Name(obj : in Buffer_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Buffer_Edge; result : in out Unbounded_String); function XML_String(obj : in Buffer_Edge) return Unbounded_String; function XML_String(obj : in Buffer_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Buffer_Edge) return Unbounded_String; function XML_Ref_String(obj : in Buffer_Edge_Ptr) return Unbounded_String; function Copy(obj : in Buffer_Edge_Ptr) return Buffer_Edge_Ptr; function Copy(obj : in Buffer_Edge) return Buffer_Edge_Ptr; function type_of(obj : in Buffer_Edge) return unbounded_string_list; function type_of(obj : in Buffer_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Buffer_Edge'Class, Buffer_Edge_Ptr); End DP_Graph; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Processors; use Processors; with Scheduler_Interface; use Scheduler_Interface; with MILS_Security; use MILS_Security; 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 standards_io; use standards_io; use standards_io.boolean_io; use standards_io.natural_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Address_Spaces is type Address_Space; type Address_Space_Ptr is access all Address_Space'Class; -- --------= Address_Space =-------- type Address_Space is new Named_Object with record cpu_name : Unbounded_String; text_memory_size : Natural; stack_memory_size : Natural; data_memory_size : Natural; heap_memory_size : Natural; scheduling : Scheduling_Parameters; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_partition : MILS_Partition_Type; mils_compliant : Boolean; end record; procedure Initialize(obj : in out Address_Space); procedure Put(obj : in Address_Space); procedure Put(obj : in Address_Space_Ptr); procedure Put_Name(obj : in Address_Space_Ptr); procedure Build_Attributes_XML_String(obj : in Address_Space; result : in out Unbounded_String); function XML_String(obj : in Address_Space) return Unbounded_String; function XML_String(obj : in Address_Space_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Address_Space) return Unbounded_String; function XML_Ref_String(obj : in Address_Space_Ptr) return Unbounded_String; function Get_Name (obj : in Address_Space) return Unbounded_String; function Get_Name (obj : in Address_Space_Ptr) return Unbounded_String; function Copy(obj : in Address_Space_Ptr) return Address_Space_Ptr; function Copy(obj : in Address_Space) return Address_Space_Ptr; function type_of(obj : in Address_Space) return unbounded_string_list; function type_of(obj : in Address_Space_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Address_Space'Class, Address_Space_Ptr); End Address_Spaces; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with CFG_Nodes; use CFG_Nodes; use CFG_Nodes.CFG_Nodes_Table_Package; with CFGs; use CFGs; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with standards_io; use standards_io; use standards_io.natural_io; Package DFG_Nodes is type DFG_Variable; type DFG_Variable_Ptr is access all DFG_Variable'Class; type DFG_Statement; type DFG_Statement_Ptr is access all DFG_Statement'Class; type DFG_Cfg_Type; type DFG_Cfg_Type_Ptr is access all DFG_Cfg_Type; type DFG_Def_Use_Association; type DFG_Def_Use_Association_Ptr is access all DFG_Def_Use_Association; type DFG_Var_Association; type DFG_Var_Association_Ptr is access all DFG_Var_Association; type DFG_Def_Use_Info; type DFG_Def_Use_Info_Ptr is access all DFG_Def_Use_Info; -- --------= DFG_Variable =-------- type DFG_Variable is new Named_Object with null record; procedure Initialize(obj : in out DFG_Variable); procedure Put(obj : in DFG_Variable); procedure Put(obj : in DFG_Variable_Ptr); procedure Put_Name(obj : in DFG_Variable_Ptr); procedure Build_Attributes_XML_String(obj : in DFG_Variable; result : in out Unbounded_String); function XML_String(obj : in DFG_Variable) return Unbounded_String; function XML_String(obj : in DFG_Variable_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Variable) return Unbounded_String; function XML_Ref_String(obj : in DFG_Variable_Ptr) return Unbounded_String; function Get_Name (obj : in DFG_Variable) return Unbounded_String; function Get_Name (obj : in DFG_Variable_Ptr) return Unbounded_String; function Copy(obj : in DFG_Variable_Ptr) return DFG_Variable_Ptr; function Copy(obj : in DFG_Variable) return DFG_Variable_Ptr; function type_of(obj : in DFG_Variable) return unbounded_string_list; function type_of(obj : in DFG_Variable_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (DFG_Variable'Class, DFG_Variable_Ptr); package DFG_Variables_Table_Package is new Tables(DFG_Variable_Ptr, Framework_Config.MAX_NB_USED_VAR_STATEMENT, Put, XML_String, XML_Ref_String); use DFG_Variables_Table_Package; subtype DFG_Variables_Range is DFG_Variables_Table_Package.table_range; subtype DFG_Variables_Range_Ptr is DFG_Variables_Table_Package.table_range_Ptr; subtype DFG_Variables_Table is DFG_Variables_Table_Package.table; subtype DFG_Variables_Table_Ptr is DFG_Variables_Table_Package.table_Ptr; -- --------= DFG_Statement =-------- type DFG_Statement is new Named_Object with record Defined_Variable : DFG_Variable_Ptr; Used_Variables : DFG_Variables_Table; end record; procedure Initialize(obj : in out DFG_Statement); procedure Put(obj : in DFG_Statement); procedure Put(obj : in DFG_Statement_Ptr); procedure Put_Name(obj : in DFG_Statement_Ptr); procedure Build_Attributes_XML_String(obj : in DFG_Statement; result : in out Unbounded_String); function XML_String(obj : in DFG_Statement) return Unbounded_String; function XML_String(obj : in DFG_Statement_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Statement) return Unbounded_String; function XML_Ref_String(obj : in DFG_Statement_Ptr) return Unbounded_String; function Get_Name (obj : in DFG_Statement) return Unbounded_String; function Get_Name (obj : in DFG_Statement_Ptr) return Unbounded_String; function Copy(obj : in DFG_Statement_Ptr) return DFG_Statement_Ptr; function Copy(obj : in DFG_Statement) return DFG_Statement_Ptr; function type_of(obj : in DFG_Statement) return unbounded_string_list; function type_of(obj : in DFG_Statement_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (DFG_Statement'Class, DFG_Statement_Ptr); package DFG_Statements_Table_Package is new Tables(DFG_Statement_Ptr, Framework_Config.MAX_NB_STATEMENTS_BLOCK, Put, XML_String, XML_Ref_String); use DFG_Statements_Table_Package; subtype DFG_Statements_Range is DFG_Statements_Table_Package.table_range; subtype DFG_Statements_Range_Ptr is DFG_Statements_Table_Package.table_range_Ptr; subtype DFG_Statements_Table is DFG_Statements_Table_Package.table; subtype DFG_Statements_Table_Ptr is DFG_Statements_Table_Package.table_Ptr; -- --------= DFG_Cfg_Type =-------- type DFG_Cfg_Type is record Blocks : CFG_Nodes_Table; Nb_Blocks : Natural; end record; procedure Initialize(obj : out DFG_Cfg_Type); procedure Put(obj : in DFG_Cfg_Type); procedure Put(obj : in DFG_Cfg_Type_Ptr); function Copy(obj : in DFG_Cfg_Type_Ptr) return DFG_Cfg_Type_Ptr; function Copy(obj : in DFG_Cfg_Type) return DFG_Cfg_Type_Ptr; procedure Build_Attributes_XML_String(obj : in DFG_Cfg_Type; result : in out Unbounded_String); function XML_String(obj : in DFG_Cfg_Type) return Unbounded_String; function XML_String(obj : in DFG_Cfg_Type_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Cfg_Type) return Unbounded_String; procedure Free is new Unchecked_Deallocation (DFG_Cfg_Type, DFG_Cfg_Type_Ptr); -- --------= DFG_Def_Use_Association =-------- type DFG_Def_Use_Association is record Def_Variable : DFG_Variable_Ptr; Def_Statement : DFG_Statement_Ptr; Use_Statement : DFG_Statement_Ptr; end record; procedure Initialize(obj : out DFG_Def_Use_Association); procedure Put(obj : in DFG_Def_Use_Association); procedure Put(obj : in DFG_Def_Use_Association_Ptr); function Copy(obj : in DFG_Def_Use_Association_Ptr) return DFG_Def_Use_Association_Ptr; function Copy(obj : in DFG_Def_Use_Association) return DFG_Def_Use_Association_Ptr; procedure Build_Attributes_XML_String(obj : in DFG_Def_Use_Association; result : in out Unbounded_String); function XML_String(obj : in DFG_Def_Use_Association) return Unbounded_String; function XML_String(obj : in DFG_Def_Use_Association_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Def_Use_Association) return Unbounded_String; procedure Free is new Unchecked_Deallocation (DFG_Def_Use_Association, DFG_Def_Use_Association_Ptr); package DFG_Def_Use_Associations_Table_Package is new Tables(DFG_Def_Use_Association_Ptr, Framework_Config.MAX_DEF_USE, Put, XML_String, XML_Ref_String); use DFG_Def_Use_Associations_Table_Package; subtype DFG_Def_Use_Associations_Range is DFG_Def_Use_Associations_Table_Package.table_range; subtype DFG_Def_Use_Associations_Range_Ptr is DFG_Def_Use_Associations_Table_Package.table_range_Ptr; subtype DFG_Def_Use_Associations_Table is DFG_Def_Use_Associations_Table_Package.table; subtype DFG_Def_Use_Associations_Table_Ptr is DFG_Def_Use_Associations_Table_Package.table_Ptr; -- --------= DFG_Var_Association =-------- type DFG_Var_Association is record Def_Variable : DFG_Variable_Ptr; Statement : DFG_Statement_Ptr; end record; procedure Initialize(obj : out DFG_Var_Association); procedure Put(obj : in DFG_Var_Association); procedure Put(obj : in DFG_Var_Association_Ptr); function Copy(obj : in DFG_Var_Association_Ptr) return DFG_Var_Association_Ptr; function Copy(obj : in DFG_Var_Association) return DFG_Var_Association_Ptr; procedure Build_Attributes_XML_String(obj : in DFG_Var_Association; result : in out Unbounded_String); function XML_String(obj : in DFG_Var_Association) return Unbounded_String; function XML_String(obj : in DFG_Var_Association_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Var_Association) return Unbounded_String; procedure Free is new Unchecked_Deallocation (DFG_Var_Association, DFG_Var_Association_Ptr); package DFG_Var_Association_Defs_Table_Package is new Tables(DFG_Var_Association_Ptr, Framework_Config.MAX_DEF, Put, XML_String, XML_Ref_String); use DFG_Var_Association_Defs_Table_Package; subtype DFG_Var_Association_Defs_Range is DFG_Var_Association_Defs_Table_Package.table_range; subtype DFG_Var_Association_Defs_Range_Ptr is DFG_Var_Association_Defs_Table_Package.table_range_Ptr; subtype DFG_Var_Association_Defs_Table is DFG_Var_Association_Defs_Table_Package.table; subtype DFG_Var_Association_Defs_Table_Ptr is DFG_Var_Association_Defs_Table_Package.table_Ptr; package DFG_Var_Association_Uses_Table_Package is new Tables(DFG_Var_Association_Ptr, Framework_Config.MAX_USE, Put, XML_String, XML_Ref_String); use DFG_Var_Association_Uses_Table_Package; subtype DFG_Var_Association_Uses_Range is DFG_Var_Association_Uses_Table_Package.table_range; subtype DFG_Var_Association_Uses_Range_Ptr is DFG_Var_Association_Uses_Table_Package.table_range_Ptr; subtype DFG_Var_Association_Uses_Table is DFG_Var_Association_Uses_Table_Package.table; subtype DFG_Var_Association_Uses_Table_Ptr is DFG_Var_Association_Uses_Table_Package.table_Ptr; -- --------= DFG_Def_Use_Info =-------- type DFG_Def_Use_Info is record Def_In : DFG_Var_Association_Defs_Table; Def_Out : DFG_Var_Association_Defs_Table; Use_Out : DFG_Var_Association_Uses_Table; Def_Use_Asso : DFG_Def_Use_Associations_Table; end record; procedure Initialize(obj : out DFG_Def_Use_Info); procedure Put(obj : in DFG_Def_Use_Info); procedure Put(obj : in DFG_Def_Use_Info_Ptr); function Copy(obj : in DFG_Def_Use_Info_Ptr) return DFG_Def_Use_Info_Ptr; function Copy(obj : in DFG_Def_Use_Info) return DFG_Def_Use_Info_Ptr; procedure Build_Attributes_XML_String(obj : in DFG_Def_Use_Info; result : in out Unbounded_String); function XML_String(obj : in DFG_Def_Use_Info) return Unbounded_String; function XML_String(obj : in DFG_Def_Use_Info_Ptr) return Unbounded_String; function XML_Ref_String(obj : in DFG_Def_Use_Info) return Unbounded_String; procedure Free is new Unchecked_Deallocation (DFG_Def_Use_Info, DFG_Def_Use_Info_Ptr); package DFG_Def_Use_Infos_Table_Package is new Tables(DFG_Def_Use_Info_Ptr, Framework_Config.MAX_USE, Put, XML_String, XML_Ref_String); use DFG_Def_Use_Infos_Table_Package; subtype DFG_Def_Use_Infos_Range is DFG_Def_Use_Infos_Table_Package.table_range; subtype DFG_Def_Use_Infos_Range_Ptr is DFG_Def_Use_Infos_Table_Package.table_range_Ptr; subtype DFG_Def_Use_Infos_Table is DFG_Def_Use_Infos_Table_Package.table; subtype DFG_Def_Use_Infos_Table_Ptr is DFG_Def_Use_Infos_Table_Package.table_Ptr; End DFG_Nodes; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Parameters; use Parameters; use parameters.User_Defined_Parameters_Table_Package; with Scheduler_Interface; use Scheduler_Interface; with MILS_Security; use MILS_Security; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package Messages is type Generic_Message; type Generic_Message_Ptr is access all Generic_Message'Class; type Periodic_Message; type Periodic_Message_Ptr is access all Periodic_Message'Class; type Aperiodic_Message; type Aperiodic_Message_Ptr is access all Aperiodic_Message'Class; type Messages_Type is ( Periodic_Type, Aperiodic_Type); procedure To_Messages_Type is new Convert_Strings(Messages_Type, Periodic_Type); procedure To_Messages_Type is new Convert_Unbounded_Strings(Messages_Type, Periodic_Type); function XML_String (obj : in Messages_Type) return Unbounded_String; function XML_Ref_String (obj : in Messages_Type) return Unbounded_String; package Messages_Type_io is new text_io.enumeration_io(Messages_Type); use Messages_Type_io; -- --------= Generic_Message =-------- type Generic_Message is new Named_Object with record message_type : Messages_Type; preemptive_type : Preemptives_Type; parameters : User_Defined_Parameters_Table; deadline : Natural; size : Natural; response_time : Natural; communication_time : Natural; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; end record; procedure Initialize(obj : in out Generic_Message); procedure Put(obj : in Generic_Message); procedure Put(obj : in Generic_Message_Ptr); procedure Put_Name(obj : in Generic_Message_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Message; result : in out Unbounded_String); function XML_String(obj : in Generic_Message) return Unbounded_String; function XML_String(obj : in Generic_Message_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Message) return Unbounded_String; function XML_Ref_String(obj : in Generic_Message_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Message) return Unbounded_String; function Get_Name (obj : in Generic_Message_Ptr) return Unbounded_String; function Copy(obj : in Generic_Message_Ptr) return Generic_Message_Ptr; function Copy(obj : in Generic_Message) return Generic_Message_Ptr; function type_of(obj : in Generic_Message) return unbounded_string_list; function type_of(obj : in Generic_Message_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Message'Class, Generic_Message_Ptr); -- --------= Periodic_Message =-------- type Periodic_Message is new Generic_Message with record period : Natural; jitter : Natural; end record; procedure Initialize(obj : in out Periodic_Message); procedure Put(obj : in Periodic_Message); procedure Put(obj : in Periodic_Message_Ptr); procedure Put_Name(obj : in Periodic_Message_Ptr); procedure Build_Attributes_XML_String(obj : in Periodic_Message; result : in out Unbounded_String); function XML_String(obj : in Periodic_Message) return Unbounded_String; function XML_String(obj : in Periodic_Message_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Periodic_Message) return Unbounded_String; function XML_Ref_String(obj : in Periodic_Message_Ptr) return Unbounded_String; function Get_Name (obj : in Periodic_Message) return Unbounded_String; function Get_Name (obj : in Periodic_Message_Ptr) return Unbounded_String; function Copy(obj : in Periodic_Message_Ptr) return Generic_Message_Ptr; function Copy(obj : in Periodic_Message) return Generic_Message_Ptr; function type_of(obj : in Periodic_Message) return unbounded_string_list; function type_of(obj : in Periodic_Message_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Periodic_Message'Class, Periodic_Message_Ptr); -- --------= Aperiodic_Message =-------- type Aperiodic_Message is new Generic_Message with null record; procedure Initialize(obj : in out Aperiodic_Message); procedure Put(obj : in Aperiodic_Message); procedure Put(obj : in Aperiodic_Message_Ptr); procedure Put_Name(obj : in Aperiodic_Message_Ptr); procedure Build_Attributes_XML_String(obj : in Aperiodic_Message; result : in out Unbounded_String); function XML_String(obj : in Aperiodic_Message) return Unbounded_String; function XML_String(obj : in Aperiodic_Message_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Message) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Message_Ptr) return Unbounded_String; function Get_Name (obj : in Aperiodic_Message) return Unbounded_String; function Get_Name (obj : in Aperiodic_Message_Ptr) return Unbounded_String; function Copy(obj : in Aperiodic_Message_Ptr) return Generic_Message_Ptr; function Copy(obj : in Aperiodic_Message) return Generic_Message_Ptr; function type_of(obj : in Aperiodic_Message) return unbounded_string_list; function type_of(obj : in Aperiodic_Message_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Aperiodic_Message'Class, Aperiodic_Message_Ptr); End Messages; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Objects; use Objects; with Tasks; use Tasks; with standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Indexed_Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Resources is type Critical_Section; type Critical_Section_Ptr is access all Critical_Section; type Generic_Resource; type Generic_Resource_Ptr is access all Generic_Resource'Class; type Np_Resource; type Np_Resource_Ptr is access all Np_Resource'Class; type Pip_Resource; type Pip_Resource_Ptr is access all Pip_Resource'Class; type Pcp_Resource; type Pcp_Resource_Ptr is access all Pcp_Resource'Class; type IPcp_Resource; type IPcp_Resource_Ptr is access all IPcp_Resource'Class; type Resources_Type is ( No_Protocol, Priority_Ceiling_Protocol, Priority_Inheritance_Protocol, Immediate_Priority_Ceiling_Protocol); procedure To_Resources_Type is new Convert_Strings(Resources_Type, No_Protocol); procedure To_Resources_Type is new Convert_Unbounded_Strings(Resources_Type, No_Protocol); function XML_String (obj : in Resources_Type) return Unbounded_String; function XML_Ref_String (obj : in Resources_Type) return Unbounded_String; package Resources_Type_io is new text_io.enumeration_io(Resources_Type); use Resources_Type_io; type Priority_Assignment_Type is ( Automatic_Assignment, Manual_Assignment); procedure To_Priority_Assignment_Type is new Convert_Strings(Priority_Assignment_Type, Automatic_Assignment); procedure To_Priority_Assignment_Type is new Convert_Unbounded_Strings(Priority_Assignment_Type, Automatic_Assignment); function XML_String (obj : in Priority_Assignment_Type) return Unbounded_String; function XML_Ref_String (obj : in Priority_Assignment_Type) return Unbounded_String; package Priority_Assignment_Type_io is new text_io.enumeration_io(Priority_Assignment_Type); use Priority_Assignment_Type_io; -- --------= Critical_Section =-------- type Critical_Section is record task_begin : Natural; task_end : Natural; end record; procedure Initialize(obj : out Critical_Section); procedure Put(obj : in Critical_Section); procedure Put(obj : in Critical_Section_Ptr); function Copy(obj : in Critical_Section_Ptr) return Critical_Section_Ptr; function Copy(obj : in Critical_Section) return Critical_Section_Ptr; procedure Build_Attributes_XML_String(obj : in Critical_Section; result : in out Unbounded_String); function XML_String(obj : in Critical_Section) return Unbounded_String; function XML_String(obj : in Critical_Section_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Critical_Section) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Critical_Section, Critical_Section_Ptr); package Resource_Accesses is new Indexed_Tables(Critical_Section, Unbounded_String, Framework_Config.Max_Tasks_For_A_Resource, 0, Put, Initialize, Put, Convert, XML_String, XML_String, to_unbounded_string("task_name")); use Resource_Accesses; subtype Resource_Accesses_Range is Resource_Accesses.indexed_table_range; subtype Resource_Accesses_Range_Ptr is Resource_Accesses.indexed_table_range_Ptr; subtype Resource_Accesses_Table is Resource_Accesses.indexed_table; subtype Resource_Accesses_Table_Ptr is Resource_Accesses.indexed_table_Ptr; -- --------= Generic_Resource =-------- type Generic_Resource is new Named_Object with record state : Natural; size : Natural; address : Natural; protocol : Resources_Type; critical_sections : Resource_Accesses_Table; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Priority_Range; priority_assignment : Priority_Assignment_Type; end record; procedure Initialize(obj : in out Generic_Resource); procedure Put(obj : in Generic_Resource); procedure Put(obj : in Generic_Resource_Ptr); procedure Put_Name(obj : in Generic_Resource_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Resource; result : in out Unbounded_String); function XML_String(obj : in Generic_Resource) return Unbounded_String; function XML_String(obj : in Generic_Resource_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Resource) return Unbounded_String; function XML_Ref_String(obj : in Generic_Resource_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Resource) return Unbounded_String; function Get_Name (obj : in Generic_Resource_Ptr) return Unbounded_String; function Copy(obj : in Generic_Resource_Ptr) return Generic_Resource_Ptr; function Copy(obj : in Generic_Resource) return Generic_Resource_Ptr; function type_of(obj : in Generic_Resource) return unbounded_string_list; function type_of(obj : in Generic_Resource_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Resource'Class, Generic_Resource_Ptr); -- --------= Np_Resource =-------- type Np_Resource is new Generic_Resource with null record; procedure Initialize(obj : in out Np_Resource); procedure Put(obj : in Np_Resource); procedure Put(obj : in Np_Resource_Ptr); procedure Put_Name(obj : in Np_Resource_Ptr); procedure Build_Attributes_XML_String(obj : in Np_Resource; result : in out Unbounded_String); function XML_String(obj : in Np_Resource) return Unbounded_String; function XML_String(obj : in Np_Resource_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Np_Resource) return Unbounded_String; function XML_Ref_String(obj : in Np_Resource_Ptr) return Unbounded_String; function Get_Name (obj : in Np_Resource) return Unbounded_String; function Get_Name (obj : in Np_Resource_Ptr) return Unbounded_String; function Copy(obj : in Np_Resource_Ptr) return Generic_Resource_Ptr; function Copy(obj : in Np_Resource) return Generic_Resource_Ptr; function type_of(obj : in Np_Resource) return unbounded_string_list; function type_of(obj : in Np_Resource_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Np_Resource'Class, Np_Resource_Ptr); -- --------= Pip_Resource =-------- type Pip_Resource is new Generic_Resource with null record; procedure Initialize(obj : in out Pip_Resource); procedure Put(obj : in Pip_Resource); procedure Put(obj : in Pip_Resource_Ptr); procedure Put_Name(obj : in Pip_Resource_Ptr); procedure Build_Attributes_XML_String(obj : in Pip_Resource; result : in out Unbounded_String); function XML_String(obj : in Pip_Resource) return Unbounded_String; function XML_String(obj : in Pip_Resource_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Pip_Resource) return Unbounded_String; function XML_Ref_String(obj : in Pip_Resource_Ptr) return Unbounded_String; function Get_Name (obj : in Pip_Resource) return Unbounded_String; function Get_Name (obj : in Pip_Resource_Ptr) return Unbounded_String; function Copy(obj : in Pip_Resource_Ptr) return Generic_Resource_Ptr; function Copy(obj : in Pip_Resource) return Generic_Resource_Ptr; function type_of(obj : in Pip_Resource) return unbounded_string_list; function type_of(obj : in Pip_Resource_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Pip_Resource'Class, Pip_Resource_Ptr); -- --------= Pcp_Resource =-------- type Pcp_Resource is new Generic_Resource with null record; procedure Initialize(obj : in out Pcp_Resource); procedure Put(obj : in Pcp_Resource); procedure Put(obj : in Pcp_Resource_Ptr); procedure Put_Name(obj : in Pcp_Resource_Ptr); procedure Build_Attributes_XML_String(obj : in Pcp_Resource; result : in out Unbounded_String); function XML_String(obj : in Pcp_Resource) return Unbounded_String; function XML_String(obj : in Pcp_Resource_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Pcp_Resource) return Unbounded_String; function XML_Ref_String(obj : in Pcp_Resource_Ptr) return Unbounded_String; function Get_Name (obj : in Pcp_Resource) return Unbounded_String; function Get_Name (obj : in Pcp_Resource_Ptr) return Unbounded_String; function Copy(obj : in Pcp_Resource_Ptr) return Generic_Resource_Ptr; function Copy(obj : in Pcp_Resource) return Generic_Resource_Ptr; function type_of(obj : in Pcp_Resource) return unbounded_string_list; function type_of(obj : in Pcp_Resource_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Pcp_Resource'Class, Pcp_Resource_Ptr); -- --------= IPcp_Resource =-------- type IPcp_Resource is new Generic_Resource with null record; procedure Initialize(obj : in out IPcp_Resource); procedure Put(obj : in IPcp_Resource); procedure Put(obj : in IPcp_Resource_Ptr); procedure Put_Name(obj : in IPcp_Resource_Ptr); procedure Build_Attributes_XML_String(obj : in IPcp_Resource; result : in out Unbounded_String); function XML_String(obj : in IPcp_Resource) return Unbounded_String; function XML_String(obj : in IPcp_Resource_Ptr) return Unbounded_String; function XML_Ref_String(obj : in IPcp_Resource) return Unbounded_String; function XML_Ref_String(obj : in IPcp_Resource_Ptr) return Unbounded_String; function Get_Name (obj : in IPcp_Resource) return Unbounded_String; function Get_Name (obj : in IPcp_Resource_Ptr) return Unbounded_String; function Copy(obj : in IPcp_Resource_Ptr) return Generic_Resource_Ptr; function Copy(obj : in IPcp_Resource) return Generic_Resource_Ptr; function type_of(obj : in IPcp_Resource) return unbounded_string_list; function type_of(obj : in IPcp_Resource_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (IPcp_Resource'Class, IPcp_Resource_Ptr); type Start_End_Table is Array ( Resource_Accesses_Range ) of Critical_Section; End Resources; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Scheduling_Analysis; use Scheduling_Analysis; with Scheduler_Interface; use Scheduler_Interface; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Deployments is type Generic_Deployment; type Generic_Deployment_Ptr is access all Generic_Deployment'Class; type Static_Deployment; type Static_Deployment_Ptr is access all Static_Deployment'Class; type Dynamic_Deployment; type Dynamic_Deployment_Ptr is access all Dynamic_Deployment'Class; type Deployments_Type is ( Static_Deployment_Type, Dynamic_Deployment_Type); procedure To_Deployments_Type is new Convert_Strings(Deployments_Type, Static_Deployment_Type); procedure To_Deployments_Type is new Convert_Unbounded_Strings(Deployments_Type, Static_Deployment_Type); function XML_String (obj : in Deployments_Type) return Unbounded_String; function XML_Ref_String (obj : in Deployments_Type) return Unbounded_String; package Deployments_Type_io is new text_io.enumeration_io(Deployments_Type); use Deployments_Type_io; -- --------= Generic_Deployment =-------- type Generic_Deployment is new Named_Object with record deployment_type : Deployments_Type; consumer_entities : Generic_Objects_Set; resource_entities : Generic_Objects_Set; end record; procedure Initialize(obj : in out Generic_Deployment); procedure Put(obj : in Generic_Deployment); procedure Put(obj : in Generic_Deployment_Ptr); procedure Put_Name(obj : in Generic_Deployment_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Deployment; result : in out Unbounded_String); function XML_String(obj : in Generic_Deployment) return Unbounded_String; function XML_String(obj : in Generic_Deployment_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Deployment) return Unbounded_String; function XML_Ref_String(obj : in Generic_Deployment_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Deployment) return Unbounded_String; function Get_Name (obj : in Generic_Deployment_Ptr) return Unbounded_String; function Copy(obj : in Generic_Deployment_Ptr) return Generic_Deployment_Ptr; function Copy(obj : in Generic_Deployment) return Generic_Deployment_Ptr; function type_of(obj : in Generic_Deployment) return unbounded_string_list; function type_of(obj : in Generic_Deployment_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Deployment'Class, Generic_Deployment_Ptr); -- --------= Static_Deployment =-------- type Static_Deployment is new Generic_Deployment with record allocation_description : Unbounded_String; end record; procedure Initialize(obj : in out Static_Deployment); procedure Put(obj : in Static_Deployment); procedure Put(obj : in Static_Deployment_Ptr); procedure Put_Name(obj : in Static_Deployment_Ptr); procedure Build_Attributes_XML_String(obj : in Static_Deployment; result : in out Unbounded_String); function XML_String(obj : in Static_Deployment) return Unbounded_String; function XML_String(obj : in Static_Deployment_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Static_Deployment) return Unbounded_String; function XML_Ref_String(obj : in Static_Deployment_Ptr) return Unbounded_String; function Get_Name (obj : in Static_Deployment) return Unbounded_String; function Get_Name (obj : in Static_Deployment_Ptr) return Unbounded_String; function Copy(obj : in Static_Deployment_Ptr) return Generic_Deployment_Ptr; function Copy(obj : in Static_Deployment) return Generic_Deployment_Ptr; function type_of(obj : in Static_Deployment) return unbounded_string_list; function type_of(obj : in Static_Deployment_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Static_Deployment'Class, Static_Deployment_Ptr); -- --------= Dynamic_Deployment =-------- type Dynamic_Deployment is new Generic_Deployment with record allocation_parameters : Scheduling_Parameters; end record; procedure Initialize(obj : in out Dynamic_Deployment); procedure Put(obj : in Dynamic_Deployment); procedure Put(obj : in Dynamic_Deployment_Ptr); procedure Put_Name(obj : in Dynamic_Deployment_Ptr); procedure Build_Attributes_XML_String(obj : in Dynamic_Deployment; result : in out Unbounded_String); function XML_String(obj : in Dynamic_Deployment) return Unbounded_String; function XML_String(obj : in Dynamic_Deployment_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Dynamic_Deployment) return Unbounded_String; function XML_Ref_String(obj : in Dynamic_Deployment_Ptr) return Unbounded_String; function Get_Name (obj : in Dynamic_Deployment) return Unbounded_String; function Get_Name (obj : in Dynamic_Deployment_Ptr) return Unbounded_String; function Copy(obj : in Dynamic_Deployment_Ptr) return Generic_Deployment_Ptr; function Copy(obj : in Dynamic_Deployment) return Generic_Deployment_Ptr; function type_of(obj : in Dynamic_Deployment) return unbounded_string_list; function type_of(obj : in Dynamic_Deployment_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Dynamic_Deployment'Class, Dynamic_Deployment_Ptr); End Deployments; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Scheduler_Interface; use Scheduler_Interface; with Memories; use Memories; with Caches; use Caches; with standards_io; use standards_io; use standards_io.natural_io; 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 Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Core_Units is type Core_Unit; type Core_Unit_Ptr is access all Core_Unit'Class; type Isa_Type is ( i386, powerpc, risc5, sparc1, sparc2, sparc3, sparc4, sparc5, sparc6, sparc7, sparc8); procedure To_Isa_Type is new Convert_Strings(Isa_Type, i386); procedure To_Isa_Type is new Convert_Unbounded_Strings(Isa_Type, i386); function XML_String (obj : in Isa_Type) return Unbounded_String; function XML_Ref_String (obj : in Isa_Type) return Unbounded_String; package Isa_Type_io is new text_io.enumeration_io(Isa_Type); use Isa_Type_io; -- --------= Core_Unit =-------- type Core_Unit is new Named_Object with record scheduling : Scheduling_Parameters; speed : Natural; l1_cache_system_name : Unbounded_String; worstcase_perequest_intrabank_memory_interference : Natural; worstcase_perequest_interbank_memory_interference : Natural; memory_partitions : Memories_Table; isa : Isa_Type; end record; procedure Initialize(obj : in out Core_Unit); procedure Put(obj : in Core_Unit); procedure Put(obj : in Core_Unit_Ptr); procedure Put_Name(obj : in Core_Unit_Ptr); procedure Build_Attributes_XML_String(obj : in Core_Unit; result : in out Unbounded_String); function XML_String(obj : in Core_Unit) return Unbounded_String; function XML_String(obj : in Core_Unit_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Core_Unit) return Unbounded_String; function XML_Ref_String(obj : in Core_Unit_Ptr) return Unbounded_String; function Get_Name (obj : in Core_Unit) return Unbounded_String; function Get_Name (obj : in Core_Unit_Ptr) return Unbounded_String; function Copy(obj : in Core_Unit_Ptr) return Core_Unit_Ptr; function Copy(obj : in Core_Unit) return Core_Unit_Ptr; function type_of(obj : in Core_Unit) return unbounded_string_list; function type_of(obj : in Core_Unit_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Core_Unit'Class, Core_Unit_Ptr); package Core_Units_Table_Package is new Tables(Core_Unit_Ptr, Framework_Config.Max_Core_Units, Put, XML_String, XML_Ref_String); use Core_Units_Table_Package; subtype Core_Units_Range is Core_Units_Table_Package.table_range; subtype Core_Units_Range_Ptr is Core_Units_Table_Package.table_range_Ptr; subtype Core_Units_Table is Core_Units_Table_Package.table; subtype Core_Units_Table_Ptr is Core_Units_Table_Package.table_Ptr; End Core_Units; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Resources; use Resources; with Tasks; use Tasks; with Messages; use Messages; with Buffers; use Buffers; with Caches; use Caches; with standards_io; use standards_io; use standards_io.natural_io; 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 Indexed_Tables; with natural_util; use natural_util; with Lists; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Time_Unit_Events is type Time_Unit_Event_Type is ( Start_Of_Task_Capacity, End_Of_Task_Capacity, Write_To_Buffer, Read_From_Buffer, Buffer_Overflow, Buffer_Underflow, Context_Switch_Overhead, Running_Task, Task_activation, Allocate_Resource, Release_Resource, Wait_For_Resource, Send_Message, Receive_Message, Wait_For_Memory, Address_Space_Activation, Preemption); procedure To_Time_Unit_Event_Type is new Convert_Strings(Time_Unit_Event_Type, Start_Of_Task_Capacity); procedure To_Time_Unit_Event_Type is new Convert_Unbounded_Strings(Time_Unit_Event_Type, Start_Of_Task_Capacity); function XML_String (obj : in Time_Unit_Event_Type) return Unbounded_String; function XML_Ref_String (obj : in Time_Unit_Event_Type) return Unbounded_String; package Time_Unit_Event_Type_io is new text_io.enumeration_io(Time_Unit_Event_Type); use Time_Unit_Event_Type_io; type Time_Unit_Event (type_of_event : Time_Unit_Event_Type ) is record case type_of_event is when start_of_task_capacity => start_task : Generic_Task_Ptr; when end_of_task_capacity => end_task : Generic_Task_Ptr; when write_to_buffer => write_buffer : Buffer_Ptr; write_task : Generic_Task_Ptr; write_size : Natural; write_buffer_current_data_size : Natural; when read_from_buffer => read_buffer : Buffer_Ptr; read_task : Generic_Task_Ptr; read_size : Natural; read_buffer_current_data_size : Natural; when buffer_overflow => overflow_buffer : Buffer_Ptr; overflow_task : Generic_Task_Ptr; overflow_write_size : Natural; overflow_buffer_current_data_size : Natural; when buffer_underflow => underflow_buffer : Buffer_Ptr; underflow_task : Generic_Task_Ptr; underflow_read_size : Natural; underflow_buffer_current_data_size : Natural; when context_switch_overhead => switched_task : Generic_Task_Ptr; when running_task => running_core : Unbounded_String; running_task : Generic_Task_Ptr; current_priority : Priority_Range; CRPD : Natural; cache_state : Unbounded_String; when task_activation => activation_task : Generic_Task_Ptr; when allocate_resource => allocate_task : Generic_Task_Ptr; allocate_resource : Generic_Resource_Ptr; when release_resource => release_task : Generic_Task_Ptr; release_resource : Generic_Resource_Ptr; when wait_for_resource => wait_for_resource_task : Generic_Task_Ptr; wait_for_resource : Generic_Resource_Ptr; when send_message => send_task : Generic_Task_Ptr; send_message : Generic_Message_Ptr; when receive_message => receive_task : Generic_Task_Ptr; receive_message : Generic_Message_Ptr; when wait_for_memory => wait_for_memory_task : Generic_Task_Ptr; wait_for_cache : Generic_Cache_Ptr; when address_space_activation => activation_address_space : Unbounded_String; duration : Natural; when preemption => preempted_task : Generic_Task_Ptr; preempting_task : Generic_Task_Ptr; evicted_ucbs : Natural; end case; end record; type Time_Unit_Event_Ptr is access all Time_Unit_Event; procedure Initialize(obj : out Time_Unit_Event_Ptr); procedure Put(obj : in Time_Unit_Event_Ptr); function Copy(obj : in Time_Unit_Event_Ptr) return Time_Unit_Event_Ptr; function Copy(obj : in Time_Unit_Event) return Time_Unit_Event_Ptr; function XML_String(obj : in Time_Unit_Event) return Unbounded_String; function XML_String(obj : in Time_Unit_Event_Ptr) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Time_Unit_Event, Time_Unit_Event_Ptr); function XML_Ref_String(obj : in Time_Unit_Event) return Unbounded_String; function XML_Ref_String(obj : in Time_Unit_Event_Ptr) return Unbounded_String; package Time_Unit_Package is new Indexed_Tables(Time_Unit_Event_Ptr, Natural, framework_config.max_scheduling_period, 0, Put, Initialize, Put, Format, XML_String, XML_Ref_String, to_unbounded_string("time_unit")); use Time_Unit_Package; subtype Time_Unit_Range is Time_Unit_Package.indexed_table_range; subtype Time_Unit_Range_Ptr is Time_Unit_Package.indexed_table_range_Ptr; subtype Time_Unit_Table is Time_Unit_Package.indexed_table; subtype Time_Unit_Table_Ptr is Time_Unit_Package.indexed_table_Ptr; package Time_Unit_Lists_Package is new Lists(Time_Unit_Event_Ptr, Put, Free, XML_String); use Time_Unit_Lists_Package; type Time_Unit_Event_Type_Boolean_Table is Array ( Time_Unit_Event_Type'Range ) of Boolean; End Time_Unit_Events; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Time_Unit_Events; use Time_Unit_Events; with Call_Framework_Interface; use Call_Framework_Interface; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; use standards_io.boolean_io; with Unbounded_Strings; use Unbounded_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Editor_Config is type Data_From_Simulation is ( Worst_Case, Best_Case, Average_Case, Plot_Case); procedure To_Data_From_Simulation is new Convert_Strings(Data_From_Simulation, Worst_Case); procedure To_Data_From_Simulation is new Convert_Unbounded_Strings(Data_From_Simulation, Worst_Case); function XML_String (obj : in Data_From_Simulation) return Unbounded_String; function XML_Ref_String (obj : in Data_From_Simulation) return Unbounded_String; package Data_From_Simulation_io is new text_io.enumeration_io(Data_From_Simulation); use Data_From_Simulation_io; type Data_From_Simulation_Table is Array ( Data_From_Simulation'Range ) of Boolean; WCRT_With_memory_interferences : Memory_Interference_Computation_Approach_Type := No_Memory_Interference; WCRT_With_CRPD : CRPD_Computation_Approach_Type := No_CRPD; display_release_resource : Boolean := False; display_wait_for_resource : Boolean := False; display_allocate_resource : Boolean := True; display_task_activation : Boolean := True; display_address_space_activation : Boolean := False; display_address_space_completion : Boolean := False; draw_core_unit_time_line : Boolean := True; several_colors_for_time_lines : Boolean := True; draw_address_space_time_line : Boolean := False; -- Maximum number of time line displayed at simulation. If the number of tasks/messages/buffers/resources in a project is greater that this constant, the user have to choose which object the simulator engine has to display Max_Time_Line_To_Display : Natural := 30; -- This constant stores the number of time line we draw between each timing axis Time_Line_Between_Time_Axis : Natural := 4; -- This constant stores how time unit axis are displayed. The constant give a duration (in time unit) between each time display on the axis Display_Witch_Time_Unit_Label : constant Natural := 5; -- Maximum number of time line which can de computed All these time line can not be displayed Max_Time_Line : constant Natural := ((((Max_Tasks + Max_Messages) + Max_Resources) + Max_Buffers) + ((((Max_Tasks + Max_Messages) + Max_Resources) + Max_Buffers) / Time_Line_Between_Time_Axis)); -- Each item of this boolean table store the user's choose on which event the simulator engine will generate. options tuned by the user AT RUNTIME Generate_Events : Time_Unit_Event_Type_Boolean_Table := (others => True); -- should we do simulations on all processors ? options tuned by the user AT RUNTIME Schedule_All_Processors : Boolean := False; -- should we display the event table after simulation ? options tuned by the user AT RUNTIME Schedule_And_Display_Event_Table : Boolean := False; -- should we save the event table after simulation ? options tuned by the user AT RUNTIME Schedule_And_Export_Event_Table : Boolean := False; -- should we do simulations according to offset ? options tuned by the user AT RUNTIME Schedule_With_Offsets : Boolean := True; -- should we do simulations according to shared resources ? options tuned by the user AT RUNTIME Schedule_With_Resources : Boolean := True; -- should we do simulations according to jitters ? options tuned by the user AT RUNTIME Schedule_With_Jitters : Boolean := False; -- should we do simulations according to task precedencies ? options tuned by the user AT RUNTIME Schedule_With_Precedencies : Boolean := True; -- should we do simulations according to task crpd ? options tuned by the user AT RUNTIME Schedule_With_Crpd : Boolean := False; -- should we detect scheduling anomalies during scheudling simulations ? options tuned by the user AT RUNTIME Anomaly_Detection : Boolean := False; -- should run dvfs adaptation AT RUNTIME Dvfs : Boolean := False; -- try to decrease preemption during simulations. options tuned by the user AT RUNTIME Minimize_Preemption : Boolean := False; Selected_Font : Unbounded_String := to_unbounded_string("-adobe-helvetica-medium-o-normal--14-140-75-75-p-78-iso8859-1"); --should we use only one seed to all random values generated during simulations ? options tuned by the user AT RUNTIME Has_Global_Seed : Boolean := True; --should we use seed with a predictable value to be able to do predictable simulation ? options tuned by the user AT RUNTIME Is_Global_Predictable_Seed : Boolean := False; --if Has_Global_Seed and Is_Global_Predictable_Seed are True, Global_Seed_Value store the seed. options tuned by the user AT RUNTIME Global_Seed_Value : Natural := 0; --should we compute, from a simulation worst/best/average/plot cases from response time. options tuned by the user AT RUNTIME Response_Time_From_Simulation : Data_From_Simulation_Table; --should we compute, from a simulation worst/best/average/plot cases from blocking time. options tuned by the user AT RUNTIME Blocking_Time_From_Simulation : Data_From_Simulation_Table; -- should we compute context switch during the simulation ? options tuned by the user AT RUNTIME Context_Switch_From_Simulation : Boolean := True; -- should we compute preemption during the simulation ? options tuned by the user AT RUNTIME Preemption_From_Simulation : Boolean := True; -- should we run the event analyser during the simulation ? options tuned by the user AT RUNTIME Run_Event_Analyzer_From_Simulation : Boolean := True; End Editor_Config; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Statements; use Statements; with Expressions; use Expressions; with standards_io; use standards_io; use standards_io.natural_io; use standards_io.boolean_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Lists; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Indexed_Tables; Package Automaton is type State; type State_Ptr is access all State'Class; type Synchronization; type Synchronization_Ptr is access all Synchronization'Class; type Transition; type Transition_Ptr is access all Transition'Class; type Automaton_Status; type Automaton_Status_Ptr is access all Automaton_Status; type Transition_Status; type Transition_Status_Ptr is access all Transition_Status; type Synchronizations_Type is ( Send, Receive); procedure To_Synchronizations_Type is new Convert_Strings(Synchronizations_Type, Send); procedure To_Synchronizations_Type is new Convert_Unbounded_Strings(Synchronizations_Type, Send); function XML_String (obj : in Synchronizations_Type) return Unbounded_String; function XML_Ref_String (obj : in Synchronizations_Type) return Unbounded_String; package Synchronizations_Type_io is new text_io.enumeration_io(Synchronizations_Type); use Synchronizations_Type_io; type Status_Type is ( Ready, Pended, Rendezvous, Guarded, Unreachable); procedure To_Status_Type is new Convert_Strings(Status_Type, Ready); procedure To_Status_Type is new Convert_Unbounded_Strings(Status_Type, Ready); function XML_String (obj : in Status_Type) return Unbounded_String; function XML_Ref_String (obj : in Status_Type) return Unbounded_String; package Status_Type_io is new text_io.enumeration_io(Status_Type); use Status_Type_io; -- --------= State =-------- type State is new Named_Object with record is_initial : Boolean; end record; procedure Initialize(obj : in out State); procedure Put(obj : in State); procedure Put(obj : in State_Ptr); procedure Put_Name(obj : in State_Ptr); procedure Build_Attributes_XML_String(obj : in State; result : in out Unbounded_String); function XML_String(obj : in State) return Unbounded_String; function XML_String(obj : in State_Ptr) return Unbounded_String; function XML_Ref_String(obj : in State) return Unbounded_String; function XML_Ref_String(obj : in State_Ptr) return Unbounded_String; function Get_Name (obj : in State) return Unbounded_String; function Get_Name (obj : in State_Ptr) return Unbounded_String; function Copy(obj : in State_Ptr) return State_Ptr; function Copy(obj : in State) return State_Ptr; function type_of(obj : in State) return unbounded_string_list; function type_of(obj : in State_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (State'Class, State_Ptr); package State_Lists_Package is new Lists(State_Ptr, Put, Free, XML_String); use State_Lists_Package; subtype State_Lists is State_Lists_Package.list; subtype State_Lists_Ptr is State_Lists_Package.list_Ptr; subtype State_Lists_Iterator is State_Lists_Package.iterator; subtype State_Lists_Iterator_Ptr is State_Lists_Package.iterator_Ptr; -- --------= Synchronization =-------- type Synchronization is new Named_Object with record synchronization_type : Synchronizations_Type; end record; procedure Initialize(obj : in out Synchronization); procedure Put(obj : in Synchronization); procedure Put(obj : in Synchronization_Ptr); procedure Put_Name(obj : in Synchronization_Ptr); procedure Build_Attributes_XML_String(obj : in Synchronization; result : in out Unbounded_String); function XML_String(obj : in Synchronization) return Unbounded_String; function XML_String(obj : in Synchronization_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Synchronization) return Unbounded_String; function XML_Ref_String(obj : in Synchronization_Ptr) return Unbounded_String; function Get_Name (obj : in Synchronization) return Unbounded_String; function Get_Name (obj : in Synchronization_Ptr) return Unbounded_String; function Copy(obj : in Synchronization_Ptr) return Synchronization_Ptr; function Copy(obj : in Synchronization) return Synchronization_Ptr; function type_of(obj : in Synchronization) return unbounded_string_list; function type_of(obj : in Synchronization_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Synchronization'Class, Synchronization_Ptr); -- --------= Transition =-------- type Transition is new Named_Object with record from_state : State_Ptr; to_state : State_Ptr; guards : Generic_Expression_Ptr; clocks : Generic_Statement_Ptr; synchronization : Synchronization_Ptr; end record; procedure Initialize(obj : in out Transition); procedure Put(obj : in Transition); procedure Put(obj : in Transition_Ptr); procedure Put_Name(obj : in Transition_Ptr); procedure Build_Attributes_XML_String(obj : in Transition; result : in out Unbounded_String); function XML_String(obj : in Transition) return Unbounded_String; function XML_String(obj : in Transition_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Transition) return Unbounded_String; function XML_Ref_String(obj : in Transition_Ptr) return Unbounded_String; function Get_Name (obj : in Transition) return Unbounded_String; function Get_Name (obj : in Transition_Ptr) return Unbounded_String; function Copy(obj : in Transition_Ptr) return Transition_Ptr; function Copy(obj : in Transition) return Transition_Ptr; function type_of(obj : in Transition) return unbounded_string_list; function type_of(obj : in Transition_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Transition'Class, Transition_Ptr); package Transition_Lists_Package is new Lists(Transition_Ptr, Put, Free, XML_String); use Transition_Lists_Package; subtype Transition_Lists is Transition_Lists_Package.list; subtype Transition_Lists_Ptr is Transition_Lists_Package.list_Ptr; subtype Transition_Lists_Iterator is Transition_Lists_Package.iterator; subtype Transition_Lists_Iterator_Ptr is Transition_Lists_Package.iterator_Ptr; -- --------= Automaton_Status =-------- type Automaton_Status is record current_state : State_Ptr; end record; procedure Initialize(obj : out Automaton_Status); procedure Put(obj : in Automaton_Status); procedure Put(obj : in Automaton_Status_Ptr); function Copy(obj : in Automaton_Status_Ptr) return Automaton_Status_Ptr; function Copy(obj : in Automaton_Status) return Automaton_Status_Ptr; procedure Build_Attributes_XML_String(obj : in Automaton_Status; result : in out Unbounded_String); function XML_String(obj : in Automaton_Status) return Unbounded_String; function XML_String(obj : in Automaton_Status_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Automaton_Status) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Automaton_Status, Automaton_Status_Ptr); package Package_Automaton_Status is new Indexed_Tables(Automaton_Status, Unbounded_String, Framework_Config.Max_Sections, 0, Put, Initialize, Put, Convert, XML_String, XML_Ref_String); use Package_Automaton_Status; subtype Automaton_Status_Table is Package_Automaton_Status.indexed_table; subtype Automaton_Status_Table_Ptr is Package_Automaton_Status.indexed_table_Ptr; subtype Automaton_Status_Range is Package_Automaton_Status.indexed_table_range; subtype Automaton_Status_Range_Ptr is Package_Automaton_Status.indexed_table_range_Ptr; -- --------= Transition_Status =-------- type Transition_Status is record code : Transition_Ptr; status : Status_Type; wakeup_time : Natural; end record; procedure Initialize(obj : out Transition_Status); procedure Put(obj : in Transition_Status); procedure Put(obj : in Transition_Status_Ptr); function Copy(obj : in Transition_Status_Ptr) return Transition_Status_Ptr; function Copy(obj : in Transition_Status) return Transition_Status_Ptr; procedure Build_Attributes_XML_String(obj : in Transition_Status; result : in out Unbounded_String); function XML_String(obj : in Transition_Status) return Unbounded_String; function XML_String(obj : in Transition_Status_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Transition_Status) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Transition_Status, Transition_Status_Ptr); package Package_Transition_Status is new Indexed_Tables(Transition_Status, Unbounded_String, Framework_Config.Max_Transitions, 0, Put, Initialize, Put, Convert, XML_String, XML_Ref_String); use Package_Transition_Status; subtype Transition_Status_Table is Package_Transition_Status.indexed_table; subtype Transition_Status_Table_Ptr is Package_Transition_Status.indexed_table_Ptr; subtype Transition_Status_Range is Package_Transition_Status.indexed_table_range; subtype Transition_Status_Range_Ptr is Package_Transition_Status.indexed_table_range_Ptr; End Automaton; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package MILS_Security is type MILS_Confidentiality_Level_Type is ( UnClassified, Classified, Secret, Top_Secret); procedure To_MILS_Confidentiality_Level_Type is new Convert_Strings(MILS_Confidentiality_Level_Type, UnClassified); procedure To_MILS_Confidentiality_Level_Type is new Convert_Unbounded_Strings(MILS_Confidentiality_Level_Type, UnClassified); function XML_String (obj : in MILS_Confidentiality_Level_Type) return Unbounded_String; function XML_Ref_String (obj : in MILS_Confidentiality_Level_Type) return Unbounded_String; package MILS_Confidentiality_Level_Type_io is new text_io.enumeration_io(MILS_Confidentiality_Level_Type); use MILS_Confidentiality_Level_Type_io; type MILS_Integrity_Level_Type is ( Low, Medium, High); procedure To_MILS_Integrity_Level_Type is new Convert_Strings(MILS_Integrity_Level_Type, Low); procedure To_MILS_Integrity_Level_Type is new Convert_Unbounded_Strings(MILS_Integrity_Level_Type, Low); function XML_String (obj : in MILS_Integrity_Level_Type) return Unbounded_String; function XML_Ref_String (obj : in MILS_Integrity_Level_Type) return Unbounded_String; package MILS_Integrity_Level_Type_io is new text_io.enumeration_io(MILS_Integrity_Level_Type); use MILS_Integrity_Level_Type_io; type MILS_Component_Type is ( SLS, MSLS, MLS); procedure To_MILS_Component_Type is new Convert_Strings(MILS_Component_Type, SLS); procedure To_MILS_Component_Type is new Convert_Unbounded_Strings(MILS_Component_Type, SLS); function XML_String (obj : in MILS_Component_Type) return Unbounded_String; function XML_Ref_String (obj : in MILS_Component_Type) return Unbounded_String; package MILS_Component_Type_io is new text_io.enumeration_io(MILS_Component_Type); use MILS_Component_Type_io; type MILS_Partition_Type is ( Device, Application); procedure To_MILS_Partition_Type is new Convert_Strings(MILS_Partition_Type, Device); procedure To_MILS_Partition_Type is new Convert_Unbounded_Strings(MILS_Partition_Type, Device); function XML_String (obj : in MILS_Partition_Type) return Unbounded_String; function XML_Ref_String (obj : in MILS_Partition_Type) return Unbounded_String; package MILS_Partition_Type_io is new text_io.enumeration_io(MILS_Partition_Type); use MILS_Partition_Type_io; type MILS_Task_Type is ( Application, MMR, Guard, Collator, Downgrader, Upgrader); procedure To_MILS_Task_Type is new Convert_Strings(MILS_Task_Type, Application); procedure To_MILS_Task_Type is new Convert_Unbounded_Strings(MILS_Task_Type, Application); function XML_String (obj : in MILS_Task_Type) return Unbounded_String; function XML_Ref_String (obj : in MILS_Task_Type) return Unbounded_String; package MILS_Task_Type_io is new text_io.enumeration_io(MILS_Task_Type); use MILS_Task_Type_io; End MILS_Security; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Laws is type Laws_Type is ( Uniform_Law_Type, Laplace_Gauss_Law_Type, Exponential_Law_Type); procedure To_Laws_Type is new Convert_Strings(Laws_Type, Uniform_Law_Type); procedure To_Laws_Type is new Convert_Unbounded_Strings(Laws_Type, Uniform_Law_Type); function XML_String (obj : in Laws_Type) return Unbounded_String; function XML_Ref_String (obj : in Laws_Type) return Unbounded_String; package Laws_Type_io is new text_io.enumeration_io(Laws_Type); use Laws_Type_io; End Laws; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Access_Lists; with standards_io; use standards_io; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Generic_Graph is type Generic_Node; type Generic_Node_Ptr is access all Generic_Node'Class; type Generic_Edge; type Generic_Edge_Ptr is access all Generic_Edge'Class; type Graph; type Graph_Ptr is access all Graph'Class; -- --------= Generic_Node =-------- type Generic_Node is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; Id : Unbounded_String; end record; procedure Initialize(obj : in out Generic_Node); procedure Put(obj : in Generic_Node); procedure Put(obj : in Generic_Node_Ptr); procedure Put_Name(obj : in Generic_Node_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Node; result : in out Unbounded_String); function XML_String(obj : in Generic_Node) return Unbounded_String; function XML_String(obj : in Generic_Node_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Node) return Unbounded_String; function XML_Ref_String(obj : in Generic_Node_Ptr) return Unbounded_String; function Copy(obj : in Generic_Node_Ptr) return Generic_Node_Ptr; function Copy(obj : in Generic_Node) return Generic_Node_Ptr; function type_of(obj : in Generic_Node) return unbounded_string_list; function type_of(obj : in Generic_Node_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Node'Class, Generic_Node_Ptr); package Node_Lists_Package is new Access_Lists(Generic_Node'class, Generic_Node_Ptr, Put, Free, Copy, XML_String); use Node_Lists_Package; subtype Node_Lists is Node_Lists_Package.List; subtype Node_Lists_Ptr is Node_Lists_Package.List_Ptr; subtype Node_Lists_Iterator is Node_Lists_Package.Iterator; subtype Node_Lists_Iterator_Ptr is Node_Lists_Package.Iterator_Ptr; -- --------= Generic_Edge =-------- type Generic_Edge is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; end record; procedure Initialize(obj : in out Generic_Edge); procedure Put(obj : in Generic_Edge); procedure Put(obj : in Generic_Edge_Ptr); procedure Put_Name(obj : in Generic_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Edge; result : in out Unbounded_String); function XML_String(obj : in Generic_Edge) return Unbounded_String; function XML_String(obj : in Generic_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Edge) return Unbounded_String; function XML_Ref_String(obj : in Generic_Edge_Ptr) return Unbounded_String; function Copy(obj : in Generic_Edge_Ptr) return Generic_Edge_Ptr; function Copy(obj : in Generic_Edge) return Generic_Edge_Ptr; function type_of(obj : in Generic_Edge) return unbounded_string_list; function type_of(obj : in Generic_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Edge'Class, Generic_Edge_Ptr); package Edge_Lists_Package is new Access_Lists(Generic_Edge'class, Generic_Edge_Ptr, Put, Free, Copy, XML_String); use Edge_Lists_Package; subtype Edge_Lists is Edge_Lists_Package.List; subtype Edge_Lists_Ptr is Edge_Lists_Package.List_Ptr; subtype Edge_Lists_Iterator is Edge_Lists_Package.Iterator; subtype Edge_Lists_Iterator_Ptr is Edge_Lists_Package.Iterator_Ptr; -- --------= Graph =-------- type Graph is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; Nodes : Node_Lists; Edges : Edge_Lists; end record; procedure Initialize(obj : in out Graph); procedure Put(obj : in Graph); procedure Put(obj : in Graph_Ptr); procedure Put_Name(obj : in Graph_Ptr); procedure Build_Attributes_XML_String(obj : in Graph; result : in out Unbounded_String); function XML_String(obj : in Graph) return Unbounded_String; function XML_String(obj : in Graph_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Graph) return Unbounded_String; function XML_Ref_String(obj : in Graph_Ptr) return Unbounded_String; function Copy(obj : in Graph_Ptr) return Graph_Ptr; function Copy(obj : in Graph) return Graph_Ptr; function type_of(obj : in Graph) return unbounded_string_list; function type_of(obj : in Graph_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Graph'Class, Graph_Ptr); End Generic_Graph; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Scheduling_Analysis; use Scheduling_Analysis; with Processors; use Processors; with Tasks; use Tasks; 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 standards_io; use standards_io; use standards_io.natural_io; use standards_io.double_io; use standards_io.boolean_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Indexed_Tables; with Tables; with natural_util; use natural_util; with Time_Unit_Events; use Time_Unit_Events; use Time_Unit_Events.Time_Unit_Package; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; with Ada.Numerics.Aux; use Ada.Numerics.Aux; Package Multiprocessor_Services_Interface is type Scheduling_Result; type Scheduling_Result_Ptr is access all Scheduling_Result; type Run_Server; type Run_Server_Ptr is access all Run_Server'Class; type Run_Server_Primal; type Run_Server_Primal_Ptr is access all Run_Server_Primal'Class; type Run_Server_Dual; type Run_Server_Dual_Ptr is access all Run_Server_Dual'Class; -- --------= Scheduling_Result =-------- type Scheduling_Result is record scheduling_msg : Unbounded_String; has_error : Boolean; error_msg : Unbounded_String; result : Scheduling_Sequence_Ptr; end record; procedure Initialize(obj : out Scheduling_Result); procedure Put(obj : in Scheduling_Result); procedure Put(obj : in Scheduling_Result_Ptr); function Copy(obj : in Scheduling_Result_Ptr) return Scheduling_Result_Ptr; function Copy(obj : in Scheduling_Result) return Scheduling_Result_Ptr; procedure Build_Attributes_XML_String(obj : in Scheduling_Result; result : in out Unbounded_String); function XML_String(obj : in Scheduling_Result) return Unbounded_String; function XML_String(obj : in Scheduling_Result_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Result) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Scheduling_Result, Scheduling_Result_Ptr); package Scheduling_Result_Per_Processor_Package is new Indexed_Tables(Scheduling_Result, Generic_Processor_Ptr, Framework_Config.Max_Processors, 0, Put, Initialize, Processors.Put_Name, Get_Name, XML_String, XML_Ref_String, to_unbounded_string("time_unit")); use Scheduling_Result_Per_Processor_Package; subtype Scheduling_Table is Scheduling_Result_Per_Processor_Package.indexed_table; subtype Scheduling_Table_Ptr is Scheduling_Result_Per_Processor_Package.indexed_table_Ptr; subtype Scheduling_Table_Range is Scheduling_Result_Per_Processor_Package.indexed_table_range; subtype Scheduling_Table_Range_Ptr is Scheduling_Result_Per_Processor_Package.indexed_table_range_Ptr; package Naturals_Table_Package is new Tables(Natural, framework_config.max_scheduling_period, Put, XML_String, XML_Ref_String); use Naturals_Table_Package; subtype Naturals_Table_Range is Naturals_Table_Package.table_range; subtype Naturals_Table_Range_Ptr is Naturals_Table_Package.table_range_Ptr; subtype Naturals_Table is Naturals_Table_Package.table; subtype Naturals_Table_Ptr is Naturals_Table_Package.table_Ptr; package Periodic_Tasks_Table_Package is new Tables(Periodic_Task_Ptr, Framework_Config.Max_Tasks, Put, XML_String, XML_Ref_String); use Periodic_Tasks_Table_Package; subtype Periodic_Tasks_Table_Range is Periodic_Tasks_Table_Package.table_range; subtype Periodic_Tasks_Table_Range_Ptr is Periodic_Tasks_Table_Package.table_range_Ptr; subtype Periodic_Tasks_Table is Periodic_Tasks_Table_Package.table; subtype Periodic_Tasks_Table_Ptr is Periodic_Tasks_Table_Package.table_Ptr; -- --------= Run_Server =-------- type Run_Server is new Periodic_Task with record rate : Double; core : Unbounded_String; executing : Boolean; deadlines : Naturals_Table; periods : Naturals_Table; job : Naturals_Table_Range; job_capacity : Natural; job_duration : Natural; job_release : Natural; job_deadline : Natural; end record; procedure Initialize(obj : in out Run_Server); procedure Put(obj : in Run_Server); procedure Put(obj : in Run_Server_Ptr); procedure Put_Name(obj : in Run_Server_Ptr); procedure Build_Attributes_XML_String(obj : in Run_Server; result : in out Unbounded_String); function XML_String(obj : in Run_Server) return Unbounded_String; function XML_String(obj : in Run_Server_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Run_Server) return Unbounded_String; function XML_Ref_String(obj : in Run_Server_Ptr) return Unbounded_String; function Get_Name (obj : in Run_Server) return Unbounded_String; function Get_Name (obj : in Run_Server_Ptr) return Unbounded_String; function Copy(obj : in Run_Server_Ptr) return Run_Server_Ptr; function Copy(obj : in Run_Server) return Run_Server_Ptr; function type_of(obj : in Run_Server) return unbounded_string_list; function type_of(obj : in Run_Server_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Run_Server'Class, Run_Server_Ptr); package Run_Servers_Table_Package is new Tables(Run_Server_Ptr, Framework_Config.Max_Tasks, Put, XML_String, XML_String); use Run_Servers_Table_Package; subtype Run_Servers_Table_Range is Run_Servers_Table_Package.table_range; subtype Run_Servers_Table_Range_Ptr is Run_Servers_Table_Package.table_range_Ptr; subtype Run_Servers_Table is Run_Servers_Table_Package.table; subtype Run_Servers_Table_Ptr is Run_Servers_Table_Package.table_Ptr; -- --------= Run_Server_Primal =-------- type Run_Server_Primal is new Run_Server with record packed_servers : Run_Servers_Table; end record; procedure Initialize(obj : in out Run_Server_Primal); procedure Put(obj : in Run_Server_Primal); procedure Put(obj : in Run_Server_Primal_Ptr); procedure Put_Name(obj : in Run_Server_Primal_Ptr); procedure Build_Attributes_XML_String(obj : in Run_Server_Primal; result : in out Unbounded_String); function XML_String(obj : in Run_Server_Primal) return Unbounded_String; function XML_String(obj : in Run_Server_Primal_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Run_Server_Primal) return Unbounded_String; function XML_Ref_String(obj : in Run_Server_Primal_Ptr) return Unbounded_String; function Get_Name (obj : in Run_Server_Primal) return Unbounded_String; function Get_Name (obj : in Run_Server_Primal_Ptr) return Unbounded_String; function Copy(obj : in Run_Server_Primal_Ptr) return Run_Server_Ptr; function Copy(obj : in Run_Server_Primal) return Run_Server_Ptr; function type_of(obj : in Run_Server_Primal) return unbounded_string_list; function type_of(obj : in Run_Server_Primal_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Run_Server_Primal'Class, Run_Server_Primal_Ptr); -- --------= Run_Server_Dual =-------- type Run_Server_Dual is new Run_Server with record primal_server : Run_Server_Primal_Ptr; end record; procedure Initialize(obj : in out Run_Server_Dual); procedure Put(obj : in Run_Server_Dual); procedure Put(obj : in Run_Server_Dual_Ptr); procedure Put_Name(obj : in Run_Server_Dual_Ptr); procedure Build_Attributes_XML_String(obj : in Run_Server_Dual; result : in out Unbounded_String); function XML_String(obj : in Run_Server_Dual) return Unbounded_String; function XML_String(obj : in Run_Server_Dual_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Run_Server_Dual) return Unbounded_String; function XML_Ref_String(obj : in Run_Server_Dual_Ptr) return Unbounded_String; function Get_Name (obj : in Run_Server_Dual) return Unbounded_String; function Get_Name (obj : in Run_Server_Dual_Ptr) return Unbounded_String; function Copy(obj : in Run_Server_Dual_Ptr) return Run_Server_Ptr; function Copy(obj : in Run_Server_Dual) return Run_Server_Ptr; function type_of(obj : in Run_Server_Dual) return unbounded_string_list; function type_of(obj : in Run_Server_Dual_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Run_Server_Dual'Class, Run_Server_Dual_Ptr); End Multiprocessor_Services_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Queueing_Systems is type Queueing_Systems_Type is ( Qs_Pp1, Qs_Mm1, Qs_Md1, Qs_Mp1, Qs_Mg1, Qs_Mms, Qs_Mds, Qs_Mps, Qs_Mgs, Qs_Mm1n, Qs_Md1n, Qs_Mp1n, Qs_Mg1n, Qs_Mmsn, Qs_Mdsn, Qs_Mpsn, Qs_Mgsn); procedure To_Queueing_Systems_Type is new Convert_Strings(Queueing_Systems_Type, Qs_Mm1); procedure To_Queueing_Systems_Type is new Convert_Unbounded_Strings(Queueing_Systems_Type, Qs_Mm1); function XML_String (obj : in Queueing_Systems_Type) return Unbounded_String; function XML_Ref_String (obj : in Queueing_Systems_Type) return Unbounded_String; package Queueing_Systems_Type_io is new text_io.enumeration_io(Queueing_Systems_Type); use Queueing_Systems_Type_io; End Queueing_Systems; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with CFG_Nodes; use CFG_Nodes; with standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Basic_Blocks is type Basic_Block; type Basic_Block_Ptr is access all Basic_Block'Class; type Basic_Block_Record; type Basic_Block_Record_Ptr is access all Basic_Block_Record; -- --------= Basic_Block =-------- type Basic_Block is new CFG_Node with record instruction_offset : Natural; instruction_capacity : Natural; number_of_memory_access : Natural; execution_time : Natural; data_offset : Natural; data_capacity : Natural; loop_bound : Natural; end record; procedure Initialize(obj : in out Basic_Block); procedure Put(obj : in Basic_Block); procedure Put(obj : in Basic_Block_Ptr); procedure Put_Name(obj : in Basic_Block_Ptr); procedure Build_Attributes_XML_String(obj : in Basic_Block; result : in out Unbounded_String); function XML_String(obj : in Basic_Block) return Unbounded_String; function XML_String(obj : in Basic_Block_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Basic_Block) return Unbounded_String; function XML_Ref_String(obj : in Basic_Block_Ptr) return Unbounded_String; function Get_Name (obj : in Basic_Block) return Unbounded_String; function Get_Name (obj : in Basic_Block_Ptr) return Unbounded_String; function Copy(obj : in Basic_Block_Ptr) return Basic_Block_Ptr; function Copy(obj : in Basic_Block) return Basic_Block_Ptr; function type_of(obj : in Basic_Block) return unbounded_string_list; function type_of(obj : in Basic_Block_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Basic_Block'Class, Basic_Block_Ptr); package Basic_Blocks_Table_Package is new Tables(Basic_Block_Ptr, Framework_Config.Max_CFG_Nodes, Put, XML_String, XML_Ref_String); use Basic_Blocks_Table_Package; subtype Basic_Blocks_Range is Basic_Blocks_Table_Package.table_range; subtype Basic_Blocks_Range_Ptr is Basic_Blocks_Table_Package.table_range_Ptr; subtype Basic_Blocks_Table is Basic_Blocks_Table_Package.table; subtype Basic_Blocks_Table_Ptr is Basic_Blocks_Table_Package.table_Ptr; -- --------= Basic_Block_Record =-------- type Basic_Block_Record is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; instruction_offset : Natural; instruction_capacity : Natural; number_of_memory_access : Natural; execution_time : Natural; data_offset : Natural; data_capacity : Natural; loop_bound : Natural; end record; procedure Initialize(obj : out Basic_Block_Record); procedure Put(obj : in Basic_Block_Record); procedure Put(obj : in Basic_Block_Record_Ptr); function Copy(obj : in Basic_Block_Record_Ptr) return Basic_Block_Record_Ptr; function Copy(obj : in Basic_Block_Record) return Basic_Block_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Basic_Block_Record; result : in out Unbounded_String); function XML_String(obj : in Basic_Block_Record) return Unbounded_String; function XML_String(obj : in Basic_Block_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Basic_Block_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Basic_Block_Record, Basic_Block_Record_Ptr); End Basic_Blocks; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 id_generators; use id_generators; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; Package Framework_Config is -- Definition of priority range. We choose the most current value : -- 256 priority levels (from 0 to 255) -- Zero is the lowest priority level Type Priority_Range is new Natural range 0 .. 255; package Priority_Io is new Text_IO.Integer_IO (Priority_Range); use Priority_Io; type Debug_Level is ( No_Debug, Minimal, Verbose, Very_Verbose); procedure To_Debug_Level is new Convert_Strings(Debug_Level, No_Debug); procedure To_Debug_Level is new Convert_Unbounded_Strings(Debug_Level, No_Debug); function XML_String (obj : in Debug_Level) return Unbounded_String; function XML_Ref_String (obj : in Debug_Level) return Unbounded_String; package Debug_Level_io is new text_io.enumeration_io(Debug_Level); use Debug_Level_io; type Languages is ( Francais, English); procedure To_Languages is new Convert_Strings(Languages, Francais); procedure To_Languages is new Convert_Unbounded_Strings(Languages, Francais); function XML_String (obj : in Languages) return Unbounded_String; function XML_Ref_String (obj : in Languages) return Unbounded_String; package Languages_io is new text_io.enumeration_io(Languages); use Languages_io; -- Maximum processors, tasks, messages, buffers and resources which can be defined in a cheddar XML file Increasing these constants implies increasing cheddar memory footprint Cheddar_Debug : Debug_Level := Very_Verbose; Max_Processors : constant Natural := 100; Max_Task_groups : constant Natural := 30; Max_Tasks : constant Natural := 200; Max_Batteries : constant Natural := 5; Max_Messages : constant Natural := 5; Max_Buffers : constant Natural := 30; Max_Resources : constant Natural := 30; Max_Networks : constant Natural := 5; Max_Event_Analyzers : constant Natural := 10; Max_Address_Spaces : constant Natural := 100; Max_Sections : constant Natural := 50; Max_Transitions : constant Natural := 200; Max_Caches : constant Natural := 10; Max_Memories : constant Natural := 10; Max_Core_Units : constant Natural := 100; Max_Positions : constant Natural := 30; Max_Deployments : constant Natural := 20; -- MUST BE EQUAL TO 1 + natural'max( natural'max(Max_Deployments,Max_Core_Units), Max_Address_Spaces); Max_Schedulers : constant Natural := 200; Max_Cache_Size : constant Natural := 256; Max_CFG_Nodes : constant Natural := 100; Max_CFG_Edges : constant Natural := 100; Max_CFGs : constant Natural := 200; Max_Objects : constant Natural := ((((((((((((Max_Processors + Max_Tasks) + Max_Messages) + Max_Buffers) + Max_Resources) + Max_Networks) + Max_Event_Analyzers) + Max_Address_Spaces) + Max_Sections) + Max_Address_Spaces) + Max_Transitions) + Max_Caches) + Max_Core_Units); -- Define the largest scheduling interval time that the simulator can compute. Increasing this constant implies increasing cheddar CPU usage Max_Scheduling_Period : constant Natural := 200000; Low_Priority : constant Priority_Range := Priority_Range'First; High_Priority : constant Priority_Range := Priority_Range'Last; Current_Language : Languages := English; -- Maximum number of tasks that can use a shared resource. Increasing this constant implies increasing cheddar memory footprint Max_Tasks_For_A_Resource : constant Natural := 10; -- Maximum number of tasks that can use a shared buffer. Increasing this constant implies increasing cheddar memory footprint Max_Tasks_For_A_Buffer : constant Natural := 10; -- Define maximum of variables that can be defined in parametric scheduler Increasing this constant implies increasing cheddar memory footprint Max_Variables : constant Natural := 400; -- Maximum number of statements in a parametric scheduler. Increasing this constant implies increasing cheddar memory footprint Max_Statements : constant Natural := 400; -- The langage used to defined a parametric scheduler is block oriented : the constant below given the maximum depth level of block. Increasing this constant implies increasing cheddar memory footprint Max_Block_Level : constant Natural := 100; -- Maximum number of dependencies of a XML Cheddar project file. Dependencies can be a message/buffer used by two tasks or a precedencies constraint. Increasing this constant implies increasing cheddar memory footprint Max_Tasks_Dependencies : constant Natural := 150; -- Define maximum of user's defined task parameter Max_User_Defined_Task_Parameters : constant Natural := 12; -- Maximum of parameters during a framework call Max_Framework_Parameters : constant Natural := 40; -- Define offset constants : a task can contain at most 3 offsets Max_Offsets : constant Natural := 5; -- This constant define the size of "xi" of a discrete density probability Max_Density_Size : constant Natural := 200; -- Maximum size of the framework request table. Increasing this constant implies increasing cheddar memory footprint Max_Requests : constant Natural := 40; -- Maximum size of a fixed string Max_String_Size : constant Natural := 200; -- This constant is used by the parametric simulation engine. It defines size of tables which store simulation data for all elements of Cheddar project (except time units) Max_Simulation : constant Natural := Natural'Max(Natural'Max (Max_Processors, Max_Tasks), Natural'Max(Natural'Max (Max_Messages, Max_Buffers),Natural'Max (Max_Resources, Max_Networks))); -- Sum of all objects which can be stored in a XML project Sum_Simulation : constant Natural := ((((Max_Processors + Max_Tasks) + Max_Messages) + Max_Resources) + Max_Networks); NB_MAX_BLOCKS_CFG : constant Natural := 30; MAX_LENGTH_NAME_VAR : constant Natural := 50; MAX_LENGTH_NAME_BLOCK : constant Natural := 50; MAX_NB_USED_VAR_STATEMENT : constant Natural := 10; MAX_NB_STATEMENTS_BLOCK : constant Natural := 10; MAX_NB_NEXT_NODES_STATEMENT : constant Natural := 10; MAX_NB_PREVIOUS_NODES_STATEMENT : constant Natural := 10; MAX_DEF : constant Natural := (MAX_NB_STATEMENTS_BLOCK * NB_MAX_BLOCKS_CFG); MAX_USE : constant Natural := (MAX_NB_USED_VAR_STATEMENT * MAX_NB_STATEMENTS_BLOCK); MAX_DEF_USE : constant Natural := ((MAX_USE * MAX_DEF) * NB_MAX_BLOCKS_CFG); Max_Task_Release_Records : constant Natural := 100; Max_Relative_Priority_Records : constant Natural := 100; Max_Scheduling_Errors : constant Natural := 100; Max_Execution_Units : constant Natural := 100; Max_Data_Accesses : constant Natural := 100; End Framework_Config; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 standards_io; use standards_io; use standards_io.double_io; use standards_io.natural_io; use standards_io.boolean_io; 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 Tables; with Ada.Numerics.Aux; use Ada.Numerics.Aux; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Parameters is type Parameter_Type is ( Boolean_Parameter, Integer_Parameter, Double_Parameter, String_Parameter); procedure To_Parameter_Type is new Convert_Strings(Parameter_Type, Boolean_Parameter); procedure To_Parameter_Type is new Convert_Unbounded_Strings(Parameter_Type, Boolean_Parameter); function XML_String (obj : in Parameter_Type) return Unbounded_String; function XML_Ref_String (obj : in Parameter_Type) return Unbounded_String; package Parameter_Type_io is new text_io.enumeration_io(Parameter_Type); use Parameter_Type_io; type Parameter (type_of_parameter : Parameter_Type ) is record parameter_name : Unbounded_String; case type_of_parameter is when boolean_parameter => boolean_value : Boolean; when integer_parameter => integer_value : Natural; when double_parameter => double_value : Double; when string_parameter => string_value : Unbounded_String; end case; end record; type Parameter_Ptr is access all Parameter; procedure Initialize(obj : out Parameter_Ptr); procedure Put(obj : in Parameter_Ptr); function Copy(obj : in Parameter_Ptr) return Parameter_Ptr; function Copy(obj : in Parameter) return Parameter_Ptr; function XML_String(obj : in Parameter) return Unbounded_String; function XML_String(obj : in Parameter_Ptr) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Parameter, Parameter_Ptr); function XML_Ref_String(obj : in Parameter) return Unbounded_String; function XML_Ref_String(obj : in Parameter_Ptr) return Unbounded_String; package User_Defined_Parameters_Table_Package is new Tables(Parameter_Ptr, Max_User_Defined_Task_Parameters, Put, XML_String, XML_String); use User_Defined_Parameters_Table_Package; subtype User_Defined_Parameters_Range is User_Defined_Parameters_Table_Package.table_range; subtype User_Defined_Parameters_Range_Ptr is User_Defined_Parameters_Table_Package.table_range_Ptr; subtype User_Defined_Parameters_Table is User_Defined_Parameters_Table_Package.table; subtype User_Defined_Parameters_Table_Ptr is User_Defined_Parameters_Table_Package.table_Ptr; package Framework_Parameters_Table_Package is new Tables(Parameter_ptr, Max_Framework_Parameters, Put, XML_String, XML_Ref_String); use Framework_Parameters_Table_Package; subtype Framework_Parameters_Range is Framework_Parameters_Table_Package.table_range; subtype Framework_Parameters_Range_Ptr is Framework_Parameters_Table_Package.table_range_Ptr; subtype Framework_Parameters_Table is Framework_Parameters_Table_Package.table; subtype Framework_Parameters_Table_Ptr is Framework_Parameters_Table_Package.table_Ptr; End Parameters; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 standards_io; use standards_io; use standards_io.boolean_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Access_Lists; with Systems; use Systems; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Applicability_Constraints_Main_Structure is type Applicability_Constraint; type Applicability_Constraint_Ptr is access all Applicability_Constraint; type Applicability_Constraint_Case; type Applicability_Constraint_Case_Ptr is access all Applicability_Constraint_Case; type All_Cases_Structure; type All_Cases_Structure_Ptr is access all All_Cases_Structure; Type Applicability_Constraint_Function is access function (Context : System) return Boolean; -- --------= Applicability_Constraint =-------- type Applicability_Constraint is record Name : Unbounded_String; Result : Boolean; Corresponding_Function : Applicability_Constraint_Function; end record; procedure Initialize(obj : out Applicability_Constraint); procedure Put(obj : in Applicability_Constraint); procedure Put(obj : in Applicability_Constraint_Ptr); function Copy(obj : in Applicability_Constraint_Ptr) return Applicability_Constraint_Ptr; function Copy(obj : in Applicability_Constraint) return Applicability_Constraint_Ptr; procedure Build_Attributes_XML_String(obj : in Applicability_Constraint; result : in out Unbounded_String); function XML_String(obj : in Applicability_Constraint) return Unbounded_String; function XML_String(obj : in Applicability_Constraint_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Applicability_Constraint) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Applicability_Constraint, Applicability_Constraint_Ptr); package Applicability_Constraints_List_Package is new Access_Lists(Applicability_Constraint, Applicability_Constraint_Ptr, Put, Free, Copy, XML_String); use Applicability_Constraints_List_Package; subtype Applicability_Constraints_List is Applicability_Constraints_List_Package.List; subtype Applicability_Constraints_List_Ptr is Applicability_Constraints_List_Package.List_Ptr; subtype Applicability_Constraints_List_Iterator is Applicability_Constraints_List_Package.Iterator; subtype Applicability_Constraints_List_Iterator_Ptr is Applicability_Constraints_List_Package.Iterator_Ptr; -- --------= Applicability_Constraint_Case =-------- type Applicability_Constraint_Case is record Name : Unbounded_String; Feasibility_Test_Names : Unbounded_String; Applicability_Constraints : Applicability_Constraints_List; end record; procedure Initialize(obj : out Applicability_Constraint_Case); procedure Put(obj : in Applicability_Constraint_Case); procedure Put(obj : in Applicability_Constraint_Case_Ptr); function Copy(obj : in Applicability_Constraint_Case_Ptr) return Applicability_Constraint_Case_Ptr; function Copy(obj : in Applicability_Constraint_Case) return Applicability_Constraint_Case_Ptr; procedure Build_Attributes_XML_String(obj : in Applicability_Constraint_Case; result : in out Unbounded_String); function XML_String(obj : in Applicability_Constraint_Case) return Unbounded_String; function XML_String(obj : in Applicability_Constraint_Case_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Applicability_Constraint_Case) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Applicability_Constraint_Case, Applicability_Constraint_Case_Ptr); package Applicability_Constraint_Cases_List_Package is new Access_Lists(Applicability_Constraint_Case, Applicability_Constraint_Case_Ptr, Put, Free, Copy, XML_String); use Applicability_Constraint_Cases_List_Package; subtype Applicability_Constraint_Cases_List is Applicability_Constraint_Cases_List_Package.List; subtype Applicability_Constraint_Cases_List_Ptr is Applicability_Constraint_Cases_List_Package.List_Ptr; subtype Applicability_Constraint_Cases_List_Iterator is Applicability_Constraint_Cases_List_Package.Iterator; subtype Applicability_Constraint_Cases_List_Iterator_Ptr is Applicability_Constraint_Cases_List_Package.Iterator_Ptr; -- --------= All_Cases_Structure =-------- type All_Cases_Structure is record Cases : Applicability_Constraint_Cases_List; end record; procedure Initialize(obj : out All_Cases_Structure); procedure Put(obj : in All_Cases_Structure); procedure Put(obj : in All_Cases_Structure_Ptr); function Copy(obj : in All_Cases_Structure_Ptr) return All_Cases_Structure_Ptr; function Copy(obj : in All_Cases_Structure) return All_Cases_Structure_Ptr; procedure Build_Attributes_XML_String(obj : in All_Cases_Structure; result : in out Unbounded_String); function XML_String(obj : in All_Cases_Structure) return Unbounded_String; function XML_String(obj : in All_Cases_Structure_Ptr) return Unbounded_String; function XML_Ref_String(obj : in All_Cases_Structure) return Unbounded_String; procedure Free is new Unchecked_Deallocation (All_Cases_Structure, All_Cases_Structure_Ptr); End Applicability_Constraints_Main_Structure; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Objects; use Objects; with Parameters; use Parameters; use parameters.User_Defined_Parameters_Table_Package; with Offsets; use Offsets; use offsets.Offsets_Table_Package; with MILS_Security; use MILS_Security; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with standards_io; use standards_io; use standards_io.boolean_io; use standards_io.natural_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Lists; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Tasks is type Generic_Task; type Generic_Task_Ptr is access all Generic_Task'Class; type Periodic_Task; type Periodic_Task_Ptr is access all Periodic_Task'Class; type Aperiodic_Task; type Aperiodic_Task_Ptr is access all Aperiodic_Task'Class; type Poisson_Task; type Poisson_Task_Ptr is access all Poisson_Task'Class; type Sporadic_Task; type Sporadic_Task_Ptr is access all Sporadic_Task'Class; type Parametric_Task; type Parametric_Task_Ptr is access all Parametric_Task'Class; type Scheduling_Task; type Scheduling_Task_Ptr is access all Scheduling_Task'Class; type Frame_Task; type Frame_Task_Ptr is access all Frame_Task'Class; type Tasks_Type is ( Periodic_Type, Aperiodic_Type, Sporadic_Type, Poisson_Type, Parametric_Type, Scheduling_Task_Type, Frame_Task_Type); procedure To_Tasks_Type is new Convert_Strings(Tasks_Type, Periodic_Type); procedure To_Tasks_Type is new Convert_Unbounded_Strings(Tasks_Type, Periodic_Type); function XML_String (obj : in Tasks_Type) return Unbounded_String; function XML_Ref_String (obj : in Tasks_Type) return Unbounded_String; package Tasks_Type_io is new text_io.enumeration_io(Tasks_Type); use Tasks_Type_io; type Policies is ( Sched_Fifo, Sched_Rr, Sched_Others); procedure To_Policies is new Convert_Strings(Policies, Sched_Fifo); procedure To_Policies is new Convert_Unbounded_Strings(Policies, Sched_Fifo); function XML_String (obj : in Policies) return Unbounded_String; function XML_Ref_String (obj : in Policies) return Unbounded_String; package Policies_io is new text_io.enumeration_io(Policies); use Policies_io; -- --------= Generic_Task =-------- type Generic_Task is new Named_Object with record task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Natural; energy_consumption : Natural; deadline : Natural; start_time : Natural; priority : Priority_Range; blocking_time : Natural; policy : Policies; offsets : Offsets_Table; text_memory_size : Natural; text_memory_start_address : Natural; stack_memory_size : Natural; parameters : User_Defined_Parameters_Table; criticality : Natural; context_switch_overhead : Natural; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Natural; maximum_number_of_memory_request_per_job : Natural; end record; procedure Initialize(obj : in out Generic_Task); procedure Put(obj : in Generic_Task); procedure Put(obj : in Generic_Task_Ptr); procedure Put_Name(obj : in Generic_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Task; result : in out Unbounded_String); function XML_String(obj : in Generic_Task) return Unbounded_String; function XML_String(obj : in Generic_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Task) return Unbounded_String; function XML_Ref_String(obj : in Generic_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Task) return Unbounded_String; function Get_Name (obj : in Generic_Task_Ptr) return Unbounded_String; function Copy(obj : in Generic_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Generic_Task) return Generic_Task_Ptr; function type_of(obj : in Generic_Task) return unbounded_string_list; function type_of(obj : in Generic_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Task'Class, Generic_Task_Ptr); package Generic_Task_List_Package is new Lists(Generic_Task_Ptr, Put, Free, XML_Ref_String); use Generic_Task_List_Package; subtype Generic_Task_Iterator is Generic_Task_List_Package.iterator; subtype Generic_Task_Iterator_Ptr is Generic_Task_List_Package.iterator_Ptr; subtype Generic_Task_List is Generic_Task_List_Package.list; subtype Generic_Task_List_Ptr is Generic_Task_List_Package.list_Ptr; -- --------= Periodic_Task =-------- type Periodic_Task is new Generic_Task with record period : Natural; jitter : Natural; every : Natural; end record; procedure Initialize(obj : in out Periodic_Task); procedure Put(obj : in Periodic_Task); procedure Put(obj : in Periodic_Task_Ptr); procedure Put_Name(obj : in Periodic_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Periodic_Task; result : in out Unbounded_String); function XML_String(obj : in Periodic_Task) return Unbounded_String; function XML_String(obj : in Periodic_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Periodic_Task) return Unbounded_String; function XML_Ref_String(obj : in Periodic_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Periodic_Task) return Unbounded_String; function Get_Name (obj : in Periodic_Task_Ptr) return Unbounded_String; function Copy(obj : in Periodic_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Periodic_Task) return Generic_Task_Ptr; function type_of(obj : in Periodic_Task) return unbounded_string_list; function type_of(obj : in Periodic_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Periodic_Task'Class, Periodic_Task_Ptr); -- --------= Aperiodic_Task =-------- type Aperiodic_Task is new Generic_Task with null record; procedure Initialize(obj : in out Aperiodic_Task); procedure Put(obj : in Aperiodic_Task); procedure Put(obj : in Aperiodic_Task_Ptr); procedure Put_Name(obj : in Aperiodic_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Aperiodic_Task; result : in out Unbounded_String); function XML_String(obj : in Aperiodic_Task) return Unbounded_String; function XML_String(obj : in Aperiodic_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Task) return Unbounded_String; function XML_Ref_String(obj : in Aperiodic_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Aperiodic_Task) return Unbounded_String; function Get_Name (obj : in Aperiodic_Task_Ptr) return Unbounded_String; function Copy(obj : in Aperiodic_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Aperiodic_Task) return Generic_Task_Ptr; function type_of(obj : in Aperiodic_Task) return unbounded_string_list; function type_of(obj : in Aperiodic_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Aperiodic_Task'Class, Aperiodic_Task_Ptr); -- --------= Poisson_Task =-------- type Poisson_Task is new Periodic_Task with record seed : Natural; predictable : Boolean; end record; procedure Initialize(obj : in out Poisson_Task); procedure Put(obj : in Poisson_Task); procedure Put(obj : in Poisson_Task_Ptr); procedure Put_Name(obj : in Poisson_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Poisson_Task; result : in out Unbounded_String); function XML_String(obj : in Poisson_Task) return Unbounded_String; function XML_String(obj : in Poisson_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Poisson_Task) return Unbounded_String; function XML_Ref_String(obj : in Poisson_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Poisson_Task) return Unbounded_String; function Get_Name (obj : in Poisson_Task_Ptr) return Unbounded_String; function Copy(obj : in Poisson_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Poisson_Task) return Generic_Task_Ptr; function type_of(obj : in Poisson_Task) return unbounded_string_list; function type_of(obj : in Poisson_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Poisson_Task'Class, Poisson_Task_Ptr); -- --------= Sporadic_Task =-------- type Sporadic_Task is new Poisson_Task with null record; procedure Initialize(obj : in out Sporadic_Task); procedure Put(obj : in Sporadic_Task); procedure Put(obj : in Sporadic_Task_Ptr); procedure Put_Name(obj : in Sporadic_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Sporadic_Task; result : in out Unbounded_String); function XML_String(obj : in Sporadic_Task) return Unbounded_String; function XML_String(obj : in Sporadic_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Sporadic_Task) return Unbounded_String; function XML_Ref_String(obj : in Sporadic_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Sporadic_Task) return Unbounded_String; function Get_Name (obj : in Sporadic_Task_Ptr) return Unbounded_String; function Copy(obj : in Sporadic_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Sporadic_Task) return Generic_Task_Ptr; function type_of(obj : in Sporadic_Task) return unbounded_string_list; function type_of(obj : in Sporadic_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Sporadic_Task'Class, Sporadic_Task_Ptr); -- --------= Parametric_Task =-------- type Parametric_Task is new Poisson_Task with record activation_rule : Unbounded_String; end record; procedure Initialize(obj : in out Parametric_Task); procedure Put(obj : in Parametric_Task); procedure Put(obj : in Parametric_Task_Ptr); procedure Put_Name(obj : in Parametric_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Parametric_Task; result : in out Unbounded_String); function XML_String(obj : in Parametric_Task) return Unbounded_String; function XML_String(obj : in Parametric_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Parametric_Task) return Unbounded_String; function XML_Ref_String(obj : in Parametric_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Parametric_Task) return Unbounded_String; function Get_Name (obj : in Parametric_Task_Ptr) return Unbounded_String; function Copy(obj : in Parametric_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Parametric_Task) return Generic_Task_Ptr; function type_of(obj : in Parametric_Task) return unbounded_string_list; function type_of(obj : in Parametric_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Parametric_Task'Class, Parametric_Task_Ptr); -- --------= Scheduling_Task =-------- type Scheduling_Task is new Poisson_Task with null record; procedure Initialize(obj : in out Scheduling_Task); procedure Put(obj : in Scheduling_Task); procedure Put(obj : in Scheduling_Task_Ptr); procedure Put_Name(obj : in Scheduling_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Scheduling_Task; result : in out Unbounded_String); function XML_String(obj : in Scheduling_Task) return Unbounded_String; function XML_String(obj : in Scheduling_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Task) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Scheduling_Task) return Unbounded_String; function Get_Name (obj : in Scheduling_Task_Ptr) return Unbounded_String; function Copy(obj : in Scheduling_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Scheduling_Task) return Generic_Task_Ptr; function type_of(obj : in Scheduling_Task) return unbounded_string_list; function type_of(obj : in Scheduling_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Scheduling_Task'Class, Scheduling_Task_Ptr); -- --------= Frame_Task =-------- type Frame_Task is new Periodic_Task with record interarrival : Natural; end record; procedure Initialize(obj : in out Frame_Task); procedure Put(obj : in Frame_Task); procedure Put(obj : in Frame_Task_Ptr); procedure Put_Name(obj : in Frame_Task_Ptr); procedure Build_Attributes_XML_String(obj : in Frame_Task; result : in out Unbounded_String); function XML_String(obj : in Frame_Task) return Unbounded_String; function XML_String(obj : in Frame_Task_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Frame_Task) return Unbounded_String; function XML_Ref_String(obj : in Frame_Task_Ptr) return Unbounded_String; function Get_Name (obj : in Frame_Task) return Unbounded_String; function Get_Name (obj : in Frame_Task_Ptr) return Unbounded_String; function Copy(obj : in Frame_Task_Ptr) return Generic_Task_Ptr; function Copy(obj : in Frame_Task) return Generic_Task_Ptr; function type_of(obj : in Frame_Task) return unbounded_string_list; function type_of(obj : in Frame_Task_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Frame_Task'Class, Frame_Task_Ptr); End Tasks; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with standards_io; use standards_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Caches is type Cache_Block; type Cache_Block_Ptr is access all Cache_Block'Class; type Cache_Access_Profile; type Cache_Access_Profile_Ptr is access all Cache_Access_Profile'Class; type Generic_Cache; type Generic_Cache_Ptr is access all Generic_Cache'Class; type Data_Cache; type Data_Cache_Ptr is access all Data_Cache'Class; type Instruction_Cache; type Instruction_Cache_Ptr is access all Instruction_Cache'Class; type Data_Instruction_Cache; type Data_Instruction_Cache_Ptr is access all Data_Instruction_Cache'Class; type Cache_System; type Cache_System_Ptr is access all Cache_System'Class; type Cache_Addressing_Type is ( Virtual, Physical); procedure To_Cache_Addressing_Type is new Convert_Strings(Cache_Addressing_Type, Virtual); procedure To_Cache_Addressing_Type is new Convert_Unbounded_Strings(Cache_Addressing_Type, Virtual); function XML_String (obj : in Cache_Addressing_Type) return Unbounded_String; function XML_Ref_String (obj : in Cache_Addressing_Type) return Unbounded_String; package Cache_Addressing_Type_io is new text_io.enumeration_io(Cache_Addressing_Type); use Cache_Addressing_Type_io; type Cache_Type is ( Data_Cache_Type, Instruction_Cache_Type, Data_Instruction_Cache_Type); procedure To_Cache_Type is new Convert_Strings(Cache_Type, Data_Cache_Type); procedure To_Cache_Type is new Convert_Unbounded_Strings(Cache_Type, Data_Cache_Type); function XML_String (obj : in Cache_Type) return Unbounded_String; function XML_Ref_String (obj : in Cache_Type) return Unbounded_String; package Cache_Type_io is new text_io.enumeration_io(Cache_Type); use Cache_Type_io; type Cache_Coherence_Protocol_Type is ( Private_Cache_Protocol, Shared_Cache_Protocol, Private_Invalid_Cache_Protocol, Private_MSI_Cache_Protocol, Private_MESI_Cache_Protocol); procedure To_Cache_Coherence_Protocol_Type is new Convert_Strings(Cache_Coherence_Protocol_Type, Private_Cache_Protocol); procedure To_Cache_Coherence_Protocol_Type is new Convert_Unbounded_Strings(Cache_Coherence_Protocol_Type, Private_Cache_Protocol); function XML_String (obj : in Cache_Coherence_Protocol_Type) return Unbounded_String; function XML_Ref_String (obj : in Cache_Coherence_Protocol_Type) return Unbounded_String; package Cache_Coherence_Protocol_Type_io is new text_io.enumeration_io(Cache_Coherence_Protocol_Type); use Cache_Coherence_Protocol_Type_io; type Cache_Replacement_Policy_Type is ( Random, LRU, LRR, FIFO); procedure To_Cache_Replacement_Policy_Type is new Convert_Strings(Cache_Replacement_Policy_Type, Random); procedure To_Cache_Replacement_Policy_Type is new Convert_Unbounded_Strings(Cache_Replacement_Policy_Type, Random); function XML_String (obj : in Cache_Replacement_Policy_Type) return Unbounded_String; function XML_Ref_String (obj : in Cache_Replacement_Policy_Type) return Unbounded_String; package Cache_Replacement_Policy_Type_io is new text_io.enumeration_io(Cache_Replacement_Policy_Type); use Cache_Replacement_Policy_Type_io; type Write_Policy_Type is ( Copy_Back, Write_Through_with_Allocation, Write_Through_without_Allocation); procedure To_Write_Policy_Type is new Convert_Strings(Write_Policy_Type, Copy_Back); procedure To_Write_Policy_Type is new Convert_Unbounded_Strings(Write_Policy_Type, Copy_Back); function XML_String (obj : in Write_Policy_Type) return Unbounded_String; function XML_Ref_String (obj : in Write_Policy_Type) return Unbounded_String; package Write_Policy_Type_io is new text_io.enumeration_io(Write_Policy_Type); use Write_Policy_Type_io; -- --------= Cache_Block =-------- type Cache_Block is new Named_Object with record cache_block_number : Natural; end record; procedure Initialize(obj : in out Cache_Block); procedure Put(obj : in Cache_Block); procedure Put(obj : in Cache_Block_Ptr); procedure Put_Name(obj : in Cache_Block_Ptr); procedure Build_Attributes_XML_String(obj : in Cache_Block; result : in out Unbounded_String); function XML_String(obj : in Cache_Block) return Unbounded_String; function XML_String(obj : in Cache_Block_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Cache_Block) return Unbounded_String; function XML_Ref_String(obj : in Cache_Block_Ptr) return Unbounded_String; function Get_Name (obj : in Cache_Block) return Unbounded_String; function Get_Name (obj : in Cache_Block_Ptr) return Unbounded_String; function Copy(obj : in Cache_Block_Ptr) return Cache_Block_Ptr; function Copy(obj : in Cache_Block) return Cache_Block_Ptr; function type_of(obj : in Cache_Block) return unbounded_string_list; function type_of(obj : in Cache_Block_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Cache_Block'Class, Cache_Block_Ptr); package Cache_Blocks_Table_Package is new Tables(Cache_Block_Ptr, Max_Cache_Size, Put, XML_String, XML_Ref_String); use Cache_Blocks_Table_Package; subtype Cache_Blocks_Range is Cache_Blocks_Table_Package.table_range; subtype Cache_Blocks_Range_Ptr is Cache_Blocks_Table_Package.table_range_Ptr; subtype Cache_Blocks_Table is Cache_Blocks_Table_Package.table; subtype Cache_Blocks_Table_Ptr is Cache_Blocks_Table_Package.table_Ptr; -- --------= Cache_Access_Profile =-------- type Cache_Access_Profile is new Named_Object with record UCBs : Cache_Blocks_Table; ECBs : Cache_Blocks_Table; end record; procedure Initialize(obj : in out Cache_Access_Profile); procedure Put(obj : in Cache_Access_Profile); procedure Put(obj : in Cache_Access_Profile_Ptr); procedure Put_Name(obj : in Cache_Access_Profile_Ptr); procedure Build_Attributes_XML_String(obj : in Cache_Access_Profile; result : in out Unbounded_String); function XML_String(obj : in Cache_Access_Profile) return Unbounded_String; function XML_String(obj : in Cache_Access_Profile_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Cache_Access_Profile) return Unbounded_String; function XML_Ref_String(obj : in Cache_Access_Profile_Ptr) return Unbounded_String; function Get_Name (obj : in Cache_Access_Profile) return Unbounded_String; function Get_Name (obj : in Cache_Access_Profile_Ptr) return Unbounded_String; function Copy(obj : in Cache_Access_Profile_Ptr) return Cache_Access_Profile_Ptr; function Copy(obj : in Cache_Access_Profile) return Cache_Access_Profile_Ptr; function type_of(obj : in Cache_Access_Profile) return unbounded_string_list; function type_of(obj : in Cache_Access_Profile_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Cache_Access_Profile'Class, Cache_Access_Profile_Ptr); -- --------= Generic_Cache =-------- type Generic_Cache is new Named_Object with record cache_size : Natural; line_size : Natural; associativity : Natural; block_reload_time : Natural; replacement_policy : Cache_Replacement_Policy_Type; coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; cache_blocks : Cache_Blocks_Table; end record; procedure Initialize(obj : in out Generic_Cache); procedure Put(obj : in Generic_Cache); procedure Put(obj : in Generic_Cache_Ptr); procedure Put_Name(obj : in Generic_Cache_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Cache; result : in out Unbounded_String); function XML_String(obj : in Generic_Cache) return Unbounded_String; function XML_String(obj : in Generic_Cache_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Cache) return Unbounded_String; function XML_Ref_String(obj : in Generic_Cache_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Cache) return Unbounded_String; function Get_Name (obj : in Generic_Cache_Ptr) return Unbounded_String; function Copy(obj : in Generic_Cache_Ptr) return Generic_Cache_Ptr; function Copy(obj : in Generic_Cache) return Generic_Cache_Ptr; function type_of(obj : in Generic_Cache) return unbounded_string_list; function type_of(obj : in Generic_Cache_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Cache'Class, Generic_Cache_Ptr); -- --------= Data_Cache =-------- type Data_Cache is new Generic_Cache with record write_policy : Write_Policy_Type; end record; procedure Initialize(obj : in out Data_Cache); procedure Put(obj : in Data_Cache); procedure Put(obj : in Data_Cache_Ptr); procedure Put_Name(obj : in Data_Cache_Ptr); procedure Build_Attributes_XML_String(obj : in Data_Cache; result : in out Unbounded_String); function XML_String(obj : in Data_Cache) return Unbounded_String; function XML_String(obj : in Data_Cache_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Data_Cache) return Unbounded_String; function XML_Ref_String(obj : in Data_Cache_Ptr) return Unbounded_String; function Get_Name (obj : in Data_Cache) return Unbounded_String; function Get_Name (obj : in Data_Cache_Ptr) return Unbounded_String; function Copy(obj : in Data_Cache_Ptr) return Generic_Cache_Ptr; function Copy(obj : in Data_Cache) return Generic_Cache_Ptr; function type_of(obj : in Data_Cache) return unbounded_string_list; function type_of(obj : in Data_Cache_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Data_Cache'Class, Data_Cache_Ptr); -- --------= Instruction_Cache =-------- type Instruction_Cache is new Generic_Cache with null record; procedure Initialize(obj : in out Instruction_Cache); procedure Put(obj : in Instruction_Cache); procedure Put(obj : in Instruction_Cache_Ptr); procedure Put_Name(obj : in Instruction_Cache_Ptr); procedure Build_Attributes_XML_String(obj : in Instruction_Cache; result : in out Unbounded_String); function XML_String(obj : in Instruction_Cache) return Unbounded_String; function XML_String(obj : in Instruction_Cache_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Instruction_Cache) return Unbounded_String; function XML_Ref_String(obj : in Instruction_Cache_Ptr) return Unbounded_String; function Get_Name (obj : in Instruction_Cache) return Unbounded_String; function Get_Name (obj : in Instruction_Cache_Ptr) return Unbounded_String; function Copy(obj : in Instruction_Cache_Ptr) return Generic_Cache_Ptr; function Copy(obj : in Instruction_Cache) return Generic_Cache_Ptr; function type_of(obj : in Instruction_Cache) return unbounded_string_list; function type_of(obj : in Instruction_Cache_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Instruction_Cache'Class, Instruction_Cache_Ptr); -- --------= Data_Instruction_Cache =-------- type Data_Instruction_Cache is new Generic_Cache with record write_policy : Write_Policy_Type; end record; procedure Initialize(obj : in out Data_Instruction_Cache); procedure Put(obj : in Data_Instruction_Cache); procedure Put(obj : in Data_Instruction_Cache_Ptr); procedure Put_Name(obj : in Data_Instruction_Cache_Ptr); procedure Build_Attributes_XML_String(obj : in Data_Instruction_Cache; result : in out Unbounded_String); function XML_String(obj : in Data_Instruction_Cache) return Unbounded_String; function XML_String(obj : in Data_Instruction_Cache_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Data_Instruction_Cache) return Unbounded_String; function XML_Ref_String(obj : in Data_Instruction_Cache_Ptr) return Unbounded_String; function Get_Name (obj : in Data_Instruction_Cache) return Unbounded_String; function Get_Name (obj : in Data_Instruction_Cache_Ptr) return Unbounded_String; function Copy(obj : in Data_Instruction_Cache_Ptr) return Generic_Cache_Ptr; function Copy(obj : in Data_Instruction_Cache) return Generic_Cache_Ptr; function type_of(obj : in Data_Instruction_Cache) return unbounded_string_list; function type_of(obj : in Data_Instruction_Cache_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Data_Instruction_Cache'Class, Data_Instruction_Cache_Ptr); package Caches_Table_Package is new Tables(Generic_Cache_Ptr, Max_Caches, Put, XML_String, XML_Ref_String); use Caches_Table_Package; subtype Caches_Range is Caches_Table_Package.table_range; subtype Caches_Range_Ptr is Caches_Table_Package.table_range_Ptr; subtype Caches_Table is Caches_Table_Package.table; subtype Caches_Table_Ptr is Caches_Table_Package.table_Ptr; -- --------= Cache_System =-------- type Cache_System is new Named_Object with record caches : Caches_Table; end record; procedure Initialize(obj : in out Cache_System); procedure Put(obj : in Cache_System); procedure Put(obj : in Cache_System_Ptr); procedure Put_Name(obj : in Cache_System_Ptr); procedure Build_Attributes_XML_String(obj : in Cache_System; result : in out Unbounded_String); function XML_String(obj : in Cache_System) return Unbounded_String; function XML_String(obj : in Cache_System_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Cache_System) return Unbounded_String; function XML_Ref_String(obj : in Cache_System_Ptr) return Unbounded_String; function Get_Name (obj : in Cache_System) return Unbounded_String; function Get_Name (obj : in Cache_System_Ptr) return Unbounded_String; function Copy(obj : in Cache_System_Ptr) return Cache_System_Ptr; function Copy(obj : in Cache_System) return Cache_System_Ptr; function type_of(obj : in Cache_System) return unbounded_string_list; function type_of(obj : in Cache_System_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Cache_System'Class, Cache_System_Ptr); End Caches; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Statements; use Statements; with Tables; with Unchecked_Deallocation; with Sections; use Sections; Package Interpreter is package Sets_Type_Package is new Tables(Set_Statement_Ptr, Max_Statements, Put, XML_String, XML_Ref_String); use Sets_Type_Package; subtype Sets_Range is Sets_Type_Package.table_range; subtype Sets_Range_Ptr is Sets_Type_Package.table_range_Ptr; subtype Sets_Table_Type is Sets_Type_Package.table; subtype Sets_Table_Type_Ptr is Sets_Type_Package.table_Ptr; type Section_Table is Array ( Sections_Type'Range ) of Generic_Statement_Ptr; End Interpreter; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Tasks; use Tasks; with Queueing_Systems; use Queueing_Systems; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Indexed_Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Buffers is type Buffer_Role; type Buffer_Role_Ptr is access all Buffer_Role; type Buffer; type Buffer_Ptr is access all Buffer'Class; type Buffer_Role_Type is ( Queuing_Producer, Queuing_Consumer, Sampling_Writer, Sampling_Reader, UCSDF_Producer, UCSDF_Consumer); procedure To_Buffer_Role_Type is new Convert_Strings(Buffer_Role_Type, Queuing_Producer); procedure To_Buffer_Role_Type is new Convert_Unbounded_Strings(Buffer_Role_Type, Queuing_Producer); function XML_String (obj : in Buffer_Role_Type) return Unbounded_String; function XML_Ref_String (obj : in Buffer_Role_Type) return Unbounded_String; package Buffer_Role_Type_io is new text_io.enumeration_io(Buffer_Role_Type); use Buffer_Role_Type_io; -- --------= Buffer_Role =-------- type Buffer_Role is record the_role : Buffer_Role_Type; size : Natural; time : Natural; timeout : Natural; amplitude_function : Unbounded_String; end record; procedure Initialize(obj : out Buffer_Role); procedure Put(obj : in Buffer_Role); procedure Put(obj : in Buffer_Role_Ptr); function Copy(obj : in Buffer_Role_Ptr) return Buffer_Role_Ptr; function Copy(obj : in Buffer_Role) return Buffer_Role_Ptr; procedure Build_Attributes_XML_String(obj : in Buffer_Role; result : in out Unbounded_String); function XML_String(obj : in Buffer_Role) return Unbounded_String; function XML_String(obj : in Buffer_Role_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Buffer_Role) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Buffer_Role, Buffer_Role_Ptr); package Buffer_Roles_Package is new Indexed_Tables(Buffer_Role, Unbounded_String, framework_config.max_tasks, 0, Put, Initialize, Put, Convert, XML_String, XML_String, to_unbounded_string("task_name")); use Buffer_Roles_Package; subtype Buffer_Roles_Table is Buffer_Roles_Package.indexed_table; subtype Buffer_Roles_Table_Ptr is Buffer_Roles_Package.indexed_table_Ptr; subtype Buffer_Roles_Range is Buffer_Roles_Package.indexed_table_range; subtype Buffer_Roles_Range_Ptr is Buffer_Roles_Package.indexed_table_range_Ptr; -- --------= Buffer =-------- type Buffer is new Named_Object with record cpu_name : Unbounded_String; address_space_name : Unbounded_String; queueing_system_type : Queueing_Systems_Type; buffer_size : Natural; buffer_initial_data_size : Natural; roles : Buffer_Roles_Table; end record; procedure Initialize(obj : in out Buffer); procedure Put(obj : in Buffer); procedure Put(obj : in Buffer_Ptr); procedure Put_Name(obj : in Buffer_Ptr); procedure Build_Attributes_XML_String(obj : in Buffer; result : in out Unbounded_String); function XML_String(obj : in Buffer) return Unbounded_String; function XML_String(obj : in Buffer_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Buffer) return Unbounded_String; function XML_Ref_String(obj : in Buffer_Ptr) return Unbounded_String; function Get_Name (obj : in Buffer) return Unbounded_String; function Get_Name (obj : in Buffer_Ptr) return Unbounded_String; function Copy(obj : in Buffer_Ptr) return Buffer_Ptr; function Copy(obj : in Buffer) return Buffer_Ptr; function type_of(obj : in Buffer) return unbounded_string_list; function type_of(obj : in Buffer_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Buffer'Class, Buffer_Ptr); End Buffers; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Tasks; use Tasks; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with standards_io; use standards_io; use standards_io.natural_io; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Scheduler_Interface is type Scheduling_Parameters; type Scheduling_Parameters_Ptr is access all Scheduling_Parameters; type Preemptives_Type is ( Preemptive, Not_Preemptive); procedure To_Preemptives_Type is new Convert_Strings(Preemptives_Type, Preemptive); procedure To_Preemptives_Type is new Convert_Unbounded_Strings(Preemptives_Type, Preemptive); function XML_String (obj : in Preemptives_Type) return Unbounded_String; function XML_Ref_String (obj : in Preemptives_Type) return Unbounded_String; package Preemptives_Type_io is new text_io.enumeration_io(Preemptives_Type); use Preemptives_Type_io; type Schedulers_Type is ( No_Scheduling_Protocol, Rate_Monotonic_Protocol, Deadline_Monotonic_Protocol, Posix_1003_Highest_Priority_First_Protocol, Earliest_Deadline_First_Protocol, Least_Laxity_First_Protocol, D_Over_Protocol, Maximum_Urgency_First_Based_On_Laxity_Protocol, Maximum_Urgency_First_Based_On_Deadline_Protocol, Earliest_Deadline_First_Energy_Harvesting_Protocol, Round_Robin_Protocol, Time_Sharing_Based_On_Cpu_Usage_Protocol, Time_Sharing_Based_On_Wait_Time_Protocol, Compiled_User_Defined_Protocol, Automata_User_Defined_Protocol, Pipeline_User_Defined_Protocol, User_Defined_Protocol, Mixed_Criticality_AMC_Protocol, Mixed_Criticality_EDF_VD_Protocol, DAG_highest_level_first_estimated_times_protocol, Hierarchical_Cyclic_Protocol, Hierarchical_Round_Robin_Protocol, Hierarchical_Fixed_Priority_Protocol, Hierarchical_Offline_Protocol, Hierarchical_Polling_Aperiodic_Server_Protocol, Hierarchical_Priority_Exchange_Aperiodic_Server_Protocol, Hierarchical_Sporadic_Aperiodic_Server_Protocol, Hierarchical_Deferrable_Aperiodic_Server_Protocol, Reduction_To_Uniprocessor_protocol, Earliest_Deadline_Zero_Laxity_protocol, Largest_Local_Remaining_Execution_First_Protocol, Proportionate_Fair_PF_Protocol, Proportionate_Fair_PD_Protocol, Proportionate_Fair_PD2_Protocol); procedure To_Schedulers_Type is new Convert_Strings(Schedulers_Type, No_Scheduling_Protocol); procedure To_Schedulers_Type is new Convert_Unbounded_Strings(Schedulers_Type, No_Scheduling_Protocol); function XML_String (obj : in Schedulers_Type) return Unbounded_String; function XML_Ref_String (obj : in Schedulers_Type) return Unbounded_String; package Schedulers_Type_io is new text_io.enumeration_io(Schedulers_Type); use Schedulers_Type_io; -- --------= Scheduling_Parameters =-------- type Scheduling_Parameters is record scheduler_type : Schedulers_Type; quantum : Natural; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Natural; period : Natural; priority : Priority_Range; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Natural; end record; procedure Initialize(obj : out Scheduling_Parameters); procedure Put(obj : in Scheduling_Parameters); procedure Put(obj : in Scheduling_Parameters_Ptr); function Copy(obj : in Scheduling_Parameters_Ptr) return Scheduling_Parameters_Ptr; function Copy(obj : in Scheduling_Parameters) return Scheduling_Parameters_Ptr; procedure Build_Attributes_XML_String(obj : in Scheduling_Parameters; result : in out Unbounded_String); function XML_String(obj : in Scheduling_Parameters) return Unbounded_String; function XML_String(obj : in Scheduling_Parameters_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Scheduling_Parameters) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Scheduling_Parameters, Scheduling_Parameters_Ptr); End Scheduler_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with CFG_Nodes; use CFG_Nodes; 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 Tables; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package CFG_Edges is type CFG_Edge; type CFG_Edge_Ptr is access all CFG_Edge'Class; type CFG_Edge_Record; type CFG_Edge_Record_Ptr is access all CFG_Edge_Record; -- --------= CFG_Edge =-------- type CFG_Edge is new Named_Object with record node : Unbounded_String; next_node : Unbounded_String; end record; procedure Initialize(obj : in out CFG_Edge); procedure Put(obj : in CFG_Edge); procedure Put(obj : in CFG_Edge_Ptr); procedure Put_Name(obj : in CFG_Edge_Ptr); procedure Build_Attributes_XML_String(obj : in CFG_Edge; result : in out Unbounded_String); function XML_String(obj : in CFG_Edge) return Unbounded_String; function XML_String(obj : in CFG_Edge_Ptr) return Unbounded_String; function XML_Ref_String(obj : in CFG_Edge) return Unbounded_String; function XML_Ref_String(obj : in CFG_Edge_Ptr) return Unbounded_String; function Get_Name (obj : in CFG_Edge) return Unbounded_String; function Get_Name (obj : in CFG_Edge_Ptr) return Unbounded_String; function Copy(obj : in CFG_Edge_Ptr) return CFG_Edge_Ptr; function Copy(obj : in CFG_Edge) return CFG_Edge_Ptr; function type_of(obj : in CFG_Edge) return unbounded_string_list; function type_of(obj : in CFG_Edge_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (CFG_Edge'Class, CFG_Edge_Ptr); package CFG_Edges_Table_Package is new Tables(CFG_Edge_Ptr, Framework_Config.Max_CFG_Edges, Put, XML_String, XML_Ref_String); use CFG_Edges_Table_Package; subtype CFG_Edges_Range is CFG_Edges_Table_Package.table_range; subtype CFG_Edges_Range_Ptr is CFG_Edges_Table_Package.table_range_Ptr; subtype CFG_Edges_Table is CFG_Edges_Table_Package.table; subtype CFG_Edges_Table_Ptr is CFG_Edges_Table_Package.table_Ptr; -- --------= CFG_Edge_Record =-------- type CFG_Edge_Record is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; procedure Initialize(obj : out CFG_Edge_Record); procedure Put(obj : in CFG_Edge_Record); procedure Put(obj : in CFG_Edge_Record_Ptr); function Copy(obj : in CFG_Edge_Record_Ptr) return CFG_Edge_Record_Ptr; function Copy(obj : in CFG_Edge_Record) return CFG_Edge_Record_Ptr; procedure Build_Attributes_XML_String(obj : in CFG_Edge_Record; result : in out Unbounded_String); function XML_String(obj : in CFG_Edge_Record) return Unbounded_String; function XML_String(obj : in CFG_Edge_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in CFG_Edge_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (CFG_Edge_Record, CFG_Edge_Record_Ptr); End CFG_Edges; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Objects; use Objects; with Tasks; use Tasks; use Tasks.Generic_Task_List_Package; with Offsets; use Offsets; with Parameters; use Parameters; with standards_io; use standards_io; use standards_io.natural_io; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; Package Task_Groups is type Generic_Task_Group; type Generic_Task_Group_Ptr is access all Generic_Task_Group'Class; type Transaction_Task_Group; type Transaction_Task_Group_Ptr is access all Transaction_Task_Group'Class; type Multiframe_Task_Group; type Multiframe_Task_Group_Ptr is access all Multiframe_Task_Group'Class; type Task_Groups_Type is ( Transaction_Type, Multiframe_Type); procedure To_Task_Groups_Type is new Convert_Strings(Task_Groups_Type, Transaction_Type); procedure To_Task_Groups_Type is new Convert_Unbounded_Strings(Task_Groups_Type, Transaction_Type); function XML_String (obj : in Task_Groups_Type) return Unbounded_String; function XML_Ref_String (obj : in Task_Groups_Type) return Unbounded_String; package Task_Groups_Type_io is new text_io.enumeration_io(Task_Groups_Type); use Task_Groups_Type_io; -- --------= Generic_Task_Group =-------- type Generic_Task_Group is new Named_Object with record task_list : Generic_Task_List; task_group_type : Task_Groups_Type; deadline : Natural; start_time : Natural; priority : Priority_Range; criticality : Natural; period : Natural; jitter : Natural; end record; procedure Initialize(obj : in out Generic_Task_Group); procedure Put(obj : in Generic_Task_Group); procedure Put(obj : in Generic_Task_Group_Ptr); procedure Put_Name(obj : in Generic_Task_Group_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Task_Group; result : in out Unbounded_String); function XML_String(obj : in Generic_Task_Group) return Unbounded_String; function XML_String(obj : in Generic_Task_Group_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Task_Group) return Unbounded_String; function XML_Ref_String(obj : in Generic_Task_Group_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Task_Group) return Unbounded_String; function Get_Name (obj : in Generic_Task_Group_Ptr) return Unbounded_String; function Copy(obj : in Generic_Task_Group_Ptr) return Generic_Task_Group_Ptr; function Copy(obj : in Generic_Task_Group) return Generic_Task_Group_Ptr; function type_of(obj : in Generic_Task_Group) return unbounded_string_list; function type_of(obj : in Generic_Task_Group_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Task_Group'Class, Generic_Task_Group_Ptr); -- --------= Transaction_Task_Group =-------- type Transaction_Task_Group is new Generic_Task_Group with null record; procedure Initialize(obj : in out Transaction_Task_Group); procedure Put(obj : in Transaction_Task_Group); procedure Put(obj : in Transaction_Task_Group_Ptr); procedure Put_Name(obj : in Transaction_Task_Group_Ptr); procedure Build_Attributes_XML_String(obj : in Transaction_Task_Group; result : in out Unbounded_String); function XML_String(obj : in Transaction_Task_Group) return Unbounded_String; function XML_String(obj : in Transaction_Task_Group_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Transaction_Task_Group) return Unbounded_String; function XML_Ref_String(obj : in Transaction_Task_Group_Ptr) return Unbounded_String; function Get_Name (obj : in Transaction_Task_Group) return Unbounded_String; function Get_Name (obj : in Transaction_Task_Group_Ptr) return Unbounded_String; function Copy(obj : in Transaction_Task_Group_Ptr) return Generic_Task_Group_Ptr; function Copy(obj : in Transaction_Task_Group) return Generic_Task_Group_Ptr; function type_of(obj : in Transaction_Task_Group) return unbounded_string_list; function type_of(obj : in Transaction_Task_Group_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Transaction_Task_Group'Class, Transaction_Task_Group_Ptr); -- --------= Multiframe_Task_Group =-------- type Multiframe_Task_Group is new Generic_Task_Group with null record; procedure Initialize(obj : in out Multiframe_Task_Group); procedure Put(obj : in Multiframe_Task_Group); procedure Put(obj : in Multiframe_Task_Group_Ptr); procedure Put_Name(obj : in Multiframe_Task_Group_Ptr); procedure Build_Attributes_XML_String(obj : in Multiframe_Task_Group; result : in out Unbounded_String); function XML_String(obj : in Multiframe_Task_Group) return Unbounded_String; function XML_String(obj : in Multiframe_Task_Group_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Multiframe_Task_Group) return Unbounded_String; function XML_Ref_String(obj : in Multiframe_Task_Group_Ptr) return Unbounded_String; function Get_Name (obj : in Multiframe_Task_Group) return Unbounded_String; function Get_Name (obj : in Multiframe_Task_Group_Ptr) return Unbounded_String; function Copy(obj : in Multiframe_Task_Group_Ptr) return Generic_Task_Group_Ptr; function Copy(obj : in Multiframe_Task_Group) return Generic_Task_Group_Ptr; function type_of(obj : in Multiframe_Task_Group) return unbounded_string_list; function type_of(obj : in Multiframe_Task_Group_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Multiframe_Task_Group'Class, Multiframe_Task_Group_Ptr); End Task_Groups; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Processor_Interface; use Processor_Interface; with Core_Units; use Core_Units; with Caches; use Caches; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with standards_io; use standards_io; with Lists; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Processors is type Generic_Processor; type Generic_Processor_Ptr is access all Generic_Processor'Class; type Mono_Core_Processor; type Mono_Core_Processor_Ptr is access all Mono_Core_Processor'Class; type Multi_Cores_Processor; type Multi_Cores_Processor_Ptr is access all Multi_Cores_Processor'Class; -- --------= Generic_Processor =-------- type Generic_Processor is new Named_Object with record processor_type : Processors_type; migration_type : Migrations_Type; end record; procedure Initialize(obj : in out Generic_Processor); procedure Put(obj : in Generic_Processor); procedure Put(obj : in Generic_Processor_Ptr); procedure Put_Name(obj : in Generic_Processor_Ptr); procedure Build_Attributes_XML_String(obj : in Generic_Processor; result : in out Unbounded_String); function XML_String(obj : in Generic_Processor) return Unbounded_String; function XML_String(obj : in Generic_Processor_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Generic_Processor) return Unbounded_String; function XML_Ref_String(obj : in Generic_Processor_Ptr) return Unbounded_String; function Get_Name (obj : in Generic_Processor) return Unbounded_String; function Get_Name (obj : in Generic_Processor_Ptr) return Unbounded_String; function Copy(obj : in Generic_Processor_Ptr) return Generic_Processor_Ptr; function Copy(obj : in Generic_Processor) return Generic_Processor_Ptr; function type_of(obj : in Generic_Processor) return unbounded_string_list; function type_of(obj : in Generic_Processor_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Generic_Processor'Class, Generic_Processor_Ptr); -- --------= Mono_Core_Processor =-------- type Mono_Core_Processor is new Generic_Processor with record core : Core_Unit_Ptr; end record; procedure Initialize(obj : in out Mono_Core_Processor); procedure Put(obj : in Mono_Core_Processor); procedure Put(obj : in Mono_Core_Processor_Ptr); procedure Put_Name(obj : in Mono_Core_Processor_Ptr); procedure Build_Attributes_XML_String(obj : in Mono_Core_Processor; result : in out Unbounded_String); function XML_String(obj : in Mono_Core_Processor) return Unbounded_String; function XML_String(obj : in Mono_Core_Processor_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Mono_Core_Processor) return Unbounded_String; function XML_Ref_String(obj : in Mono_Core_Processor_Ptr) return Unbounded_String; function Get_Name (obj : in Mono_Core_Processor) return Unbounded_String; function Get_Name (obj : in Mono_Core_Processor_Ptr) return Unbounded_String; function Copy(obj : in Mono_Core_Processor_Ptr) return Generic_Processor_Ptr; function Copy(obj : in Mono_Core_Processor) return Generic_Processor_Ptr; function type_of(obj : in Mono_Core_Processor) return unbounded_string_list; function type_of(obj : in Mono_Core_Processor_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Mono_Core_Processor'Class, Mono_Core_Processor_Ptr); -- --------= Multi_Cores_Processor =-------- type Multi_Cores_Processor is new Generic_Processor with record cores : Core_Units_Table; l2_cache_system_name : Unbounded_String; end record; procedure Initialize(obj : in out Multi_Cores_Processor); procedure Put(obj : in Multi_Cores_Processor); procedure Put(obj : in Multi_Cores_Processor_Ptr); procedure Put_Name(obj : in Multi_Cores_Processor_Ptr); procedure Build_Attributes_XML_String(obj : in Multi_Cores_Processor; result : in out Unbounded_String); function XML_String(obj : in Multi_Cores_Processor) return Unbounded_String; function XML_String(obj : in Multi_Cores_Processor_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Multi_Cores_Processor) return Unbounded_String; function XML_Ref_String(obj : in Multi_Cores_Processor_Ptr) return Unbounded_String; function Get_Name (obj : in Multi_Cores_Processor) return Unbounded_String; function Get_Name (obj : in Multi_Cores_Processor_Ptr) return Unbounded_String; function Copy(obj : in Multi_Cores_Processor_Ptr) return Generic_Processor_Ptr; function Copy(obj : in Multi_Cores_Processor) return Generic_Processor_Ptr; function type_of(obj : in Multi_Cores_Processor) return unbounded_string_list; function type_of(obj : in Multi_Cores_Processor_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Multi_Cores_Processor'Class, Multi_Cores_Processor_Ptr); package Generic_Processor_List_Package is new Lists(Generic_Processor_Ptr, Put, Free, XML_Ref_String); use Generic_Processor_List_Package; subtype Generic_Processor_Iterator is Generic_Processor_List_Package.iterator; subtype Generic_Processor_Iterator_Ptr is Generic_Processor_List_Package.iterator_Ptr; subtype Generic_Processor_List is Generic_Processor_List_Package.list; subtype Generic_Processor_List_Ptr is Generic_Processor_List_Package.list_Ptr; End Processors; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Partitioning_Algorithms is type Processor_Sort_Type is ( Processor_Index, Processor_Utilization); procedure To_Processor_Sort_Type is new Convert_Strings(Processor_Sort_Type, Processor_Index); procedure To_Processor_Sort_Type is new Convert_Unbounded_Strings(Processor_Sort_Type, Processor_Index); function XML_String (obj : in Processor_Sort_Type) return Unbounded_String; function XML_Ref_String (obj : in Processor_Sort_Type) return Unbounded_String; package Processor_Sort_Type_io is new text_io.enumeration_io(Processor_Sort_Type); use Processor_Sort_Type_io; type Task_Sort_Type is ( Task_Period, Task_Deadline); procedure To_Task_Sort_Type is new Convert_Strings(Task_Sort_Type, Task_Period); procedure To_Task_Sort_Type is new Convert_Unbounded_Strings(Task_Sort_Type, Task_Period); function XML_String (obj : in Task_Sort_Type) return Unbounded_String; function XML_Ref_String (obj : in Task_Sort_Type) return Unbounded_String; package Task_Sort_Type_io is new text_io.enumeration_io(Task_Sort_Type); use Task_Sort_Type_io; type Feasibility_Test_Type is ( Condition_IP_Test, Utilization_Test); procedure To_Feasibility_Test_Type is new Convert_Strings(Feasibility_Test_Type, Condition_IP_Test); procedure To_Feasibility_Test_Type is new Convert_Unbounded_Strings(Feasibility_Test_Type, Condition_IP_Test); function XML_String (obj : in Feasibility_Test_Type) return Unbounded_String; function XML_Ref_String (obj : in Feasibility_Test_Type) return Unbounded_String; package Feasibility_Test_Type_io is new text_io.enumeration_io(Feasibility_Test_Type); use Feasibility_Test_Type_io; type Loop_Operation_Type is ( RMFF_loop, RMBF_loop, RMNF_loop); procedure To_Loop_Operation_Type is new Convert_Strings(Loop_Operation_Type, RMFF_loop); procedure To_Loop_Operation_Type is new Convert_Unbounded_Strings(Loop_Operation_Type, RMFF_loop); function XML_String (obj : in Loop_Operation_Type) return Unbounded_String; function XML_Ref_String (obj : in Loop_Operation_Type) return Unbounded_String; package Loop_Operation_Type_io is new text_io.enumeration_io(Loop_Operation_Type); use Loop_Operation_Type_io; End Partitioning_Algorithms; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; Package Processor_Interface is type Processors_type is ( Monocore_type, Identical_Multicores_Type, Uniform_Multicores_Type, Unrelated_Multicores_Type); procedure To_Processors_type is new Convert_Strings(Processors_type, Monocore_type); procedure To_Processors_type is new Convert_Unbounded_Strings(Processors_type, Monocore_type); function XML_String (obj : in Processors_type) return Unbounded_String; function XML_Ref_String (obj : in Processors_type) return Unbounded_String; package Processors_type_io is new text_io.enumeration_io(Processors_type); use Processors_type_io; type Migrations_Type is ( No_Migration_Type, Job_Level_Migration_Type, Time_Unit_Migration_Type); procedure To_Migrations_Type is new Convert_Strings(Migrations_Type, No_Migration_Type); procedure To_Migrations_Type is new Convert_Unbounded_Strings(Migrations_Type, No_Migration_Type); function XML_String (obj : in Migrations_Type) return Unbounded_String; function XML_Ref_String (obj : in Migrations_Type) return Unbounded_String; package Migrations_Type_io is new text_io.enumeration_io(Migrations_Type); use Migrations_Type_io; type Multiprocessors_Type is ( Identical, Homogeneous, Heterogeneous); procedure To_Multiprocessors_Type is new Convert_Strings(Multiprocessors_Type, Identical); procedure To_Multiprocessors_Type is new Convert_Unbounded_Strings(Multiprocessors_Type, Identical); function XML_String (obj : in Multiprocessors_Type) return Unbounded_String; function XML_Ref_String (obj : in Multiprocessors_Type) return Unbounded_String; package Multiprocessors_Type_io is new text_io.enumeration_io(Multiprocessors_Type); use Multiprocessors_Type_io; End Processor_Interface; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Time_Unit_Events; use Time_Unit_Events; with Buffers; use Buffers; use Buffers.Buffer_Roles_Package; with access_Lists; with Unchecked_Deallocation; with Indexed_Tables; with standards_io; use standards_io; use standards_io.boolean_io; use standards_io.double_io; use standards_io.natural_io; with Ada.Finalization; with unbounded_strings; use unbounded_strings; use unbounded_strings.Unbounded_String_List_Package; with Primitive_XML_Strings; use Primitive_XML_Strings; with Tables; with Task_Set; use Task_Set; with Double_Util; use Double_Util; with Ada.Strings.Unbounded.Text_Io; use Ada.Strings.Unbounded.Text_Io; with Tasks; use Tasks; with Text_io; use Text_io; with Convert_Strings; with Convert_Unbounded_Strings; with Ada.Numerics.Aux; use Ada.Numerics.Aux; Package Scheduling_Analysis is type Buffer_Size_Item; type Buffer_Size_Item_Ptr is access all Buffer_Size_Item; type Density_Item; type Density_Item_Ptr is access all Density_Item; type Deadlock_Item; type Deadlock_Item_Ptr is access all Deadlock_Item; type Priority_Inversion_Item; type Priority_Inversion_Item_Ptr is access all Priority_Inversion_Item; type Task_Release_Record; type Task_Release_Record_Ptr is access all Task_Release_Record'Class; type Relative_Priority_Record; type Relative_Priority_Record_Ptr is access all Relative_Priority_Record; type Ceiling_Priority_Record; type Ceiling_Priority_Record_Ptr is access all Ceiling_Priority_Record; subtype Scheduling_Sequence is Time_Unit_Package.Indexed_Table; subtype Scheduling_Sequence_Ptr is Time_Unit_Package.Indexed_Table_Ptr; package Generic_Index_Lst_Package is new access_Lists(Put => Put, Element => Double, Element_Ptr => Double_Ptr, Free => Double_Util.Free, copy => copy, Xml_String => Xml_String); use Generic_Index_Lst_Package; package Double_Tasks_Parameters_Package is new Indexed_Tables(Double, Generic_Task_Ptr, Framework_Config.Max_Tasks, 0, Double_Util.Put, Double_Util.Initialize, Put_Name, Get_Name, XML_String, XML_Ref_String); use Double_Tasks_Parameters_Package; subtype Blocking_Time_Table is Double_Tasks_Parameters_Package.indexed_table; subtype Blocking_Time_Table_Ptr is Double_Tasks_Parameters_Package.indexed_table_Ptr; subtype Blocking_Time_Range is Double_Tasks_Parameters_Package.indexed_table_range; subtype Blocking_Time_Range_Ptr is Double_Tasks_Parameters_Package.indexed_table_range_Ptr; subtype Response_Time_Table is Double_Tasks_Parameters_Package.indexed_table; subtype Response_Time_Table_Ptr is Double_Tasks_Parameters_Package.indexed_table_Ptr; subtype Response_Time_Range is Double_Tasks_Parameters_Package.indexed_table_range; subtype Response_Time_Range_Ptr is Double_Tasks_Parameters_Package.indexed_table_range_Ptr; -- --------= Buffer_Size_Item =-------- type Buffer_Size_Item is record time : Natural; size : Natural; end record; procedure Initialize(obj : out Buffer_Size_Item); procedure Put(obj : in Buffer_Size_Item); procedure Put(obj : in Buffer_Size_Item_Ptr); function Copy(obj : in Buffer_Size_Item_Ptr) return Buffer_Size_Item_Ptr; function Copy(obj : in Buffer_Size_Item) return Buffer_Size_Item_Ptr; procedure Build_Attributes_XML_String(obj : in Buffer_Size_Item; result : in out Unbounded_String); function XML_String(obj : in Buffer_Size_Item) return Unbounded_String; function XML_String(obj : in Buffer_Size_Item_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Buffer_Size_Item) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Buffer_Size_Item, Buffer_Size_Item_Ptr); package Buffer_Size_Package is new Tables(Buffer_Size_Item, Framework_Config.Max_Scheduling_Period, Put, XML_String, XML_Ref_String); use Buffer_Size_Package; subtype Buffer_Size_Range is Buffer_Size_Package.table_range; subtype Buffer_Size_Range_Ptr is Buffer_Size_Package.table_range_Ptr; subtype Buffer_Size_Table is Buffer_Size_Package.table; subtype Buffer_Size_Table_Ptr is Buffer_Size_Package.table_Ptr; package Buffer_Result_Package is new Indexed_Tables(Buffer_Size_Table, Buffer_Ptr, Framework_Config.Max_Buffers, 0, Put, Initialize, Buffers.Put_Name, Buffers.Get_Name, XML_Root_String, XML_String); use Buffer_Result_Package; subtype Buffer_Result_Range is Buffer_Result_Package.indexed_table_range; subtype Buffer_Result_Range_Ptr is Buffer_Result_Package.indexed_table_range_Ptr; subtype Buffer_Result_Table is Buffer_Result_Package.indexed_table; subtype Buffer_Result_Table_Ptr is Buffer_Result_Package.indexed_table_Ptr; package Waiting_Time_Package is new Tables(Double, Framework_Config.Max_Scheduling_Period, Put, XML_String, XML_Ref_String); use Waiting_Time_Package; subtype Waiting_Time_Range is Waiting_Time_Package.table_range; subtype Waiting_Time_Range_Ptr is Waiting_Time_Package.table_range_Ptr; subtype Waiting_Time_Table is Waiting_Time_Package.table; subtype Waiting_Time_Table_Ptr is Waiting_Time_Package.table_Ptr; -- --------= Density_Item =-------- type Density_Item is record response_time : Natural; probability : Double; end record; procedure Initialize(obj : out Density_Item); procedure Put(obj : in Density_Item); procedure Put(obj : in Density_Item_Ptr); function Copy(obj : in Density_Item_Ptr) return Density_Item_Ptr; function Copy(obj : in Density_Item) return Density_Item_Ptr; procedure Build_Attributes_XML_String(obj : in Density_Item; result : in out Unbounded_String); function XML_String(obj : in Density_Item) return Unbounded_String; function XML_String(obj : in Density_Item_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Density_Item) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Density_Item, Density_Item_Ptr); package Density_Package is new Tables(Density_Item, Framework_Config.Max_Density_Size, Put, XML_String, XML_Ref_String); use Density_Package; subtype Density_Range is Density_Package.table_range; subtype Density_Range_Ptr is Density_Package.table_range_Ptr; subtype Density_Table is Density_Package.table; subtype Density_Table_Ptr is Density_Package.table_Ptr; package Densities_Table_Package is new Indexed_Tables(Density_Table, Generic_Task_Ptr, framework_config.max_tasks, 0, Put, Initialize, Put_Name, Get_Name, XML_Root_String, XML_String); use Densities_Table_Package; subtype Densities_Range is Densities_Table_Package.indexed_table_range; subtype Densities_Range_Ptr is Densities_Table_Package.indexed_table_range_Ptr; subtype Densities_Table is Densities_Table_Package.indexed_table; subtype Densities_Table_Ptr is Densities_Table_Package.indexed_table_Ptr; -- --------= Deadlock_Item =-------- type Deadlock_Item is record time : Natural; task_name : Unbounded_String; resource_name : Unbounded_String; end record; procedure Initialize(obj : out Deadlock_Item); procedure Put(obj : in Deadlock_Item); procedure Put(obj : in Deadlock_Item_Ptr); function Copy(obj : in Deadlock_Item_Ptr) return Deadlock_Item_Ptr; function Copy(obj : in Deadlock_Item) return Deadlock_Item_Ptr; procedure Build_Attributes_XML_String(obj : in Deadlock_Item; result : in out Unbounded_String); function XML_String(obj : in Deadlock_Item) return Unbounded_String; function XML_String(obj : in Deadlock_Item_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Deadlock_Item) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Deadlock_Item, Deadlock_Item_Ptr); package Deadlock_Package is new Access_Lists(Deadlock_Item, Deadlock_Item_Ptr, Put, Free, Copy, Xml_String); use Deadlock_Package; subtype Deadlock_Iterator is Deadlock_Package.iterator; subtype Deadlock_Iterator_Ptr is Deadlock_Package.iterator_Ptr; subtype Deadlock_List is Deadlock_Package.list; subtype Deadlock_List_Ptr is Deadlock_Package.list_Ptr; -- --------= Priority_Inversion_Item =-------- type Priority_Inversion_Item is record start_time : Natural; end_time : Natural; task_name : Unbounded_String; resource_name : Unbounded_String; end record; procedure Initialize(obj : out Priority_Inversion_Item); procedure Put(obj : in Priority_Inversion_Item); procedure Put(obj : in Priority_Inversion_Item_Ptr); function Copy(obj : in Priority_Inversion_Item_Ptr) return Priority_Inversion_Item_Ptr; function Copy(obj : in Priority_Inversion_Item) return Priority_Inversion_Item_Ptr; procedure Build_Attributes_XML_String(obj : in Priority_Inversion_Item; result : in out Unbounded_String); function XML_String(obj : in Priority_Inversion_Item) return Unbounded_String; function XML_String(obj : in Priority_Inversion_Item_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Priority_Inversion_Item) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Priority_Inversion_Item, Priority_Inversion_Item_Ptr); package Priority_Inversion_List_Package is new Access_Lists(Priority_Inversion_Item, Priority_Inversion_Item_Ptr, Put, Free, Copy, Xml_String); use Priority_Inversion_List_Package; subtype Priority_Inversion_Iterator is Priority_Inversion_List_Package.iterator; subtype Priority_Inversion_Iterator_Ptr is Priority_Inversion_List_Package.iterator_Ptr; subtype Priority_Inversion_List is Priority_Inversion_List_Package.list; subtype Priority_Inversion_List_Ptr is Priority_Inversion_List_Package.list_Ptr; -- --------= Task_Release_Record =-------- type Task_Release_Record is new Ada.Finalization.Controlled with record cheddar_private_id : Unbounded_String; task_name : Unbounded_String; task_index : Natural; capacity : Natural; release_time : Natural; finish_time : Natural; deadline : Natural; completed : Boolean; end record; procedure Initialize(obj : in out Task_Release_Record); procedure Put(obj : in Task_Release_Record); procedure Put(obj : in Task_Release_Record_Ptr); procedure Put_Name(obj : in Task_Release_Record_Ptr); procedure Build_Attributes_XML_String(obj : in Task_Release_Record; result : in out Unbounded_String); function XML_String(obj : in Task_Release_Record) return Unbounded_String; function XML_String(obj : in Task_Release_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Task_Release_Record) return Unbounded_String; function XML_Ref_String(obj : in Task_Release_Record_Ptr) return Unbounded_String; function Copy(obj : in Task_Release_Record_Ptr) return Task_Release_Record_Ptr; function Copy(obj : in Task_Release_Record) return Task_Release_Record_Ptr; function type_of(obj : in Task_Release_Record) return unbounded_string_list; function type_of(obj : in Task_Release_Record_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Task_Release_Record'Class, Task_Release_Record_Ptr); package Task_Release_Records_Table_Package is new Tables(Task_Release_Record_Ptr, Framework_Config.Max_Task_Release_Records, Put, XML_String, XML_String); use Task_Release_Records_Table_Package; subtype Task_Release_Records_Range is Task_Release_Records_Table_Package.table_range; subtype Task_Release_Records_Range_Ptr is Task_Release_Records_Table_Package.table_range_Ptr; subtype Task_Release_Records_Table is Task_Release_Records_Table_Package.table; subtype Task_Release_Records_Table_Ptr is Task_Release_Records_Table_Package.table_Ptr; -- --------= Relative_Priority_Record =-------- type Relative_Priority_Record is record higher_priority_task : Unbounded_String; hpt_index : Natural; lower_priority_task : Unbounded_String; lpt_index : Natural; end record; procedure Initialize(obj : out Relative_Priority_Record); procedure Put(obj : in Relative_Priority_Record); procedure Put(obj : in Relative_Priority_Record_Ptr); function Copy(obj : in Relative_Priority_Record_Ptr) return Relative_Priority_Record_Ptr; function Copy(obj : in Relative_Priority_Record) return Relative_Priority_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Relative_Priority_Record; result : in out Unbounded_String); function XML_String(obj : in Relative_Priority_Record) return Unbounded_String; function XML_String(obj : in Relative_Priority_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Relative_Priority_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Relative_Priority_Record, Relative_Priority_Record_Ptr); package Relative_Priority_Records_Table_Package is new Tables(Relative_Priority_Record_Ptr, Framework_Config.Max_Relative_Priority_Records, Put, XML_String, XML_String); use Relative_Priority_Records_Table_Package; subtype Relative_Priority_Records_Range is Relative_Priority_Records_Table_Package.table_range; subtype Relative_Priority_Records_Range_Ptr is Relative_Priority_Records_Table_Package.table_range_Ptr; subtype Relative_Priority_Records_Table is Relative_Priority_Records_Table_Package.table; subtype Relative_Priority_Records_Table_Ptr is Relative_Priority_Records_Table_Package.table_Ptr; -- --------= Ceiling_Priority_Record =-------- type Ceiling_Priority_Record is record resource_name : Unbounded_String; ceiling_priority : Priority_Range; end record; procedure Initialize(obj : out Ceiling_Priority_Record); procedure Put(obj : in Ceiling_Priority_Record); procedure Put(obj : in Ceiling_Priority_Record_Ptr); function Copy(obj : in Ceiling_Priority_Record_Ptr) return Ceiling_Priority_Record_Ptr; function Copy(obj : in Ceiling_Priority_Record) return Ceiling_Priority_Record_Ptr; procedure Build_Attributes_XML_String(obj : in Ceiling_Priority_Record; result : in out Unbounded_String); function XML_String(obj : in Ceiling_Priority_Record) return Unbounded_String; function XML_String(obj : in Ceiling_Priority_Record_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Ceiling_Priority_Record) return Unbounded_String; procedure Free is new Unchecked_Deallocation (Ceiling_Priority_Record, Ceiling_Priority_Record_Ptr); package Ceiling_Priority_Table_Package is new Tables(Ceiling_Priority_Record_Ptr, Framework_Config.Max_Resources, Put, XML_String, XML_String); use Ceiling_Priority_Table_Package; subtype Ceiling_Priority_Range is Ceiling_Priority_Table_Package.table_range; subtype Ceiling_Priority_Range_Ptr is Ceiling_Priority_Table_Package.table_range_Ptr; subtype Ceiling_Priority_Table is Ceiling_Priority_Table_Package.table; subtype Ceiling_Priority_Table_Ptr is Ceiling_Priority_Table_Package.table_Ptr; End Scheduling_Analysis; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Objects; use Objects; 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 ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Event_Analyzers is type Event_Analyzer; type Event_Analyzer_Ptr is access all Event_Analyzer'Class; -- --------= Event_Analyzer =-------- type Event_Analyzer is new Named_Object with record event_analyzer_source_file_name : Unbounded_String; end record; procedure Initialize(obj : in out Event_Analyzer); procedure Put(obj : in Event_Analyzer); procedure Put(obj : in Event_Analyzer_Ptr); procedure Put_Name(obj : in Event_Analyzer_Ptr); procedure Build_Attributes_XML_String(obj : in Event_Analyzer; result : in out Unbounded_String); function XML_String(obj : in Event_Analyzer) return Unbounded_String; function XML_String(obj : in Event_Analyzer_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Event_Analyzer) return Unbounded_String; function XML_Ref_String(obj : in Event_Analyzer_Ptr) return Unbounded_String; function Get_Name (obj : in Event_Analyzer) return Unbounded_String; function Get_Name (obj : in Event_Analyzer_Ptr) return Unbounded_String; function Copy(obj : in Event_Analyzer_Ptr) return Event_Analyzer_Ptr; function Copy(obj : in Event_Analyzer) return Event_Analyzer_Ptr; function type_of(obj : in Event_Analyzer) return unbounded_string_list; function type_of(obj : in Event_Analyzer_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Event_Analyzer'Class, Event_Analyzer_Ptr); End Event_Analyzers; ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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 free real time scheduling tool. -- This program provides services to automatically check temporal constraints -- of real time tasks. -- -- Copyright (C) 2002-2014 Frank Singhoff -- Cheddar is developed by the LAB-STICC Team, University of Brest -- -- 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 Networks; use Networks; with Unicode; use Unicode; with Unicode.CES; use Unicode.CES; with xml_generic_parsers; use xml_generic_parsers; with Strings; use Strings; with Unbounded_Strings; use Unbounded_Strings; use unbounded_strings.Unbounded_String_List_Package; with call_framework_interface; use call_framework_interface; with Debug; use Debug; with Sections; use Sections; with Framework_Config; use Framework_Config; use Framework_Config.Priority_Io; with id_generators; use id_generators; with Objects; use Objects; with Statements; use Statements; with Automaton; use Automaton; use automaton.Transition_Lists_Package; use automaton.State_Lists_Package; with Convert_Strings; with Convert_Unbounded_Strings; with text_io; use text_io; with Ada.Finalization; with Unchecked_Deallocation; with Primitive_XML_Strings; use Primitive_XML_Strings; with Batteries; use Batteries; with standards_io; use standards_io; use standards_io.double_io; use standards_io.boolean_io; use standards_io.natural_io; with Xml_Architecture_Parser_Interface; use Xml_Architecture_Parser_Interface; with Memories; use Memories; use Memories.Generic_Memory_List_Package; with Tables; with Lists; with Dependencies; use Dependencies; with Messages; use Messages; with Tasks; use Tasks; use Tasks.Generic_Task_List_Package; with Buffers; use Buffers; use Buffers.Buffer_Roles_Package; with Resources; use Resources; with Scheduler; use Scheduler; with Scheduler_Interface; use Scheduler_Interface; with Expressions; use Expressions; with Simulations; use Simulations; with AADL_Parser_Interface; use AADL_Parser_Interface; with Parameters; use Parameters; use parameters.User_Defined_Parameters_Table_Package; use Parameters.Framework_Parameters_Table_Package; with CFGs; use CFGs; with CFG_Nodes; use CFG_Nodes; use CFG_Nodes.CFG_Nodes_Table_Package; with CFG_Edges; use CFG_Edges; use CFG_Edges.CFG_Edges_Table_Package; with Laws; use Laws; with Processors; use Processors; use Processors.Generic_Processor_List_Package; with Indexed_Tables; with Data_Accesses; use Data_Accesses; with ARINC_653_Schema; use ARINC_653_Schema; with Execution_Units; use Execution_Units; with AADL_Config; use AADL_Config; with Offsets; use Offsets; use offsets.Offsets_Table_Package; with Sets; with Scheduling_Errors; use Scheduling_Errors; with DP_Graph; use DP_Graph; with Generic_Graph; use Generic_Graph; with Address_Spaces; use Address_Spaces; with MILS_Security; use MILS_Security; with DFG_Nodes; use DFG_Nodes; with Deployments; use Deployments; with Scheduling_Analysis; use Scheduling_Analysis; with Core_Units; use Core_Units; with Caches; use Caches; with Time_Unit_Events; use Time_Unit_Events; use Time_Unit_Events.Time_Unit_Package; with natural_util; use natural_util; with Editor_Config; use Editor_Config; with Access_Lists; with Multiprocessor_Services_Interface; use Multiprocessor_Services_Interface; with Queueing_Systems; use Queueing_Systems; with Basic_Blocks; use Basic_Blocks; with Applicability_Constraints_Main_Structure; use Applicability_Constraints_Main_Structure; with Systems; use Systems; with Interpreter; use Interpreter; with Task_Groups; use Task_Groups; with Processor_Interface; use Processor_Interface; with Partitioning_Algorithms; use Partitioning_Algorithms; with Task_Set; use Task_Set; with Double_Util; use Double_Util; with Event_Analyzers; use Event_Analyzers; with Sax.Readers; use Sax.Readers; with Sax.Attributes; use Sax.Attributes; with Sax.Locators; use Sax.Locators; with Sax.Exceptions; use Sax.Exceptions; with Ada.Text_IO; use Ada.Text_IO; with Ada.Numerics.Aux; use Ada.Numerics.Aux; with Ada.Strings.Unbounded; use Ada.Strings.Unbounded; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; package xml_architecture_io is -- Attributes of the discriminated types type Dependency_io is record type_of_dependency : Dependency_Type; precedence_sink : Unbounded_String; precedence_source : Unbounded_String; buffer_dependent_task : Unbounded_String; buffer_orientation : Orientation_Dependency_Type; buffer_dependency_object : Unbounded_String; asynchronous_communication_dependent_task : Unbounded_String; asynchronous_communication_orientation : Orientation_Dependency_Type; asynchronous_communication_dependency_object : Unbounded_String; asynchronous_communication_protocol_property : Asynchronous_Communication_Protocol_Property_Type; time_triggered_communication_sink : Unbounded_String; time_triggered_communication_source : Unbounded_String; time_triggered_timing_property : Time_Triggered_Communication_Timing_Property_Type; resource_dependency_resource : Unbounded_String; resource_dependency_task : Unbounded_String; remote_procedure_call_client : Unbounded_String; remote_procedure_call_server : Unbounded_String; black_board_dependent_task : Unbounded_String; black_board_orientation : Orientation_Dependency_Type; black_board_dependency_object : Unbounded_String; end record; type PortMappingType_Choice_io is record type_of_PortMappingType_Choice : PortMappingType_Choice_Type; end record; type Time_Unit_Event_io is record type_of_event : Time_Unit_Event_Type; start_task : Unbounded_String; end_task : Unbounded_String; write_buffer : Unbounded_String; write_task : Unbounded_String; write_size : Integer; write_buffer_current_data_size : Integer; read_buffer : Unbounded_String; read_task : Unbounded_String; read_size : Integer; read_buffer_current_data_size : Integer; overflow_buffer : Unbounded_String; overflow_task : Unbounded_String; overflow_write_size : Integer; overflow_buffer_current_data_size : Integer; underflow_buffer : Unbounded_String; underflow_task : Unbounded_String; underflow_read_size : Integer; underflow_buffer_current_data_size : Integer; switched_task : Unbounded_String; running_core : Unbounded_String; running_task : Unbounded_String; current_priority : Integer; CRPD : Integer; cache_state : Unbounded_String; activation_task : Unbounded_String; allocate_task : Unbounded_String; allocate_resource : Unbounded_String; release_task : Unbounded_String; release_resource : Unbounded_String; wait_for_resource_task : Unbounded_String; wait_for_resource : Unbounded_String; send_task : Unbounded_String; send_message : Unbounded_String; receive_task : Unbounded_String; receive_message : Unbounded_String; wait_for_memory_task : Unbounded_String; wait_for_cache : Unbounded_String; activation_address_space : Unbounded_String; duration : Integer; preempted_task : Unbounded_String; preempting_task : Unbounded_String; evicted_ucbs : Integer; end record; type Parameter_io is record type_of_parameter : Parameter_Type; parameter_name : Unbounded_String; boolean_value : Boolean; integer_value : Integer; double_value : Double; string_value : Unbounded_String; end record; procedure Start_Element( Handler: in out Xml_Generic_Parser; ref : in out unbounded_string; id : in out unbounded_string; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Dependency_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Dependency_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PortMappingType_Choice_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Time_Unit_Event_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Time_Unit_Event_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Parameter_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Initialize(obj : out Dependency_io); procedure Initialize(obj : out PortMappingType_Choice_io); procedure Initialize(obj : out Time_Unit_Event_io); procedure Initialize(obj : out Parameter_io); -- Attributes of the parsed entities type Memory_Record_io is record size : Integer; access_latency : Integer; memory_category : Memory_Type; shared_access_latency : Integer; private_access_latency : Integer; l_rw_inter : Integer; l_act_inter : Integer; l_pre_inter : Integer; n_reorder : Integer; l_conhit : Integer; l_conf : Integer; nb_bank : Integer; partition_mode : Boolean; end record; type Binding_Record_Type_io is record cpu_name : Unbounded_String; address_space_name : Unbounded_String; end record; type Framework_Request_io is record statement : Framework_Statement_Type; target : Unbounded_String; end record; type Framework_Response_io is record title : Unbounded_String; text : Unbounded_String; end record; type Position_io is record X : Integer; Y : Integer; end record; type Data_Access_Record_io is record Access_Type : Data_Access_Type; Memory_Address : Integer; Time_Constraint_Name : Unbounded_String; Size : Integer; end record; type CFG_Node_Record_io is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; type Execution_Unit_Record_io is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; unit_type : Execution_Unit_Type; time_constraint_name : Unbounded_String; capacity : Integer; end record; type Offset_Type_io is record offset_value : Integer; activation : Integer; end record; type Scheduling_Error_Record_io is record error_type : Error_Type_Type; time : Integer; error_action : Error_Action_Type; user_defined_action : Unbounded_String; end record; type DFG_Cfg_Type_io is record Nb_Blocks : Integer; end record; type DFG_Def_Use_Association_io is record Def_Variable : Unbounded_String; Def_Statement : Unbounded_String; Use_Statement : Unbounded_String; end record; type DFG_Var_Association_io is record Def_Variable : Unbounded_String; Statement : Unbounded_String; end record; type DFG_Def_Use_Info_io is record null; end record; type Critical_Section_io is record task_begin : Integer; task_end : Integer; end record; type Automaton_Status_io is record current_state : Unbounded_String; end record; type Transition_Status_io is record code : Unbounded_String; status : Status_Type; wakeup_time : Integer; end record; type Scheduling_Result_io is record scheduling_msg : Unbounded_String; has_error : Boolean; error_msg : Unbounded_String; end record; type Basic_Block_Record_io is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; instruction_offset : Integer; instruction_capacity : Integer; number_of_memory_access : Integer; execution_time : Integer; data_offset : Integer; data_capacity : Integer; loop_bound : Integer; end record; type Applicability_Constraint_io is record Name : Unbounded_String; Result : Boolean; end record; type Applicability_Constraint_Case_io is record Name : Unbounded_String; Feasibility_Test_Names : Unbounded_String; end record; type All_Cases_Structure_io is record null; end record; type Buffer_Role_io is record the_role : Buffer_Role_Type; size : Integer; time : Integer; timeout : Integer; amplitude_function : Unbounded_String; end record; type Scheduling_Parameters_io is record scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type CFG_Edge_Record_io is record graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; type Buffer_Size_Item_io is record time : Integer; size : Integer; end record; type Density_Item_io is record response_time : Integer; probability : Double; end record; type Deadlock_Item_io is record time : Integer; task_name : Unbounded_String; resource_name : Unbounded_String; end record; type Priority_Inversion_Item_io is record start_time : Integer; end_time : Integer; task_name : Unbounded_String; resource_name : Unbounded_String; end record; type Relative_Priority_Record_io is record higher_priority_task : Unbounded_String; hpt_index : Integer; lower_priority_task : Unbounded_String; lpt_index : Integer; end record; type Ceiling_Priority_Record_io is record resource_name : Unbounded_String; ceiling_priority : Integer; end record; procedure Initialize(obj : out Memory_Record_io); procedure Initialize(obj : out Binding_Record_Type_io); procedure Initialize(obj : out Framework_Request_io); procedure Initialize(obj : out Framework_Response_io); procedure Initialize(obj : out Position_io); procedure Initialize(obj : out Data_Access_Record_io); procedure Initialize(obj : out CFG_Node_Record_io); procedure Initialize(obj : out Execution_Unit_Record_io); procedure Initialize(obj : out Offset_Type_io); procedure Initialize(obj : out Scheduling_Error_Record_io); procedure Initialize(obj : out DFG_Cfg_Type_io); procedure Initialize(obj : out DFG_Def_Use_Association_io); procedure Initialize(obj : out DFG_Var_Association_io); procedure Initialize(obj : out DFG_Def_Use_Info_io); procedure Initialize(obj : out Critical_Section_io); procedure Initialize(obj : out Automaton_Status_io); procedure Initialize(obj : out Transition_Status_io); procedure Initialize(obj : out Scheduling_Result_io); procedure Initialize(obj : out Basic_Block_Record_io); procedure Initialize(obj : out Applicability_Constraint_io); procedure Initialize(obj : out Applicability_Constraint_Case_io); procedure Initialize(obj : out All_Cases_Structure_io); procedure Initialize(obj : out Buffer_Role_io); procedure Initialize(obj : out Scheduling_Parameters_io); procedure Initialize(obj : out CFG_Edge_Record_io); procedure Initialize(obj : out Buffer_Size_Item_io); procedure Initialize(obj : out Density_Item_io); procedure Initialize(obj : out Deadlock_Item_io); procedure Initialize(obj : out Priority_Inversion_Item_io); procedure Initialize(obj : out Relative_Priority_Record_io); procedure Initialize(obj : out Ceiling_Priority_Record_io); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Memory_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Memory_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Binding_Record_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Binding_Record_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Framework_Request_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Framework_Request_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Framework_Response_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Framework_Response_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Position_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Position_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Data_Access_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Data_Access_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Node_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Node_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Execution_Unit_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Execution_Unit_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Offset_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Offset_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Error_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Error_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Cfg_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Cfg_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Def_Use_Association_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Def_Use_Association_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Var_Association_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Var_Association_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Def_Use_Info_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Def_Use_Info_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Critical_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Critical_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Automaton_Status_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Automaton_Status_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Transition_Status_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Transition_Status_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Result_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Result_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Basic_Block_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Basic_Block_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Applicability_Constraint_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Applicability_Constraint_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Applicability_Constraint_Case_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Applicability_Constraint_Case_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out All_Cases_Structure_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out All_Cases_Structure_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Role_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Role_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Parameters_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Parameters_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Edge_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Edge_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Size_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Size_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Density_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Density_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Deadlock_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Deadlock_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Priority_Inversion_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Priority_Inversion_Item_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Relative_Priority_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Relative_Priority_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Ceiling_Priority_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Ceiling_Priority_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); type Generic_Section_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; section_type : Sections_Type; file_name : Unbounded_String; end record; type Computation_Section_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; section_type : Sections_Type; file_name : Unbounded_String; first_statement : Unbounded_String; end record; type Synchronization_Section_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; section_type : Sections_Type; file_name : Unbounded_String; end record; type Battery_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; capacity : Integer; rechargeable_power : Integer; cpu_name : Unbounded_String; e_max : Integer; initial_energy : Integer; end record; type Generic_Memory_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; size : Integer; access_latency : Integer; memory_category : Memory_Type; end record; type DRAM_Memory_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; size : Integer; access_latency : Integer; memory_category : Memory_Type; shared_access_latency : Integer; private_access_latency : Integer; l_rw_inter : Integer; l_act_inter : Integer; l_pre_inter : Integer; n_reorder : Integer; l_conhit : Integer; l_conf : Integer; end record; type Kalray_Memory_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; size : Integer; access_latency : Integer; memory_category : Memory_Type; nb_bank : Integer; partition_mode : Boolean; end record; type Generic_Scheduler_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Aperiodic_Task_Server_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Polling_Server_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Deferred_Server_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Sporadic_Server_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Hierarchical_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Compiled_User_Defined_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Automata_User_Defined_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Pipeline_User_Defined_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type User_Defined_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Earliest_Deadline_First_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Least_Laxity_First_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Rate_Monotonic_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Deadline_Monotonic_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Round_Robin_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Time_Sharing_Based_On_Wait_Time_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Posix_1003_Highest_Priority_First_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type D_Over_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Maximum_Urgency_First_Based_On_Laxity_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Maximum_Urgency_First_Based_On_Deadline_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Time_Sharing_Based_On_Cpu_Usage_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type No_Scheduling_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Hierarchical_Cyclic_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Hierarchical_Round_Robin_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Hierarchical_Fixed_Priority_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Hierarchical_Offline_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Fixed_Priority_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Dynamic_Priority_Protocol_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Generic_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; end record; type Constant_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; end record; type Variable_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; identifier : Unbounded_String; variable_type : Simulation_Type; end record; type Array_Variable_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; identifier : Unbounded_String; variable_type : Simulation_Type; array_index : Unbounded_String; end record; type Binary_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; identifier : Unbounded_String; variable_type : Simulation_Type; rvalue : Unbounded_String; lvalue : Unbounded_String; operator : Operator_Type; end record; type Unary_Expression_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; expression_type : Expressions_Type; identifier : Unbounded_String; variable_type : Simulation_Type; operator : Operator_Type; VALUE : Unbounded_String; end record; type CFG_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; end record; type Generic_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; end record; type Nop_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; end record; type Exit_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; end record; type Put_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; put_from : Unbounded_String; put_to : Unbounded_String; expression_to_be_displayed : Unbounded_String; end record; type If_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; bool_expression : Unbounded_String; else_statement : Unbounded_String; then_statement : Unbounded_String; end record; type Assign_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; lvalue : Unbounded_String; rvalue : Unbounded_String; end record; type Clock_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; lvalue : Unbounded_String; rvalue : Unbounded_String; end record; type Delete_Precedence_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; Delete_Source : Unbounded_String; Delete_Sink : Unbounded_String; end record; type Add_Precedence_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; Add_Source : Unbounded_String; Add_Sink : Unbounded_String; end record; type For_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; for_type : Table_Types; included_statement : Unbounded_String; for_index : Unbounded_String; end record; type Return_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; return_value : Unbounded_String; end record; type While_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; included_statement : Unbounded_String; condition : Unbounded_String; end record; type Random_Initialize_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; lvalue : Unbounded_String; law : Laws_Type; parameter1 : Unbounded_String; parameter2 : Unbounded_String; end record; type Set_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; set_id : Unbounded_String; set_value : Unbounded_String; end record; type Subprogram_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; included_statement : Unbounded_String; is_a_function : Boolean; subprogram_name : Unbounded_String; end record; type Subprogram_Call_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; statement_type : Statements_Type; line_number : Integer; file_name : Unbounded_String; next_statement : Unbounded_String; is_a_function : Boolean; called_subprogram : Unbounded_String; return_value : Unbounded_String; end record; type Generic_Network_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_delay : Networks_Delay_Type; network_architecture_type : Networks_Architecture_Type; end record; type NOC_Network_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_delay : Networks_Delay_Type; network_architecture_type : Networks_Architecture_Type; topology : Topology_Type; number_of_processor : Integer; link_delay : Integer; dimension : Integer; number_of_virtual_channel : Integer; routing_protocol : Routing_Type; switching_protocol : Switching_Type; end record; type Spacewire_Network_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_delay : Networks_Delay_Type; network_architecture_type : Networks_Architecture_Type; number_of_processor : Integer; link_delay : Integer; Xdimension : Integer; Ydimension : Integer; routing_protocol : Routing_Type; end record; type Bus_Network_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_delay : Networks_Delay_Type; network_architecture_type : Networks_Architecture_Type; bus_arbitration : Arbitration_Type; memory_word_access_time : Integer; maximum_interbank_interferences_memory_delay : Integer; end record; type Data_Access_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; Access_Type : Data_Access_Type; Memory_Address : Integer; Time_Constraint_Name : Unbounded_String; Size : Integer; end record; type CFG_Node_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; end record; type ARINC_653_Object_io is record cheddar_private_id : Unbounded_String; end record; type Error_ID_Type_io is record cheddar_private_id : Unbounded_String; ErrorIdentifier : Unbounded_String; Description : Unbounded_String; PartitionAction : PartitionActionType; ModuleAction : ModuleActionType; end record; type Error_ID_Action_Type_io is record cheddar_private_id : Unbounded_String; ErrorIdentifier : Unbounded_String; Description : Unbounded_String; PartitionAction : PartitionActionType; ModuleAction : ModuleActionType; end record; type Error_ID_Level_Type_io is record cheddar_private_id : Unbounded_String; ErrorIdentifier : Unbounded_String; Description : Unbounded_String; PartitionAction : PartitionActionType; ModuleAction : ModuleActionType; ErrorLevel : ErrorLevelType; ErrorCode : ErrorCodeType; end record; type System_State_Entry_Type_io is record cheddar_private_id : Unbounded_String; SystemState : Unbounded_String; Description : Unbounded_String; end record; type SysHM_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type System_HM_TableType_io is record cheddar_private_id : Unbounded_String; end record; type Mod_HM_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type Module_HM_Type_io is record cheddar_private_id : Unbounded_String; ModuleCallback : Unbounded_String; end record; type PortExt_Type_io is record cheddar_private_id : Unbounded_String; end record; type PortType_io is record cheddar_private_id : Unbounded_String; Name : Unbounded_String; MaxMessageSize : Unbounded_String; Direction : DirectionType; end record; type SamplingPortType_io is record cheddar_private_id : Unbounded_String; Name : Unbounded_String; MaxMessageSize : Unbounded_String; Direction : DirectionType; RefreshRateSeconds : Double; end record; type ProcExt_Type_io is record cheddar_private_id : Unbounded_String; end record; type ProcessType_io is record cheddar_private_id : Unbounded_String; Name : Unbounded_String; StackSize : Unbounded_String; end record; type QueuingPortType_io is record cheddar_private_id : Unbounded_String; Name : Unbounded_String; MaxMessageSize : Unbounded_String; Direction : DirectionType; MaxNbMessages : Integer; end record; type PartitionExt_Type_io is record cheddar_private_id : Unbounded_String; end record; type PartitionType_io is record cheddar_private_id : Unbounded_String; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; Criticality : CriticalityType; SystemPartition : Boolean; EntryPoint : Unbounded_String; end record; type Memory_Requirements_io is record cheddar_private_id : Unbounded_String; regionName : Unbounded_String; memory_type : Unbounded_String; sizeBytes : Unbounded_String; physicalAddress : Unbounded_String; memoryAccess : Unbounded_String; end record; type Memory_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type Partition_Memory_Element_io is record cheddar_private_id : Unbounded_String; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; end record; type Partition_Sched_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type Window_Schedule_Element_io is record cheddar_private_id : Unbounded_String; WindowIdentifier : Unbounded_String; WindowStartSeconds : Double; WindowDurationSeconds : Double; PartitionPeriodStart : Boolean; end record; type Window_Sched_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type Partition_Schedule_Element_io is record cheddar_private_id : Unbounded_String; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PeriodSeconds : Double; PeriodDurationSeconds : Double; end record; type Module_Schedule_Type_io is record cheddar_private_id : Unbounded_String; MajorFrameSeconds : Double; end record; type Part_HM_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type Partition_HM_Type_io is record cheddar_private_id : Unbounded_String; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PartitionCallback : Unbounded_String; end record; type Pseudo_Partition_io is record cheddar_private_id : Unbounded_String; Name : Unbounded_String; PhysicalAddress : Unbounded_String; partition_procedure : Unbounded_String; end record; type Standard_Partition_io is record cheddar_private_id : Unbounded_String; PartitionIdentifier : Unbounded_String; PartitionName : Unbounded_String; PortName : Unbounded_String; PhysicalAddress : Unbounded_String; end record; type PortMap_Ext_Type_io is record cheddar_private_id : Unbounded_String; end record; type PortMappingType_io is record cheddar_private_id : Unbounded_String; end record; type Channel_io is record cheddar_private_id : Unbounded_String; ChannelIdentifier : Unbounded_String; ChannelName : Unbounded_String; end record; type ModExt_Type_io is record cheddar_private_id : Unbounded_String; end record; type ARINC_653_Module_io is record cheddar_private_id : Unbounded_String; ModuleName : Unbounded_String; ModuleVersion : Unbounded_String; ModuleId : Unbounded_String; end record; type Execution_Unit_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; Unit_type : Execution_Unit_Type; Time_Constraint_Name : Unbounded_String; Capacity : Integer; end record; type Generic_Object_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; end record; type Named_Object_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; end record; type Scheduling_Error_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; error_type : Error_Type_Type; time : Integer; error_action : Error_Action_Type; user_defined_action : Unbounded_String; end record; type Task_Node_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; TaskRef : Unbounded_String; Kind : Tasks_Type; Proc : Unbounded_String; end record; type Time_Triggered_Communication_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; Timing_Property : Time_Triggered_Communication_Timing_Property_Type; end record; type Resource_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; Resource_Dependency_Resource : Unbounded_String; end record; type Precedence_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; end record; type Communication_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; Communication_Dependency_Object : Unbounded_String; end record; type Buffer_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; Buffer_Dependency_Object : Unbounded_String; end record; type Address_Space_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cpu_name : Unbounded_String; text_memory_size : Integer; stack_memory_size : Integer; data_memory_size : Integer; heap_memory_size : Integer; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_partition : MILS_Partition_Type; mils_compliant : Boolean; end record; type DFG_Variable_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; end record; type DFG_Statement_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; Defined_Variable : Unbounded_String; end record; type Generic_Message_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; message_type : Messages_Type; preemptive_type : Preemptives_Type; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; end record; type Periodic_Message_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; message_type : Messages_Type; preemptive_type : Preemptives_Type; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; period : Integer; jitter : Integer; end record; type Aperiodic_Message_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; message_type : Messages_Type; preemptive_type : Preemptives_Type; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; end record; type Generic_Resource_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; state : Integer; size : Integer; address : Integer; protocol : Resources_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Integer; priority_assignment : Priority_Assignment_Type; end record; type Np_Resource_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; state : Integer; size : Integer; address : Integer; protocol : Resources_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Integer; priority_assignment : Priority_Assignment_Type; end record; type Pip_Resource_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; state : Integer; size : Integer; address : Integer; protocol : Resources_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Integer; priority_assignment : Priority_Assignment_Type; end record; type Pcp_Resource_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; state : Integer; size : Integer; address : Integer; protocol : Resources_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Integer; priority_assignment : Priority_Assignment_Type; end record; type IPcp_Resource_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; state : Integer; size : Integer; address : Integer; protocol : Resources_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; priority : Integer; priority_assignment : Priority_Assignment_Type; end record; type Generic_Deployment_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; deployment_type : Deployments_Type; end record; type Static_Deployment_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; deployment_type : Deployments_Type; allocation_description : Unbounded_String; end record; type Dynamic_Deployment_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; deployment_type : Deployments_Type; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; end record; type Core_Unit_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; scheduler_type : Schedulers_Type; quantum : Integer; preemptive_type : Preemptives_Type; automaton_name : Unbounded_String; capacity : Integer; period : Integer; priority : Integer; user_defined_scheduler_source : Unbounded_String; user_defined_scheduler_source_file_name : Unbounded_String; start_time : Integer; speed : Integer; l1_cache_system_name : Unbounded_String; worstcase_perequest_intrabank_memory_interference : Integer; worstcase_perequest_interbank_memory_interference : Integer; isa : Isa_Type; end record; type State_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; is_initial : Boolean; end record; type Synchronization_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; synchronization_type : Synchronizations_Type; end record; type Transition_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; from_state : Unbounded_String; to_state : Unbounded_String; guards : Unbounded_String; clocks : Unbounded_String; synchronization : Unbounded_String; end record; type Generic_Node_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; end record; type Generic_Edge_io is record cheddar_private_id : Unbounded_String; Id : Unbounded_String; Node_1 : Unbounded_String; Node_2 : Unbounded_String; end record; type Graph_io is record cheddar_private_id : Unbounded_String; end record; type Run_Server_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; rate : Double; core : Unbounded_String; executing : Boolean; job_capacity : Integer; job_duration : Integer; job_release : Integer; job_deadline : Integer; end record; type Run_Server_Primal_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; rate : Double; core : Unbounded_String; executing : Boolean; job_capacity : Integer; job_duration : Integer; job_release : Integer; job_deadline : Integer; end record; type Run_Server_Dual_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; rate : Double; core : Unbounded_String; executing : Boolean; job_capacity : Integer; job_duration : Integer; job_release : Integer; job_deadline : Integer; primal_server : Unbounded_String; end record; type Basic_Block_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; graph_type : CFG_Graph_Type; node_type : CFG_Node_Type; instruction_offset : Integer; instruction_capacity : Integer; number_of_memory_access : Integer; execution_time : Integer; data_offset : Integer; data_capacity : Integer; loop_bound : Integer; end record; type Generic_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; end record; type Periodic_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; end record; type Aperiodic_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; end record; type Poisson_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; seed : Integer; predictable : Boolean; end record; type Sporadic_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; seed : Integer; predictable : Boolean; end record; type Parametric_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; seed : Integer; predictable : Boolean; activation_rule : Unbounded_String; end record; type Scheduling_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; seed : Integer; predictable : Boolean; end record; type Frame_Task_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; core_name : Unbounded_String; capacity : Integer; energy_consumption : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; text_memory_start_address : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; cfg_name : Unbounded_String; cfg_relocatable : Boolean; cache_access_profile_name : Unbounded_String; mils_confidentiality_level : MILS_Confidentiality_Level_Type; mils_integrity_level : MILS_Integrity_Level_Type; mils_component : MILS_Component_Type; mils_task : MILS_Task_Type; mils_compliant : Boolean; access_memory_number : Integer; maximum_number_of_memory_request_per_job : Integer; period : Integer; jitter : Integer; every : Integer; interarrival : Integer; end record; type Cache_Block_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cache_block_number : Integer; end record; type Cache_Access_Profile_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; end record; type Generic_Cache_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cache_size : Integer; line_size : Integer; associativity : Integer; block_reload_time : Integer; replacement_policy : Cache_Replacement_Policy_Type; coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; end record; type Data_Cache_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cache_size : Integer; line_size : Integer; associativity : Integer; block_reload_time : Integer; replacement_policy : Cache_Replacement_Policy_Type; coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; write_policy : Write_Policy_Type; end record; type Instruction_Cache_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cache_size : Integer; line_size : Integer; associativity : Integer; block_reload_time : Integer; replacement_policy : Cache_Replacement_Policy_Type; coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; end record; type Data_Instruction_Cache_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cache_size : Integer; line_size : Integer; associativity : Integer; block_reload_time : Integer; replacement_policy : Cache_Replacement_Policy_Type; coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; write_policy : Write_Policy_Type; end record; type Cache_System_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; end record; type Buffer_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; cpu_name : Unbounded_String; address_space_name : Unbounded_String; queueing_system_type : Queueing_Systems_Type; buffer_size : Integer; buffer_initial_data_size : Integer; end record; type CFG_Edge_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; node : Unbounded_String; next_node : Unbounded_String; end record; type Generic_Task_Group_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_group_type : Task_Groups_Type; deadline : Integer; start_time : Integer; priority : Integer; criticality : Integer; period : Integer; jitter : Integer; end record; type Transaction_Task_Group_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_group_type : Task_Groups_Type; deadline : Integer; start_time : Integer; priority : Integer; criticality : Integer; period : Integer; jitter : Integer; end record; type Multiframe_Task_Group_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_group_type : Task_Groups_Type; deadline : Integer; start_time : Integer; priority : Integer; criticality : Integer; period : Integer; jitter : Integer; end record; type Generic_Processor_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; processor_type : Processors_type; migration_type : Migrations_Type; end record; type Mono_Core_Processor_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; processor_type : Processors_type; migration_type : Migrations_Type; core : Unbounded_String; end record; type Multi_Cores_Processor_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; processor_type : Processors_type; migration_type : Migrations_Type; l2_cache_system_name : Unbounded_String; end record; type Task_Release_Record_io is record cheddar_private_id : Unbounded_String; task_name : Unbounded_String; task_index : Integer; capacity : Integer; release_time : Integer; finish_time : Integer; deadline : Integer; completed : Boolean; end record; type Event_Analyzer_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; event_analyzer_source_file_name : Unbounded_String; end record; procedure Initialize(obj : out Generic_Section_io); procedure Initialize(obj : out Computation_Section_io); procedure Initialize(obj : out Synchronization_Section_io); procedure Initialize(obj : out Battery_io); procedure Initialize(obj : out Generic_Memory_io); procedure Initialize(obj : out DRAM_Memory_io); procedure Initialize(obj : out Kalray_Memory_io); procedure Initialize(obj : out Generic_Scheduler_io); procedure Initialize(obj : out Aperiodic_Task_Server_Protocol_io); procedure Initialize(obj : out Polling_Server_Protocol_io); procedure Initialize(obj : out Deferred_Server_Protocol_io); procedure Initialize(obj : out Sporadic_Server_Protocol_io); procedure Initialize(obj : out Hierarchical_Protocol_io); procedure Initialize(obj : out Compiled_User_Defined_Protocol_io); procedure Initialize(obj : out Automata_User_Defined_Protocol_io); procedure Initialize(obj : out Pipeline_User_Defined_Protocol_io); procedure Initialize(obj : out User_Defined_Protocol_io); procedure Initialize(obj : out Earliest_Deadline_First_Protocol_io); procedure Initialize(obj : out Least_Laxity_First_Protocol_io); procedure Initialize(obj : out Rate_Monotonic_Protocol_io); procedure Initialize(obj : out Deadline_Monotonic_Protocol_io); procedure Initialize(obj : out Round_Robin_Protocol_io); procedure Initialize(obj : out Time_Sharing_Based_On_Wait_Time_Protocol_io); procedure Initialize(obj : out Posix_1003_Highest_Priority_First_Protocol_io); procedure Initialize(obj : out D_Over_Protocol_io); procedure Initialize(obj : out Maximum_Urgency_First_Based_On_Laxity_Protocol_io); procedure Initialize(obj : out Maximum_Urgency_First_Based_On_Deadline_Protocol_io); procedure Initialize(obj : out Time_Sharing_Based_On_Cpu_Usage_Protocol_io); procedure Initialize(obj : out No_Scheduling_Protocol_io); procedure Initialize(obj : out Hierarchical_Cyclic_Protocol_io); procedure Initialize(obj : out Hierarchical_Round_Robin_Protocol_io); procedure Initialize(obj : out Hierarchical_Fixed_Priority_Protocol_io); procedure Initialize(obj : out Hierarchical_Offline_Protocol_io); procedure Initialize(obj : out Fixed_Priority_Protocol_io); procedure Initialize(obj : out Dynamic_Priority_Protocol_io); procedure Initialize(obj : out Generic_Expression_io); procedure Initialize(obj : out Constant_Expression_io); procedure Initialize(obj : out Variable_Expression_io); procedure Initialize(obj : out Array_Variable_Expression_io); procedure Initialize(obj : out Binary_Expression_io); procedure Initialize(obj : out Unary_Expression_io); procedure Initialize(obj : out CFG_io); procedure Initialize(obj : out Generic_Statement_io); procedure Initialize(obj : out Nop_Statement_io); procedure Initialize(obj : out Exit_Statement_io); procedure Initialize(obj : out Put_Statement_io); procedure Initialize(obj : out If_Statement_io); procedure Initialize(obj : out Assign_Statement_io); procedure Initialize(obj : out Clock_Statement_io); procedure Initialize(obj : out Delete_Precedence_Statement_io); procedure Initialize(obj : out Add_Precedence_Statement_io); procedure Initialize(obj : out For_Statement_io); procedure Initialize(obj : out Return_Statement_io); procedure Initialize(obj : out While_Statement_io); procedure Initialize(obj : out Random_Initialize_Statement_io); procedure Initialize(obj : out Set_Statement_io); procedure Initialize(obj : out Subprogram_Statement_io); procedure Initialize(obj : out Subprogram_Call_Statement_io); procedure Initialize(obj : out Generic_Network_io); procedure Initialize(obj : out NOC_Network_io); procedure Initialize(obj : out Spacewire_Network_io); procedure Initialize(obj : out Bus_Network_io); procedure Initialize(obj : out Data_Access_io); procedure Initialize(obj : out CFG_Node_io); procedure Initialize(obj : out ARINC_653_Object_io); procedure Initialize(obj : out Error_ID_Type_io); procedure Initialize(obj : out Error_ID_Action_Type_io); procedure Initialize(obj : out Error_ID_Level_Type_io); procedure Initialize(obj : out System_State_Entry_Type_io); procedure Initialize(obj : out SysHM_Ext_Type_io); procedure Initialize(obj : out System_HM_TableType_io); procedure Initialize(obj : out Mod_HM_Ext_Type_io); procedure Initialize(obj : out Module_HM_Type_io); procedure Initialize(obj : out PortExt_Type_io); procedure Initialize(obj : out PortType_io); procedure Initialize(obj : out SamplingPortType_io); procedure Initialize(obj : out ProcExt_Type_io); procedure Initialize(obj : out ProcessType_io); procedure Initialize(obj : out QueuingPortType_io); procedure Initialize(obj : out PartitionExt_Type_io); procedure Initialize(obj : out PartitionType_io); procedure Initialize(obj : out Memory_Requirements_io); procedure Initialize(obj : out Memory_Ext_Type_io); procedure Initialize(obj : out Partition_Memory_Element_io); procedure Initialize(obj : out Partition_Sched_Ext_Type_io); procedure Initialize(obj : out Window_Schedule_Element_io); procedure Initialize(obj : out Window_Sched_Ext_Type_io); procedure Initialize(obj : out Partition_Schedule_Element_io); procedure Initialize(obj : out Module_Schedule_Type_io); procedure Initialize(obj : out Part_HM_Ext_Type_io); procedure Initialize(obj : out Partition_HM_Type_io); procedure Initialize(obj : out Pseudo_Partition_io); procedure Initialize(obj : out Standard_Partition_io); procedure Initialize(obj : out PortMap_Ext_Type_io); procedure Initialize(obj : out PortMappingType_io); procedure Initialize(obj : out Channel_io); procedure Initialize(obj : out ModExt_Type_io); procedure Initialize(obj : out ARINC_653_Module_io); procedure Initialize(obj : out Execution_Unit_io); procedure Initialize(obj : out Generic_Object_io); procedure Initialize(obj : out Named_Object_io); procedure Initialize(obj : out Scheduling_Error_io); procedure Initialize(obj : out Task_Node_io); procedure Initialize(obj : out Time_Triggered_Communication_Edge_io); procedure Initialize(obj : out Resource_Edge_io); procedure Initialize(obj : out Precedence_Edge_io); procedure Initialize(obj : out Communication_Edge_io); procedure Initialize(obj : out Buffer_Edge_io); procedure Initialize(obj : out Address_Space_io); procedure Initialize(obj : out DFG_Variable_io); procedure Initialize(obj : out DFG_Statement_io); procedure Initialize(obj : out Generic_Message_io); procedure Initialize(obj : out Periodic_Message_io); procedure Initialize(obj : out Aperiodic_Message_io); procedure Initialize(obj : out Generic_Resource_io); procedure Initialize(obj : out Np_Resource_io); procedure Initialize(obj : out Pip_Resource_io); procedure Initialize(obj : out Pcp_Resource_io); procedure Initialize(obj : out IPcp_Resource_io); procedure Initialize(obj : out Generic_Deployment_io); procedure Initialize(obj : out Static_Deployment_io); procedure Initialize(obj : out Dynamic_Deployment_io); procedure Initialize(obj : out Core_Unit_io); procedure Initialize(obj : out State_io); procedure Initialize(obj : out Synchronization_io); procedure Initialize(obj : out Transition_io); procedure Initialize(obj : out Generic_Node_io); procedure Initialize(obj : out Generic_Edge_io); procedure Initialize(obj : out Graph_io); procedure Initialize(obj : out Run_Server_io); procedure Initialize(obj : out Run_Server_Primal_io); procedure Initialize(obj : out Run_Server_Dual_io); procedure Initialize(obj : out Basic_Block_io); procedure Initialize(obj : out Generic_Task_io); procedure Initialize(obj : out Periodic_Task_io); procedure Initialize(obj : out Aperiodic_Task_io); procedure Initialize(obj : out Poisson_Task_io); procedure Initialize(obj : out Sporadic_Task_io); procedure Initialize(obj : out Parametric_Task_io); procedure Initialize(obj : out Scheduling_Task_io); procedure Initialize(obj : out Frame_Task_io); procedure Initialize(obj : out Cache_Block_io); procedure Initialize(obj : out Cache_Access_Profile_io); procedure Initialize(obj : out Generic_Cache_io); procedure Initialize(obj : out Data_Cache_io); procedure Initialize(obj : out Instruction_Cache_io); procedure Initialize(obj : out Data_Instruction_Cache_io); procedure Initialize(obj : out Cache_System_io); procedure Initialize(obj : out Buffer_io); procedure Initialize(obj : out CFG_Edge_io); procedure Initialize(obj : out Generic_Task_Group_io); procedure Initialize(obj : out Transaction_Task_Group_io); procedure Initialize(obj : out Multiframe_Task_Group_io); procedure Initialize(obj : out Generic_Processor_io); procedure Initialize(obj : out Mono_Core_Processor_io); procedure Initialize(obj : out Multi_Cores_Processor_io); procedure Initialize(obj : out Task_Release_Record_io); procedure Initialize(obj : out Event_Analyzer_io); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Computation_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Computation_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Synchronization_Section_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Battery_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Memory_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DRAM_Memory_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Kalray_Memory_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Scheduler_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Aperiodic_Task_Server_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Polling_Server_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Deferred_Server_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Sporadic_Server_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Hierarchical_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Compiled_User_Defined_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Automata_User_Defined_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Pipeline_User_Defined_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out User_Defined_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Earliest_Deadline_First_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Least_Laxity_First_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Rate_Monotonic_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Deadline_Monotonic_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Round_Robin_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Time_Sharing_Based_On_Wait_Time_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Posix_1003_Highest_Priority_First_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out D_Over_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Maximum_Urgency_First_Based_On_Laxity_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Maximum_Urgency_First_Based_On_Deadline_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Time_Sharing_Based_On_Cpu_Usage_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out No_Scheduling_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Hierarchical_Cyclic_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Hierarchical_Round_Robin_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Hierarchical_Fixed_Priority_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Hierarchical_Offline_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Fixed_Priority_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Dynamic_Priority_Protocol_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Constant_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Variable_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Array_Variable_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Array_Variable_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Binary_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Binary_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Unary_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Unary_Expression_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out CFG_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Nop_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Nop_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Exit_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Exit_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Put_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Put_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out If_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out If_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Assign_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Assign_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Clock_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Clock_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Delete_Precedence_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Delete_Precedence_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Add_Precedence_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Add_Precedence_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out For_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out For_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Return_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Return_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out While_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out While_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Random_Initialize_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Random_Initialize_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Set_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Set_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Subprogram_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Subprogram_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Subprogram_Call_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Subprogram_Call_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Network_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out NOC_Network_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Spacewire_Network_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Bus_Network_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Data_Access_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Node_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out ARINC_653_Object_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Error_ID_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Error_ID_Action_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Error_ID_Level_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out System_State_Entry_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out SysHM_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out System_HM_TableType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Mod_HM_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Module_HM_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PortExt_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PortType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out SamplingPortType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out ProcExt_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out ProcessType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out QueuingPortType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PartitionExt_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PartitionType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Memory_Requirements_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Memory_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Partition_Memory_Element_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Partition_Sched_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Window_Schedule_Element_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Window_Sched_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Partition_Schedule_Element_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Module_Schedule_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Part_HM_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Partition_HM_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Pseudo_Partition_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Standard_Partition_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PortMap_Ext_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out PortMappingType_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Channel_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out ModExt_Type_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out ARINC_653_Module_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Execution_Unit_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Object_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Named_Object_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Error_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Task_Node_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Task_Node_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Time_Triggered_Communication_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Resource_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Resource_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Precedence_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Communication_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Communication_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Address_Space_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Variable_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out DFG_Statement_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Message_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Periodic_Message_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Aperiodic_Message_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Resource_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Np_Resource_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Pip_Resource_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Pcp_Resource_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out IPcp_Resource_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Deployment_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Static_Deployment_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Dynamic_Deployment_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Core_Unit_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out State_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Synchronization_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Transition_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Transition_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Node_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Graph_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Run_Server_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Run_Server_Primal_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Run_Server_Dual_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Run_Server_Dual_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Basic_Block_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Periodic_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Aperiodic_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Poisson_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Sporadic_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Parametric_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Scheduling_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Frame_Task_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Cache_Block_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Cache_Access_Profile_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Cache_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Data_Cache_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Instruction_Cache_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Data_Instruction_Cache_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Cache_System_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Buffer_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out CFG_Edge_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Task_Group_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Transaction_Task_Group_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Multiframe_Task_Group_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Generic_Processor_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure Start_Element( Handler : in out Xml_generic_parser; obj : in out Mono_Core_Processor_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""; Atts : Sax.Attributes.Attributes'Class); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Mono_Core_Processor_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Multi_Cores_Processor_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Task_Release_Record_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); procedure End_Element( Handler : in out Xml_generic_parser; obj : in out Event_Analyzer_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); end xml_architecture_io;