21 #include "ns3/attribute.h" 
   22 #include "ns3/pointer.h" 
   23 #include "ns3/callback.h" 
   24 #include "ns3/global-value.h" 
   25 #include "ns3/string.h" 
   26 #include "ns3/object-ptr-container.h" 
   44       bool calledStart = 
false;
 
uint32_t GetAttributeN(void) const 
Get the number of attributes. 
 
Smart pointer class similar to boost::intrusive_ptr. 
 
The attribute can be written at construction-time. 
 
bool MustHideFromDocumentation(void) const 
Check if this TypeId should not be listed in documentation. 
 
virtual void EndVisitTypeId(void)
Just an interface that needs to be implemented. 
 
static uint32_t GetRegisteredN(void)
Get the number of registered TypeIds. 
 
static TypeId GetRegistered(uint32_t i)
Get a TypeId by index. 
 
virtual ~AttributeDefaultIterator()=0
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
std::string GetName(void) const 
Get the name. 
 
void Iterate(void)
This function will go through all the TypeIds and get only the attributes which are explicit values (...
 
virtual void DoVisitAttribute(std::string name, std::string defaultValue)
This method is just an interface and needs to be implemented. 
 
virtual void VisitAttribute(TypeId tid, std::string name, std::string defaultValue, uint32_t index)
This method can be implemented, otherwise, it will call DoVisitAttribute. 
 
struct TypeId::AttributeInformation GetAttribute(uint32_t i) const 
Get Attribute information by index. 
 
virtual void StartVisitTypeId(std::string name)
Just an interface that needs to be implemented. 
 
a unique identifier for an interface.