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. | |
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). | |
![]() | |
PropagationLossModel () | |
virtual | ~PropagationLossModel () |
int64_t | AssignStreams (int64_t stream) |
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. | |
void | SetNext (Ptr< PropagationLossModel > next) |
Enables a chain of loss models to act on the signal. | |
![]() | |
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 | Initialize (void) |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
![]() | |
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) |
Private Types | |
typedef std::pair< Ptr < MobilityModel >, Ptr < MobilityModel > > | MobilityPair |
Private Member Functions | |
virtual int64_t | DoAssignStreams (int64_t stream) |
virtual double | DoCalcRxPower (double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const |
Private Attributes | |
double | m_default |
default loss | |
std::map< MobilityPair, double > | m_loss |
Fixed loss between pair of nodes. |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
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 817 of file propagation-loss-model.cc.
|
virtual |
Definition at line 822 of file propagation-loss-model.cc.
|
privatevirtual |
Definition at line 873 of file propagation-loss-model.cc.
|
privatevirtual |
Definition at line 856 of file propagation-loss-model.cc.
|
static |
Reimplemented from ns3::PropagationLossModel.
Definition at line 804 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 827 of file propagation-loss-model.cc.
References m_default.
Referenced by MatrixPropagationLossModelTestCase::DoRun().
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 833 of file propagation-loss-model.cc.
References m_loss, and NS_ASSERT.
Referenced by MatrixPropagationLossModelTestCase::DoRun(), 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().