133        if (
value == 
nullptr)
 
  137        if (!
value->GetObject())
 
  151        return "ns3::PointerValue";
 
  161        TypeId tid = T::GetTypeId();
 
  162        return "ns3::Ptr< " + tid.
GetName() + 
" >";
 
  167        return ns3::Create<PointerValue>();
 
  174        if (src == 
nullptr || dst == 
nullptr)
 
  184        return T::GetTypeId();
 
  236    return Create<internal::PointerChecker<T>>();
 
ns3::AttributeValue, ns3::AttributeAccessor and ns3::AttributeChecker declarations.
 
Represent the type of an attribute.
 
Hold a value for an Attribute.
 
AttributeChecker implementation for PointerValue.
 
virtual TypeId GetPointeeTypeId() const =0
Get the TypeId of the base type.
 
Hold objects of type Ptr<T>.
 
std::string SerializeToString(Ptr< const AttributeChecker > checker) const override
 
Ptr< Object > m_value
The stored Pointer instance.
 
Ptr< AttributeValue > Copy() const override
 
Ptr< Object > GetObject() const
Get the Object referenced by the PointerValue.
 
bool DeserializeFromString(std::string value, Ptr< const AttributeChecker > checker) override
 
void Set(const Ptr< T > &value)
Set the value.
 
void SetObject(Ptr< Object > object)
Set the value from by reference an Object.
 
bool GetAccessor(Ptr< T > &value) const
Access the Pointer value as type T.
 
a unique identifier for an interface.
 
std::string GetName() const
Get the name.
 
PointerChecker implementation.
 
std::string GetUnderlyingTypeInformation() const override
 
Ptr< AttributeValue > Create() const override
 
bool HasUnderlyingTypeInformation() const override
 
bool Check(const AttributeValue &val) const override
 
std::string GetValueTypeName() const override
 
bool Copy(const AttributeValue &source, AttributeValue &destination) const override
Copy the source to the destination.
 
TypeId GetPointeeTypeId() const override
Get the TypeId of the base type.
 
Ptr< AttributeChecker > MakePointerChecker()
Create a PointerChecker for a type.
 
#define ATTRIBUTE_ACCESSOR_DEFINE(type)
Define the attribute accessor functions MakeTypeAccessor for class type.
 
Every class exported by the ns3 library is enclosed in the ns3 namespace.
 
U * PeekPointer(const Ptr< U > &p)
 
ns3::Object class declaration, which is the root of the Object hierarchy and Aggregation.