TransportRetainedElement.inl

Go to the documentation of this file.
00001 /*
00002  *
00003  *
00004  * Distributed under the OpenDDS License.
00005  * See: http://www.opendds.org/license.html
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
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1