00001
00002
00003
00004
00005
00006
00007
00008 #ifndef OPENDDS_DCPS_BUILDCHAINVISTOR_H
00009 #define OPENDDS_DCPS_BUILDCHAINVISTOR_H
00010
00011 #include "dds/DCPS/dcps_export.h"
00012 #include "BasicQueueVisitor_T.h"
00013
00014 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00015 class ACE_Message_Block;
00016 ACE_END_VERSIONED_NAMESPACE_DECL
00017
00018 namespace OpenDDS {
00019 namespace DCPS {
00020
00021 class TransportQueueElement;
00022
00023 class OpenDDS_Dcps_Export BuildChainVisitor : public BasicQueueVisitor<TransportQueueElement> {
00024 public:
00025
00026 BuildChainVisitor();
00027 virtual ~BuildChainVisitor();
00028
00029 virtual int visit_element(TransportQueueElement* element);
00030
00031
00032
00033 ACE_Message_Block* chain();
00034
00035 private:
00036
00037 ACE_Message_Block* head_;
00038 ACE_Message_Block* tail_;
00039 };
00040
00041 }
00042 }
00043
00044 #if defined (__ACE_INLINE__)
00045 #include "BuildChainVisitor.inl"
00046 #endif
00047
00048 #endif