summaryrefslogtreecommitdiff
path: root/TAO/tao/RTCORBA.pidl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/RTCORBA.pidl')
-rw-r--r--TAO/tao/RTCORBA.pidl108
1 files changed, 48 insertions, 60 deletions
diff --git a/TAO/tao/RTCORBA.pidl b/TAO/tao/RTCORBA.pidl
index 2fa76e95847..541eee6d551 100644
--- a/TAO/tao/RTCORBA.pidl
+++ b/TAO/tao/RTCORBA.pidl
@@ -11,17 +11,24 @@
//
// = DESCRIPTION
//
-// The RTCORBA module specified in CORBA v2.4.2 Chapter 24
-// (February, 2001).
+// The RTCORBA module specified in ptc/99-05-03 (Real-Time
+// CORBA Joint Revised Submission May 28, 1999).
//
// Changes to the original OMG idl:
-// 1. Two TAO-specific interfaces, UnixDomainProtocolProperties
+// 1. All RT policies have been assigned PolicyType values
+// from the range reserved for TAO. 0x54410002 through
+// 0x54410007 are used for RT Policies. This is in effect
+// until OMG will standardize PolicyType values (currently RT
+// CORBA spec contains question marks instead of values).
+// 2. All interfaces in RTCORBA module have been made <local>.
+// Original idl defined most interfaces as local, but not
+// all. It is unclear whether that was intentional or a
+// result of sloppiness. Until the former is proved, the
+// latter will be assumed and all interfaces made <local>.
+// 3. Two TAO-specific interfaces, UnixDomainProtocolProperties
// and SharedMemoryProtocolProperties, have been added to allow
// configuration of TAO's UIOP and SHMEM pluggable protocols
// through RTCORBA Protocol Policies.
-// 2. TAO-specific support for named mutexes has been added.
-// 3. Added RT_ORB::create_tcp_protocol_properties which seems
-// to come and go from the formal specification, but is needed.
//
// This file was used to generate the code in
// RTCORBA{C,S,S_T}.{h,i,cpp} The command used to generate code
@@ -69,7 +76,6 @@ module RTCORBA
// Threadpool types.
typedef unsigned long ThreadpoolId;
-
struct ThreadpoolLane
{
Priority lane_priority;
@@ -81,7 +87,7 @@ module RTCORBA
// RT Policies.
// Priority Model Policy.
- const CORBA::PolicyType PRIORITY_MODEL_POLICY_TYPE = 40;
+ const CORBA::PolicyType PRIORITY_MODEL_POLICY_TYPE = 0x54410002;
enum PriorityModel
{
CLIENT_PROPAGATED,
@@ -90,52 +96,37 @@ module RTCORBA
local interface PriorityModelPolicy : CORBA::Policy
{
- readonly attribute PriorityModel priority_model;
- readonly attribute Priority server_priority;
+ readonly attribute PriorityModel priority_model;
+ readonly attribute Priority server_priority;
};
// Threadpool Policy.
- const CORBA::PolicyType THREADPOOL_POLICY_TYPE = 41;
+ const CORBA::PolicyType THREADPOOL_POLICY_TYPE = 0x54410003;
local interface ThreadpoolPolicy : CORBA::Policy
{
- readonly attribute ThreadpoolId threadpool;
- };
-
- // Protocol Properties.
- local interface ProtocolProperties {};
-
- struct Protocol
- {
- IOP::ProfileId protocol_type;
- ProtocolProperties orb_protocol_properties;
- ProtocolProperties transport_protocol_properties;
+ readonly attribute ThreadpoolId threadpool;
};
- typedef sequence <Protocol> ProtocolList;
-
- // Server Protocol Policy
- const CORBA::PolicyType SERVER_PROTOCOL_POLICY_TYPE = 42;
+ // Private Connection Policy
+ const CORBA::PolicyType PRIVATE_CONNECTION_POLICY_TYPE = 0x54410006;
+ local interface PrivateConnectionPolicy : CORBA::Policy {};
- // Locality constrained interface
- local interface ServerProtocolPolicy : CORBA::Policy
+ // PriorityBandedConnectionPolicy.
+ struct PriorityBand
{
- readonly attribute ProtocolList protocols;
+ Priority low;
+ Priority high;
};
+ typedef sequence <PriorityBand> PriorityBands;
- // Client Protocol Policy
- const CORBA::PolicyType CLIENT_PROTOCOL_POLICY_TYPE = 43;
-
- // Locality constrained interface
- local interface ClientProtocolPolicy : CORBA::Policy
+ const CORBA::PolicyType PRIORITY_BANDED_CONNECTION_POLICY_TYPE = 0x54410007;
+ local interface PriorityBandedConnectionPolicy : CORBA::Policy
{
- readonly attribute ProtocolList protocols;
+ readonly attribute PriorityBands priority_bands;
};
- // Private Connection Policy
- const CORBA::PolicyType PRIVATE_CONNECTION_POLICY_TYPE = 44;
-
- // Locality constrained interface
- local interface PrivateConnectionPolicy : CORBA::Policy {};
+ // Protocol Properties.
+ local interface ProtocolProperties {};
local interface TCPProtocolProperties : ProtocolProperties
{
@@ -168,18 +159,26 @@ module RTCORBA
// End of TAO-specific interfaces.
- // PriorityBandedConnectionPolicy.
- struct PriorityBand
+ struct Protocol
{
- Priority low;
- Priority high;
+ IOP::ProfileId protocol_type;
+ ProtocolProperties orb_protocol_properties;
+ ProtocolProperties transport_protocol_properties;
};
- typedef sequence <PriorityBand> PriorityBands;
+ typedef sequence <Protocol> ProtocolList;
- const CORBA::PolicyType PRIORITY_BANDED_CONNECTION_POLICY_TYPE = 45;
- local interface PriorityBandedConnectionPolicy : CORBA::Policy
+ // Server Protocol Policy
+ const CORBA::PolicyType SERVER_PROTOCOL_POLICY_TYPE = 0x54410004;
+ local interface ServerProtocolPolicy : CORBA::Policy
{
- readonly attribute PriorityBands priority_bands;
+ readonly attribute ProtocolList protocols;
+ };
+
+ // Client Protocol Policy
+ const CORBA::PolicyType CLIENT_PROTOCOL_POLICY_TYPE = 0x54410005;
+ local interface ClientProtocolPolicy : CORBA::Policy
+ {
+ readonly attribute ProtocolList protocols;
};
// RT Current.
@@ -204,7 +203,6 @@ module RTCORBA
Mutex create_mutex ();
void destroy_mutex (in Mutex the_mutex);
- // TAO specific
// Named Mutex creation/opening
exception MutexNotFound {};
Mutex create_named_mutex (in string name,
@@ -212,15 +210,6 @@ module RTCORBA
Mutex open_named_mutex (in string name)
raises (MutexNotFound);
- // End TAO specific
-
- TCPProtocolProperties create_tcp_protocol_properties(
- in long send_buffer_size,
- in long recv_buffer_size,
- in boolean keep_alive,
- in boolean dont_route,
- in boolean no_delay );
-
// Threadpool creation/destruction.
exception InvalidThreadpool {};
@@ -251,12 +240,11 @@ module RTCORBA
PriorityBandedConnectionPolicy
create_priority_banded_connection_policy (in PriorityBands priority_bands);
+ PrivateConnectionPolicy create_private_connection_policy ();
ServerProtocolPolicy create_server_protocol_policy (in ProtocolList protocols);
ClientProtocolPolicy create_client_protocol_policy (in ProtocolList protocols);
-
- PrivateConnectionPolicy create_private_connection_policy ();
};
};