📄 rtecbase.idl
字号:
// RtecBase.idl,v 1.4 2003/08/24 18:17:04 venkita Exp
/**
* @file RtecBase.idl
*
* @brief Define the RtecBase module
*
* RtecBase.idl,v 1.2 2001/09/17 20:50:34 coryan Exp
*
* @author Carlos O'Ryan <coryan@uci.edu>
*/
#ifndef TAO_RTEC_BASE_IDL
#define TAO_RTEC_BASE_IDL
/**
* @namespace RtecBase
*
* @brief Define types shared by the real-time scheduling and event
* services.
*
* These types are defined in a separate module to decouple the
* real-time event services from the scheduling service interface (and
* implementation!)
*/
module RtecBase
{
/// Specify type of call.
enum Dependency_Type_t
{
/// One-way call.
ONE_WAY_CALL,
/// Two-way call.
TWO_WAY_CALL
};
/// Provide a fast, low-footprint identifier for RT_Infos.
/**
* The Event and Scheduling Service need to communicate information
* about RT_Infos (descriptions about the scheduling properties of a
* simple operation). On a centralized application one would use
* pointers for such a task, but obviously that does not work on a
* distributed system.
* It is tempting to use object references to identify each RT_Info,
* but that does not work either: first the *contents* of the
* RT_Info must be transmitted between applications, and object
* references are not good identifiers (due to the semantics of
* _is_equivalent())
*
* The handle_t type is used to generate unique identifiers on the
* scheduling service, the Event Service can then refer to any
* RT_Info using either their name or the quicker handle_t.
*/
typedef long handle_t;
enum Dependency_Enabled_Type_t
// Specify whether a dependency is enabled, disabled, or
// non-volatile (enabled + cannot be disabled automatically).
{
DEPENDENCY_DISABLED,
DEPENDENCY_ENABLED,
DEPENDENCY_NON_VOLATILE
};
/// Define dependencies between two RT_Infos
struct Dependency_Info
{
/// Type of dependency
Dependency_Type_t dependency_type;
/// Number of times the dependency is called
long number_of_calls;
/// Dependency
handle_t rt_info;
handle_t rt_info_depended_on;
Dependency_Enabled_Type_t enabled;
// Notice the reference to the RT_Info we
// depend on.
};
/// Helper typedef to define the OS priority.
typedef long OS_Priority;
/// Helper typedef to define the OS-independent priority
typedef long Preemption_Priority_t;
/// Helper typedef to define the OS-independent sub-priority
typedef long Preemption_Subpriority_t;
};
#endif /* TAO_RTEC_BASE_IDL */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -