The propagation loss is fixed for each pair of nodes and doesn't depend on their actual positions. More...
#include <propagation-loss-model.h>
Public Member Functions | |
MatrixPropagationLossModel () | |
virtual | ~MatrixPropagationLossModel () |
void | SetDefaultLoss (double) |
Set default loss (in dB, positive) to be used, infinity if not set. More... | |
void | SetLoss (Ptr< MobilityModel > a, Ptr< MobilityModel > b, double loss, bool symmetric=true) |
Set loss (in dB, positive) between pair of ns-3 objects (typically, nodes). More... | |
![]() | |
PropagationLossModel () | |
virtual | ~PropagationLossModel () |
int64_t | AssignStreams (int64_t stream) |
If this loss model uses objects of type RandomVariableStream, set the stream numbers to the integers starting with the offset 'stream'. More... | |
double | CalcRxPower (double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const |
Ptr< PropagationLossModel > | GetNext () |
Gets the next PropagationLossModel in the chain of loss models that act on the signal. More... | |
void | SetNext (Ptr< PropagationLossModel > next) |
Enables a chain of loss models to act on the signal. More... | |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
Run the DoDispose methods of this object and all the objects aggregated to it. More... | |
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 | Initialize (void) |
This method calls the virtual DoInitialize method on all the objects aggregated to this object. More... | |
![]() | |
SimpleRefCount () | |
Constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
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) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static void | Cleanup (void) |
Noop. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Types | |
typedef std::pair< Ptr < MobilityModel >, Ptr < MobilityModel > > | MobilityPair |
Private Member Functions | |
virtual int64_t | DoAssignStreams (int64_t stream) |
Subclasses must implement this; those not using random variables can return zero. More... | |
virtual double | DoCalcRxPower (double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const |
Private Attributes | |
double | m_default |
default loss More... | |
std::map< MobilityPair, double > | m_loss |
Fixed loss between pair of nodes. More... | |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
This method is called by Object::Dispose or by the object's destructor, whichever comes first. More... | |
virtual void | DoInitialize (void) |
This method is called only once by Object::Initialize. More... | |
virtual void | NotifyNewAggregate (void) |
This method is invoked whenever two sets of objects are aggregated together. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
The propagation loss is fixed for each pair of nodes and doesn't depend on their actual positions.
This is supposed to be used by synthetic tests. Note that by default propagation loss is assumed to be symmetric.
ns3::MatrixPropagationLossModel is accessible through the following paths with Config::Set and Config::Connect:
No TraceSources are defined for this type.
Definition at line 545 of file propagation-loss-model.h.
|
private |
Definition at line 575 of file propagation-loss-model.h.
ns3::MatrixPropagationLossModel::MatrixPropagationLossModel | ( | ) |
Definition at line 826 of file propagation-loss-model.cc.
|
virtual |
Definition at line 831 of file propagation-loss-model.cc.
|
privatevirtual |
Subclasses must implement this; those not using random variables can return zero.
Implements ns3::PropagationLossModel.
Definition at line 882 of file propagation-loss-model.cc.
|
privatevirtual |
Implements ns3::PropagationLossModel.
Definition at line 865 of file propagation-loss-model.cc.
|
static |
Definition at line 813 of file propagation-loss-model.cc.
References m_default, and ns3::TypeId::SetParent().
void ns3::MatrixPropagationLossModel::SetDefaultLoss | ( | double | loss | ) |
Set default loss (in dB, positive) to be used, infinity if not set.
Definition at line 836 of file propagation-loss-model.cc.
References m_default.
Referenced by MatrixPropagationLossModelTestCase::DoRun(), and experiment().
void ns3::MatrixPropagationLossModel::SetLoss | ( | Ptr< MobilityModel > | a, |
Ptr< MobilityModel > | b, | ||
double | loss, | ||
bool | symmetric = true |
||
) |
Set loss (in dB, positive) between pair of ns-3 objects (typically, nodes).
a | ma Source mobility model |
b | mb Destination mobility model |
loss | a -> b path loss, positive in dB |
symmetric | If true (default), both a->b and b->a paths will be affected |
Definition at line 842 of file propagation-loss-model.cc.
References m_loss, and NS_ASSERT.
Referenced by MatrixPropagationLossModelTestCase::DoRun(), experiment(), and main().
|
private |
default loss
Definition at line 573 of file propagation-loss-model.h.
Referenced by DoCalcRxPower(), GetTypeId(), and SetDefaultLoss().
|
private |
Fixed loss between pair of nodes.
Definition at line 577 of file propagation-loss-model.h.
Referenced by DoCalcRxPower(), and SetLoss().