#include <attribute-iterator.h>
Public Member Functions | |
AttributeIterator () | |
virtual | ~AttributeIterator () |
void | Iterate (void) |
Protected Member Functions | |
std::string | GetCurrentPath (void) const |
Private Member Functions | |
virtual void | DoVisitAttribute (Ptr< Object > object, std::string name)=0 |
virtual void | DoStartVisitObject (Ptr< Object > object) |
virtual void | DoEndVisitObject (void) |
virtual void | DoStartVisitPointerAttribute (Ptr< Object > object, std::string name, Ptr< Object > value) |
virtual void | DoEndVisitPointerAttribute (void) |
virtual void | DoStartVisitArrayAttribute (Ptr< Object > object, std::string name, const ObjectVectorValue &vector) |
virtual void | DoEndVisitArrayAttribute (void) |
virtual void | DoStartVisitArrayItem (const ObjectVectorValue &vector, uint32_t index, Ptr< Object > item) |
virtual void | DoEndVisitArrayItem (void) |
void | DoIterate (Ptr< Object > object) |
bool | IsExamined (Ptr< const Object > object) |
std::string | GetCurrentPath (std::string attr) const |
void | VisitAttribute (Ptr< Object > object, std::string name) |
void | StartVisitObject (Ptr< Object > object) |
void | EndVisitObject (void) |
void | StartVisitPointerAttribute (Ptr< Object > object, std::string name, Ptr< Object > value) |
void | EndVisitPointerAttribute (void) |
void | StartVisitArrayAttribute (Ptr< Object > object, std::string name, const ObjectVectorValue &vector) |
void | EndVisitArrayAttribute (void) |
void | StartVisitArrayItem (const ObjectVectorValue &vector, uint32_t index, Ptr< Object > item) |
void | EndVisitArrayItem (void) |
Private Attributes | |
std::vector< Ptr< Object > > | m_examined |
std::vector< std::string > | m_currentPath |
Definition at line 13 of file attribute-iterator.h.
ns3::AttributeIterator::AttributeIterator | ( | ) |
Definition at line 15 of file attribute-iterator.cc.
ns3::AttributeIterator::~AttributeIterator | ( | ) | [virtual] |
Definition at line 18 of file attribute-iterator.cc.
void ns3::AttributeIterator::DoEndVisitArrayAttribute | ( | void | ) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 91 of file attribute-iterator.cc.
Referenced by EndVisitArrayAttribute().
void ns3::AttributeIterator::DoEndVisitArrayItem | ( | void | ) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 97 of file attribute-iterator.cc.
Referenced by EndVisitArrayItem().
void ns3::AttributeIterator::DoEndVisitObject | ( | void | ) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 79 of file attribute-iterator.cc.
Referenced by EndVisitObject().
void ns3::AttributeIterator::DoEndVisitPointerAttribute | ( | void | ) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 85 of file attribute-iterator.cc.
Referenced by EndVisitPointerAttribute().
Definition at line 166 of file attribute-iterator.cc.
References ns3::TypeId::ATTR_GET, ns3::TypeId::ATTR_SET, EndVisitArrayAttribute(), EndVisitArrayItem(), EndVisitObject(), EndVisitPointerAttribute(), ns3::TypeId::GetAttributeAccessor(), ns3::TypeId::GetAttributeChecker(), ns3::TypeId::GetAttributeFlags(), ns3::TypeId::GetAttributeN(), ns3::TypeId::GetAttributeName(), ns3::TypeId::GetName(), ns3::TypeId::GetParent(), ns3::Object::AggregateIterator::HasNext(), ns3::TypeId::HasParent(), IsExamined(), m_examined, ns3::Object::AggregateIterator::Next(), NS_LOG_DEBUG, ns3::PeekPointer(), StartVisitArrayAttribute(), StartVisitArrayItem(), StartVisitObject(), StartVisitPointerAttribute(), and VisitAttribute().
Referenced by Iterate().
void ns3::AttributeIterator::DoStartVisitArrayAttribute | ( | Ptr< Object > | object, | |
std::string | name, | |||
const ObjectVectorValue & | vector | |||
) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 88 of file attribute-iterator.cc.
Referenced by StartVisitArrayAttribute().
void ns3::AttributeIterator::DoStartVisitArrayItem | ( | const ObjectVectorValue & | vector, | |
uint32_t | index, | |||
Ptr< Object > | item | |||
) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 94 of file attribute-iterator.cc.
Referenced by StartVisitArrayItem().
Reimplemented in ns3::ModelCreator.
Definition at line 76 of file attribute-iterator.cc.
Referenced by StartVisitObject().
void ns3::AttributeIterator::DoStartVisitPointerAttribute | ( | Ptr< Object > | object, | |
std::string | name, | |||
Ptr< Object > | value | |||
) | [private, virtual] |
Reimplemented in ns3::ModelCreator.
Definition at line 82 of file attribute-iterator.cc.
Referenced by StartVisitPointerAttribute().
virtual void ns3::AttributeIterator::DoVisitAttribute | ( | Ptr< Object > | object, | |
std::string | name | |||
) | [private, pure virtual] |
Implemented in ns3::TextFileAttributeIterator, and ns3::ModelCreator.
Referenced by VisitAttribute().
void ns3::AttributeIterator::EndVisitArrayAttribute | ( | void | ) | [private] |
Definition at line 141 of file attribute-iterator.cc.
References DoEndVisitArrayAttribute(), and m_currentPath.
Referenced by DoIterate().
void ns3::AttributeIterator::EndVisitArrayItem | ( | void | ) | [private] |
Definition at line 157 of file attribute-iterator.cc.
References DoEndVisitArrayItem(), and m_currentPath.
Referenced by DoIterate().
void ns3::AttributeIterator::EndVisitObject | ( | void | ) | [private] |
Definition at line 115 of file attribute-iterator.cc.
References DoEndVisitObject(), and m_currentPath.
Referenced by DoIterate(), and Iterate().
void ns3::AttributeIterator::EndVisitPointerAttribute | ( | void | ) | [private] |
Definition at line 128 of file attribute-iterator.cc.
References DoEndVisitPointerAttribute(), and m_currentPath.
Referenced by DoIterate().
std::string ns3::AttributeIterator::GetCurrentPath | ( | std::string | attr | ) | const [private] |
Definition at line 50 of file attribute-iterator.cc.
References m_currentPath.
std::string ns3::AttributeIterator::GetCurrentPath | ( | void | ) | const [protected] |
Definition at line 65 of file attribute-iterator.cc.
References m_currentPath.
Referenced by ns3::TextFileAttributeIterator::DoVisitAttribute().
Definition at line 36 of file attribute-iterator.cc.
References m_examined.
Referenced by DoIterate().
void ns3::AttributeIterator::Iterate | ( | void | ) |
Definition at line 22 of file attribute-iterator.cc.
References DoIterate(), EndVisitObject(), ns3::Config::GetRootNamespaceObject(), ns3::Config::GetRootNamespaceObjectN(), m_currentPath, m_examined, NS_ASSERT, and StartVisitObject().
Referenced by ns3::ModelCreator::Add(), and ns3::TextFileAttributeIterator::Save().
void ns3::AttributeIterator::StartVisitArrayAttribute | ( | Ptr< Object > | object, | |
std::string | name, | |||
const ObjectVectorValue & | vector | |||
) | [private] |
Definition at line 135 of file attribute-iterator.cc.
References DoStartVisitArrayAttribute(), and m_currentPath.
Referenced by DoIterate().
void ns3::AttributeIterator::StartVisitArrayItem | ( | const ObjectVectorValue & | vector, | |
uint32_t | index, | |||
Ptr< Object > | item | |||
) | [private] |
Definition at line 148 of file attribute-iterator.cc.
References DoStartVisitArrayItem(), and m_currentPath.
Referenced by DoIterate().
Definition at line 109 of file attribute-iterator.cc.
References DoStartVisitObject(), and m_currentPath.
Referenced by DoIterate(), and Iterate().
void ns3::AttributeIterator::StartVisitPointerAttribute | ( | Ptr< Object > | object, | |
std::string | name, | |||
Ptr< Object > | value | |||
) | [private] |
Definition at line 121 of file attribute-iterator.cc.
References DoStartVisitPointerAttribute(), and m_currentPath.
Referenced by DoIterate().
Definition at line 101 of file attribute-iterator.cc.
References DoVisitAttribute(), and m_currentPath.
Referenced by DoIterate().
std::vector<std::string> ns3::AttributeIterator::m_currentPath [private] |
Definition at line 49 of file attribute-iterator.h.
Referenced by EndVisitArrayAttribute(), EndVisitArrayItem(), EndVisitObject(), EndVisitPointerAttribute(), GetCurrentPath(), Iterate(), StartVisitArrayAttribute(), StartVisitArrayItem(), StartVisitObject(), StartVisitPointerAttribute(), and VisitAttribute().
std::vector<Ptr<Object> > ns3::AttributeIterator::m_examined [private] |
Definition at line 48 of file attribute-iterator.h.
Referenced by DoIterate(), IsExamined(), and Iterate().