3 //=============================================================================
5 * @file Priority_Mapping_Manager.h
7 * @author Marina Spivak (marina@cs.wustl.edu)
9 //=============================================================================
12 #ifndef TAO_PRIORITY_MAPPING_MANAGER_H
13 #define TAO_PRIORITY_MAPPING_MANAGER_H
14 #include /**/ "ace/pre.h"
16 #include "tao/orbconf.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #if defined (TAO_HAS_CORBA_MESSAGING) && TAO_HAS_CORBA_MESSAGING != 0
24 #include "tao/RTCORBA/rtcorba_export.h"
25 #include "tao/RTCORBA/Priority_Mapping.h"
26 #include "tao/LocalObject.h"
28 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
30 class TAO_Priority_Mapping_Manager
;
31 class TAO_Priority_Mapping_Manager_var
;
32 typedef TAO_Priority_Mapping_Manager
*TAO_Priority_Mapping_Manager_ptr
;
36 * @class TAO_Priority_Mapping_Manager
38 * @brief Priority_Mapping_Manager pseudo-objref.
40 * Allows setting of user-defined Priority_Mapping at run-time.
42 class TAO_RTCORBA_Export TAO_Priority_Mapping_Manager
:
43 public virtual ::CORBA::LocalObject
47 TAO_Priority_Mapping_Manager (RTCORBA::PriorityMapping
* mapping
);
50 void mapping (RTCORBA::PriorityMapping
* mapping
);
53 RTCORBA::PriorityMapping
*mapping ();
56 typedef TAO_Priority_Mapping_Manager_ptr _ptr_type
;
57 typedef TAO_Priority_Mapping_Manager_var _var_type
;
59 // the static operations
60 static TAO_Priority_Mapping_Manager_ptr
_duplicate (TAO_Priority_Mapping_Manager_ptr obj
);
61 static TAO_Priority_Mapping_Manager_ptr
_narrow (CORBA::Object_ptr obj
);
63 static TAO_Priority_Mapping_Manager_ptr
_nil ()
68 virtual const char* _interface_repository_id () const;
71 /// Protected destructor to enforce proper memory management of this
72 /// reference counted object.
73 ~TAO_Priority_Mapping_Manager ();
76 TAO_Priority_Mapping_Manager (const TAO_Priority_Mapping_Manager
&);
77 void operator= (const TAO_Priority_Mapping_Manager
&);
80 TAO_Priority_Mapping
*mapping_
;
83 class TAO_RTCORBA_Export TAO_Priority_Mapping_Manager_var
84 : private TAO_Base_var
87 TAO_Priority_Mapping_Manager_var (); // default constructor
88 TAO_Priority_Mapping_Manager_var (TAO_Priority_Mapping_Manager_ptr
);
89 TAO_Priority_Mapping_Manager_var (const TAO_Priority_Mapping_Manager_var
&); // copy constructor
90 ~TAO_Priority_Mapping_Manager_var (); // destructor
92 TAO_Priority_Mapping_Manager_var
&operator= (TAO_Priority_Mapping_Manager_ptr
);
93 TAO_Priority_Mapping_Manager_var
&operator= (const TAO_Priority_Mapping_Manager_var
&);
94 TAO_Priority_Mapping_Manager_ptr
operator-> () const;
96 /// in, inout, out, _retn
97 operator const TAO_Priority_Mapping_Manager_ptr
&() const;
98 operator TAO_Priority_Mapping_Manager_ptr
&();
99 TAO_Priority_Mapping_Manager_ptr
in () const;
100 TAO_Priority_Mapping_Manager_ptr
&inout ();
101 TAO_Priority_Mapping_Manager_ptr
&out ();
102 TAO_Priority_Mapping_Manager_ptr
_retn ();
103 TAO_Priority_Mapping_Manager_ptr
ptr () const;
105 // Hooks used by template sequence and object manager classes
106 // for non-defined forward declared interfaces.
107 static TAO_Priority_Mapping_Manager_ptr
duplicate (TAO_Priority_Mapping_Manager_ptr
);
108 static void release (TAO_Priority_Mapping_Manager_ptr
);
109 static TAO_Priority_Mapping_Manager_ptr
nil ();
110 static TAO_Priority_Mapping_Manager_ptr
narrow (CORBA::Object
* );
111 static CORBA::Object
* upcast (void *);
114 TAO_Priority_Mapping_Manager_ptr ptr_
;
115 TAO_Priority_Mapping_Manager_var (const TAO_Base_var
&rhs
) = delete;
116 TAO_Priority_Mapping_Manager_var
&operator= (const TAO_Base_var
&rhs
) = delete;
119 class TAO_RTCORBA_Export TAO_Priority_Mapping_Manager_out
122 TAO_Priority_Mapping_Manager_out (TAO_Priority_Mapping_Manager_ptr
&);
123 TAO_Priority_Mapping_Manager_out (TAO_Priority_Mapping_Manager_var
&);
124 TAO_Priority_Mapping_Manager_out (const TAO_Priority_Mapping_Manager_out
&);
125 TAO_Priority_Mapping_Manager_out
&operator= (const TAO_Priority_Mapping_Manager_out
&);
126 TAO_Priority_Mapping_Manager_out
&operator= (const TAO_Priority_Mapping_Manager_var
&);
127 TAO_Priority_Mapping_Manager_out
&operator= (TAO_Priority_Mapping_Manager_ptr
);
128 operator TAO_Priority_Mapping_Manager_ptr
&();
129 TAO_Priority_Mapping_Manager_ptr
&ptr ();
130 TAO_Priority_Mapping_Manager_ptr
operator-> ();
133 TAO_Priority_Mapping_Manager_ptr
&ptr_
;
136 TAO_END_VERSIONED_NAMESPACE_DECL
138 #if defined (__ACE_INLINE__)
139 #include "tao/RTCORBA/Priority_Mapping_Manager.inl"
140 #endif /* __ACE_INLINE__ */
142 #endif /* TAO_HAS_CORBA_MESSAGING && TAO_HAS_CORBA_MESSAGING != 0 */
144 #include /**/ "ace/post.h"
145 #endif /* TAO_PRIORITY_MAPPING_MANAGER_H */