00001
00002
00003
00004
00005
00006
00007
00008 #ifndef OPENDDS_SHMEMINST_H
00009 #define OPENDDS_SHMEMINST_H
00010
00011 #include "Shmem_Export.h"
00012 #include "ShmemTransport.h"
00013
00014 #include "dds/DCPS/transport/framework/TransportInst.h"
00015
00016 namespace OpenDDS {
00017 namespace DCPS {
00018
00019 class OpenDDS_Shmem_Export ShmemInst : public TransportInst {
00020 public:
00021
00022 virtual int load(ACE_Configuration_Heap& cf,
00023 ACE_Configuration_Section_Key& sect);
00024
00025 virtual OPENDDS_STRING dump_to_str();
00026
00027
00028
00029 size_t pool_size_;
00030
00031
00032
00033
00034 size_t datalink_control_size_;
00035
00036 bool is_reliable() const { return true; }
00037
00038 virtual size_t populate_locator(OpenDDS::DCPS::TransportLocator& trans_info) const;
00039
00040 const std::string& hostname() const { return hostname_; }
00041 const std::string& poolname() const { return poolname_; }
00042
00043 private:
00044 friend class ShmemType;
00045 explicit ShmemInst(const std::string& name);
00046
00047 ShmemTransport* new_impl(const TransportInst_rch& inst);
00048 std::string hostname_;
00049 std::string poolname_;
00050 };
00051
00052 }
00053 }
00054
00055 #endif