00001 // -*- C++ -*- 00002 // 00003 // $Id: Profile.inl 81429 2008-04-24 18:49:54Z johnnyw $ 00004 00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00006 00007 ACE_INLINE CORBA::ULong 00008 TAO_Profile::tag (void) const 00009 { 00010 return this->tag_; 00011 } 00012 00013 ACE_INLINE const TAO_GIOP_Message_Version & 00014 TAO_Profile::version (void) const 00015 { 00016 return this->version_; 00017 } 00018 00019 ACE_INLINE TAO_ORB_Core * 00020 TAO_Profile::orb_core (void) const 00021 { 00022 return this->orb_core_; 00023 } 00024 00025 ACE_INLINE void 00026 TAO_Profile::forward_to (TAO_MProfile *mprofiles) 00027 { 00028 this->forward_to_ = mprofiles; 00029 } 00030 00031 ACE_INLINE TAO_MProfile * 00032 TAO_Profile::forward_to (void) 00033 { 00034 return this->forward_to_; 00035 } 00036 00037 ACE_INLINE TAO_MProfile * 00038 TAO_Profile::forward_to_i (void) 00039 { 00040 return this->forward_to_; 00041 } 00042 00043 ACE_INLINE const TAO_Tagged_Components& 00044 TAO_Profile::tagged_components (void) const 00045 { 00046 return this->tagged_components_; 00047 } 00048 00049 ACE_INLINE TAO_Tagged_Components& 00050 TAO_Profile::tagged_components (void) 00051 { 00052 return this->tagged_components_; 00053 } 00054 00055 ACE_INLINE CORBA::Short 00056 TAO_Profile::addressing_mode (void) const 00057 { 00058 return this->addressing_mode_; 00059 } 00060 00061 ACE_INLINE const TAO::ObjectKey & 00062 TAO_Profile::object_key (void) const 00063 { 00064 return this->ref_object_key_->object_key (); 00065 } 00066 00067 ACE_INLINE unsigned long 00068 TAO_Profile::_incr_refcnt (void) 00069 { 00070 return this->refcount_.increment (); 00071 } 00072 00073 ACE_INLINE unsigned long 00074 TAO_Profile::_decr_refcnt (void) 00075 { 00076 unsigned long count = this->refcount_.decrement (); 00077 if (count != 0) 00078 return count; 00079 00080 // refcount is 0, so delete us! 00081 // delete will call our ~ destructor which in turn deletes stuff. 00082 delete this; 00083 return 0; 00084 } 00085 00086 00087 00088 TAO_END_VERSIONED_NAMESPACE_DECL