Every class exported by the ns3 library is enclosed in the ns3 namespace. More...
Namespaces | |
namespace | Config |
Configuration of simulation parameters and tracing. | |
Classes | |
class | OnOffApplication |
Generate traffic to a single destination according to an OnOff pattern. More... | |
class | PacketSink |
Receive and consume traffic generated to an IP address and port. More... | |
class | UdpEchoClient |
A Udp Echo client. More... | |
class | UdpEchoServer |
A Udp Echo server. More... | |
class | Buffer |
automatically resized byte buffer More... | |
class | Chunk |
abstract base class for ns3::Header and ns3::Trailer More... | |
class | DataRate |
Class for representing data rates. More... | |
class | ErrorModel |
General error model that can be used to corrupt packets. More... | |
class | RateErrorModel |
Determine which packets are errored corresponding to an underlying distribution, rate, and unit. More... | |
class | ListErrorModel |
Provide a list of Packet uids to corrupt. More... | |
class | Header |
Protocol header serialization and deserialization. More... | |
class | TagIterator |
Iterator over the set of tags in a packet. More... | |
class | Packet |
network packets More... | |
class | PcapWriter |
Pcap output for Packet logger. More... | |
class | TagBuffer |
read and write tag data More... | |
class | TagList |
keep track of the tags stored in a packet. More... | |
class | Tag |
tag a set of bytes in a packet More... | |
class | Trailer |
Protocol trailer serialization and deserialization. More... | |
class | ConfigStore |
Store and load simulation attribute configuration. More... | |
class | DelayJitterEstimation |
quick and dirty delay and jitter estimation More... | |
class | EventGarbageCollector |
An object that tracks scheduled events and automatically cancels them when it is destroyed. It is useful in situations where multiple instances of the same type of event can simultaneously be scheduled, and when the events should be limited to the lifetime of a container object. More... | |
class | GnuplotDataset |
store a dataset to be used by ns3::Gnuplot More... | |
class | Gnuplot |
a simple class to generate gnuplot-ready plotting commands from a set of datasets. More... | |
class | GtkConfigStore |
A class that provides a GTK-based front end to ns3::ConfigStore. More... | |
class | TimeMinMaxAvgTotalCalculator |
class | AttributeList |
a container of attributes to be used during object's construction and in ns3::Object::Set. More... | |
class | AttributeValue |
Hold a value for an Attribute. More... | |
class | AttributeAccessor |
allow setting and getting the value of an attribute. More... | |
class | AttributeChecker |
Represent the type of an attribute. More... | |
class | EmptyAttributeValue |
A class for an empty attribute value. More... | |
class | BooleanValue |
Hold a bool native type. More... | |
class | Callback |
Callback template class. More... | |
class | CommandLine |
parse command-line argumentsInstances of this class can be used to parse command-line arguments: users can register new arguments with CommandLine::AddValue but the most important functionality provided by this class is that it can be used to set the 'initial value' of every attribute in the system with the --TypeIdNameAttributeName=value syntax and it can be used to set the value of every GlobalValue in the system with the --GlobalValueName=value syntax. More... | |
class | DoubleValue |
Hold an floating point type. More... | |
class | empty |
make Callback use a separate empty type More... | |
class | EnumValue |
hold variables of type 'enum' More... | |
class | GlobalValue |
hold a so-called 'global value'. More... | |
struct | IntToType |
class | IntegerValue |
Hold a signed integer type. More... | |
class | ObjectBase |
implement the ns-3 type and attribute system More... | |
class | ObjectFactory |
instantiate subclasses of ns3::Object. More... | |
class | ObjectVectorValue |
contain a vector of ns3::Object pointers. More... | |
class | Object |
a base class which provides memory management and object aggregation More... | |
class | PointerValue |
hold objects of type Ptr<T> More... | |
class | Ptr |
smart pointer class similar to boost::intrusive_ptr More... | |
class | RandomVariable |
The basic RNG for NS-3.Note: The underlying random number generation method used by NS-3 is the RngStream code by Pierre L'Ecuyer at the University of Montreal. More... | |
class | UniformVariable |
The uniform distribution RNG for NS-3.This class supports the creation of objects that return random numbers from a fixed uniform distribution. It also supports the generation of single random numbers from various uniform distributions. More... | |
class | ConstantVariable |
A random variable that returns a constantClass ConstantVariable defines a random number generator that returns the same value every sample. More... | |
class | SequentialVariable |
Return a sequential list of valuesClass SequentialVariable defines a random number generator that returns a sequential sequence. The sequence monotonically increases for a period, then wraps around to the low value and begins monotonicaly increasing again. More... | |
class | ExponentialVariable |
Exponentially Distributed random varThis class supports the creation of objects that return random numbers from a fixed exponential distribution. It also supports the generation of single random numbers from various exponential distributions. More... | |
class | ParetoVariable |
ParetoVariable distributed random varThis class supports the creation of objects that return random numbers from a fixed pareto distribution. It also supports the generation of single random numbers from various pareto distributions. More... | |
class | WeibullVariable |
WeibullVariable distributed random varThis class supports the creation of objects that return random numbers from a fixed weibull distribution. It also supports the generation of single random numbers from various weibull distributions. More... | |
class | NormalVariable |
Class NormalVariable defines a random variable with a normal (Gaussian) distribution.This class supports the creation of objects that return random numbers from a fixed normal distribution. It also supports the generation of single random numbers from various normal distributions. More... | |
class | EmpiricalVariable |
EmpiricalVariable distribution random varDefines a random variable that has a specified, empirical distribution. The distribution is specified by a series of calls to the CDF member function, specifying a value and the probability that the function value is less than the specified value. When values are requested, a uniform random variable is used to select a probabililty, and the return value is interpreted linerarly between the two appropriate points in the CDF. The method is known as inverse transform sampling: (http://en.wikipedia.org/wiki/Inverse_transform_sampling). More... | |
class | IntEmpiricalVariable |
Integer-based empirical distributionDefines an empirical distribution where all values are integers. Indentical to EmpiricalVariable, except that the inverse transform sampling interpolation described in the EmpiricalVariable documentation is modified to only return integers. More... | |
class | DeterministicVariable |
a non-random variableDefines a random variable that has a specified, predetermined sequence. This would be useful when trying to force the RNG to return a known sequence, perhaps to compare NS-3 to some other simulator More... | |
class | LogNormalVariable |
Log-normal Distributed random varLogNormalVariable defines a random variable with log-normal distribution. If one takes the natural logarithm of random variable following the log-normal distribution, the obtained values follow a normal distribution. This class supports the creation of objects that return random numbers from a fixed lognormal distribution. It also supports the generation of single random numbers from various lognormal distributions. More... | |
class | TriangularVariable |
Triangularly Distributed random varThis distribution is a triangular distribution. The probablility density is in the shape of a triangle. More... | |
class | RandomVariableValue |
hold objects of type ns3::RandomVariable More... | |
class | RefCountBase |
a base class that provides implementations of reference counting operations. More... | |
class | RngStream |
Combined Multiple-Recursive Generator MRG32k3a. More... | |
class | Singleton |
a template singleton More... | |
class | StringValue |
hold variables of type string More... | |
class | SystemCondition |
A class which provides a relatively platform-independent conditional-wait thread synchronization primitive. More... | |
class | SystemMutex |
A class which provides a relatively platform-independent Mutual Exclusion thread synchronization primitive. More... | |
class | CriticalSection |
A class which provides a simple way to implement a Critical Section. More... | |
class | SystemThread |
A class which provides a relatively platform-independent thread primitive. More... | |
class | SystemWallClockMs |
measure wall-clock time in milliseconds More... | |
class | Test |
base class for new regressions tests More... | |
class | TestManager |
gather and run all regression tests More... | |
class | TraceSourceAccessor |
control access to objects' trace sources More... | |
class | TracedCallback |
forward calls to a chain of CallbackAn ns3::TracedCallback has almost exactly the same API as a normal ns3::Callback but instead of forwarding calls to a single function (as an ns3::Callback normally does), it forwards calls to a chain of ns3::Callback. TracedCallback::Connect adds a ns3::Callback at the end of the chain of callbacks. TracedCallback::Disconnect removes a ns3::Callback from the chain of callbacks. More... | |
class | TracedValue |
trace classes with value semantics More... | |
class | TypeId |
a unique identifier for an interface. More... | |
class | UintegerValue |
Hold an unsigned integer type. More... | |
class | BridgeChannel |
Virtual channel implementation for bridges (BridgeNetDevice). More... | |
class | BridgeNetDevice |
a virtual net device that bridges multiple LAN segments More... | |
class | Backoff |
The backoff class is used for calculating backoff times when many net devices can write to the same channel. More... | |
class | CsmaDeviceRec |
CsmaNetDevice Record. More... | |
class | CsmaChannel |
Csma Channel. More... | |
class | CsmaNetDevice |
A Device for a Csma Network Link. More... | |
class | PointToPointChannel |
Simple Point To Point Channel. More... | |
class | PointToPointNetDevice |
A Device for a Point to Point Network Link. More... | |
class | PppHeader |
Packet header for PPP. More... | |
class | AarfWifiManager |
AARF Rate control algorithm. More... | |
class | AdhocWifiMac |
the Adhoc state machine More... | |
class | AmrrWifiManager |
AMRR Rate control algorithm. More... | |
class | ArfWifiManager |
ARF Rate control algorithm. More... | |
class | CompositePropagationLossModel |
a Composite propagation loss model More... | |
class | ConstantRateWifiManager |
use constant rates for data and control transmissions More... | |
class | DcaTxop |
handle packet fragmentation and retransmissions. More... | |
class | DcfState |
keep track of the state needed for a single DCF function. More... | |
class | DcfManager |
Manage a set of ns3::DcfState. More... | |
class | IdealWifiManager |
Ideal rate control algorithm. More... | |
class | JakesPropagationLossModel |
a Jakes propagation loss model More... | |
class | MacLowTransmissionListener |
listen to events coming from ns3::MacLow. More... | |
class | MacLowNavListener |
listen to NAV events More... | |
class | MacLowTransmissionParameters |
control how a packet is transmitted. More... | |
class | MacLow |
handle RTS/CTS/DATA/ACK transactions. More... | |
class | NqapWifiMac |
non-QoS AP state machine More... | |
class | NqstaWifiMac |
a non-QoS STA state machine More... | |
class | OnoeWifiManager |
an implementation of rate control algorithm developed by Atsushi Onoe More... | |
class | PropagationDelayModel |
calculate a propagation delay. More... | |
class | RandomPropagationDelayModel |
the propagation delay is random More... | |
class | ConstantSpeedPropagationDelayModel |
the propagation speed is constant More... | |
class | PropagationLossModel |
Modelize the propagation loss through a transmission medium. More... | |
class | RandomPropagationLossModel |
The propagation loss is random. More... | |
class | FriisPropagationLossModel |
a Friis propagation loss model More... | |
class | LogDistancePropagationLossModel |
a log distance propagation model. More... | |
class | RandomStream |
class | RraaWifiManager |
Robust Rate Adaptation Algorithm. More... | |
class | Ssid |
a IEEE 802.11 SSID More... | |
class | WifiChannel |
A 802.11 Channel. More... | |
class | WifiMacQueue |
a 802.11e-specific queue. More... | |
class | WifiMac |
base class for all MAC-level wifi objects. More... | |
class | WifiMode |
represent a single transmission mode More... | |
class | WifiModeFactory |
create WifiMode class instances and keep track of them. More... | |
class | WifiNetDevice |
Hold together all Wifi-related objects. More... | |
class | WifiPhyListener |
receive notifications about phy events. More... | |
class | WifiPhy |
802.11 PHY layer model More... | |
class | WifiRemoteStationManager |
hold a list of per-remote-station state. More... | |
class | WifiRemoteStation |
hold per-remote-station state. More... | |
class | ApplicationContainer |
holds a vector of ns3::Application pointers More... | |
class | CsmaHelper |
build a set of CsmaNetDevice objects More... | |
class | InternetStackHelper |
aggregate ip/tcp/udp functionality to existing Nodes. More... | |
class | Ipv4AddressHelper |
A helper class to make life easier while doing simple IPv4 address assignment in scripts. More... | |
class | Ipv4InterfaceContainer |
keep track of a set of ipv4 interfaces. More... | |
class | MobilityHelper |
assign positions and mobility models to nodes. More... | |
class | NetDeviceContainer |
holds a vector of ns3::NetDevice pointers More... | |
class | NodeContainer |
keep track of a set of node pointers. More... | |
class | Ns2MobilityHelper |
a topology object which can read ns2's movement files generated by the CMU setdest tool. More... | |
class | OlsrHelper |
Helper class that adds OLSR routing to nodes. More... | |
class | OnOffHelper |
instanciate an ns3::OnOffApplication on a set of nodes. More... | |
class | PacketSocketHelper |
Give ns3::PacketSocket powers to ns3::Node. More... | |
class | PointToPointHelper |
build a set of PointToPointNetDevice objects More... | |
class | WifiHelper |
helps to create WifiNetDevice objects More... | |
class | ArpCache |
An ARP cache. More... | |
class | ArpHeader |
The packet header for an ARP packet. More... | |
class | ArpIpv4Interface |
an Ipv4 Interface which uses ARP More... | |
class | ArpL3Protocol |
An implementation of the ARP protocol. More... | |
class | Ipv4EndPointDemux |
Demultiplexes packets to various transport layer endpoints. More... | |
class | Ipv4EndPoint |
A representation of an internet endpoint/connection. More... | |
class | Ipv4Interface |
The IPv4 representation of a network interface. More... | |
class | Ipv4L3Protocol |
Implement the Ipv4 layer. More... | |
class | Ipv4L4Protocol |
L4 Protocol abstract base class. More... | |
class | Ipv4LoopbackInterface |
An IPv4 loopback interface. More... | |
class | Ipv4StaticRouting |
Static routing protocol for IP version 4 stacks. More... | |
class | NscTcpL4Protocol |
Nsc wrapper glue, to interface with the Ipv4 protocol underneath. More... | |
class | NscTcpSocketFactoryImpl |
socket factory implementation for creating instances of NSC TCP More... | |
class | NscTcpSocketImpl |
Socket logic for the NSC TCP sockets. More... | |
class | PendingData |
class for managing I/O between applications and TCP More... | |
class | RttHistory |
Implements several variations of round trip time estimators. More... | |
class | TcpHeader |
Header for the Transmission Control Protocol. More... | |
class | TcpL4Protocol |
A layer between the sockets interface and IP. More... | |
class | TcpSocketFactoryImpl |
socket factory implementation for native ns-3 TCP More... | |
class | TcpSocketImpl |
An implementation of a stream socket using TCP. More... | |
class | UdpHeader |
Packet header for UDP packets. More... | |
class | UdpL4Protocol |
Implementation of the UDP protocol. More... | |
class | UdpSocketFactoryImpl |
Object to create UDP socket instances. More... | |
class | UdpSocketImpl |
A sockets interface to UDP. More... | |
class | HierarchicalMobilityModel |
a hierachical mobility model. More... | |
class | MobilityModel |
keep track of the current position of an object More... | |
class | PositionAllocator |
allocate a set of positions. The allocation strategy is implemented in subclasses. More... | |
class | ListPositionAllocator |
Allocate positions from a deterministic list specified by the user. More... | |
class | GridPositionAllocator |
Allocate positions on a rectangular 2d grid. More... | |
class | RandomRectanglePositionAllocator |
allocate random positions within a rectangle according to a pair of random variables. More... | |
class | RandomDiscPositionAllocator |
allocate random positions within a disc according to a pair of random variables. More... | |
class | RandomDirection2dMobilityModel |
a RandomDirection mobility model More... | |
class | RandomWalk2dMobilityModel |
a 2D random walk position model More... | |
class | RandomWaypointMobilityModel |
a random waypoint mobility model More... | |
class | Rectangle |
a 2d rectangle More... | |
class | StaticMobilityModel |
a position model for which the current position does not change once it has been set and until it is set again explicitely to a new value. More... | |
class | StaticSpeedMobilityModel |
a position model for which the current speed does not change once it has been set and until it is set again explicitely to a new value. More... | |
class | Vector |
a 3d cartesian position vector More... | |
class | Address |
a polymophic address class More... | |
class | Application |
The base class for all ns3 applications. More... | |
class | Channel |
Abstract Channel Base Class. More... | |
class | DropTailQueue |
A FIFO packet queue that drops tail-end packets on overflow. More... | |
class | EthernetHeader |
Packet header for Ethernet. More... | |
class | EthernetTrailer |
Packet trailer for Ethernet. More... | |
class | InetSocketAddress |
an Inet address class More... | |
class | Ipv4AddressGenerator |
This generator assigns addresses sequentially from a provided network address; used in topology code. More... | |
class | Ipv4Address |
Ipv4 addresses are stored in host order in this class. More... | |
class | Ipv4Mask |
a class to represent an Ipv4 address mask More... | |
class | Ipv4Header |
Packet header for IPv4. More... | |
class | Ipv4Route |
A record of an IPv4 route. More... | |
class | Ipv4MulticastRoute |
A record of an IPv4 multicast route. More... | |
class | Ipv4RoutingProtocol |
Base class for IPv4 routing protocols. More... | |
class | Ipv4 |
Access to the Ipv4 forwarding table and to the ipv4 interfaces. More... | |
class | LlcSnapHeader |
Header for the LLC/SNAP encapsulation. More... | |
class | Mac48Address |
an EUI-48 address More... | |
class | Mac64Address |
an EUI-64 address More... | |
class | NetDevice |
Network layer to device interface. More... | |
class | NodeList |
the list of simulation nodes. More... | |
class | Node |
A network Node. More... | |
class | PacketSocketAddress |
an address for a packet socket More... | |
class | PacketSocketFactory |
class | PacketSocket |
A PacketSocket is a link between an application and a net device. More... | |
class | Queue |
Abstract base class for packet Queues. More... | |
class | SimpleChannel |
A simple channel, for simple things and testing. More... | |
class | SimpleNetDevice |
simple net device for simple things and testing More... | |
class | SocketFactory |
Object to create transport layer instances that provide a socket API to applications. More... | |
class | Socket |
A low-level Socket API based loosely on the BSD Socket API.A few things to keep in mind about this type of socket:
| |
class | SocketAddressTag |
This class implements a tag that carries an address of a packet across the socket interface. More... | |
class | SocketIpTtlTag |
This class implements a tag that carries the socket-specific TTL of a packet to the IP layer. More... | |
class | TcpSocketFactory |
API to create TCP socket instances. More... | |
class | TcpSocket |
(abstract) base class of all TcpSockets More... | |
class | UdpSocketFactory |
API to create UDP socket instances. More... | |
class | UdpSocket |
(abstract) base class of all UdpSockets More... | |
class | CandidateQueue |
A Candidate Queue used in static routing. More... | |
class | SPFVertex |
Vertex used in shortest path first (SPF) computations. See RFC 2328, Section 16. More... | |
class | GlobalRouteManagerLSDB |
The Link State DataBase (LSDB) of the Global Route Manager. More... | |
class | GlobalRouteManagerImpl |
A global router implementation. More... | |
class | GlobalRouteManager |
A global global router. More... | |
class | GlobalRoutingLinkRecord |
A single link record for a link state advertisement. More... | |
class | GlobalRoutingLSA |
a Link State Advertisement (LSA) for a router, used in global routing. More... | |
class | GlobalRouter |
An interface aggregated to a node to provide global routing info. More... | |
class | EventId |
an identifier for simulation events. More... | |
class | EventLock |
Base class for locking functionality for events. More... | |
class | EventImpl |
a simulation event More... | |
class | HeapScheduler |
a binary heap event scheduler More... | |
class | ListScheduler |
a std::list event scheduler More... | |
class | MapScheduler |
a std::map event scheduler More... | |
class | TimeUnit |
keep track of time unit. More... | |
class | TimeValue |
hold objects of type ns3::Time More... | |
class | Scheduler |
Maintain the event list. More... | |
class | SimulationSingleton |
class | Simulator |
Control the scheduling of simulation events. More... | |
class | Synchronizer |
Base class used for synchronizing the simulation events to some real time "wall clock.". More... | |
class | Timer |
a simple Timer class More... | |
class | WallClockSynchronizer |
Class used for synchronizing the simulation events to a real-time "wall clock" using Posix Clock functions. More... | |
class | Watchdog |
a very simple watchdog More... | |
class | DataRateValue |
hold objects of type ns3::DataRate More... | |
class | ObjectFactoryValue |
hold objects of type ns3::ObjectFactory More... | |
class | TypeIdValue |
hold objects of type ns3::TypeId More... | |
class | SsidValue |
hold objects of type ns3::Ssid More... | |
class | WifiModeValue |
hold objects of type ns3::WifiMode More... | |
class | RectangleValue |
hold objects of type ns3::Rectangle More... | |
class | VectorValue |
hold objects of type ns3::Vector More... | |
class | AddressValue |
hold objects of type ns3::Address More... | |
class | Ipv4AddressValue |
hold objects of type ns3::Ipv4Address More... | |
class | Ipv4MaskValue |
hold objects of type ns3::Ipv4Mask More... | |
class | Mac48AddressValue |
hold objects of type ns3::Mac48Address More... | |
Typedefs | |
typedef TimeUnit< 1 > | Time |
keep track of seconds. | |
typedef TimeUnit< 0 > | Scalar |
hold scalar values | |
Enumerations | |
enum | WireState { IDLE, TRANSMITTING, PROPAGATING } |
enum | ethernet_header_t { LENGTH, VLAN, QINQ } |
Functions | |
double | operator* (const DataRate &lhs, const TimeUnit< 1 > &rhs) |
void | BreakpointFallback (void) |
fallback breakpoint function | |
template<typename T , typename OBJ , typename R > | |
Callback< R > | MakeCallback (R(T::*memPtr)(void), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 > | |
Callback< R, T1 > | MakeCallback (R(T::*mem_ptr)(T1), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 , typename T2 > | |
Callback< R, T1, T2 > | MakeCallback (R(T::*mem_ptr)(T1, T2), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 , typename T2 , typename T3 > | |
Callback< R, T1, T2, T3 > | MakeCallback (R(T::*mem_ptr)(T1, T2, T3), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 , typename T2 , typename T3 , typename T4 > | |
Callback< R, T1, T2, T3, T4 > | MakeCallback (R(T::*mem_ptr)(T1, T2, T3, T4), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
Callback< R, T1, T2, T3, T4, T5 > | MakeCallback (R(T::*mem_ptr)(T1, T2, T3, T4, T5), OBJ objPtr) |
template<typename T , typename OBJ , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
Callback< R, T1, T2, T3, T4, T5, T6 > | MakeCallback (R(T::*mem_ptr)(T1, T2, T3, T4, T5, T6), OBJ objPtr) |
template<typename R > | |
Callback< R > | MakeCallback (R(*fnPtr)()) |
template<typename R , typename T1 > | |
Callback< R, T1 > | MakeCallback (R(*fnPtr)(T1)) |
template<typename R , typename T1 , typename T2 > | |
Callback< R, T1, T2 > | MakeCallback (R(*fnPtr)(T1, T2)) |
template<typename R , typename T1 , typename T2 , typename T3 > | |
Callback< R, T1, T2, T3 > | MakeCallback (R(*fnPtr)(T1, T2, T3)) |
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 > | |
Callback< R, T1, T2, T3, T4 > | MakeCallback (R(*fnPtr)(T1, T2, T3, T4)) |
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
Callback< R, T1, T2, T3, T4, T5 > | MakeCallback (R(*fnPtr)(T1, T2, T3, T4, T5)) |
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
Callback< R, T1, T2, T3, T4, T5, T6 > | MakeCallback (R(*fnPtr)(T1, T2, T3, T4, T5, T6)) |
template<typename R > | |
Callback< R > | MakeNullCallback (void) |
void | LogComponentEnable (char const *name, enum LogLevel level) |
void | LogComponentEnableAll (enum LogLevel level) |
void | LogComponentDisable (char const *name, enum LogLevel level) |
void | LogComponentDisableAll (enum LogLevel level) |
void | LogComponentPrintList (void) |
template<typename T > | |
Ptr< T > | CopyObject (Ptr< const T > object) |
template<typename T > | |
Ptr< T > | CreateObject (const AttributeList &attributes) |
template<typename T > | |
Ptr< T > | CreateObject (std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue(), std::string n8="", const AttributeValue &v8=EmptyAttributeValue(), std::string n9="", const AttributeValue &v9=EmptyAttributeValue()) |
template<typename T > | |
Ptr< const TraceSourceAccessor > | MakeTraceSourceAccessor (T a) |
double | CalculateDistance (const Vector &a, const Vector &b) |
Time | Seconds (double seconds) |
create ns3::Time instances in units of seconds. | |
Time | MilliSeconds (uint64_t ms) |
create ns3::Time instances in units of milliseconds. | |
Time | MicroSeconds (uint64_t us) |
create ns3::Time instances in units of microseconds. | |
Time | NanoSeconds (uint64_t ns) |
create ns3::Time instances in units of nanoseconds. | |
Time | PicoSeconds (uint64_t ps) |
create ns3::Time instances in units of picoseconds. | |
Time | FemtoSeconds (uint64_t fs) |
create ns3::Time instances in units of femtoseconds. | |
Time | Now (void) |
create an ns3::Time instance which contains the current simulation time. |
Every class exported by the ns3 library is enclosed in the ns3 namespace.
typedef TimeUnit<0> ns3::Scalar |
hold scalar values
This class is used both to construct scalar values to multiply ns3::Time instances and to hold the return value of an expression which returns a scalar. For example, the following code will output on your terminal 1.5:
Scalar s0 = Scalar (1.5); Time t1 = Seconds (10.0) * s0; Time t2 = Seconds (10.0) * Scalar (2.5); Scalar s1 = Seconds (15.0) / Seconds (10.0); std::cout << s1.GetDouble () << std::endl;
The Scalar class has the following additional methods not available in the generic TimeUnit template:
double GetDouble (void) const;
returns the C double contained in the Scalar instance
Scalar(double scalar);
Constructs a Scalar instance from a C double.
keep track of seconds.
This is an instance of type ns3::TimeUnit<1>: it is the return value of the ns3::Simulator::Now method and is needed for the Simulator::Schedule methods. The precision of the underlying Time unit can be changed with calls to TimeStepPrecision::Set.
Time instances can be created through any of the following functions:
Time instances can be added, substracted, multipled and divided using the standard C++ operators (if you make sure to obey the rules of the ns3::TimeUnit class template) To scale a Time instance, you can multiply it with an instance of the ns3::Scalar class. Time instances can also be manipulated through the following non-member functions:
The Time class has the following additional methods not available in the generic TimeUnit template:
double GetSeconds (void) const;
returns an approximation in seconds of the time stored in this instance.
int64_t GetMilliSeconds (void) const;
returns an approximation in milliseconds of the time stored in this instance.
int64_t GetMicroSeconds (void) const;
returns an approximation in microseconds of the time stored in this instance.
int64_t GetNanoSeconds (void) const;
returns an approximation in nanoseconds of the time stored in this instance.
int64_t GetPicoSeconds (void) const;
returns an approximation in picoseconds of the time stored in this instance.
int64_t GetFemtoSeconds (void) const;
returns an approximation in femtoseconds of the time stored in this instance.
enum ns3::WireState |
void ns3::BreakpointFallback | ( | void | ) |
fallback breakpoint function
This function is used by the NS_BREAKPOINT() macro as a fallback for when breakpoint assembly instructions are not available. It attempts to halt program execution either by a raising SIGTRAP, on unix systems, or by dereferencing a null pointer.
Normally you should not call this function directly.
double ns3::CalculateDistance | ( | const Vector & | a, | |
const Vector & | b | |||
) |
a | one point | |
b | another point |
Ptr< T > ns3::CopyObject | ( | Ptr< const T > | object | ) |
object | a pointer to the object to copy. |
This method invoke the copy constructor of the input object and returns the new instance.
Ptr< T > ns3::CreateObject | ( | const AttributeList & | attributes | ) |
attributes | a list of attributes to set on the object during construction. |
This allocates an object on the heap and initializes it with a set of attributes.
Ptr< T > ns3::CreateObject | ( | std::string | n1 = "" , |
|
const AttributeValue & | v1 = EmptyAttributeValue () , |
|||
std::string | n2 = "" , |
|||
const AttributeValue & | v2 = EmptyAttributeValue () , |
|||
std::string | n3 = "" , |
|||
const AttributeValue & | v3 = EmptyAttributeValue () , |
|||
std::string | n4 = "" , |
|||
const AttributeValue & | v4 = EmptyAttributeValue () , |
|||
std::string | n5 = "" , |
|||
const AttributeValue & | v5 = EmptyAttributeValue () , |
|||
std::string | n6 = "" , |
|||
const AttributeValue & | v6 = EmptyAttributeValue () , |
|||
std::string | n7 = "" , |
|||
const AttributeValue & | v7 = EmptyAttributeValue () , |
|||
std::string | n8 = "" , |
|||
const AttributeValue & | v8 = EmptyAttributeValue () , |
|||
std::string | n9 = "" , |
|||
const AttributeValue & | v9 = EmptyAttributeValue () | |||
) |
n1 | name of attribute | |
v1 | value of attribute | |
n2 | name of attribute | |
v2 | value of attribute | |
n3 | name of attribute | |
v3 | value of attribute | |
n4 | name of attribute | |
v4 | value of attribute | |
n5 | name of attribute | |
v5 | value of attribute | |
n6 | name of attribute | |
v6 | value of attribute | |
n7 | name of attribute | |
v7 | value of attribute | |
n8 | name of attribute | |
v8 | value of attribute | |
n9 | name of attribute | |
v9 | value of attribute |
This allocates an object on the heap and initializes it with a set of attributes.
Time ns3::FemtoSeconds | ( | uint64_t | fs | ) |
create ns3::Time instances in units of femtoseconds.
For example:
Time t = FemtoSeconds (2); Simulator::Schedule (FemtoSeconds (5), ...);
Ptr< const TraceSourceAccessor > ns3::MakeTraceSourceAccessor | ( | T | a | ) |
a | the trace source |
Create a TraceSourceAccessor which will control access to the underlying trace source. This helper template method assumes that the underlying type implements a statically-polymorphic set of Connect and Disconnect methods and creates a dynamic-polymorphic class to wrap the underlying static-polymorphic class.
Time ns3::MicroSeconds | ( | uint64_t | us | ) |
create ns3::Time instances in units of microseconds.
For example:
Time t = MicroSeconds (2); Simulator::Schedule (MicroSeconds (5), ...);
Time ns3::MilliSeconds | ( | uint64_t | ms | ) |
create ns3::Time instances in units of milliseconds.
For example:
Time t = MilliSeconds (2); Simulator::Schedule (MilliSeconds (5), ...);
Time ns3::NanoSeconds | ( | uint64_t | ns | ) |
create ns3::Time instances in units of nanoseconds.
For example:
Time t = NanoSeconds (2); Simulator::Schedule (NanoSeconds (5), ...);
Time ns3::Now | ( | void | ) |
create an ns3::Time instance which contains the current simulation time.
This is really a shortcut for the ns3::Simulator::Now method. It is typically used as shown below to schedule an event which expires at the absolute time "2 seconds":
Simulator::Schedule (Seconds (2.0) - Now (), &my_function);
double ns3::operator* | ( | const DataRate & | lhs, | |
const TimeUnit< 1 > & | rhs | |||
) |
lhs | ||
rhs |
Time ns3::PicoSeconds | ( | uint64_t | ps | ) |
create ns3::Time instances in units of picoseconds.
For example:
Time t = PicoSeconds (2); Simulator::Schedule (PicoSeconds (5), ...);
Time ns3::Seconds | ( | double | seconds | ) |
create ns3::Time instances in units of seconds.
For example:
Time t = Seconds (2.0); Simulator::Schedule (NanoSeconds (5.0), ...);