Public Member Functions | Static Public Member Functions | Private Attributes

ns3::PointToPointChannel Class Reference

Simple Point To Point Channel. More...

#include <point-to-point-channel.h>

Inheritance diagram for ns3::PointToPointChannel:
Inheritance graph
[legend]
Collaboration diagram for ns3::PointToPointChannel:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 PointToPointChannel ()
 Create a PointToPointChannel.
void Attach (Ptr< PointToPointNetDevice > device)
 Attach a given netdevice to this channel.
bool TransmitStart (Ptr< Packet > p, Ptr< PointToPointNetDevice > src, Time txTime)
 Transmit a packet over this channel.
virtual uint32_t GetNDevices (void) const
 Get number of devices on this channel.
virtual Ptr< NetDeviceGetDevice (uint32_t i) const

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::PointToPointChannel.

Private Attributes

TracedCallback< Ptr< const
Packet >, Ptr< NetDevice >
, Ptr< NetDevice >, Time, Time
m_txrxPointToPoint

Detailed Description

Simple Point To Point Channel.

This class represents a very simple point to point channel. Think full duplex RS-232 or RS-422 with null modem and no handshaking. There is no multi-drop capability on this channel -- there can be a maximum of two point-to-point net devices connected.

There are two "wires" in the channel. The first device connected gets the [0] wire to transmit on. The second device gets the [1] wire. There is a state (IDLE, TRANSMITTING) associated with each wire.


Constructor & Destructor Documentation

ns3::PointToPointChannel::PointToPointChannel (  ) 

Create a PointToPointChannel.

By default, you get a channel that has zero transmission delay.


Member Function Documentation

void ns3::PointToPointChannel::Attach ( Ptr< PointToPointNetDevice device  ) 

Attach a given netdevice to this channel.

Parameters:
device pointer to the netdevice to attach to the channel
virtual Ptr<NetDevice> ns3::PointToPointChannel::GetDevice ( uint32_t  i  )  const [virtual]
Parameters:
i index of NetDevice to retrieve
Returns:
one of the NetDevices connected to this channel.

This method must be implemented by subclasses.

Implements ns3::Channel.

virtual uint32_t ns3::PointToPointChannel::GetNDevices ( void   )  const [virtual]

Get number of devices on this channel.

Returns:
number of devices on this channel

Implements ns3::Channel.

static TypeId ns3::PointToPointChannel::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::PointToPointChannel.

Attributes defined for this type:

  • Delay: Transmission delay through the channel
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: 0ns
    • Flags: construct write read

Attributes defined in parent class ns3::Channel:

TraceSources defined for this type:

  • TxRxPointToPoint: Trace source indicating transmission of packet from the PointToPointChannel, used by the Animation interface.

Reimplemented from ns3::Channel.

bool ns3::PointToPointChannel::TransmitStart ( Ptr< Packet p,
Ptr< PointToPointNetDevice src,
Time  txTime 
)

Transmit a packet over this channel.

Parameters:
p Packet to transmit
src Source PointToPointNetDevice
txTime Transmit time to apply
Returns:
true if successful (currently always true)

Member Data Documentation

The trace source for the packet transmission animation events that the device can fire. Arguments to the callback are the packet, transmitting net device, receiving net device, transmittion time and packet receipt time.

See also:
class CallBackTraceSource

The documentation for this class was generated from the following files: