27class AttributeAccessor;
28class AttributeChecker;
allow setting and getting the value of an attribute.
virtual bool Get(const ObjectBase *object, AttributeValue &attribute) const =0
virtual bool Set(ObjectBase *object, const AttributeValue &value) const =0
virtual bool HasSetter() const =0
virtual bool HasGetter() const =0
virtual ~AttributeAccessor()
Represent the type of an attribute.
virtual bool HasUnderlyingTypeInformation() const =0
virtual ~AttributeChecker()
virtual std::string GetValueTypeName() const =0
virtual bool Check(const AttributeValue &value) const =0
virtual bool Copy(const AttributeValue &source, AttributeValue &destination) const =0
Copy the source to the destination.
Ptr< AttributeValue > CreateValidValue(const AttributeValue &value) const
Create a valid value from the argument value, or reinterpret the argument as a string.
virtual std::string GetUnderlyingTypeInformation() const =0
virtual Ptr< AttributeValue > Create() const =0
Hold a value for an Attribute.
virtual bool DeserializeFromString(std::string value, Ptr< const AttributeChecker > checker)=0
virtual Ptr< AttributeValue > Copy() const =0
virtual ~AttributeValue()
virtual std::string SerializeToString(Ptr< const AttributeChecker > checker) const =0
An accessor for EmptyAttributeValue.
bool Get(const ObjectBase *object, AttributeValue &attribute) const override
bool Set(ObjectBase *object, const AttributeValue &value) const override
~EmptyAttributeAccessor() override
bool HasSetter() const override
bool HasGetter() const override
A checker for EmptyAttributeValue.
std::string GetValueTypeName() const override
bool Check(const AttributeValue &value) const override
Ptr< AttributeValue > Create() const override
bool Copy(const AttributeValue &source, AttributeValue &destination) const override
Copy the source to the destination.
bool HasUnderlyingTypeInformation() const override
~EmptyAttributeChecker() override
std::string GetUnderlyingTypeInformation() const override
A class for an empty attribute value.
std::string SerializeToString(Ptr< const AttributeChecker > checker) const override
EmptyAttributeValue()
Default constructor.
Ptr< AttributeValue > Copy() const override
bool DeserializeFromString(std::string value, Ptr< const AttributeChecker > checker) override
Anchor the ns-3 type and attribute system.
Smart pointer class similar to boost::intrusive_ptr.
A template-based reference counting class.
static Ptr< AttributeChecker > MakeEmptyAttributeChecker()
Create an empty AttributeChecker.
static Ptr< const AttributeAccessor > MakeEmptyAttributeAccessor()
Create an empty AttributeAccessor.
Ptr< T > Create(Ts &&... args)
Create class instances by constructors with varying numbers of arguments and return them by Ptr.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
static unsigned int value(char c)
ns3::Ptr smart pointer declaration and implementation.
ns3::SimpleRefCount declaration and template implementation.