------------------------------------------------------------- ------------------- ------------------------------------------------------------------------------ -- Cheddar is a GNU GPL real time scheduling analysis tool. -- This program provides services to automatically check performances -- of real time architectures. -- -- Copyright (C) 2002-2010, by Frank Singhoff, Alain Plantec, Jerome Legrand -- -- The Cheddar project was started in 2002 by -- the LISyC Team, University of Western Britanny. -- -- Since 2008, Ellidiss technologies also contributes to the development of -- Cheddar and provides industrial support. -- -- 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 -- ------------------------------------------------------------------------------ -- Last update : -- $Rev: 97 $ -- $Date: 2007-07-20 15:17:15 +0200 (Fri, 20 Jul 2007) $ -- $Author: singhoff $ ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ with Text_IO; use Text_IO; with Ada.Strings.Unbounded; use Ada.Strings.Unbounded; with Systems; use Systems; with Xml_Tag; use Xml_Tag; with Call_Framework; use Call_Framework; with Call_Framework_Interface; use Call_Framework_Interface; use Call_Framework_Interface.Framework_Response_Package; use Call_Framework_Interface.Framework_Request_Package; with Call_Memory_Framework; use Call_Memory_Framework; use Call_Memory_Framework.Buffer_Result_Package; with Parameters; use Parameters; with Parameters.extended; use Parameters.Framework_Parameters_Table_Package; with unbounded_strings; use unbounded_strings; use unbounded_strings.unbounded_string_list_package; procedure Xml_Comprehensive_Call is Sys : System; Response_List : Framework_Response_Table; Request_List : Framework_Request_Table; A_Request : Framework_Request; A_Param : Parameter_Ptr; dir : unbounded_string_list; begin Call_Framework.initialize (False); Put_Line (To_String (Get_Dtd)); Put_Line (""); -- Test on periodic tasks -- Read_From_Xml_File (Sys, dir, To_Unbounded_String ("jitter.xml")); initialize (Response_List); initialize (Request_List); Initialize (A_Request); A_Request.statement := Scheduling_Feasibility_Basics; add (Request_List, A_Request); Sequential_Framework_Request (Sys, Request_List, Response_List, Total_Order, Xml_Output); put (Response_List); initialize (Response_List); initialize (Request_List); Initialize (A_Request); A_Request.statement := Scheduling_Simulation_Time_Line; A_Param := new Parameter (Integer_Parameter); A_Param.name := To_Unbounded_String ("period"); A_Param.integer_value := 100; add (A_Request.param, A_Param); A_Param := new Parameter (Boolean_Parameter); A_Param.name := To_Unbounded_String ("schedule_with_offsets"); A_Param.boolean_value := True; add (A_Request.param, A_Param); A_Param := new Parameter (Boolean_Parameter); A_Param.name := To_Unbounded_String ("schedule_with_precedencies"); A_Param.boolean_value := True; add (A_Request.param, A_Param); A_Param := new Parameter (Boolean_Parameter); A_Param.name := To_Unbounded_String ("schedule_with_resources"); A_Param.boolean_value := True; add (A_Request.param, A_Param); A_Param := new Parameter (Integer_Parameter); A_Param.name := To_Unbounded_String ("seed_value"); A_Param.integer_value := 0; add (A_Request.param, A_Param); add (Request_List, A_Request); Sequential_Framework_Request (Sys, Request_List, Response_List, Total_Order, Xml_Output); put (Response_List); initialize (Request_List); initialize (Response_List); Initialize (A_Request); A_Request.statement := Scheduling_Simulation_Basics; add (Request_List, A_Request); Sequential_Framework_Request (Sys, Request_List, Response_List, Total_Order, Xml_Output); put (Response_List); Put_Line (""); end Xml_Comprehensive_Call;