A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::SpectrumPhy Class Reference

#include <spectrum-phy.h>

+ Inheritance diagram for ns3::SpectrumPhy:
+ Collaboration diagram for ns3::SpectrumPhy:

Public Member Functions

 SpectrumPhy ()
virtual ~SpectrumPhy ()
virtual Ptr< NetDeviceGetDevice ()=0
virtual Ptr< MobilityModelGetMobility ()=0
virtual Ptr< AntennaModelGetRxAntenna ()=0
virtual Ptr< const SpectrumModelGetRxSpectrumModel () const =0
virtual void SetChannel (Ptr< SpectrumChannel > c)=0
virtual void SetDevice (Ptr< NetDevice > d)=0
virtual void SetMobility (Ptr< MobilityModel > m)=0
virtual void StartRx (Ptr< SpectrumSignalParameters > params)=0
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

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

Private Member Functions

 SpectrumPhy (SpectrumPhy const &)
SpectrumPhyoperator= (SpectrumPhy const &)

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

Abstract base class for Spectrum-aware PHY layers

Definition at line 45 of file spectrum-phy.h.

Constructor & Destructor Documentation

ns3::SpectrumPhy::SpectrumPhy ( )

Definition at line 45 of file spectrum-phy.cc.

References NS_LOG_FUNCTION.

ns3::SpectrumPhy::~SpectrumPhy ( )
virtual

Definition at line 50 of file spectrum-phy.cc.

References NS_LOG_FUNCTION.

ns3::SpectrumPhy::SpectrumPhy ( SpectrumPhy const &  )
private

Member Function Documentation

virtual Ptr<NetDevice> ns3::SpectrumPhy::GetDevice ( )
pure virtual

get the associated NetDevice instance

Returns
a Ptr to the associated NetDevice instance

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by DownlinkGlobalPathlossDatabase::UpdatePathloss(), and UplinkGlobalPathlossDatabase::UpdatePathloss().

+ Here is the caller graph for this function:

virtual Ptr<MobilityModel> ns3::SpectrumPhy::GetMobility ( )
pure virtual

get the associated MobilityModel instance

Returns
a Ptr to the associated MobilityModel instance

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by GlobalPathlossDatabase::UpdatePathloss().

+ Here is the caller graph for this function:

virtual Ptr<AntennaModel> ns3::SpectrumPhy::GetRxAntenna ( )
pure virtual

get the AntennaModel used by the NetDevice for reception

Returns
a Ptr to the AntennaModel used by the NetDevice for reception

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

virtual Ptr<const SpectrumModel> ns3::SpectrumPhy::GetRxSpectrumModel ( ) const
pure virtual
Returns
returns the SpectrumModel that this SpectrumPhy expects to be used for all SpectrumValues that are passed to StartRx. If 0 is returned, it means that any model will be accepted.

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by ns3::MultiModelSpectrumChannel::AddRx().

+ Here is the caller graph for this function:

TypeId ns3::SpectrumPhy::GetTypeId ( void  )
static

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

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Object.

Reimplemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Definition at line 37 of file spectrum-phy.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

SpectrumPhy& ns3::SpectrumPhy::operator= ( SpectrumPhy const &  )
private
virtual void ns3::SpectrumPhy::SetChannel ( Ptr< SpectrumChannel c)
pure virtual

Set the channel attached to this device.

Parameters
cthe channel

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by ns3::SpectrumPhyHelper::Create().

+ Here is the caller graph for this function:

virtual void ns3::SpectrumPhy::SetDevice ( Ptr< NetDevice d)
pure virtual

set the associated NetDevice instance

Parameters
dthe NetDevice instance

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by ns3::SpectrumPhyHelper::Create().

+ Here is the caller graph for this function:

virtual void ns3::SpectrumPhy::SetMobility ( Ptr< MobilityModel m)
pure virtual

Set the mobility model associated with this device.

Parameters
mthe mobility model

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by ns3::SpectrumPhyHelper::Create().

+ Here is the caller graph for this function:

virtual void ns3::SpectrumPhy::StartRx ( Ptr< SpectrumSignalParameters params)
pure virtual

Notify the SpectrumPhy instance of an incoming signal

Parameters
paramsthe parameters of the signals being received

Implemented in ns3::LteSpectrumPhy, ns3::HalfDuplexIdealPhy, ns3::RemSpectrumPhy, ns3::WaveformGenerator, and ns3::SpectrumAnalyzer.

Referenced by ns3::SingleModelSpectrumChannel::StartRx(), and ns3::MultiModelSpectrumChannel::StartRx().

+ Here is the caller graph for this function:


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