22 #ifndef MULTI_MODEL_SPECTRUM_CHANNEL_H 
   23 #define MULTI_MODEL_SPECTRUM_CHANNEL_H 
   25 #include <ns3/spectrum-value.h> 
   26 #include <ns3/spectrum-converter.h> 
   27 #include <ns3/spectrum-channel.h> 
   28 #include <ns3/spectrum-propagation-loss-model.h> 
   29 #include <ns3/propagation-delay-model.h> 
Ptr< SpectrumPropagationLossModel > m_spectrumPropagationLoss
frequency-dependent propagation loss model to be used with this channel 
 
std::map< SpectrumModelUid_t, RxSpectrumModelInfo > RxSpectrumModelInfoMap_t
 
std::set< Ptr< SpectrumPhy > > m_rxPhySet
 
std::map< SpectrumModelUid_t, SpectrumConverter > SpectrumConverterMap_t
 
Forward calls to a chain of Callback. 
 
virtual void AddPropagationLossModel(Ptr< PropagationLossModel > loss)
set the single-frequency propagation loss model to be used 
 
RxSpectrumModelInfoMap_t m_rxSpectrumModelInfoMap
data structure holding, for each RX spectrum model, all the corresponding SpectrumPhy instances...
 
This SpectrumChannel implementation can handle the presence of SpectrumPhy instances which can use di...
 
virtual Ptr< SpectrumPropagationLossModel > GetSpectrumPropagationLossModel(void)
 
Ptr< const SpectrumModel > m_rxSpectrumModel
 
Ptr< PropagationDelayModel > m_propagationDelay
propagation delay model to be used with this channel 
 
Ptr< PropagationLossModel > m_propagationLoss
single-frequency propagation loss model to be used with this channel 
 
Ptr< const SpectrumModel > m_txSpectrumModel
 
virtual uint32_t GetNDevices(void) const 
 
static TypeId GetTypeId(void)
 
virtual void AddRx(Ptr< SpectrumPhy > phy)
add a SpectrumPhy to a channel, so it can receive packets 
 
TxSpectrumModelInfoMap_t::const_iterator FindAndEventuallyAddTxSpectrumModel(Ptr< const SpectrumModel > txSpectrumModel)
this method checks if m_rxSpectrumModelInfoMap contains an entry for the given TX SpectrumModel...
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
RxSpectrumModelInfo(Ptr< const SpectrumModel > rxSpectrumModel)
 
void DoDispose()
Destructor implementation. 
 
SpectrumConverterMap_t m_spectrumConverterMap
 
virtual void AddSpectrumPropagationLossModel(Ptr< SpectrumPropagationLossModel > loss)
set the frequency-dependent propagation loss model to be used 
 
TracedCallback< Ptr< SpectrumPhy >, Ptr< SpectrumPhy >, double > m_pathLossTrace
 
virtual void StartTx(Ptr< SpectrumSignalParameters > params)
Used by attached PHY instances to transmit signals on the channel. 
 
std::map< SpectrumModelUid_t, TxSpectrumModelInfo > TxSpectrumModelInfoMap_t
 
virtual Ptr< NetDevice > GetDevice(uint32_t i) const 
 
virtual void SetPropagationDelayModel(Ptr< PropagationDelayModel > delay)
set the propagation delay model to be used 
 
TxSpectrumModelInfoMap_t m_txSpectrumModelInfoMap
data structure holding, for each TX SpectrumModel, all the converters to any RX SpectrumModel, and all the corresponding SpectrumPhy instances. 
 
Defines the interface for spectrum-aware channel implementations. 
 
TxSpectrumModelInfo(Ptr< const SpectrumModel > txSpectrumModel)
 
MultiModelSpectrumChannel()
 
a unique identifier for an interface. 
 
virtual void StartRx(Ptr< SpectrumSignalParameters > params, Ptr< SpectrumPhy > receiver)
used internally to reschedule transmission after the propagation delay