Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / RTScheduling / RTScheduler_Manager.inl
blobcefa3b75997dae48a94b53f84f0e46c3df867124
1 // -*- C++ -*-
2 #include "tao/ORB_Core.h"
3 #include "tao/ORB.h"
5 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
7 // *************************************************************
8 // Inline operations for class TAO_RTScheduler_Manager_var
9 // *************************************************************
11 ACE_INLINE
12 TAO_RTScheduler_Manager_var::TAO_RTScheduler_Manager_var ()
13   : ptr_ (TAO_RTScheduler_Manager::_nil ())
16 ACE_INLINE
17 TAO_RTScheduler_Manager_var::TAO_RTScheduler_Manager_var (
18   TAO_RTScheduler_Manager_ptr p)
19   : ptr_ (p)
22 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
23 TAO_RTScheduler_Manager_var::ptr () const
25   return this->ptr_;
28 ACE_INLINE
29 TAO_RTScheduler_Manager_var::TAO_RTScheduler_Manager_var (
30   const ::TAO_RTScheduler_Manager_var &p) // copy constructor
31   : TAO_Base_var (),
32     ptr_ (TAO_RTScheduler_Manager::_duplicate (p.ptr ()))
35 ACE_INLINE
36 TAO_RTScheduler_Manager_var::~TAO_RTScheduler_Manager_var ()
38   CORBA::release (this->ptr_);
41 ACE_INLINE TAO_RTScheduler_Manager_var &
42 TAO_RTScheduler_Manager_var::operator= (TAO_RTScheduler_Manager_ptr p)
44   CORBA::release (this->ptr_);
45   this->ptr_ = p;
46   return *this;
49 ACE_INLINE TAO_RTScheduler_Manager_var &
50 TAO_RTScheduler_Manager_var::operator= (const ::TAO_RTScheduler_Manager_var &p)
52   if (this != &p)
53     {
54       CORBA::release (this->ptr_);
55       this->ptr_ = ::TAO_RTScheduler_Manager::_duplicate (p.ptr ());
56     }
58   return *this;
61 ACE_INLINE
62 TAO_RTScheduler_Manager_var::operator const ::TAO_RTScheduler_Manager_ptr &() const // cast
64   return this->ptr_;
67 ACE_INLINE
68 TAO_RTScheduler_Manager_var::operator ::TAO_RTScheduler_Manager_ptr &() // cast
70   return this->ptr_;
73 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
74 TAO_RTScheduler_Manager_var::operator-> () const
76   return this->ptr_;
79 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
80 TAO_RTScheduler_Manager_var::in () const
82   return this->ptr_;
85 ACE_INLINE ::TAO_RTScheduler_Manager_ptr &
86 TAO_RTScheduler_Manager_var::inout ()
88   return this->ptr_;
91 ACE_INLINE ::TAO_RTScheduler_Manager_ptr &
92 TAO_RTScheduler_Manager_var::out ()
94   CORBA::release (this->ptr_);
95   this->ptr_ = ::TAO_RTScheduler_Manager::_nil ();
96   return this->ptr_;
99 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
100 TAO_RTScheduler_Manager_var::_retn ()
102   // yield ownership of managed obj reference
103   ::TAO_RTScheduler_Manager_ptr val = this->ptr_;
104   this->ptr_ = ::TAO_RTScheduler_Manager::_nil ();
105   return val;
108 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
109 TAO_RTScheduler_Manager_var::duplicate (TAO_RTScheduler_Manager_ptr p)
111   return ::TAO_RTScheduler_Manager::_duplicate (p);
114 ACE_INLINE void
115 TAO_RTScheduler_Manager_var::release (TAO_RTScheduler_Manager_ptr p)
117   CORBA::release (p);
120 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
121 TAO_RTScheduler_Manager_var::nil ()
123   return ::TAO_RTScheduler_Manager::_nil ();
126 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
127 TAO_RTScheduler_Manager_var::narrow (
128   CORBA::Object * p
129   )
131   return ::TAO_RTScheduler_Manager::_narrow (p);
134 ACE_INLINE CORBA::Object *
135 TAO_RTScheduler_Manager_var::upcast (void *src)
137   TAO_RTScheduler_Manager **tmp =
138     static_cast<TAO_RTScheduler_Manager **> (src);
139   return *tmp;
143 // *************************************************************
144 // Inline operations for class TAO_RTScheduler_Manager_out
145 // *************************************************************
147 ACE_INLINE
148 TAO_RTScheduler_Manager_out::TAO_RTScheduler_Manager_out (TAO_RTScheduler_Manager_ptr &p)
149   : ptr_ (p)
151   this->ptr_ = ::TAO_RTScheduler_Manager::_nil ();
154 ACE_INLINE
155 TAO_RTScheduler_Manager_out::TAO_RTScheduler_Manager_out (TAO_RTScheduler_Manager_var &p) // constructor from _var
156   : ptr_ (p.out ())
158   CORBA::release (this->ptr_);
159   this->ptr_ = ::TAO_RTScheduler_Manager::_nil ();
162 ACE_INLINE
163 TAO_RTScheduler_Manager_out::TAO_RTScheduler_Manager_out (const ::TAO_RTScheduler_Manager_out &p) // copy constructor
164   : ptr_ (const_cast<TAO_RTScheduler_Manager_out &> (p).ptr_)
167 ACE_INLINE ::TAO_RTScheduler_Manager_out &
168 TAO_RTScheduler_Manager_out::operator= (const ::TAO_RTScheduler_Manager_out &p)
170   this->ptr_ = const_cast<TAO_RTScheduler_Manager_out&> (p).ptr_;
171   return *this;
174 ACE_INLINE TAO_RTScheduler_Manager_out &
175 TAO_RTScheduler_Manager_out::operator= (const ::TAO_RTScheduler_Manager_var &p)
177   this->ptr_ = ::TAO_RTScheduler_Manager::_duplicate (p.ptr ());
178   return *this;
181 ACE_INLINE TAO_RTScheduler_Manager_out &
182 TAO_RTScheduler_Manager_out::operator= (TAO_RTScheduler_Manager_ptr p)
184   this->ptr_ = p;
185   return *this;
188 ACE_INLINE
189 TAO_RTScheduler_Manager_out::operator ::TAO_RTScheduler_Manager_ptr &() // cast
191   return this->ptr_;
194 ACE_INLINE ::TAO_RTScheduler_Manager_ptr &
195 TAO_RTScheduler_Manager_out::ptr () // ptr
197   return this->ptr_;
200 ACE_INLINE ::TAO_RTScheduler_Manager_ptr
201 TAO_RTScheduler_Manager_out::operator-> ()
203   return this->ptr_;
206 ///////////////////////////////////////////////////////////////////////////
207 ACE_INLINE
208 TAO_RTScheduler_Manager::TAO_RTScheduler_Manager (TAO_ORB_Core* orb)
209   : orb_ (orb)
213 ACE_INLINE RTScheduling::Scheduler_ptr
214 TAO_RTScheduler_Manager::rtscheduler ()
216   return RTScheduling::Scheduler::_duplicate (this->rtscheduler_.in());
219 ACE_INLINE void
220 TAO_RTScheduler_Manager::rtscheduler (RTScheduling::Scheduler_ptr rtscheduler)
222   this->rtscheduler_ = RTScheduling::Scheduler::_duplicate (rtscheduler);
223   this->orb_->orb ()->register_initial_reference (
224     "RTScheduler",
225     this->rtscheduler_.in ()
226    );
229 TAO_END_VERSIONED_NAMESPACE_DECL