Loading...
Searching...
No Matches
satellite-stats-helper-container.h
Go to the documentation of this file.
1/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2/*
3 * Copyright (c) 2014 Magister Solutions
4 * Copyright (c) 2018 CNES
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation;
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 *
19 * Author: Budiarto Herman <budiarto.herman@magister.fi>
20 * Author: Mathias Ettinger <mettinger@toulouse.viveris.fr>
21 */
22
23#ifndef SATELLITE_STATS_HELPER_CONTAINER_H
24#define SATELLITE_STATS_HELPER_CONTAINER_H
25
27
28#include "ns3/object.h"
29#include "ns3/ptr.h"
30
31#include <list>
32#include <set>
33#include <string>
34
35namespace ns3
36{
37
38/*
39 * The macro definitions following this comment block are used to declare the
40 * majority of methods in this class. Below is the list of the class methods
41 * created using this C++ pre-processing approach.
42 *
43 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppDelay
44 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Dev, Mac, Phy] Delay
45 * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppDelay
46 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Dev, Mac, Phy] Delay
47 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
48 * LinkDelay
49 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] LinkDelay
50 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppJitter
51 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Dev, Mac, Phy] Jitter
52 * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppJitter
53 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Dev, Mac, Phy] Jitter
54 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
55 * LinkJitter
56 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] LinkJitter
57 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppPlt
58 * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppPlt
59 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] Queue [Bytes, Packets]
60 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [RtnFeeder, FwdUser] Queue [Bytes,
61 * Packets]
62 * - AddAverage [Beam, Group, Ut, Sat] [RtnFeeder, FwdUser] Queue [Bytes, Packets]
63 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] SignallingLoad
64 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] CompositeSinr
65 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppThroughput
66 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
67 * Throughput
68 * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppThroughput
69 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] Throughput
70 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Feeder, User] [FwdDa, RtnDa,
71 * SlottedAloha, Crdsa, Essa] PacketError
72 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Feeder, User] [SlottedAloha, Crdsa,
73 * Essa] PacketCollision
74 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] CapacityRequest
75 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] ResourcesGranted
76 * - Add [Global, PerGw, PerBeam] BackloggedRequest
77 * - Add [Global, PerGw, PerBeam] Frame [Symbol, User] Load
78 * - Add [Global, PerGw, PerBeam] WaveformUsage
79 * - Add [Global, PerSlice] FwdLinkSchedulerSymbolRate
80 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkSinr
81 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkSinr
82 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkRxPower
83 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkRxPower
84 * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkModcod
85 * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkModcod
86 * - Add [Global, PerGw, PerBeam] FrameTypeUsage
87 * - Add [Global, PerGw, PerBeam] RtnFeederWindowLoad
88 * - Add [Global, PerIsl] PacketDropRate
89 *
90 * Also check the Doxygen documentation of this class for more information.
91 */
92
93#define SAT_STATS_REDUCED_SCOPE_METHOD_DECLARATION(id) \
94 void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
95 void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
96 void AddPerBeam##id(SatStatsHelper::OutputType_t outputType);
97
98#define SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(id) \
99 void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
100 void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
101 void AddPerBeam##id(SatStatsHelper::OutputType_t outputType); \
102 void AddPerGroup##id(SatStatsHelper::OutputType_t outputType); \
103 void AddPerUt##id(SatStatsHelper::OutputType_t outputType); \
104 void AddPerSat##id(SatStatsHelper::OutputType_t outputType);
105
106#define SAT_STATS_FULL_SCOPE_METHOD_DECLARATION(id) \
107 void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
108 void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
109 void AddPerBeam##id(SatStatsHelper::OutputType_t outputType); \
110 void AddPerGroup##id(SatStatsHelper::OutputType_t outputType); \
111 void AddPerUt##id(SatStatsHelper::OutputType_t outputType); \
112 void AddPerUtUser##id(SatStatsHelper::OutputType_t outputType); \
113 void AddPerSat##id(SatStatsHelper::OutputType_t outputType);
114
115class SatHelper;
116
138class SatStatsHelperContainer : public Object
139{
140 public:
146 SatStatsHelperContainer(Ptr<SatHelper> satHelper);
147
151 static TypeId GetTypeId();
152
156 void SetName(std::string name);
157
161 std::string GetName() const;
162
163 // Forward link application-level packet delay statistics.
165 void AddAverageBeamFwdAppDelay(SatStatsHelper::OutputType_t outputType);
166 void AddAverageGroupFwdAppDelay(SatStatsHelper::OutputType_t outputType);
167 void AddAverageUtFwdAppDelay(SatStatsHelper::OutputType_t outputType);
168 void AddAverageUtUserFwdAppDelay(SatStatsHelper::OutputType_t outputType);
169 void AddAverageSatFwdAppDelay(SatStatsHelper::OutputType_t outputType);
170
171 // Forward link device-level packet delay statistics.
173 void AddAverageBeamFwdDevDelay(SatStatsHelper::OutputType_t outputType);
174 void AddAverageGroupFwdDevDelay(SatStatsHelper::OutputType_t outputType);
175 void AddAverageUtFwdDevDelay(SatStatsHelper::OutputType_t outputType);
176 void AddAverageSatFwdDevDelay(SatStatsHelper::OutputType_t outputType);
177
178 // Forward link MAC-level packet delay statistics.
180 void AddAverageBeamFwdMacDelay(SatStatsHelper::OutputType_t outputType);
181 void AddAverageGroupFwdMacDelay(SatStatsHelper::OutputType_t outputType);
182 void AddAverageUtFwdMacDelay(SatStatsHelper::OutputType_t outputType);
183 void AddAverageSatFwdMacDelay(SatStatsHelper::OutputType_t outputType);
184
185 // Forward link PHY-level packet delay statistics.
187 void AddAverageBeamFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
188 void AddAverageGroupFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
189 void AddAverageUtFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
190 void AddAverageSatFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
191
192 // Forward feeder link DEV-level packet link delay statistics.
193 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevLinkDelay)
196 void AddAverageUtFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
198
199 // Forward user link DEV-level packet link delay statistics.
201 void AddAverageBeamFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
203 void AddAverageUtFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
204 void AddAverageSatFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
205
206 // Forward feeder link MAC-level packet link delay statistics.
207 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacLinkDelay)
210 void AddAverageUtFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
212
213 // Forward user link MAC-level packet link delay statistics.
215 void AddAverageBeamFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
217 void AddAverageUtFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
218 void AddAverageSatFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
219
220 // Forward feeder link PHY-level packet link delay statistics.
221 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyLinkDelay)
224 void AddAverageUtFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
226
227 // Forward user link PHY-level packet link delay statistics.
229 void AddAverageBeamFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
231 void AddAverageUtFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
232 void AddAverageSatFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
233
234 // Forward link application-level packet jitter statistics.
236 void AddAverageBeamFwdAppJitter(SatStatsHelper::OutputType_t outputType);
237 void AddAverageGroupFwdAppJitter(SatStatsHelper::OutputType_t outputType);
238 void AddAverageUtFwdAppJitter(SatStatsHelper::OutputType_t outputType);
239 void AddAverageUtUserFwdAppJitter(SatStatsHelper::OutputType_t outputType);
240 void AddAverageSatFwdAppJitter(SatStatsHelper::OutputType_t outputType);
241
242 // Forward link device-level packet Jitter statistics.
244 void AddAverageBeamFwdDevJitter(SatStatsHelper::OutputType_t outputType);
245 void AddAverageGroupFwdDevJitter(SatStatsHelper::OutputType_t outputType);
246 void AddAverageUtFwdDevJitter(SatStatsHelper::OutputType_t outputType);
247 void AddAverageSatFwdDevJitter(SatStatsHelper::OutputType_t outputType);
248
249 // Forward link MAC-level packet Jitter statistics.
251 void AddAverageBeamFwdMacJitter(SatStatsHelper::OutputType_t outputType);
252 void AddAverageGroupFwdMacJitter(SatStatsHelper::OutputType_t outputType);
253 void AddAverageUtFwdMacJitter(SatStatsHelper::OutputType_t outputType);
254 void AddAverageSatFwdMacJitter(SatStatsHelper::OutputType_t outputType);
255
256 // Forward link PHY-level packet Jitter statistics.
258 void AddAverageBeamFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
259 void AddAverageGroupFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
260 void AddAverageUtFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
261 void AddAverageSatFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
262
263 // Forward link feeder DEV-level packet link Jitter statistics.
264 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevLinkJitter)
269
270 // Forward link user DEV-level packet link Jitter statistics.
274 void AddAverageUtFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
275 void AddAverageSatFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
276
277 // Forward link feeder MAC-level packet link Jitter statistics.
278 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacLinkJitter)
283
284 // Forward link user MAC-level packet link Jitter statistics.
288 void AddAverageUtFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
289 void AddAverageSatFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
290
291 // Forward link feeder PHY-level packet link Jitter statistics.
292 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyLinkJitter)
297
298 // Forward link user PHY-level packet link Jitter statistics.
302 void AddAverageUtFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
303 void AddAverageSatFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
304
305 // Forward link application-level packet PLT statistics.
307 void AddAverageBeamFwdAppPlt(SatStatsHelper::OutputType_t outputType);
308 void AddAverageGroupFwdAppPlt(SatStatsHelper::OutputType_t outputType);
309 void AddAverageUtFwdAppPlt(SatStatsHelper::OutputType_t outputType);
310 void AddAverageUtUserFwdAppPlt(SatStatsHelper::OutputType_t outputType);
311 void AddAverageSatFwdAppPlt(SatStatsHelper::OutputType_t outputType);
312
313 // Forward link queue size (in bytes) statistics.
315
316 // Forward link queue size (in number of packets) statistics.
318
319 // Forward link signalling load statistics.
321
322 // Forward link composite SINR statistics.
324
325 // Forward link application-level throughput statistics.
327 void AddAverageBeamFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
328 void AddAverageGroupFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
329 void AddAverageUtFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
330 void AddAverageUtUserFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
331 void AddAverageSatFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
332
333 // Forward feeder link device-level throughput statistics.
334 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevThroughput)
339
340 // Forward user link device-level throughput statistics.
344 void AddAverageUtFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
345 void AddAverageSatFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
346
347 // Forward feeder link MAC-level throughput statistics.
348 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacThroughput)
353
354 // Forward user link MAC-level throughput statistics.
358 void AddAverageUtFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
359 void AddAverageSatFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
360
361 // Forward feeder link PHY-level throughput statistics.
362 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyThroughput)
367
368 // Forward user link PHY-level throughput statistics.
372 void AddAverageUtFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
373 void AddAverageSatFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
374
375 // Return link application-level packet delay statistics.
377 void AddAverageBeamRtnAppDelay(SatStatsHelper::OutputType_t outputType);
378 void AddAverageGroupRtnAppDelay(SatStatsHelper::OutputType_t outputType);
379 void AddAverageUtRtnAppDelay(SatStatsHelper::OutputType_t outputType);
380 void AddAverageUtUserRtnAppDelay(SatStatsHelper::OutputType_t outputType);
381 void AddAverageSatRtnAppDelay(SatStatsHelper::OutputType_t outputType);
382
383 // Return link device-level packet delay statistics.
385 void AddAverageBeamRtnDevDelay(SatStatsHelper::OutputType_t outputType);
386 void AddAverageGroupRtnDevDelay(SatStatsHelper::OutputType_t outputType);
387 void AddAverageUtRtnDevDelay(SatStatsHelper::OutputType_t outputType);
388 void AddAverageSatRtnDevDelay(SatStatsHelper::OutputType_t outputType);
389
390 // Return link MAC-level packet delay statistics.
392 void AddAverageBeamRtnMacDelay(SatStatsHelper::OutputType_t outputType);
393 void AddAverageGroupRtnMacDelay(SatStatsHelper::OutputType_t outputType);
394 void AddAverageUtRtnMacDelay(SatStatsHelper::OutputType_t outputType);
395 void AddAverageSatRtnMacDelay(SatStatsHelper::OutputType_t outputType);
396
397 // Return link PHY-level packet delay statistics.
399 void AddAverageBeamRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
400 void AddAverageGroupRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
401 void AddAverageUtRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
402 void AddAverageSatRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
403
404 // Return feeder link DEV-level packet link delay statistics.
405 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevLinkDelay)
408 void AddAverageUtRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
410
411 // Return user link DEV-level packet link delay statistics.
413 void AddAverageBeamRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
415 void AddAverageUtRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
416 void AddAverageSatRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
417
418 // Return feeder link MAC-level packet link delay statistics.
419 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacLinkDelay)
422 void AddAverageUtRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
424
425 // Return user link MAC-level packet link delay statistics.
427 void AddAverageBeamRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
429 void AddAverageUtRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
430 void AddAverageSatRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
431
432 // Return feeder link PHY-level packet link delay statistics.
433 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyLinkDelay)
436 void AddAverageUtRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
438
439 // Return user link PHY-level packet link delay statistics.
441 void AddAverageBeamRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
443 void AddAverageUtRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
444 void AddAverageSatRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
445
446 // Return link application-level packet jitter statistics.
448 void AddAverageBeamRtnAppJitter(SatStatsHelper::OutputType_t outputType);
449 void AddAverageGroupRtnAppJitter(SatStatsHelper::OutputType_t outputType);
450 void AddAverageUtRtnAppJitter(SatStatsHelper::OutputType_t outputType);
451 void AddAverageUtUserRtnAppJitter(SatStatsHelper::OutputType_t outputType);
452 void AddAverageSatRtnAppJitter(SatStatsHelper::OutputType_t outputType);
453
454 // Return link device-level packet jitter statistics.
456 void AddAverageBeamRtnDevJitter(SatStatsHelper::OutputType_t outputType);
457 void AddAverageGroupRtnDevJitter(SatStatsHelper::OutputType_t outputType);
458 void AddAverageUtRtnDevJitter(SatStatsHelper::OutputType_t outputType);
459 void AddAverageSatRtnDevJitter(SatStatsHelper::OutputType_t outputType);
460
461 // Return link MAC-level packet jitter statistics.
463 void AddAverageBeamRtnMacJitter(SatStatsHelper::OutputType_t outputType);
464 void AddAverageGroupRtnMacJitter(SatStatsHelper::OutputType_t outputType);
465 void AddAverageUtRtnMacJitter(SatStatsHelper::OutputType_t outputType);
466 void AddAverageSatRtnMacJitter(SatStatsHelper::OutputType_t outputType);
467
468 // Return link PHY-level packet jitter statistics.
470 void AddAverageBeamRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
471 void AddAverageGroupRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
472 void AddAverageUtRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
473 void AddAverageSatRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
474
475 // Return link feeder DEV-level packet link Jitter statistics.
476 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevLinkJitter)
481
482 // Return link user DEV-level packet link Jitter statistics.
486 void AddAverageUtRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
487 void AddAverageSatRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
488
489 // Return link feeder MAC-level packet link Jitter statistics.
490 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacLinkJitter)
495
496 // Return link user MAC-level packet link Jitter statistics.
500 void AddAverageUtRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
501 void AddAverageSatRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
502
503 // Return link feeder PHY-level packet link Jitter statistics.
504 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyLinkJitter)
509
510 // Return link user PHY-level packet link Jitter statistics.
514 void AddAverageUtRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
515 void AddAverageSatRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
516
517 // Return link application-level packet PLT statistics.
519 void AddAverageBeamRtnAppPlt(SatStatsHelper::OutputType_t outputType);
520 void AddAverageGroupRtnAppPlt(SatStatsHelper::OutputType_t outputType);
521 void AddAverageUtRtnAppPlt(SatStatsHelper::OutputType_t outputType);
522 void AddAverageUtUserRtnAppPlt(SatStatsHelper::OutputType_t outputType);
523 void AddAverageSatRtnAppPlt(SatStatsHelper::OutputType_t outputType);
524
525 // Return link queue size (in bytes) statistics.
527
528 // Return link queue size (in number of packets) statistics.
530
531 // Return feeder link queue size (in bytes) statistics.
533 void AddAverageBeamRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
535 void AddAverageUtRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
536 void AddAverageSatRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
537
538 // Return feeder link queue size (in number of packets) statistics.
539 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederQueuePackets)
542 void AddAverageUtRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType);
544
545 // Forward user link queue size (in bytes) statistics.
547 void AddAverageBeamFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
548 void AddAverageGroupFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
549 void AddAverageUtFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
550 void AddAverageSatFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
551
552 // Forward user link queue size (in number of packets) statistics.
554 void AddAverageBeamFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
556 void AddAverageUtFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
557 void AddAverageSatFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
558
559 // Return link signalling load statistics.
561
562 // Return link composite SINR statistics.
564
565 // Return link application-level throughput statistics.
567 void AddAverageBeamRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
568 void AddAverageGroupRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
569 void AddAverageUtRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
570 void AddAverageUtUserRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
571 void AddAverageSatRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
572
573 // Return feeder link device-level throughput statistics.
574 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevThroughput)
579
580 // Return user link device-level throughput statistics.
584 void AddAverageUtRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
585 void AddAverageSatRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
586
587 // Return feeder link MAC-level throughput statistics.
588 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacThroughput)
593
594 // Return user link MAC-level throughput statistics.
598 void AddAverageUtRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
599 void AddAverageSatRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
600
601 // Return feeder link PHY-level throughput statistics.
602 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyThroughput)
607
608 // Return user link PHY-level throughput statistics.
612 void AddAverageUtRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
613 void AddAverageSatRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
614
615 // Forward link Dedicated Access packet error rate statistics.
616 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDaPacketError)
618
619 // Return link Dedicated Access packet error rate statistics.
620 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDaPacketError)
622
623 // Random Access Slotted ALOHA packet error rate statistics.
624 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederSlottedAlohaPacketError)
625 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserSlottedAlohaPacketError)
626
627 // Random Access Slotted ALOHA packet collision rate statistics.
628 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederSlottedAlohaPacketCollision)
629 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserSlottedAlohaPacketCollision)
630
631 // Random Access CRDSA packet error rate statistics.
632 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederCrdsaPacketError)
634
635 // Random Access CRDSA packet collision rate statistics.
636 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederCrdsaPacketCollision)
637 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserCrdsaPacketCollision)
638
639 // Random Access Marsala packet correlation rate statistics.
641
642 // Random Access E-SSA packet error rate statistics.
643 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederEssaPacketError)
645
646 // Random Access E-SSA packet collision rate statistics.
647 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederEssaPacketCollision)
648 SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserEssaPacketCollision)
649
650 // Dedicated Access carrier ID statistics
652
653 // Capacity request statistics.
656 void AddAverageBeamRbdcRequest(SatStatsHelper::OutputType_t outputType);
657 void AddAverageGroupRbdcRequest(SatStatsHelper::OutputType_t outputType);
658 void AddAverageUtRbdcRequest(SatStatsHelper::OutputType_t outputType);
659 void AddAverageSatRbdcRequest(SatStatsHelper::OutputType_t outputType);
660
661 // Resources granted statistics.
663
664 // Backlogged request statistics.
666
667 // Frame load statistics.
670
671 // Waveform usage statistics.
673
674 // Return link PHY-level packet link sinr statistics.
676 void AddAverageBeamFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
677 void AddAverageGroupFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
678 void AddAverageUtFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
679 void AddAverageSatFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
680
681 // Return link PHY-level packet link sinr statistics.
683 void AddAverageBeamFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
684 void AddAverageGroupFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
685 void AddAverageUtFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
686 void AddAverageSatFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
687
688 // Return link PHY-level packet link sinr statistics.
690 void AddAverageBeamRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
691 void AddAverageGroupRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
692 void AddAverageUtRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
693 void AddAverageSatRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
694
695 // Return link PHY-level packet link sinr statistics.
697 void AddAverageBeamRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
698 void AddAverageGroupRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
699 void AddAverageUtRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
700 void AddAverageSatRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
701
702 // Return link PHY-level packet link RX power statistics.
706 void AddAverageUtFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
707 void AddAverageSatFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
708
709 // Return link PHY-level packet link RX power statistics.
711 void AddAverageBeamFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
712 void AddAverageGroupFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
713 void AddAverageUtFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
714 void AddAverageSatFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
715
716 // Return link PHY-level packet link RX power statistics.
720 void AddAverageUtRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
721 void AddAverageSatRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
722
723 // Return link PHY-level packet link RX power statistics.
725 void AddAverageBeamRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
726 void AddAverageGroupRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
727 void AddAverageUtRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
728 void AddAverageSatRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
729
730 // Return link PHY-level packet link MODCOD statistics.
732 void AddAverageBeamFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
734 void AddAverageUtFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
735 void AddAverageSatFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
736
737 // Return link PHY-level packet link MODCOD statistics.
739 void AddAverageBeamFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
740 void AddAverageGroupFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
741 void AddAverageUtFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
742 void AddAverageSatFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
743
744 // Return link PHY-level packet link MODCOD statistics.
746 void AddAverageBeamRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
748 void AddAverageUtRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
749 void AddAverageSatRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
750
751 // Return link PHY-level packet link MODCOD statistics.
753 void AddAverageBeamRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
754 void AddAverageGroupRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
755 void AddAverageUtRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
756 void AddAverageSatRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
757
758 // Frame type usage statistics.
760
761 // Beam service time statistics
762 void AddPerBeamBeamServiceTime(SatStatsHelper::OutputType_t outputType);
763
764 // Antenna Gain statistics.
766 void AddAverageBeamAntennaGain(SatStatsHelper::OutputType_t outputType);
767 void AddAverageGroupAntennaGain(SatStatsHelper::OutputType_t outputType);
768 void AddAverageUtAntennaGain(SatStatsHelper::OutputType_t outputType);
769 void AddAverageSatAntennaGain(SatStatsHelper::OutputType_t outputType);
770
771 // Fwd Link Scheduler SymbolRate statistics.
774
775 // Window load statistics
776 void AddGlobalRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
777 void AddPerGwRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
778 void AddPerBeamRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
779
780 // ISL queue drop statistics
781 void AddGlobalPacketDropRate(SatStatsHelper::OutputType_t outputType);
782 void AddPerIslPacketDropRate(SatStatsHelper::OutputType_t outputType);
783
789 static std::string GetOutputTypeSuffix(SatStatsHelper::OutputType_t outputType);
790
797 void UpdateAddressAndIdentifier(Ptr<Node> utNode);
798
799 protected:
803 virtual void DoDispose();
804
805 private:
808
810 std::string m_name;
811
813 std::list<Ptr<SatStatsHelper>> m_stats;
814
816 std::set<std::string> m_names;
817
818}; // end of class StatStatsHelperContainer
819
820} // end of namespace ns3
821
822#endif /* SATELLITE_STATS_HELPER_CONTAINER_H */
Build a satellite network set with needed objects and configuration.
void AddAverageGroupFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdAppJitter(SatStatsHelper::OutputType_t outputType)
static TypeId GetTypeId()
inherited from ObjectBase base class
void AddAverageUtRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRbdcRequest(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
SatStatsHelperContainer(Ptr< SatHelper > satHelper)
Creates a new instance of container.
void AddGlobalRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddGlobalFwdLinkSchedulerSymbolRate(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdAppJitter(SatStatsHelper::OutputType_t outputType)
virtual void DoDispose()
Inherited from Object base class.
void AddAverageUtRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserRtnAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddPerBeamBeamServiceTime(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserFwdAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtAntennaGain(SatStatsHelper::OutputType_t outputType)
void AddPerSliceFwdLinkSchedulerSymbolRate(SatStatsHelper::OutputType_t outputType)
void AddPerGwRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
std::string m_name
Prefix of every SatStatsHelper instance names and every output file.
void AddAverageSatRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void UpdateAddressAndIdentifier(Ptr< Node > utNode)
Update the address and the proper identifier from the given UT node.
void AddAverageSatRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamAntennaGain(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserRtnAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
std::list< Ptr< SatStatsHelper > > m_stats
Maintains the active SatStatsHelper instances which have created.
void AddAverageGroupFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdPhyJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupAntennaGain(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddGlobalPacketDropRate(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnDevJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
std::set< std::string > m_names
Set of names of statisticscreated. Used to avoid creating same stat twice.
void AddAverageGroupRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatAntennaGain(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType)
void AddPerIslPacketDropRate(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRbdcRequest(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRbdcRequest(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnMacJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddPerBeamRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserFwdAppJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRbdcRequest(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdPhyDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnDevDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserRtnAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdMacDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType)
static std::string GetOutputTypeSuffix(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnAppThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageBeamRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageUtRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageUtUserRtnAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType)
Ptr< SatHelper > m_satHelper
Satellite module helper for reference.
void AddAverageGroupRtnAppJitter(SatStatsHelper::OutputType_t outputType)
Parent abstract class of all satellite statistics helpers.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.
#define SAT_STATS_FULL_SCOPE_METHOD_DECLARATION(id)
#define SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(id)
#define SAT_STATS_REDUCED_SCOPE_METHOD_DECLARATION(id)