Use =default for skeleton copy constructor
[ACE_TAO.git] / TAO / tao / Messaging / Messaging_No_Impl.pidl
bloba0149abb6067126ae20c0b81aa42a73c1cc49a3e
1 // -*- IDL -*-
3 /**
4  *  @file   Messaging_No_Impl.pidl
5  */
7 #ifndef TAO_MESSAGING_NO_IMPL_PIDL
8 #define TAO_MESSAGING_NO_IMPL_PIDL
10 #include "tao/TimeBase.pidl"
11 #include "tao/Policy.pidl"
12 #include "tao/Messaging/Messaging_Types.pidl"
14 #pragma prefix "omg.org"
16 module Messaging
18   //
19   // Messaging Quality of Service
20   //
22   typedef short Priority;
24   typedef short RebindMode;
25   const RebindMode TRANSPARENT  = 0;
26   const RebindMode NO_REBIND    = 1;
27   const RebindMode NO_RECONNECT = 2;
29   typedef short RoutingType;
30   const RoutingType ROUTE_NONE              = 0;
31   const RoutingType ROUTE_FORWARD           = 1;
32   const RoutingType ROUTE_STORE_AND_FORWARD = 2;
34   typedef unsigned short Ordering;
35   const Ordering ORDER_ANY      = 0x01;
36   const Ordering ORDER_TEMPORAL = 0x02;
37   const Ordering ORDER_PRIORITY = 0x04;
38   const Ordering ORDER_DEADLINE = 0x08;
40   //
41   // Locally-Constrained Policy Objects
42   //
44   /// Rebind Policy (default = TRANSPARENT)
45   local interface RebindPolicy : CORBA::Policy {
46     readonly attribute RebindMode rebind_mode;
47   };
49   /// Priority Policies
50   struct PriorityRange {
51     Priority min;
52     Priority max;
53   };
54   local interface RequestPriorityPolicy : CORBA::Policy {
55     readonly attribute PriorityRange priority_range;
56   };
57   local interface ReplyPriorityPolicy : CORBA::Policy {
58     readonly attribute PriorityRange priority_range;
59   };
61   /// Timeout Policies
62   local interface RequestStartTimePolicy : CORBA::Policy {
63     readonly attribute TimeBase::UtcT start_time;
64   };
65   local interface RequestEndTimePolicy : CORBA::Policy {
66     readonly attribute TimeBase::UtcT end_time;
67   };
69   local interface ReplyStartTimePolicy : CORBA::Policy {
70     readonly attribute TimeBase::UtcT start_time;
71   };
72   local interface ReplyEndTimePolicy : CORBA::Policy {
73     readonly attribute TimeBase::UtcT end_time;
74   };
76   local interface RelativeRequestTimeoutPolicy : CORBA::Policy {
77     readonly attribute TimeBase::TimeT relative_expiry;
78   };
80   struct RoutingTypeRange {
81     RoutingType min;
82     RoutingType max;
83   };
84   local interface RoutingPolicy : CORBA::Policy {
85     readonly attribute RoutingTypeRange routing_range;
86   };
88   local interface MaxHopsPolicy : CORBA::Policy {
89     readonly attribute unsigned short max_hops;
90   };
92   /// Router Delivery-ordering Policy (default = ORDER_TEMPORAL)
93   local interface QueueOrderPolicy : CORBA::Policy {
94     readonly attribute Ordering allowed_orders;
95   };
98 #endif /*TAO_MESSAGING_NO_IMPL_PIDL*/