22 #include "ns3/simulator.h" 
   24 #include "ns3/boolean.h" 
   25 #include "ns3/uinteger.h" 
   26 #include "ns3/pointer.h" 
   27 #include "ns3/channel.h" 
   40   static TypeId tid = 
TypeId (
"ns3::NonCommunicatingNetDevice")
 
   42     .SetGroupName (
"Spectrum")
 
   44     .AddAttribute (
"Phy", 
"The PHY layer attached to this device.",
 
   48                    MakePointerChecker<Object> ())
 
virtual void SetIfIndex(const uint32_t index)
 
virtual bool IsBroadcast(void) const 
 
virtual Address GetBroadcast(void) const 
 
virtual bool SendFrom(Ptr< Packet > packet, const Address &source, const Address &dest, uint16_t protocolNumber)
 
Ptr< Object > GetPhy() const 
 
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
 
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system. 
 
virtual bool NeedsArp(void) const 
 
uint32_t m_ifIndex
Interface index. 
 
void SetChannel(Ptr< Channel > c)
This class doesn't talk directly with the underlying channel (a dedicated PHY class is expected to do...
 
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name. 
 
void SetPhy(Ptr< Object > phy)
Set the Phy object which is attached to this device. 
 
static TypeId GetTypeId(void)
Get the type ID. 
 
virtual void DoDispose(void)
Destructor implementation. 
 
virtual void SetAddress(Address address)
Set the address of this interface. 
 
This class implements a device which does not communicate, in the sense that it does not interact wit...
 
a polymophic address class 
 
virtual Address GetMulticast(Ipv4Address addr) const 
Make and return a MAC multicast address using the provided multicast group. 
 
Ptr< const AttributeAccessor > MakePointerAccessor(T1 a1)
Create an AttributeAccessor for a class data member, or a lone class get functor or set method...
 
virtual void DoDispose(void)
Destructor implementation. 
 
virtual bool IsLinkUp(void) const 
 
virtual bool IsBridge(void) const 
Return true if the net device is acting as a bridge. 
 
virtual void SetPromiscReceiveCallback(PromiscReceiveCallback cb)
 
virtual void AddLinkChangeCallback(Callback< void > callback)
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
Hold objects of type Ptr. 
 
Ptr< Object > m_phy
Phy object. 
 
virtual Address GetAddress(void) const 
 
NonCommunicatingNetDevice()
 
virtual bool SupportsSendFrom(void) const 
 
Ptr< Channel > m_channel
Channel used by the NetDevice. 
 
Describes an IPv6 address. 
 
Ipv4 addresses are stored in host order in this class. 
 
virtual ~NonCommunicatingNetDevice()
 
virtual void SetReceiveCallback(NetDevice::ReceiveCallback cb)
 
Network layer to device interface. 
 
virtual bool SetMtu(const uint16_t mtu)
 
Ptr< Node > m_node
node this NetDevice is associated to 
 
virtual bool IsPointToPoint(void) const 
Return true if the net device is on a point-to-point link. 
 
virtual Ptr< Node > GetNode(void) const 
 
virtual uint32_t GetIfIndex(void) const 
 
virtual uint16_t GetMtu(void) const 
 
a unique identifier for an interface. 
 
TypeId SetParent(TypeId tid)
Set the parent TypeId. 
 
virtual bool IsMulticast(void) const 
 
virtual bool Send(Ptr< Packet > packet, const Address &dest, uint16_t protocolNumber)
 
virtual void SetNode(Ptr< Node > node)
 
virtual Ptr< Channel > GetChannel(void) const