|
73 |
/** |
73 |
/** |
74 |
* \ingroup propagation |
74 |
* \ingroup propagation |
75 |
* |
75 |
* |
76 |
* \brief the propagation delay is random |
76 |
* \brief the propagation delay is random, defaulting to a U(0,1) random |
|
|
77 |
* variable. The random variable can be changed via the attribute 'Variable'. |
77 |
*/ |
78 |
*/ |
78 |
class RandomPropagationDelayModel : public PropagationDelayModel |
79 |
class RandomPropagationDelayModel : public PropagationDelayModel |
79 |
{ |
80 |
{ |
|
85 |
static TypeId GetTypeId (void); |
86 |
static TypeId GetTypeId (void); |
86 |
|
87 |
|
87 |
/** |
88 |
/** |
88 |
* Use the default parameters from PropagationDelayRandomDistribution. |
89 |
* Simply constructs the object |
89 |
*/ |
90 |
*/ |
90 |
RandomPropagationDelayModel (); |
91 |
RandomPropagationDelayModel (); |
91 |
virtual ~RandomPropagationDelayModel (); |
92 |
virtual ~RandomPropagationDelayModel (); |
|
98 |
/** |
99 |
/** |
99 |
* \ingroup propagation |
100 |
* \ingroup propagation |
100 |
* |
101 |
* |
101 |
* \brief the propagation speed is constant |
102 |
* \brief the propagation speed is constant, defaulting to the global |
|
|
103 |
* value 'SpeedOfLight' (default speed of light in a vacuum) |
102 |
*/ |
104 |
*/ |
103 |
class ConstantSpeedPropagationDelayModel : public PropagationDelayModel |
105 |
class ConstantSpeedPropagationDelayModel : public PropagationDelayModel |
104 |
{ |
106 |
{ |
|
110 |
static TypeId GetTypeId (void); |
112 |
static TypeId GetTypeId (void); |
111 |
|
113 |
|
112 |
/** |
114 |
/** |
113 |
* Use the default parameters from PropagationDelayConstantSpeed. |
115 |
* Simply constructs the object |
114 |
*/ |
116 |
*/ |
115 |
ConstantSpeedPropagationDelayModel (); |
117 |
ConstantSpeedPropagationDelayModel (); |
116 |
virtual Time GetDelay (Ptr<MobilityModel> a, Ptr<MobilityModel> b) const; |
118 |
virtual Time GetDelay (Ptr<MobilityModel> a, Ptr<MobilityModel> b) const; |
117 |
/** |
|
|
118 |
* \param speed the new speed (m/s) |
119 |
*/ |
120 |
void SetSpeed (double speed); |
121 |
/** |
122 |
* \returns the current propagation speed (m/s). |
123 |
*/ |
124 |
double GetSpeed (void) const; |
125 |
private: |
119 |
private: |
126 |
virtual int64_t DoAssignStreams (int64_t stream); |
120 |
virtual int64_t DoAssignStreams (int64_t stream); |
127 |
double m_speed; //!< speed |
|
|
128 |
}; |
121 |
}; |
129 |
|
122 |
|
130 |
} // namespace ns3 |
123 |
} // namespace ns3 |