22 #include "ns3/command-line.h"
24 #include "ns3/config.h"
25 #include "ns3/uinteger.h"
26 #include "ns3/string.h"
27 #include "ns3/pointer.h"
28 #include "ns3/simulator.h"
31 #include "ns3/queue.h"
32 #include "ns3/drop-tail-queue.h"
33 #include "ns3/point-to-point-net-device.h"
46 main (
int argc,
char *argv[])
75 cmd.AddValue (
"maxSize",
"ns3::DropTailQueue<Packet>::MaxSize");
76 cmd.Parse (argc, argv);
106 net0->GetAttribute (
"TxQueue", ptr);
127 txQueue->GetAttribute (
"MaxSize", limit);
134 txQueue->SetAttribute (
"MaxSize",
StringValue (
"60p"));
135 txQueue->GetAttribute (
"MaxSize", limit);
146 txQueue->GetAttribute (
"MaxSize", limit);
147 NS_LOG_INFO (
"4. txQueue limit changed through namespace: " <<
154 txQueue->GetAttribute (
"MaxSize", limit);
155 NS_LOG_INFO (
"5. txQueue limit changed through wildcarded namespace: " <<
Parse command-line arguments.
uint32_t AddDevice(Ptr< NetDevice > device)
Associate a NetDevice to this node.
void GetAttribute(std::string name, AttributeValue &value) const
Get the value of an attribute, raising fatal errors if unsuccessful.
Hold objects of type Ptr<T>.
Class for representing queue sizes.
AttributeValue implementation for QueueSize.
QueueSize Get(void) const
static void Destroy(void)
Execute the events scheduled with ScheduleDestroy().
Hold variables of type string.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
void SetDefault(std::string name, const AttributeValue &value)
void Set(std::string path, const AttributeValue &value)
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_INFO(msg)
Use NS_LOG to output a message of level LOG_INFO.
@ PACKETS
Use number of packets for queue size.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
@ LOG_LEVEL_INFO
LOG_INFO and above.
void LogComponentEnable(char const *name, enum LogLevel level)
Enable the logging output associated with that log component.