equal
deleted
inserted
replaced
29 #include <ns3/lte-ue-cphy-sap.h> |
29 #include <ns3/lte-ue-cphy-sap.h> |
30 #include <ns3/lte-rrc-sap.h> |
30 #include <ns3/lte-rrc-sap.h> |
31 #include <ns3/traced-callback.h> |
31 #include <ns3/traced-callback.h> |
32 |
32 |
33 #include <map> |
33 #include <map> |
|
34 #include <set> |
34 |
35 |
35 namespace ns3 { |
36 namespace ns3 { |
36 |
37 |
37 class LteRlc; |
38 class LteRlc; |
38 class LteMacSapProvider; |
39 class LteMacSapProvider; |
257 void DoRecvRrcConnectionReject (LteRrcSap::RrcConnectionReject msg); |
258 void DoRecvRrcConnectionReject (LteRrcSap::RrcConnectionReject msg); |
258 |
259 |
259 |
260 |
260 // internal methods |
261 // internal methods |
261 void ApplyRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated rrcd); |
262 void ApplyRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated rrcd); |
|
263 void ApplyMeasConfig (LteRrcSap::MeasConfig mc); |
|
264 void SendMeasurementReport (uint8_t measId); |
262 void StartConnection (); |
265 void StartConnection (); |
263 void LeaveConnectedMode (); |
266 void LeaveConnectedMode (); |
264 void DisposeOldSrb1 (); |
267 void DisposeOldSrb1 (); |
265 uint8_t Bid2Drbid (uint8_t bid); |
268 uint8_t Bid2Drbid (uint8_t bid); |
266 void SwitchToState (State s); |
269 void SwitchToState (State s); |
318 |
321 |
319 bool m_connectionPending; /**< true if a connection request by upper layers is pending */ |
322 bool m_connectionPending; /**< true if a connection request by upper layers is pending */ |
320 bool m_receivedMib; /**< true if MIB was received for the current cell */ |
323 bool m_receivedMib; /**< true if MIB was received for the current cell */ |
321 bool m_receivedSib2; /**< true if SIB2 was received for the current cell */ |
324 bool m_receivedSib2; /**< true if SIB2 was received for the current cell */ |
322 |
325 |
|
326 |
|
327 /** |
|
328 * Includes the accumulated configuration of the measurements to be |
|
329 * performed by the UE, see TS 36.331 section 7.1. Also note that some |
|
330 * optional variables in the specs are omitted. |
|
331 * |
|
332 */ |
|
333 struct VarMeasConfig |
|
334 { |
|
335 std::map<uint8_t, LteRrcSap::MeasIdToAddMod> measIdList; |
|
336 std::map<uint8_t, LteRrcSap::MeasObjectToAddMod> measObjectList; |
|
337 std::map<uint8_t, LteRrcSap::ReportConfigToAddMod> reportConfigList; |
|
338 LteRrcSap::QuantityConfig quantityConfig; |
|
339 double aRsrp; |
|
340 double aRsrq; |
|
341 }; |
|
342 |
|
343 struct VarMeasReport |
|
344 { |
|
345 uint8_t measId; |
|
346 std::set<uint16_t> cellsTriggeredList; // note: only EUTRA is |
|
347 // supported |
|
348 uint32_t numberOfReportsSent; |
|
349 EventId periodicReportTimer; |
|
350 }; |
|
351 |
|
352 VarMeasConfig m_varMeasConfig; |
|
353 // measId |
|
354 std::map<uint8_t, VarMeasReport> m_varMeasReportList; |
|
355 |
|
356 struct MeasValues |
|
357 { |
|
358 double rsrp; |
|
359 double rsrq; |
|
360 Time timestamp; |
|
361 }; |
|
362 |
|
363 /////////cellId |
|
364 std::map<uint16_t, MeasValues> m_storedMeasValues; |
|
365 |
|
366 |
323 }; |
367 }; |
324 |
368 |
325 |
369 |
326 } // namespace ns3 |
370 } // namespace ns3 |
327 |
371 |