blob: bfe417633495054974e0eebd8f2776e378615674 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
/**
* @file NotifyExt.idl
*
* @brief Additional interfaces for QoS properties to Notify.
*
* $Id$
*
* @author Pradeep Gore <pradeep@oomworks.com>
*/
#ifndef _NOTIFY_EXT_IDL_
#define _NOTIFY_EXT_IDL_
#include "CosNotifyChannelAdmin.idl"
#pragma prefix ""
/**
* @namespace NotifyExt
*
* @brief Notify Extensions.
*/
module NotifyExt
{
// Priority defs. same as RTCORBA
typedef short Priority;
const Priority minPriority = 0;
const Priority maxPriority = 32767;
/*
* ThreadPool QoS property,
*/
const string ThreadPool = "ThreadPool";
// ThreadPoolParams : same as RTCORBA::create_threadpool
struct ThreadPoolParams
{
unsigned long stacksize;
unsigned long static_threads;
unsigned long dynamic_threads;
Priority default_priority;
boolean allow_request_buffering;
unsigned long max_buffered_requests;
unsigned long max_request_buffer_size;
};
/*
* ThreadPoolLanes QoS property,
*/
const string ThreadPoolLanes = "ThreadPoolLanes";
struct ThreadPoolLane
{
Priority lane_priority;
unsigned long static_threads;
unsigned long dynamic_threads;
};
typedef sequence <ThreadPoolLane> ThreadPoolLanes_List;
struct ThreadPoolLanesParams
{
unsigned long stacksize;
ThreadPoolLanes_List lanes;
boolean allow_borrowing;
boolean allow_request_buffering;
unsigned long max_buffered_requests;
unsigned long max_request_buffer_size;
};
/*
* Extend the EventChannelFactory to have a shutdown method.
*/
interface EventChannelFactory : CosNotifyChannelAdmin::EventChannelFactory
{
void destroy ();
};
};
#endif /* _NOTIFY_EXT_IDL_ */
|