diff --git a/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py b/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py index 3eed8e691..8756d39bd 100644 --- a/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py +++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py @@ -133,6 +133,7 @@ def register_types_ns3_olsr(module): module.add_class('TwoHopNeighborTuple') module.add_container('std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage >', 'ns3::olsr::MessageHeader::Hello::LinkMessage', container_type='vector') module.add_container('std::vector< ns3::olsr::MessageHeader::Hna::Association >', 'ns3::olsr::MessageHeader::Hna::Association', container_type='vector') + module.add_container('std::vector< ns3::olsr::RoutingTableEntry >', 'ns3::olsr::RoutingTableEntry', container_type='vector') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >', 'ns3::olsr::DuplicateSet') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >*', 'ns3::olsr::DuplicateSet*') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >&', 'ns3::olsr::DuplicateSet&') @@ -812,6 +813,11 @@ def register_Ns3OlsrRoutingProtocol_methods(root_module, cls): cls.add_method('Dump', 'void', []) + ## olsr-routing-protocol.h: std::vector > ns3::olsr::RoutingProtocol::GetRoutingTableEntries() const [member function] + cls.add_method('GetRoutingTableEntries', + 'std::vector< ns3::olsr::RoutingTableEntry >', + [], + is_const=True) ## olsr-routing-protocol.h: static ns3::TypeId ns3::olsr::RoutingProtocol::GetTypeId() [member function] cls.add_method('GetTypeId', 'ns3::TypeId', diff --git a/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py b/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py index 3eed8e691..8756d39bd 100644 --- a/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py +++ b/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py @@ -133,6 +133,7 @@ def register_types_ns3_olsr(module): module.add_class('TwoHopNeighborTuple') module.add_container('std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage >', 'ns3::olsr::MessageHeader::Hello::LinkMessage', container_type='vector') module.add_container('std::vector< ns3::olsr::MessageHeader::Hna::Association >', 'ns3::olsr::MessageHeader::Hna::Association', container_type='vector') + module.add_container('std::vector< ns3::olsr::RoutingTableEntry >', 'ns3::olsr::RoutingTableEntry', container_type='vector') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >', 'ns3::olsr::DuplicateSet') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >*', 'ns3::olsr::DuplicateSet*') typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >&', 'ns3::olsr::DuplicateSet&') @@ -812,6 +813,11 @@ def register_Ns3OlsrRoutingProtocol_methods(root_module, cls): cls.add_method('Dump', 'void', []) + ## olsr-routing-protocol.h: std::vector > ns3::olsr::RoutingProtocol::GetRoutingTableEntries() const [member function] + cls.add_method('GetRoutingTableEntries', + 'std::vector< ns3::olsr::RoutingTableEntry >', + [], + is_const=True) ## olsr-routing-protocol.h: static ns3::TypeId ns3::olsr::RoutingProtocol::GetTypeId() [member function] cls.add_method('GetTypeId', 'ns3::TypeId', diff --git a/src/routing/olsr/olsr-routing-protocol.cc b/src/routing/olsr/olsr-routing-protocol.cc index 8bc67e870..c32a63b48 100644 --- a/src/routing/olsr/olsr-routing-protocol.cc +++ b/src/routing/olsr/olsr-routing-protocol.cc @@ -2815,7 +2815,7 @@ RoutingProtocol::AddEntry (Ipv4Address const &dest, std::vector -RoutingProtocol::GetEntries () const +RoutingProtocol::GetRoutingTableEntries () const { std::vector retval; for (std::map::const_iterator iter = m_table.begin (); diff --git a/src/routing/olsr/olsr-routing-protocol.h b/src/routing/olsr/olsr-routing-protocol.h index bba86b183..83d269148 100644 --- a/src/routing/olsr/olsr-routing-protocol.h +++ b/src/routing/olsr/olsr-routing-protocol.h @@ -100,6 +100,11 @@ public: /// void Dump (void); + /** + * Return the list of routing table entries discovered by OLSR + **/ + std::vector GetRoutingTableEntries () const; + protected: virtual void DoStart (void); private: @@ -133,7 +138,6 @@ private: void Clear (); uint32_t GetSize () const { return m_table.size (); } - std::vector GetEntries () const; void RemoveEntry (const Ipv4Address &dest); void AddEntry (const Ipv4Address &dest, const Ipv4Address &next,