ns-3
|
Half duplex implementation of transducer object. More...
#include <uan-transducer-hd.h>
Public Member Functions | |
virtual State | GetState (void) const |
virtual bool | IsRx (void) const |
virtual bool | IsTx (void) const |
virtual const ArrivalList & | GetArrivalList (void) const |
virtual void | Receive (Ptr< Packet > packet, double rxPowerDb, UanTxMode txMode, UanPdp pdp) |
Receive Notify this object that a new packet has arrived at this nodes location. | |
virtual void | Transmit (Ptr< UanPhy > src, Ptr< Packet > packet, double txPowerDb, UanTxMode txMode) |
Transmit a packet from this transducer. | |
virtual void | SetChannel (Ptr< UanChannel > chan) |
virtual Ptr< UanChannel > | GetChannel (void) const |
virtual void | AddPhy (Ptr< UanPhy >) |
virtual const UanPhyList & | GetPhyList (void) const |
virtual void | Clear (void) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
This method returns the TypeId associated to ns3::UanTransducerHd. |
Protected Member Functions | |
virtual void | DoDispose () |
Additional Inherited Members | |
![]() | |
enum | State { TX, RX } |
Transducer state (receiving or transmitting) | |
typedef std::list < UanPacketArrival > | ArrivalList |
Arrival list is a standard template library list of UanPacketArrivals objects. | |
typedef std::list< Ptr< UanPhy > > | UanPhyList |
UanPhyList is a standard template library list of UanPhy objects. |
Half duplex implementation of transducer object.
This class will only allow attached Phy's to receive packets if not in TX mode
phy | Add phy above this transducer (may connect > 1 Phy to a transducer) |
Implements ns3::UanTransducer.
|
virtual |
Clears all pointer references
Implements ns3::UanTransducer.
References ns3::EventId::Cancel(), and ns3::UanChannel::Clear().
Referenced by DoDispose().
|
protectedvirtual |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
It is safe to call GetObject from within this method.
Reimplemented from ns3::Object.
References Clear().
|
virtual |
Implements ns3::UanTransducer.
|
virtual |
Implements ns3::UanTransducer.
|
virtual |
Implements ns3::UanTransducer.
|
virtual |
Implements ns3::UanTransducer.
|
static |
This method returns the TypeId associated to ns3::UanTransducerHd.
No Attributes defined for this type.
No TraceSources defined for this type.
Reimplemented from ns3::UanTransducer.
References ns3::TypeId::SetParent().
|
virtual |
Implements ns3::UanTransducer.
|
virtual |
Implements ns3::UanTransducer.
|
virtual |
Receive Notify this object that a new packet has arrived at this nodes location.
packet | Packet arriving |
rxPowerDb | Signal power in dB of arriving packet |
txMode | Mode arriving packet is using |
pdp | PDP of arriving signal |
Implements ns3::UanTransducer.
References ns3::UanTxMode::GetDataRateBps(), ns3::Packet::GetSize(), ns3::Simulator::Now(), NS_LOG_DEBUG, ns3::Simulator::Schedule(), and ns3::Seconds().
|
virtual |
chan | Channel this transducer is attached to |
Implements ns3::UanTransducer.
References NS_LOG_DEBUG.
|
virtual |
Transmit a packet from this transducer.
src | Source PHY |
packet | Packet to transmit |
txPowerDb | Outgoing Tx power of packet |
txMode | Mode to transmit packet with. |
Implements ns3::UanTransducer.
References ns3::UanTxMode::GetDataRateBps(), ns3::Packet::GetSize(), ns3::Now(), ns3::Simulator::Now(), NS_LOG_DEBUG, ns3::Simulator::Remove(), ns3::Simulator::Schedule(), ns3::Seconds(), and ns3::UanChannel::TxPacket().