diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h b/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h deleted file mode 100644 index fd73102608d..00000000000 --- a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h +++ /dev/null @@ -1,127 +0,0 @@ -// $Id$ - -#ifndef ACE_RUNTIME_SCHEDULER_H -#define ACE_RUNTIME_SCHEDULER_H - -#include "orbsvcs/Scheduler_Factory.h" -#include "orbsvcs/RtecSchedulerS.h" - -class TAO_ORBSVCS_Export ACE_Runtime_Scheduler : public POA_RtecScheduler::Scheduler -{ - // = TITLE - // A fast and simple servant for RtecScheduler::Scheduler based on - // precomputed schedules. - // - // = DESCRIPTION - // This class offers the services of the scheduler, but based on - // precomputed and precompiled information. This results in a - // highly optimized execution after the configuration runs. - // -public: - ACE_Runtime_Scheduler (int config_count, - ACE_Scheduler_Factory::POD_Config_Info config_info[], - int entry_count, - ACE_Scheduler_Factory::POD_RT_Info rt_info[]); - - // Initialize the data from the POD_RT_Info array. - // Only basic validation is done. - - virtual RtecScheduler::handle_t create (const char * entry_point, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::DUPLICATE_NAME)); - - virtual RtecScheduler::handle_t lookup (const char * entry_point, - CORBA::Environment &_env) - TAO_THROW_SPEC((CORBA::SystemException)); - - virtual RtecScheduler::RT_Info* get (RtecScheduler::handle_t handle, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK)); - - virtual void set (RtecScheduler::handle_t handle, - RtecScheduler::Criticality criticality, - RtecScheduler::Time time, - RtecScheduler::Time typical_time, - RtecScheduler::Time cached_time, - RtecScheduler::Period period, - RtecScheduler::Importance importance, - RtecScheduler::Quantum quantum, - CORBA::Long threads, - RtecScheduler::Info_Type info_type, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK)); - - virtual void priority (RtecScheduler::handle_t handle, - RtecScheduler::OS_Priority& priority, - RtecScheduler::Preemption_Subpriority& p_subpriority, - RtecScheduler::Preemption_Priority& p_priority, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::UNKNOWN_TASK, - RtecScheduler::NOT_SCHEDULED)); - - virtual void entry_point_priority (const char * entry_point, - RtecScheduler::OS_Priority& priority, - RtecScheduler::Preemption_Subpriority& p_subpriority, - RtecScheduler::Preemption_Priority& p_priority, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::UNKNOWN_TASK, - RtecScheduler::NOT_SCHEDULED)); - - virtual void add_dependency (RtecScheduler::handle_t handle, - RtecScheduler::handle_t dependency, - CORBA::Long number_of_calls, - RtecScheduler::Dependency_Type dependency_type, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::UNKNOWN_TASK)); - - virtual void compute_scheduling (CORBA::Long minimum_priority, - CORBA::Long maximum_priority, - RtecScheduler::RT_Info_Set_out infos, - RtecScheduler::Config_Info_Set_out configs, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::UTILIZATION_BOUND_EXCEEDED, - RtecScheduler::INSUFFICIENT_THREAD_PRIORITY_LEVELS, - RtecScheduler::TASK_COUNT_MISMATCH)); - - virtual void dispatch_configuration (RtecScheduler::Preemption_Priority p_priority, - RtecScheduler::OS_Priority& priority, - RtecScheduler::Dispatching_Type & d_type, - CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::NOT_SCHEDULED, - RtecScheduler::UNKNOWN_PRIORITY_LEVEL)); - // provide the thread priority and queue type for the given priority level - - virtual RtecScheduler::Preemption_Priority last_scheduled_priority (CORBA::Environment &_env) - TAO_THROW_SPEC ((CORBA::SystemException, - RtecScheduler::NOT_SCHEDULED)); - // Returns the last priority number assigned to an operation in the schedule. - // The number returned is one less than the total number of scheduled priorities. - // All scheduled priorities range from 0 to the number returned, inclusive. - - -private: - - int config_count_; - // The number of elements in the config array. - - ACE_Scheduler_Factory::POD_Config_Info* config_info_; - // The array of precomputed queue configuration structures. - - int entry_count_; - // The number of elements in the RT_Info array. - - ACE_Scheduler_Factory::POD_RT_Info* rt_info_; - // The array of precomputed RT_Info structures. - -}; - -#if defined (__ACE_INLINE__) -#include "orbsvcs/Runtime_Scheduler.i" -#endif /* __ACE_INLINE__ */ - -#endif /* ACE_RUNTIME_SCHEDULER_H */ |