From cb3c99a26412bfe66123744e82f78f30d9adba7a Mon Sep 17 00:00:00 2001 From: Richard Whitehouse Date: Sun, 20 Feb 2011 02:05:54 +0000 Subject: [PATCH] Allow MooseAddress to be used as a property for ns3 Objects under the TypeID system --- code/src/node/moose-address.cc | 14 ++++++++++++++ code/src/node/moose-address.h | 5 +++++ 2 files changed, 19 insertions(+) diff --git a/code/src/node/moose-address.cc b/code/src/node/moose-address.cc index e7802b1..961a5f9 100644 --- a/code/src/node/moose-address.cc +++ b/code/src/node/moose-address.cc @@ -124,6 +124,20 @@ MooseAddress MooseAddress::Combine(MoosePrefixAddress prefix, MooseSuffixAddress } +ATTRIBUTE_HELPER_CPP (MooseAddress); + +std::ostream& operator<< (std::ostream& os, MooseAddress const& address) +{ + os << (address.GetMacAddress()); + return os; +} +std::istream & operator >> (std::istream &is, MooseAddress &address) +{ + Mac48Address addr; + is >> addr; + address = MooseAddress(addr); + return is; +} } diff --git a/code/src/node/moose-address.h b/code/src/node/moose-address.h index 1a0d7ef..0f53913 100644 --- a/code/src/node/moose-address.h +++ b/code/src/node/moose-address.h @@ -94,6 +94,11 @@ private: }; +std::ostream& operator<< (std::ostream& os, MooseAddress const& address); +std::istream & operator >> (std::istream &is, MooseAddress &address); + +ATTRIBUTE_HELPER_HEADER (MooseAddress); + } #endif -- 2.34.1