A Discrete-Event Network Simulator
API
Public Member Functions | Private Member Functions | List of all members
ns3::AccessorHelper< T, U > Class Template Referenceabstract

Basic functionality for accessing class attributes via class data members, or get functor/set methods. More...

#include "attribute-accessor-helper.h"

+ Inheritance diagram for ns3::AccessorHelper< T, U >:

Public Member Functions

 AccessorHelper ()
 Constructor. More...
 
virtual bool Get (const ObjectBase *object, AttributeValue &val) const
 Get the value of the underlying member into the AttributeValue. More...
 
virtual bool Set (ObjectBase *object, const AttributeValue &val) const
 Set the underlying member to the argument AttributeValue. More...
 
- Public Member Functions inherited from ns3::AttributeAccessor
 AttributeAccessor ()
 
virtual ~AttributeAccessor ()
 
virtual bool HasGetter (void) const =0
 
virtual bool HasSetter (void) const =0
 
- Public Member Functions inherited from ns3::SimpleRefCount< AttributeAccessor >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Private Member Functions

virtual bool DoGet (const T *object, U *v) const =0
 Getter implementation. More...
 
virtual bool DoSet (T *object, const U *v) const =0
 Setter implementation. More...
 

Detailed Description

template<typename T, typename U>
class ns3::AccessorHelper< T, U >

Basic functionality for accessing class attributes via class data members, or get functor/set methods.

Template Parameters
T[explicit] Class of object holding the attribute.
U[explicit] AttributeValue type for the underlying class member which is an attribute.

Definition at line 160 of file attribute-accessor-helper.h.

Constructor & Destructor Documentation

◆ AccessorHelper()

template<typename T , typename U >
ns3::AccessorHelper< T, U >::AccessorHelper ( )
inline

Constructor.

Definition at line 164 of file attribute-accessor-helper.h.

Member Function Documentation

◆ DoGet()

template<typename T , typename U >
virtual bool ns3::AccessorHelper< T, U >::DoGet ( const T *  object,
U *  v 
) const
privatepure virtual

Getter implementation.

See also
Get()
Parameters
[out]objectThe parent object holding the attribute.
[out]vThe specific AttributeValue to set.
Returns
true if the member value could be retrieved successfully

Referenced by ns3::AccessorHelper< T, U >::Get().

◆ DoSet()

template<typename T , typename U >
virtual bool ns3::AccessorHelper< T, U >::DoSet ( T *  object,
const U *  v 
) const
privatepure virtual

Setter implementation.

See also
Set()
Parameters
[in]objectThe parent object holding the attribute.
[in]vThe specific AttributeValue to set.
Returns
true if the member was set successfully.

Referenced by ns3::AccessorHelper< T, U >::Set().

◆ Get()

template<typename T , typename U >
virtual bool ns3::AccessorHelper< T, U >::Get ( const ObjectBase object,
AttributeValue val 
) const
inlinevirtual

Get the value of the underlying member into the AttributeValue.

Handle dynamic casting from generic ObjectBase and AttributeValue up to desired object class and specific AttributeValue.

Forwards to DoGet method.

Parameters
[out]objectGeneric object pointer, to upcast to T.
[out]valGeneric AttributeValue, to upcast to U.
Returns
true if the member value could be retrieved successfully

Implements ns3::AttributeAccessor.

Definition at line 204 of file attribute-accessor-helper.h.

References ns3::AccessorHelper< T, U >::DoGet().

◆ Set()

template<typename T , typename U >
virtual bool ns3::AccessorHelper< T, U >::Set ( ObjectBase object,
const AttributeValue val 
) const
inlinevirtual

Set the underlying member to the argument AttributeValue.

Handle dynamic casting from generic ObjectBase and AttributeValue up to desired object class and specific AttributeValue.

Forwards to DoSet method.

Parameters
[in]objectGeneric object pointer, to upcast to T.
[in]valGeneric AttributeValue, to upcast to U.
Returns
true if the member was set successfully.

Implements ns3::AttributeAccessor.

Definition at line 178 of file attribute-accessor-helper.h.

References ns3::AccessorHelper< T, U >::DoSet().

Referenced by ns3::DoMakeAccessorHelperTwo().


The documentation for this class was generated from the following file: