diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-07-16 05:07:44 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-07-16 05:07:44 +0000 |
commit | a5808ed7e36c1c71bb4f151964a4a1dcd3722440 (patch) | |
tree | c7e6de0b1bf446bd983cd46ca38958ab80ed9a25 /TAO/tao/Object.i | |
parent | 21bfd0c5ae64c89f50091058bd145f1c466e31ff (diff) | |
download | ATCD-a5808ed7e36c1c71bb4f151964a4a1dcd3722440.tar.gz |
ChangeLogTag:Thu Jul 16 00:00:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/Object.i')
-rw-r--r-- | TAO/tao/Object.i | 50 |
1 files changed, 7 insertions, 43 deletions
diff --git a/TAO/tao/Object.i b/TAO/tao/Object.i index ce0d47b1714..db51f7d3b0c 100644 --- a/TAO/tao/Object.i +++ b/TAO/tao/Object.i @@ -2,14 +2,14 @@ // = methods for class CORBA_Object -ACE_INLINE ULONG -CORBA_Object::AddRef (void) +ACE_INLINE CORBA::ULong +CORBA_Object::_incr_refcnt (void) { return ++this->refcount_; } -ACE_INLINE ULONG -CORBA_Object::Release (void) +ACE_INLINE CORBA::ULong +CORBA_Object::_decr_refcnt (void) { if (--this->refcount_ != 0) return this->refcount_; @@ -17,31 +17,11 @@ CORBA_Object::Release (void) return 0; } -ACE_INLINE TAO_HRESULT -CORBA_Object::QueryInterface (TAO_REFIID riid, - void **ppv) -{ - *ppv = 0; - - if (IID_IIOP_Object == riid - || IID_STUB_Object == riid - || IID_TAO_IUnknown == riid) - *ppv = this->parent_; - else if (IID_CORBA_Object == riid) - *ppv = this; - - if (*ppv == 0) - return TAO_ResultFromScode (TAO_E_NOINTERFACE); - - (void) this->AddRef (); - return TAO_NOERROR; -} - ACE_INLINE CORBA_Object_ptr CORBA_Object::_duplicate (CORBA::Object_ptr obj) { if (obj) - obj->AddRef (); + obj->_incr_refcnt (); return obj; } @@ -59,26 +39,10 @@ CORBA::is_nil (CORBA::Object_ptr obj) return (CORBA::Boolean) (obj == 0); } -ACE_INLINE void -CORBA_Object::_set_parent (STUB_Object *p) -{ - if (p != 0 && p->AddRef () != 0) - { - // Release the one we had. - if (this->parent_) - this->parent_->Release (); - - // Hold on to the new one - this->parent_ = p; - } - - ACE_ASSERT (this->parent_ != 0); -} - ACE_INLINE STUB_Object * -CORBA_Object::_get_parent (void) const +CORBA_Object::_stubobj (void) { - return this->parent_; + return this->protocol_proxy_; } // DII hook to objref |