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 () |
Half duplex implementation of transducer object.
This class will only allow attached Phy's to receive packets if not in TX mode
void ns3::UanTransducerHd::AddPhy | ( | Ptr< UanPhy > | phy | ) | [virtual] |
phy | Add phy above this transducer (may connect > 1 Phy to a transducer) |
Implements ns3::UanTransducer.
void ns3::UanTransducerHd::Clear | ( | void | ) | [virtual] |
Clears all pointer references
Implements ns3::UanTransducer.
References ns3::EventId::Cancel(), and ns3::UanChannel::Clear().
Referenced by DoDispose().
void ns3::UanTransducerHd::DoDispose | ( | void | ) | [protected, virtual] |
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().
const UanTransducer::ArrivalList & ns3::UanTransducerHd::GetArrivalList | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
Ptr< UanChannel > ns3::UanTransducerHd::GetChannel | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
const UanTransducer::UanPhyList & ns3::UanTransducerHd::GetPhyList | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
UanTransducer::State ns3::UanTransducerHd::GetState | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
TypeId ns3::UanTransducerHd::GetTypeId | ( | void | ) | [static] |
This method returns the TypeId associated to ns3::UanTransducerHd.
This object is accessible through the following paths with Config::Set and Config::Connect:
No Attributes defined for this type.
No TraceSources defined for this type.
Reimplemented from ns3::UanTransducer.
References ns3::TypeId::SetParent().
bool ns3::UanTransducerHd::IsRx | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
bool ns3::UanTransducerHd::IsTx | ( | void | ) | const [virtual] |
Implements ns3::UanTransducer.
void ns3::UanTransducerHd::Receive | ( | Ptr< Packet > | packet, |
double | rxPowerDb, | ||
UanTxMode | txMode, | ||
UanPdp | pdp | ||
) | [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().
void ns3::UanTransducerHd::SetChannel | ( | Ptr< UanChannel > | chan | ) | [virtual] |
chan | Channel this transducer is attached to |
Implements ns3::UanTransducer.
References NS_LOG_DEBUG.
void ns3::UanTransducerHd::Transmit | ( | Ptr< UanPhy > | src, |
Ptr< Packet > | packet, | ||
double | txPowerDb, | ||
UanTxMode | txMode | ||
) | [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().