with scheduler_interface; use scheduler_interface; with scheduler.user_defined.interpreted; use scheduler.user_defined.interpreted; with tasks; use tasks; with task_set; use task_set; use task_set.generic_task_set; with processor_set; use processor_set; use processor_set.generic_processor_set; with Text_IO; use Text_IO; with dependencies; use dependencies; with task_dependencies; use task_dependencies; with framework_config; use framework_config; use task_dependencies.half_dep_set; with ada.exceptions; use ada.exceptions; with Ada.Real_Time; use Ada.Real_Time; with Ada.Calendar; with Ada.Calendar.Formatting; with Ada.Text_IO; use Ada.Text_IO; with Ada.Integer_Text_IO; use Ada.Integer_Text_IO; with scheduling_anomalies_services.offline; use scheduling_anomalies_services.offline; package body scheduling_anomalies_services is --------------------------------------------------------------------------------- function get_scheduler(a_core : core_unit_ptr) return schedulers_type is a_sched : schedulers_type := no_scheduling_protocol; ok : boolean:=true; begin if (a_core.scheduling.scheduler_type=pipeline_user_defined_protocol) then to_schedulers_type(a_core.scheduling.user_defined_scheduler_protocol_name, a_sched, ok); if not ok then Raise_Exception (processor_set.invalid_parameter'identity, " invalid value for user_defined_scheduler_protocol_name"); end if; return a_sched; else return a_core.scheduling.scheduler_type; end if; end get_scheduler; end scheduling_anomalies_services;