From 0dbeed4691cb011e73b3f4d53367c8313d06d417 Mon Sep 17 00:00:00 2001 From: Mathieu Lacage Date: Thu, 21 Feb 2008 21:57:38 +0100 Subject: [PATCH] remove accessor BASE arg to MakeAccessorHelper --- src/core/attribute-accessor-helper.h | 44 ++++++++++++++-------------- src/core/attribute-helper.h | 5 ++-- src/core/enum.h | 5 ++-- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/src/core/attribute-accessor-helper.h b/src/core/attribute-accessor-helper.h index 6d4056baf..e8c155c4e 100644 --- a/src/core/attribute-accessor-helper.h +++ b/src/core/attribute-accessor-helper.h @@ -3,11 +3,11 @@ namespace ns3 { -template +template Ptr MakeAccessorHelper (T1 a1); -template +template Ptr MakeAccessorHelper (T1 a1, T2 a2); @@ -21,8 +21,8 @@ MakeAccessorHelper (T1 a1, T2 a2); namespace ns3 { -template -class AccessorHelper : public BASE +template +class AccessorHelper : public AttributeAccessor { public: AccessorHelper () {} @@ -61,15 +61,15 @@ private: virtual bool DoGet (const T *object, U *v) const = 0; }; -template +template Ptr DoMakeAccessorHelperOne (U T::*memberVariable) { - class MemberVariable : public AccessorHelper + class MemberVariable : public AccessorHelper { public: MemberVariable (U T::*memberVariable) - : AccessorHelper (), + : AccessorHelper (), m_memberVariable (memberVariable) {} private: @@ -87,15 +87,15 @@ DoMakeAccessorHelperOne (U T::*memberVariable) return Ptr (new MemberVariable (memberVariable), false); } -template +template Ptr DoMakeAccessorHelperOne (U (T::*getter) (void) const) { - class MemberMethod : public AccessorHelper + class MemberMethod : public AccessorHelper { public: MemberMethod (U (T::*getter) (void) const) - : AccessorHelper (), + : AccessorHelper (), m_getter (getter) {} private: @@ -112,15 +112,15 @@ DoMakeAccessorHelperOne (U (T::*getter) (void) const) } -template +template Ptr DoMakeAccessorHelperOne (void (T::*setter) (U)) { - class MemberMethod : public AccessorHelper + class MemberMethod : public AccessorHelper { public: MemberMethod (void (T::*setter) (U)) - : AccessorHelper (), + : AccessorHelper (), m_setter (setter) {} private: @@ -136,17 +136,17 @@ DoMakeAccessorHelperOne (void (T::*setter) (U)) return Ptr (new MemberMethod (setter), false); } -template +template Ptr DoMakeAccessorHelperTwo (void (T::*setter) (U), V (T::*getter) (void) const) { - class MemberMethod : public AccessorHelper + class MemberMethod : public AccessorHelper { public: MemberMethod (void (T::*setter) (U), V (T::*getter) (void) const) - : AccessorHelper (), + : AccessorHelper (), m_setter (setter), m_getter (getter) {} @@ -165,26 +165,26 @@ DoMakeAccessorHelperTwo (void (T::*setter) (U), return Ptr (new MemberMethod (setter, getter), false); } -template +template Ptr DoMakeAccessorHelperTwo (V (T::*getter) (void) const, void (T::*setter) (U)) { - return DoMakeAccessorHelperTwo (setter, getter); + return DoMakeAccessorHelperTwo (setter, getter); } -template +template Ptr MakeAccessorHelper (T1 a1) { - return DoMakeAccessorHelperOne (a1); + return DoMakeAccessorHelperOne (a1); } -template +template Ptr MakeAccessorHelper (T1 a1, T2 a2) { - return DoMakeAccessorHelperTwo (a1, a2); + return DoMakeAccessorHelperTwo (a1, a2); } } // namespace ns3 diff --git a/src/core/attribute-helper.h b/src/core/attribute-helper.h index cba1cd59e..04ae29f76 100644 --- a/src/core/attribute-helper.h +++ b/src/core/attribute-helper.h @@ -6,16 +6,15 @@ #include "fatal-error.h" #define ATTRIBUTE_ACCESSOR_DEFINE(type) \ - class type##Accessor : public AttributeAccessor {}; \ template \ Ptr Make##type##Accessor (T1 a1) \ { \ - return MakeAccessorHelper (a1); \ + return MakeAccessorHelper (a1); \ } \ template \ Ptr Make##type##Accessor (T1 a1, T2 a2) \ { \ - return MakeAccessorHelper (a1, a2); \ + return MakeAccessorHelper (a1, a2); \ } #define ATTRIBUTE_VALUE_DEFINE(type) \ diff --git a/src/core/enum.h b/src/core/enum.h index f76d5c100..3377f565d 100644 --- a/src/core/enum.h +++ b/src/core/enum.h @@ -24,7 +24,6 @@ private: int m_v; }; -class EnumAccessor : public AttributeAccessor {}; class EnumChecker : public AttributeChecker { public: @@ -68,13 +67,13 @@ namespace ns3 { template Ptr MakeEnumAccessor (T1 a1) { - return MakeAccessorHelper (a1); + return MakeAccessorHelper (a1); } template Ptr MakeEnumAccessor (T1 a1, T2 a2) { - return MakeAccessorHelper (a1, a2); + return MakeAccessorHelper (a1, a2); } } // namespace ns3