AttributeChecker implementation for EnumValue.
More...
#include "enum.h"
Public Member Functions | |
EnumChecker () | |
void | Add (int value, std::string name) |
Add a new value. More... | |
void | AddDefault (int value, std::string name) |
Add a default value. More... | |
virtual bool | Check (const AttributeValue &value) const |
virtual bool | Copy (const AttributeValue &src, AttributeValue &dst) const |
Copy the source to the destination. More... | |
virtual Ptr< AttributeValue > | Create (void) const |
virtual std::string | GetUnderlyingTypeInformation (void) const |
virtual std::string | GetValueTypeName (void) const |
virtual bool | HasUnderlyingTypeInformation (void) const |
Public Member Functions inherited from ns3::AttributeChecker | |
AttributeChecker () | |
virtual | ~AttributeChecker () |
Ptr< AttributeValue > | CreateValidValue (const AttributeValue &value) const |
Create a valid value from the argument value, or reinterpret the argument as a string. More... | |
Public Member Functions inherited from ns3::SimpleRefCount< AttributeChecker > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (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 Types | |
typedef std::list< std::pair< int, std::string > > | ValueSet |
Type of container for storing Enum values and symbol names. More... | |
Private Attributes | |
ValueSet | m_valueSet |
The stored Enum values and symbol names. More... | |
Friends | |
class | EnumValue |
|
private |
ns3::EnumChecker::EnumChecker | ( | ) |
Definition at line 98 of file enum.cc.
References NS_LOG_FUNCTION.
void ns3::EnumChecker::Add | ( | int | value, |
std::string | name | ||
) |
Add a new value.
[in] | value | The value. |
[in] | name | Then enum symbol name. |
Definition at line 110 of file enum.cc.
References m_valueSet, and NS_LOG_FUNCTION.
Referenced by ns3::MakeEnumChecker().
void ns3::EnumChecker::AddDefault | ( | int | value, |
std::string | name | ||
) |
Add a default value.
[in] | value | The value. |
[in] | name | Then enum symbol name. |
Definition at line 104 of file enum.cc.
References m_valueSet, and NS_LOG_FUNCTION.
Referenced by ns3::MakeEnumChecker().
|
virtual |
[in] | value | A pointer to the value to check |
Implements ns3::AttributeChecker.
Definition at line 116 of file enum.cc.
References ns3::EnumValue::Get(), m_valueSet, and NS_LOG_FUNCTION.
|
virtual |
Copy the source to the destination.
[in] | source | Source AttributeValue |
[out] | destination | Destination AttributeValue |
Implements ns3::AttributeChecker.
Definition at line 169 of file enum.cc.
References NS_LOG_FUNCTION.
|
virtual |
This method is typically used to create a temporary variable prior to calling Attribute::DeserializeFromString.
Implements ns3::AttributeChecker.
Definition at line 162 of file enum.cc.
References NS_LOG_FUNCTION.
|
virtual |
Implements ns3::AttributeChecker.
Definition at line 146 of file enum.cc.
References m_valueSet, and NS_LOG_FUNCTION.
|
virtual |
A typical return value here is FooValue where Foo is the name of the type being wrapped.
Implements ns3::AttributeChecker.
Definition at line 134 of file enum.cc.
References NS_LOG_FUNCTION.
|
virtual |
If this method returns false, the return value of the GetUnderlyingTypeInformation method cannot be relied upon.
Implements ns3::AttributeChecker.
Definition at line 140 of file enum.cc.
References NS_LOG_FUNCTION.
|
private |
The stored Enum values and symbol names.
Definition at line 115 of file enum.h.
Referenced by Add(), AddDefault(), Check(), ns3::EnumValue::DeserializeFromString(), GetUnderlyingTypeInformation(), and ns3::EnumValue::SerializeToString().