23 #ifndef RADIO_BEARER_STATS_CONNECTOR_H
24 #define RADIO_BEARER_STATS_CONNECTOR_H
27 #include <ns3/traced-callback.h>
28 #include <ns3/config.h>
29 #include <ns3/simple-ref-count.h>
37 class RadioBearerStatsCalculator;
47 void EnsureConnected ();
50 static void NotifyRandomAccessSuccessfulUe (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
51 static void NotifyConnectionSetupUe (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
52 static void NotifyConnectionReconfigurationUe (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
53 static void NotifyHandoverStartUe (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti, uint16_t targetCellId);
54 static void NotifyHandoverEndOkUe (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
56 static void NotifyConnectionReconfigurationEnb (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
57 static void NotifyHandoverStartEnb (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti, uint16_t targetCellId);
58 static void NotifyHandoverEndOkEnb (
RadioBearerStatsConnector* c, std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
62 void StoreUeManagerPath (std::string ueManagerPath, uint16_t cellId, uint16_t rnti);
63 void ConnectSrb0Traces (std::string ueRrcPath, uint64_t imsi, uint16_t cellId, uint16_t rnti);
64 void ConnectSrb1TracesUe (std::string ueRrcPath, uint64_t imsi, uint16_t cellId, uint16_t rnti);
65 void ConnectTracesUeIfFirstTime (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
66 void ConnectTracesEnbIfFirstTime (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
67 void ConnectTracesUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
68 void DisconnectTracesUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
69 void ConnectTracesEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
70 void DisconnectTracesEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
77 std::set<uint64_t> m_imsiSeenUe;
78 std::set<uint64_t> m_imsiSeenEnb;
86 std::map<CellIdRnti, std::string> m_ueManagerPathByCellIdRnti;
95 #endif // RADIO_BEARER_STATS_CONNECTOR_H
smart pointer class similar to boost::intrusive_ptr