------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- 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-2009 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 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; type Generic_Section_Ptr is access all Generic_Section'Class; 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; type Computation_Section_Ptr is access all Computation_Section'Class; 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; type Synchronization_Section_Ptr is access all Synchronization_Section'Class; 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-2009 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 -- --------= Generic_Node =-------- type Generic_Node; type Generic_Node_Ptr is access all Generic_Node'Class; 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; type Generic_Edge_Ptr is access all Generic_Edge'Class; 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; type Graph_Ptr is access all Graph'Class; 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-2009 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 ( core_units_xml, address_spaces_xml, processors_xml, buffers_xml, resources_xml, dependencies_xml, networks_xml, messages_xml, tasks_xml, task_groups_xml, deployments_xml, event_analyzers_xml); procedure To_XML_Units is new Convert_Strings(XML_Units, core_units_xml); procedure To_XML_Units is new Convert_Unbounded_Strings(XML_Units, core_units_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-2009 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 Objects is type Objects_Type is ( Buffer_Object_Type, Processor_Object_Type, Cache_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); 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; type Generic_Object_Ptr is access all Generic_Object'Class; 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; type Named_Object_Ptr is access all Named_Object'Class; 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 Tables(Generic_Object_Ptr, Max_Objects, Put, XML_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-2009 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 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; 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; -- 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 : constant Natural := 30; -- This constant stores the number of time line we draw between each timing axis Time_Line_Between_Time_Axis : constant 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_Processeurs : 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 task precedencies ? options tuned by the user AT RUNTIME Schedule_With_Precedencies : Boolean := True; --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-2009 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-2009 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 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, 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; type Generic_Expression_Ptr is access all Generic_Expression'Class; 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; type Constant_Expression_Ptr is access all Constant_Expression'Class; 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; type Variable_Expression_Ptr is access all Variable_Expression'Class; 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; type Array_Variable_Expression_Ptr is access all Array_Variable_Expression'Class; 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; type Binary_Expression_Ptr is access all Binary_Expression'Class; 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; type Unary_Expression_Ptr is access all Unary_Expression'Class; 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-2009 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 := 20; Max_Tasks : constant Natural := 200; 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 := 20; Max_Sections : constant Natural := 50; Max_Schedulers : constant Natural := ( 1 + Max_Address_Spaces); Max_Transitions : constant Natural := 200; Max_Caches : constant Natural := 5; Max_Core_Units : constant Natural := 5; Max_Deployments : constant Natural := 20; 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_Schedulers) + 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; -- Maximum accurrancy of big numbers packages. - Increase it if you need to run large XML Chedar project file - Increasing this constant implies increasing cheddar memory footprint - Increasing this constant implies increasing cheddar CPU usage Max_Big_Number_Size : constant Natural := 200; 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 := 20; -- 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 := 20; -- 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); 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-2009 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, Context_Switch_Overhead, Running_Task, Task_activation, Allocate_Resource, Release_Resource, Wait_For_Resource, Send_Message, Receive_Message, Wait_For_Memory, Address_Space_Activation); 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; when read_from_buffer => read_buffer : Buffer_Ptr; read_task : Generic_Task_Ptr; read_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; 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; 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-2009 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 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 ( Compiled_User_Defined_Protocol, Automata_User_Defined_Protocol, Pipeline_User_Defined_Protocol, User_Defined_Protocol, Earliest_Deadline_First_Protocol, Least_Laxity_First_Protocol, Rate_Monotonic_Protocol, Deadline_Monotonic_Protocol, Round_Robin_Protocol, Time_Sharing_Based_On_Wait_Time_Protocol, Posix_1003_Highest_Priority_First_Protocol, D_Over_Protocol, Maximum_Urgency_First_Based_On_Laxity_Protocol, Maximum_Urgency_First_Based_On_Deadline_Protocol, Time_Sharing_Based_On_Cpu_Usage_Protocol, No_Scheduling_Protocol, Hierarchical_Cyclic_Protocol, Hierarchical_Round_Robin_Protocol, Hierarchical_Fixed_Priority_Protocol, Hierarchical_Polling_Aperiodic_Server_Protocol, Hierarchical_Priority_Exchange_Aperiodic_Server_Protocol, Hierarchical_Sporadic_Aperiodic_Server_Protocol, Hierarchical_Deferrable_Aperiodic_Server_Protocol, Proportionate_Fair_PF_Protocol, Proportionate_Fair_PD_Protocol, Proportionate_Fair_PD2_Protocol, Hierarchical_offline_Protocol); procedure To_Schedulers_Type is new Convert_Strings(Schedulers_Type, Compiled_User_Defined_Protocol); procedure To_Schedulers_Type is new Convert_Unbounded_Strings(Schedulers_Type, Compiled_User_Defined_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; type Scheduling_Parameters_Ptr is access all Scheduling_Parameters; 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-2009 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 Scheduler; use Scheduler; with Caches; use Caches; 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 standards_io; use standards_io; with ada.strings.unbounded.text_io; use ada.strings.unbounded.text_io; Package Processors is -- --------= Generic_Processor =-------- type Generic_Processor; type Generic_Processor_Ptr is access all Generic_Processor'Class; type Generic_Processor is new Named_Object with record network_name : Unbounded_String; 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; type Mono_Core_Processor_Ptr is access all Mono_Core_Processor'Class; 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; type Multi_Cores_Processor_Ptr is access all Multi_Cores_Processor'Class; 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); 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-2009 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-2009 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 -- --------= Generic_Scheduler =-------- type Generic_Scheduler; type Generic_Scheduler_Ptr is access all Generic_Scheduler'Class; 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; type Aperiodic_Task_Server_Protocol_Ptr is access all Aperiodic_Task_Server_Protocol'Class; 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; type Polling_Server_Protocol_Ptr is access all Polling_Server_Protocol'Class; 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; type Deferred_Server_Protocol_Ptr is access all Deferred_Server_Protocol'Class; 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; type Sporadic_Server_Protocol_Ptr is access all Sporadic_Server_Protocol'Class; 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; type Hierarchical_Protocol_Ptr is access all Hierarchical_Protocol'Class; 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; type Compiled_User_Defined_Protocol_Ptr is access all Compiled_User_Defined_Protocol'Class; 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; type Automata_User_Defined_Protocol_Ptr is access all Automata_User_Defined_Protocol'Class; 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; type Pipeline_User_Defined_Protocol_Ptr is access all Pipeline_User_Defined_Protocol'Class; 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; type User_Defined_Protocol_Ptr is access all User_Defined_Protocol'Class; 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; type Earliest_Deadline_First_Protocol_Ptr is access all Earliest_Deadline_First_Protocol'Class; 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; type Least_Laxity_First_Protocol_Ptr is access all Least_Laxity_First_Protocol'Class; 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; type Rate_Monotonic_Protocol_Ptr is access all Rate_Monotonic_Protocol'Class; 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; type Deadline_Monotonic_Protocol_Ptr is access all Deadline_Monotonic_Protocol'Class; 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; type Round_Robin_Protocol_Ptr is access all Round_Robin_Protocol'Class; 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; type Time_Sharing_Based_On_Wait_Time_Protocol_Ptr is access all Time_Sharing_Based_On_Wait_Time_Protocol'Class; 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; type Posix_1003_Highest_Priority_First_Protocol_Ptr is access all Posix_1003_Highest_Priority_First_Protocol'Class; 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; type D_Over_Protocol_Ptr is access all D_Over_Protocol'Class; 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; 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_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; type Maximum_Urgency_First_Based_On_Deadline_Protocol_Ptr is access all Maximum_Urgency_First_Based_On_Deadline_Protocol'Class; 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; type Time_Sharing_Based_On_Cpu_Usage_Protocol_Ptr is access all Time_Sharing_Based_On_Cpu_Usage_Protocol'Class; 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; type No_Scheduling_Protocol_Ptr is access all No_Scheduling_Protocol'Class; 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; type Hierarchical_Cyclic_Protocol_Ptr is access all Hierarchical_Cyclic_Protocol'Class; 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; type Hierarchical_Round_Robin_Protocol_Ptr is access all Hierarchical_Round_Robin_Protocol'Class; 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; type Hierarchical_Fixed_Priority_Protocol_Ptr is access all Hierarchical_Fixed_Priority_Protocol'Class; 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; type Hierarchical_Offline_Protocol_Ptr is access all Hierarchical_Offline_Protocol'Class; 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; type Fixed_Priority_Protocol_Ptr is access all Fixed_Priority_Protocol'Class; 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; type Dynamic_Priority_Protocol_Ptr is access all Dynamic_Priority_Protocol'Class; 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-2009 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 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; type Critical_Section_Ptr is access all Critical_Section; 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; type Generic_Resource_Ptr is access all Generic_Resource'Class; 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; type Np_Resource_Ptr is access all Np_Resource'Class; 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; type Pip_Resource_Ptr is access all Pip_Resource'Class; 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; type Pcp_Resource_Ptr is access all Pcp_Resource'Class; 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; type IPcp_Resource_Ptr is access all IPcp_Resource'Class; 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-2009 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.double_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 Ada.Numerics.Aux; use Ada.Numerics.Aux; Package Caches is 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_Type is ( Random, LRU, LRR, FIFO); procedure To_Cache_Replacement_Type is new Convert_Strings(Cache_Replacement_Type, Random); procedure To_Cache_Replacement_Type is new Convert_Unbounded_Strings(Cache_Replacement_Type, Random); function XML_String (obj : in Cache_Replacement_Type) return Unbounded_String; function XML_Ref_String (obj : in Cache_Replacement_Type) return Unbounded_String; package Cache_Replacement_Type_io is new text_io.enumeration_io(Cache_Replacement_Type); use Cache_Replacement_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; -- --------= Generic_Cache =-------- type Generic_Cache; type Generic_Cache_Ptr is access all Generic_Cache'Class; type Generic_Cache is new Named_Object with record number_of_block : Natural; block_size : Natural; associativity : Natural; cache_replacement : Cache_Replacement_Type; hit_time : Double; miss_time : Double; miss_rate : Natural; cache_coherence_protocol : Cache_Coherence_Protocol_Type; cache_category : Cache_Type; 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; type Data_Cache_Ptr is access all Data_Cache'Class; 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; type Instruction_Cache_Ptr is access all Instruction_Cache'Class; 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; type Data_Instruction_Cache_Ptr is access all Data_Instruction_Cache'Class; 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, Framework_Config.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; type Cache_System_Ptr is access all Cache_System'Class; 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-2009 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, Queuing_Buffer_Dependency, Communication_Dependency, Time_Triggered_Communication_Dependency, Resource_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 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 queuing_buffer_dependency => buffer_dependent_task : Generic_Task_Ptr; buffer_orientation : Orientation_Dependency_Type; buffer_dependency_object : Buffer_Ptr; when communication_dependency => communication_dependent_task : Generic_Task_Ptr; communication_orientation : Orientation_Dependency_Type; communication_dependency_object : Generic_Message_Ptr; when time_triggered_communication_dependency => time_triggered_communication_sink : Generic_Task_Ptr; time_triggered_communication_source : Generic_Task_Ptr; timing_property : Time_Triggered_Communication_Timing_Property_Type; when resource_dependency => resource_dependency_resource : Generic_Resource_Ptr; resource_dependency_task : 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-2009 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; Package Networks is type Networks_Type is ( Bounded_Delay, Jitter_Delay, Parametric_Delay); procedure To_Networks_Type is new Convert_Strings(Networks_Type, Bounded_Delay); procedure To_Networks_Type is new Convert_Unbounded_Strings(Networks_Type, Bounded_Delay); function XML_String (obj : in Networks_Type) return Unbounded_String; function XML_Ref_String (obj : in Networks_Type) return Unbounded_String; package Networks_Type_io is new text_io.enumeration_io(Networks_Type); use Networks_Type_io; -- --------= Network =-------- type Network; type Network_Ptr is access all Network'Class; type Network is new Named_Object with record network_type : Networks_Type; end record; procedure Initialize(obj : in out Network); procedure Put(obj : in Network); procedure Put(obj : in Network_Ptr); procedure Put_Name(obj : in Network_Ptr); procedure Build_Attributes_XML_String(obj : in Network; result : in out Unbounded_String); function XML_String(obj : in Network) return Unbounded_String; function XML_String(obj : in Network_Ptr) return Unbounded_String; function XML_Ref_String(obj : in Network) return Unbounded_String; function XML_Ref_String(obj : in Network_Ptr) return Unbounded_String; function Get_Name (obj : in Network) return Unbounded_String; function Get_Name (obj : in Network_Ptr) return Unbounded_String; function Copy(obj : in Network_Ptr) return Network_Ptr; function Copy(obj : in Network) return Network_Ptr; function type_of(obj : in Network) return unbounded_string_list; function type_of(obj : in Network_Ptr) return unbounded_string_list; procedure Free is new Unchecked_Deallocation (Network'Class, 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-2009 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-2009 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 standards_io; use standards_io; use standards_io.double_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 Core_Units is -- --------= Core_Unit =-------- type Core_Unit; type Core_Unit_Ptr is access all Core_Unit'Class; type Core_Unit is new Named_Object with record scheduling : Scheduling_Parameters; speed : Double; l1_cache_system_name : Unbounded_String; 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-2009 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 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; Package Buffers is type Buffer_Role_Type is ( No_Role, Queuing_Producer, Queuing_Consumer, Sampling_Writer, Sampling_Reader); procedure To_Buffer_Role_Type is new Convert_Strings(Buffer_Role_Type, No_Role); procedure To_Buffer_Role_Type is new Convert_Unbounded_Strings(Buffer_Role_Type, No_Role); 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; end record; type Buffer_Role_Ptr is access all Buffer_Role; 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; type Buffer_Ptr is access all Buffer'Class; 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; 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-2009 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 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.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 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; type Buffer_Size_Item_Ptr is access all Buffer_Size_Item; 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; type Density_Item_Ptr is access all Density_Item; 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; type Deadlock_Item_Ptr is access all Deadlock_Item; 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; type Priority_Inversion_Item_Ptr is access all Priority_Inversion_Item; 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; 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-2009 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 -- --------= Offset_Type =-------- type Offset_Type is record offset_value : Natural; activation : Natural; end record; type Offset_Type_Ptr is access all Offset_Type; 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-2009 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-2009 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 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; type Generic_Deployment_Ptr is access all Generic_Deployment'Class; 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; type Static_Deployment_Ptr is access all Static_Deployment'Class; 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; type Dynamic_Deployment_Ptr is access all Dynamic_Deployment'Class; 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-2009 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 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 Messages_Type is ( Periodic_Type, Aperiodic_Type, Generic_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; type Generic_Message_Ptr is access all Generic_Message'Class; type Generic_Message is new Named_Object with record message_type : Messages_Type; parameters : User_Defined_Parameters_Table; deadline : Natural; size : Natural; response_time : Natural; communication_time : Natural; 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; type Periodic_Message_Ptr is access all Periodic_Message'Class; 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; type Aperiodic_Message_Ptr is access all Aperiodic_Message'Class; 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-2009 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 -- --------= Task_Node =-------- type Task_Node; type Task_Node_Ptr is access all Task_Node'Class; 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; type Time_Triggered_Communication_Edge_Ptr is access all Time_Triggered_Communication_Edge'Class; 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; type Resource_Edge_Ptr is access all Resource_Edge'Class; 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; type Precedence_Edge_Ptr is access all Precedence_Edge'Class; 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; type Communication_Edge_Ptr is access all Communication_Edge'Class; 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; type Buffer_Edge_Ptr is access all Buffer_Edge'Class; 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-2009 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 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, 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; type Generic_Statement_Ptr is access all Generic_Statement'Class; 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; type Nop_Statement_Ptr is access all Nop_Statement'Class; 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; type Exit_Statement_Ptr is access all Exit_Statement'Class; 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; type Put_Statement_Ptr is access all Put_Statement'Class; 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; type If_Statement_Ptr is access all If_Statement'Class; 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; type Assign_Statement_Ptr is access all Assign_Statement'Class; 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; type Clock_Statement_Ptr is access all Clock_Statement'Class; 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); -- --------= For_Statement =-------- type For_Statement; type For_Statement_Ptr is access all For_Statement'Class; 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; type Return_Statement_Ptr is access all Return_Statement'Class; 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; type While_Statement_Ptr is access all While_Statement'Class; 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; type Random_Initialize_Statement_Ptr is access all Random_Initialize_Statement'Class; 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; type Set_Statement_Ptr is access all Set_Statement'Class; 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; type Subprogram_Statement_Ptr is access all Subprogram_Statement'Class; 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; type Subprogram_Call_Statement_Ptr is access all Subprogram_Call_Statement'Class; 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-2009 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-2009 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_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_Time, Scheduling_Simulation_Blocking_Time, Scheduling_Simulation_Priority_Inversion, Scheduling_Simulation_Deadlock, Scheduling_Simulation_Run_Event_Handler, Scheduling_Feasibility_Basics, Scheduling_Feasibility_Response_Time, Scheduling_Feasibility_Cpu_Utilization, Scheduling_Set_Priorities_According_To_Deadline_Monotonic, Scheduling_Set_Priorities_According_To_Rate_Monotonic, Scheduling_Feasibility_Compute_Blocking_Time, Scheduling_Feasibility_Compute_And_Set_Blocking_Time, Scheduling_Feasibility_First_Fit, Scheduling_Feasibility_General_Task, Scheduling_Feasibility_Next_Fit, Scheduling_Feasibility_Best_Fit, Scheduling_Feasibility_Small_Task, Scheduling_Feasibility_Test_By_Name, Global_Memory_Set_Requirement_Analysis, Global_Memory_Compute_Requirement_Analysis, 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, Select_Feasibility_Tests_Simple, Select_Feasibility_Tests_Compositional); 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 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; type Framework_Request_Ptr is access all Framework_Request; 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; type Framework_Response_Ptr is access all Framework_Response; 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-2009 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 -- --------= Binding_Record_Type =-------- type Binding_Record_Type is record cpu_name : Unbounded_String; address_space_name : Unbounded_String; end record; type Binding_Record_Type_Ptr is access all Binding_Record_Type; 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-2009 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 -- --------= Event_Analyzer =-------- type Event_Analyzer; type Event_Analyzer_Ptr is access all Event_Analyzer'Class; 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-2009 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-2009 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 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; type ARINC_653_Object_Ptr is access all ARINC_653_Object'Class; 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; type Error_ID_Type_Ptr is access all Error_ID_Type'Class; 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; type Error_ID_Action_Type_Ptr is access all Error_ID_Action_Type'Class; 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; type Error_ID_Level_Type_Ptr is access all Error_ID_Level_Type'Class; 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; type System_State_Entry_Type_Ptr is access all System_State_Entry_Type'Class; 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; type SysHM_Ext_Type_Ptr is access all SysHM_Ext_Type'Class; 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; type System_HM_TableType_Ptr is access all System_HM_TableType'Class; 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; type Mod_HM_Ext_Type_Ptr is access all Mod_HM_Ext_Type'Class; 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; type Module_HM_Type_Ptr is access all Module_HM_Type'Class; 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; type PortExt_Type_Ptr is access all PortExt_Type'Class; 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; type PortType_Ptr is access all PortType'Class; 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; type SamplingPortType_Ptr is access all SamplingPortType'Class; 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; type ProcExt_Type_Ptr is access all ProcExt_Type'Class; 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; type ProcessType_Ptr is access all ProcessType'Class; 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; type QueuingPortType_Ptr is access all QueuingPortType'Class; 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; type PartitionExt_Type_Ptr is access all PartitionExt_Type'Class; 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; type PartitionType_Ptr is access all PartitionType'Class; 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; type Memory_Requirements_Ptr is access all Memory_Requirements'Class; 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; type Memory_Ext_Type_Ptr is access all Memory_Ext_Type'Class; 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; type Partition_Memory_Element_Ptr is access all Partition_Memory_Element'Class; 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; type Partition_Sched_Ext_Type_Ptr is access all Partition_Sched_Ext_Type'Class; 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; type Window_Schedule_Element_Ptr is access all Window_Schedule_Element'Class; 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; type Window_Sched_Ext_Type_Ptr is access all Window_Sched_Ext_Type'Class; 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; type Partition_Schedule_Element_Ptr is access all Partition_Schedule_Element'Class; 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; type Module_Schedule_Type_Ptr is access all Module_Schedule_Type'Class; 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; type Part_HM_Ext_Type_Ptr is access all Part_HM_Ext_Type'Class; 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; type Partition_HM_Type_Ptr is access all Partition_HM_Type'Class; 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; type Pseudo_Partition_Ptr is access all Pseudo_Partition'Class; 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; type Standard_Partition_Ptr is access all Standard_Partition'Class; 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; type PortMap_Ext_Type_Ptr is access all PortMap_Ext_Type'Class; 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; type PortMappingType_Ptr is access all PortMappingType'Class; 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; type Channel_Ptr is access all Channel'Class; 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; type ModExt_Type_Ptr is access all ModExt_Type'Class; 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; type ARINC_653_Module_Ptr is access all ARINC_653_Module'Class; 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-2009 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 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 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; type Generic_Task_Ptr is access all Generic_Task'Class; type Generic_Task is new Named_Object with record task_type : Tasks_Type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; capacity : Natural; deadline : Natural; start_time : Natural; priority : Priority_Range; blocking_time : Natural; policy : Policies; offsets : Offsets_Table; text_memory_size : Natural; stack_memory_size : Natural; parameters : User_Defined_Parameters_Table; criticality : Natural; context_switch_overhead : 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; type Periodic_Task_Ptr is access all Periodic_Task'Class; type Periodic_Task is new Generic_Task with record period : Natural; jitter : 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; type Aperiodic_Task_Ptr is access all Aperiodic_Task'Class; 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; type Poisson_Task_Ptr is access all Poisson_Task'Class; 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; type Sporadic_Task_Ptr is access all Sporadic_Task'Class; 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; type Parametric_Task_Ptr is access all Parametric_Task'Class; 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; type Scheduling_Task_Ptr is access all Scheduling_Task'Class; 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; type Frame_Task_Ptr is access all Frame_Task'Class; 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-2009 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 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; 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 -- --------= Address_Space =-------- type Address_Space; type Address_Space_Ptr is access all Address_Space'Class; 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; 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-2009 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_Types); 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; 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-2009 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 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; type State_Ptr is access all State'Class; 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; type Synchronization_Ptr is access all Synchronization'Class; 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; type Transition_Ptr is access all Transition'Class; 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; type Automaton_Status_Ptr is access all Automaton_Status; 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; type Transition_Status_Ptr is access all Transition_Status; 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-2009 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 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 Indexed_Tables; 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; Package Multiprocessor_Services_Interface is -- --------= Scheduling_Result =-------- type Scheduling_Result is record scheduling_msg : Unbounded_String; has_error : Boolean; error_msg : Unbounded_String; result : Scheduling_Sequence_Ptr; end record; type Scheduling_Result_Ptr is access all Scheduling_Result; 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; 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-2009 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_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; type Applicability_Constraint_Ptr is access all Applicability_Constraint; 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; type Applicability_Constraint_Case_Ptr is access all Applicability_Constraint_Case; 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; type All_Cases_Structure_Ptr is access all All_Cases_Structure; 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-2009 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 Offsets; use Offsets; use offsets.Offsets_Table_Package; with Parameters; use Parameters; use parameters.User_Defined_Parameters_Table_Package; 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 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 Task_Groups is 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; type Generic_Task_Group_Ptr is access all Generic_Task_Group'Class; type Generic_Task_Group is new Named_Object with record task_list : Generic_Task_List; task_group_type : Task_Groups_type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; capacity : Natural; deadline : Natural; start_time : Natural; priority : Priority_Range; blocking_time : Natural; policy : Policies; offsets : Offsets_Table; text_memory_size : Natural; stack_memory_size : Natural; parameters : User_Defined_Parameters_Table; criticality : Natural; context_switch_overhead : Natural; seed : Natural; predictable : Boolean; period : Natural; jitter : Natural; activation_rule : Unbounded_String; 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; type Transaction_Task_Group_Ptr is access all Transaction_Task_Group'Class; 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; type Multiframe_Task_Group_Ptr is access all Multiframe_Task_Group'Class; 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-2009 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 Generic_Graph; use Generic_Graph; with Access_Lists; 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 Tables; with Editor_Config; use Editor_Config; with Time_Unit_Events; use Time_Unit_Events; use Time_Unit_Events.Time_Unit_Package; with Interpreter; use Interpreter; with Expressions; use Expressions; with Simulations; use Simulations; with Resources; use Resources; with Tasks; use Tasks; with Messages; use Messages; with Buffers; use Buffers; use Buffers.Buffer_Roles_Package; with Caches; use Caches; with Indexed_Tables; with natural_util; use natural_util; with Lists; with Scheduler_Interface; use Scheduler_Interface; with Processors; use Processors; with processor_interface; use processor_interface; with Core_Units; use Core_Units; with Scheduler; use Scheduler; with Laws; use Laws; with Dependencies; use Dependencies; with AADL_Config; use AADL_Config; with Queueing_Systems; use Queueing_Systems; with Scheduling_Analysis; use Scheduling_Analysis; with Task_Set; use Task_Set; with Double_Util; use Double_Util; with Offsets; use Offsets; use offsets.Offsets_Table_Package; with Deployments; use Deployments; with Parameters; use Parameters; use Parameters.Framework_Parameters_Table_Package; use parameters.User_Defined_Parameters_Table_Package; with DP_Graph; use DP_Graph; with AADL_Parser_Interface; use AADL_Parser_Interface; with Event_Analyzers; use Event_Analyzers; with ARINC_653_Schema; use ARINC_653_Schema; with Address_Spaces; use Address_Spaces; with Multiprocessor_Services_Interface; use Multiprocessor_Services_Interface; with Applicability_Constraints_Main_Structure; use Applicability_Constraints_Main_Structure; with Systems; use Systems; with Task_Groups; use Task_Groups; 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 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; read_buffer : Unbounded_String; read_task : Unbounded_String; read_size : Integer; switched_task : Unbounded_String; running_core : Unbounded_String; running_task : Unbounded_String; current_priority : Integer; 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; end record; 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; communication_dependent_task : Unbounded_String; communication_orientation : Orientation_Dependency_Type; communication_dependency_object : Unbounded_String; time_triggered_communication_sink : Unbounded_String; time_triggered_communication_source : Unbounded_String; timing_property : Time_Triggered_Communication_Timing_Property_Type; resource_dependency_resource : Unbounded_String; resource_dependency_task : Unbounded_String; black_board_dependent_task : Unbounded_String; black_board_orientation : Orientation_Dependency_Type; black_board_dependency_object : Unbounded_String; 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; type PortMappingType_Choice_io is record type_of_PortMappingType_Choice : PortMappingType_Choice_Type; 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 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 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 Parameter_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 Initialize(obj : out Time_Unit_Event_io); procedure Initialize(obj : out Dependency_io); procedure Initialize(obj : out Parameter_io); procedure Initialize(obj : out PortMappingType_Choice_io); -- Attributes of the parsed entities 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 Critical_Section_io is record task_begin : Integer; task_end : Integer; end record; type Buffer_Role_io is record the_role : Buffer_Role_Type; size : Integer; time : Integer; timeout : Integer; 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 Offset_Type_io is record offset_value : Integer; activation : Integer; 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 Binding_Record_Type_io is record cpu_name : Unbounded_String; address_space_name : Unbounded_String; 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 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 end record; procedure Initialize(obj : out Scheduling_Parameters_io); procedure Initialize(obj : out Critical_Section_io); procedure Initialize(obj : out Buffer_Role_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 Offset_Type_io); procedure Initialize(obj : out Framework_Request_io); procedure Initialize(obj : out Framework_Response_io); procedure Initialize(obj : out Binding_Record_Type_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 Applicability_Constraint_io); procedure Initialize(obj : out Applicability_Constraint_Case_io); procedure Initialize(obj : out All_Cases_Structure_io); 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 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 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 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 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 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 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 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 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 := ""); 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 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 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 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 Generic_Processor_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_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; network_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; network_name : Unbounded_String; processor_type : Processors_type; migration_type : migrations_type; l2_cache_system_name : Unbounded_String; 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_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_Cache_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; number_of_block : Integer; block_size : Integer; associativity : Integer; cache_replacement : Cache_Replacement_Type; hit_time : Double; miss_time : Double; miss_rate : Integer; cache_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; number_of_block : Integer; block_size : Integer; associativity : Integer; cache_replacement : Cache_Replacement_Type; hit_time : Double; miss_time : Double; miss_rate : Integer; cache_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; number_of_block : Integer; block_size : Integer; associativity : Integer; cache_replacement : Cache_Replacement_Type; hit_time : Double; miss_time : Double; miss_rate : Integer; cache_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; number_of_block : Integer; block_size : Integer; associativity : Integer; cache_replacement : Cache_Replacement_Type; hit_time : Double; miss_time : Double; miss_rate : Integer; cache_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 Network_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; network_type : Networks_Type; 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 : Double; l1_cache_system_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; 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 Generic_Message_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; message_type : Messages_Type; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; end record; type Periodic_Message_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; message_type : Messages_Type; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; 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; deadline : Integer; size : Integer; response_time : Integer; communication_time : Integer; 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 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 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 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; 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 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : 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; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; period : Integer; jitter : Integer; interarrival : Integer; 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; 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_Task_Group_io is record cheddar_private_id : Unbounded_String; object_type : Objects_Type; name : Unbounded_String; task_group_type : Task_Groups_type; cpu_name : Unbounded_String; address_space_name : Unbounded_String; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; seed : Integer; predictable : Boolean; period : Integer; jitter : Integer; activation_rule : Unbounded_String; 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; cpu_name : Unbounded_String; address_space_name : Unbounded_String; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; seed : Integer; predictable : Boolean; period : Integer; jitter : Integer; activation_rule : Unbounded_String; 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; cpu_name : Unbounded_String; address_space_name : Unbounded_String; capacity : Integer; deadline : Integer; start_time : Integer; priority : Integer; blocking_time : Integer; policy : Policies; text_memory_size : Integer; stack_memory_size : Integer; criticality : Integer; context_switch_overhead : Integer; seed : Integer; predictable : Boolean; period : Integer; jitter : Integer; activation_rule : 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 Generic_Node_io); procedure Initialize(obj : out Generic_Edge_io); procedure Initialize(obj : out Graph_io); procedure Initialize(obj : out Generic_Object_io); procedure Initialize(obj : out Named_Object_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 Generic_Processor_io); procedure Initialize(obj : out Mono_Core_Processor_io); procedure Initialize(obj : out Multi_Cores_Processor_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_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_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 Network_io); procedure Initialize(obj : out Core_Unit_io); procedure Initialize(obj : out Buffer_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 Generic_Message_io); procedure Initialize(obj : out Periodic_Message_io); procedure Initialize(obj : out Aperiodic_Message_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 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 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 Event_Analyzer_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 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 Address_Space_io); procedure Initialize(obj : out State_io); procedure Initialize(obj : out Synchronization_io); procedure Initialize(obj : out Transition_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 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 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 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 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 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 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_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_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 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 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 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 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 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 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 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 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 Event_Analyzer_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 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 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 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_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 := ""); end xml_architecture_io; ; 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 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_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 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 Event_Analyzer_io; Namespace_Uri : Unicode.CES.Byte_Sequence := ""; Local_Name : Unicode.CES.Byte_Sequence := ""; Qname : Unicode.CES.Byte_Sequence := ""); end xml_architecture_io;