TransportRetainedElement.inl
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #include "EntryExit.h"
00009
00010 OPENDDS_BEGIN_VERSIONED_NAMESPACE_DECL
00011
00012 ACE_INLINE
00013 OpenDDS::DCPS::TransportRetainedElement::TransportRetainedElement(
00014 const ACE_Message_Block* message,
00015 const RepoId& pubId,
00016 MessageBlockAllocator* mb_allocator,
00017 DataBlockAllocator* db_allocator
00018 ) : TransportQueueElement(1),
00019 publication_id_( pubId),
00020 mb_allocator_( mb_allocator),
00021 db_allocator_( db_allocator)
00022 {
00023 if (message != 0) {
00024 msg_.reset(TransportQueueElement::clone_mb(message,
00025 this->mb_allocator_,
00026 this->db_allocator_));
00027 }
00028 }
00029
00030 ACE_INLINE
00031 OpenDDS::DCPS::TransportRetainedElement::TransportRetainedElement(
00032 const TransportRetainedElement& source
00033 ) : TransportQueueElement(1),
00034 msg_( ACE_Message_Block::duplicate( source.msg())),
00035 publication_id_( source.publication_id()),
00036 mb_allocator_( source.mb_allocator_),
00037 db_allocator_( source.db_allocator_)
00038 {
00039 DBG_ENTRY_LVL("TransportRetainedElement","TransportRetainedElement",6);
00040 }
00041
00042
00043 ACE_INLINE
00044 bool
00045 OpenDDS::DCPS::TransportRetainedElement::owned_by_transport ()
00046 {
00047 return true;
00048 }
00049
00050 OPENDDS_END_VERSIONED_NAMESPACE_DECL