38class AttributeAccessor;
39class 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
Ptr< AttributeValue > Copy() const override
EmptyAttributeValue()
Default constructor.
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.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::Ptr smart pointer declaration and implementation.
ns3::SimpleRefCount declaration and template implementation.