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 
26 #include <ns3/object.h>
27 #include <ns3/ptr.h>
28 #include <ns3/satellite-stats-helper.h>
29 
30 #include <list>
31 #include <set>
32 
33 namespace ns3
34 {
35 
36 /*
37  * The macro definitions following this comment block are used to declare the
38  * majority of methods in this class. Below is the list of the class methods
39  * created using this C++ pre-processing approach.
40  *
41  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppDelay
42  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Dev, Mac, Phy] Delay
43  * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppDelay
44  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Dev, Mac, Phy] Delay
45  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
46  * LinkDelay
47  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] LinkDelay
48  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppJitter
49  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Dev, Mac, Phy] Jitter
50  * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppJitter
51  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Dev, Mac, Phy] Jitter
52  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
53  * LinkJitter
54  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] LinkJitter
55  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppPlt
56  * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppPlt
57  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] Queue [Bytes, Packets]
58  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [RtnFeeder, FwdUser] Queue [Bytes,
59  * Packets]
60  * - AddAverage [Beam, Group, Ut, Sat] [RtnFeeder, FwdUser] Queue [Bytes, Packets]
61  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] SignallingLoad
62  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] CompositeSinr
63  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerUtUser, PerSat] [Fwd, Rtn] AppThroughput
64  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy]
65  * Throughput
66  * - AddAverage [Beam, Group, Ut, UtUser, Sat] [Fwd, Rtn] AppThroughput
67  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] [Dev, Mac, Phy] Throughput
68  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Feeder, User] [FwdDa, RtnDa,
69  * SlottedAloha, Crdsa, Essa] PacketError
70  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Feeder, User] [SlottedAloha, Crdsa,
71  * Essa] PacketCollision
72  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] CapacityRequest
73  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] ResourcesGranted
74  * - Add [Global, PerGw, PerBeam] BackloggedRequest
75  * - Add [Global, PerGw, PerBeam] Frame [Symbol, User] Load
76  * - Add [Global, PerGw, PerBeam] WaveformUsage
77  * - Add [Global, PerSlice] FwdLinkSchedulerSymbolRate
78  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkSinr
79  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkSinr
80  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkRxPower
81  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkRxPower
82  * - Add [Global, PerGw, PerBeam, PerGroup, PerUt, PerSat] [Fwd, Rtn] [Feeder, User] LinkModcod
83  * - AddAverage [Beam, Group, Ut, Sat] [Fwd, Rtn] [Feeder, User] LinkModcod
84  * - Add [Global, PerGw, PerBeam] FrameTypeUsage
85  * - Add [Global, PerGw, PerBeam] RtnFeederWindowLoad
86  * - Add [Global, PerIsl] PacketDropRate
87  *
88  * Also check the Doxygen documentation of this class for more information.
89  */
90 
91 #define SAT_STATS_REDUCED_SCOPE_METHOD_DECLARATION(id) \
92  void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
93  void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
94  void AddPerBeam##id(SatStatsHelper::OutputType_t outputType);
95 
96 #define SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(id) \
97  void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
98  void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
99  void AddPerBeam##id(SatStatsHelper::OutputType_t outputType); \
100  void AddPerGroup##id(SatStatsHelper::OutputType_t outputType); \
101  void AddPerUt##id(SatStatsHelper::OutputType_t outputType); \
102  void AddPerSat##id(SatStatsHelper::OutputType_t outputType);
103 
104 #define SAT_STATS_FULL_SCOPE_METHOD_DECLARATION(id) \
105  void AddGlobal##id(SatStatsHelper::OutputType_t outputType); \
106  void AddPerGw##id(SatStatsHelper::OutputType_t outputType); \
107  void AddPerBeam##id(SatStatsHelper::OutputType_t outputType); \
108  void AddPerGroup##id(SatStatsHelper::OutputType_t outputType); \
109  void AddPerUt##id(SatStatsHelper::OutputType_t outputType); \
110  void AddPerUtUser##id(SatStatsHelper::OutputType_t outputType); \
111  void AddPerSat##id(SatStatsHelper::OutputType_t outputType);
112 
113 class SatHelper;
114 
136 class SatStatsHelperContainer : public Object
137 {
138  public:
144  SatStatsHelperContainer(Ptr<const SatHelper> satHelper);
145 
149  static TypeId GetTypeId();
150 
154  void SetName(std::string name);
155 
159  std::string GetName() const;
160 
161  // Forward link application-level packet delay statistics.
163  void AddAverageBeamFwdAppDelay(SatStatsHelper::OutputType_t outputType);
164  void AddAverageGroupFwdAppDelay(SatStatsHelper::OutputType_t outputType);
165  void AddAverageUtFwdAppDelay(SatStatsHelper::OutputType_t outputType);
166  void AddAverageUtUserFwdAppDelay(SatStatsHelper::OutputType_t outputType);
167  void AddAverageSatFwdAppDelay(SatStatsHelper::OutputType_t outputType);
168 
169  // Forward link device-level packet delay statistics.
171  void AddAverageBeamFwdDevDelay(SatStatsHelper::OutputType_t outputType);
172  void AddAverageGroupFwdDevDelay(SatStatsHelper::OutputType_t outputType);
173  void AddAverageUtFwdDevDelay(SatStatsHelper::OutputType_t outputType);
174  void AddAverageSatFwdDevDelay(SatStatsHelper::OutputType_t outputType);
175 
176  // Forward link MAC-level packet delay statistics.
178  void AddAverageBeamFwdMacDelay(SatStatsHelper::OutputType_t outputType);
179  void AddAverageGroupFwdMacDelay(SatStatsHelper::OutputType_t outputType);
180  void AddAverageUtFwdMacDelay(SatStatsHelper::OutputType_t outputType);
181  void AddAverageSatFwdMacDelay(SatStatsHelper::OutputType_t outputType);
182 
183  // Forward link PHY-level packet delay statistics.
185  void AddAverageBeamFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
186  void AddAverageGroupFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
187  void AddAverageUtFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
188  void AddAverageSatFwdPhyDelay(SatStatsHelper::OutputType_t outputType);
189 
190  // Forward feeder link DEV-level packet link delay statistics.
191  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevLinkDelay)
192  void AddAverageBeamFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
193  void AddAverageGroupFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
194  void AddAverageUtFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
195  void AddAverageSatFwdFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
196 
197  // Forward user link DEV-level packet link delay statistics.
198  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserDevLinkDelay)
199  void AddAverageBeamFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
200  void AddAverageGroupFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
201  void AddAverageUtFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
202  void AddAverageSatFwdUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
203 
204  // Forward feeder link MAC-level packet link delay statistics.
205  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacLinkDelay)
206  void AddAverageBeamFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
207  void AddAverageGroupFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
208  void AddAverageUtFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
209  void AddAverageSatFwdFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
210 
211  // Forward user link MAC-level packet link delay statistics.
212  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserMacLinkDelay)
213  void AddAverageBeamFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
214  void AddAverageGroupFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
215  void AddAverageUtFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
216  void AddAverageSatFwdUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
217 
218  // Forward feeder link PHY-level packet link delay statistics.
219  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyLinkDelay)
220  void AddAverageBeamFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
221  void AddAverageGroupFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
222  void AddAverageUtFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
223  void AddAverageSatFwdFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
224 
225  // Forward user link PHY-level packet link delay statistics.
226  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserPhyLinkDelay)
227  void AddAverageBeamFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
228  void AddAverageGroupFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
229  void AddAverageUtFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
230  void AddAverageSatFwdUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
231 
232  // Forward link application-level packet jitter statistics.
234  void AddAverageBeamFwdAppJitter(SatStatsHelper::OutputType_t outputType);
235  void AddAverageGroupFwdAppJitter(SatStatsHelper::OutputType_t outputType);
236  void AddAverageUtFwdAppJitter(SatStatsHelper::OutputType_t outputType);
237  void AddAverageUtUserFwdAppJitter(SatStatsHelper::OutputType_t outputType);
238  void AddAverageSatFwdAppJitter(SatStatsHelper::OutputType_t outputType);
239 
240  // Forward link device-level packet Jitter statistics.
242  void AddAverageBeamFwdDevJitter(SatStatsHelper::OutputType_t outputType);
243  void AddAverageGroupFwdDevJitter(SatStatsHelper::OutputType_t outputType);
244  void AddAverageUtFwdDevJitter(SatStatsHelper::OutputType_t outputType);
245  void AddAverageSatFwdDevJitter(SatStatsHelper::OutputType_t outputType);
246 
247  // Forward link MAC-level packet Jitter statistics.
249  void AddAverageBeamFwdMacJitter(SatStatsHelper::OutputType_t outputType);
250  void AddAverageGroupFwdMacJitter(SatStatsHelper::OutputType_t outputType);
251  void AddAverageUtFwdMacJitter(SatStatsHelper::OutputType_t outputType);
252  void AddAverageSatFwdMacJitter(SatStatsHelper::OutputType_t outputType);
253 
254  // Forward link PHY-level packet Jitter statistics.
256  void AddAverageBeamFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
257  void AddAverageGroupFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
258  void AddAverageUtFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
259  void AddAverageSatFwdPhyJitter(SatStatsHelper::OutputType_t outputType);
260 
261  // Forward link feeder DEV-level packet link Jitter statistics.
262  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevLinkJitter)
263  void AddAverageBeamFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
265  void AddAverageUtFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
266  void AddAverageSatFwdFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
267 
268  // Forward link user DEV-level packet link Jitter statistics.
269  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserDevLinkJitter)
270  void AddAverageBeamFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
271  void AddAverageGroupFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
272  void AddAverageUtFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
273  void AddAverageSatFwdUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
274 
275  // Forward link feeder MAC-level packet link Jitter statistics.
276  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacLinkJitter)
277  void AddAverageBeamFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
279  void AddAverageUtFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
280  void AddAverageSatFwdFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
281 
282  // Forward link user MAC-level packet link Jitter statistics.
283  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserMacLinkJitter)
284  void AddAverageBeamFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
285  void AddAverageGroupFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
286  void AddAverageUtFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
287  void AddAverageSatFwdUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
288 
289  // Forward link feeder PHY-level packet link Jitter statistics.
290  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyLinkJitter)
291  void AddAverageBeamFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
293  void AddAverageUtFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
294  void AddAverageSatFwdFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
295 
296  // Forward link user PHY-level packet link Jitter statistics.
297  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserPhyLinkJitter)
298  void AddAverageBeamFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
299  void AddAverageGroupFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
300  void AddAverageUtFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
301  void AddAverageSatFwdUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
302 
303  // Forward link application-level packet PLT statistics.
305  void AddAverageBeamFwdAppPlt(SatStatsHelper::OutputType_t outputType);
306  void AddAverageGroupFwdAppPlt(SatStatsHelper::OutputType_t outputType);
307  void AddAverageUtFwdAppPlt(SatStatsHelper::OutputType_t outputType);
308  void AddAverageUtUserFwdAppPlt(SatStatsHelper::OutputType_t outputType);
309  void AddAverageSatFwdAppPlt(SatStatsHelper::OutputType_t outputType);
310 
311  // Forward link queue size (in bytes) statistics.
313 
314  // Forward link queue size (in number of packets) statistics.
316 
317  // Forward link signalling load statistics.
319 
320  // Forward link composite SINR statistics.
322 
323  // Forward link application-level throughput statistics.
325  void AddAverageBeamFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
326  void AddAverageGroupFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
327  void AddAverageUtFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
328  void AddAverageUtUserFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
329  void AddAverageSatFwdAppThroughput(SatStatsHelper::OutputType_t outputType);
330 
331  // Forward feeder link device-level throughput statistics.
332  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDevThroughput)
333  void AddAverageBeamFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
335  void AddAverageUtFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
336  void AddAverageSatFwdFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
337 
338  // Forward user link device-level throughput statistics.
339  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserDevThroughput)
340  void AddAverageBeamFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
341  void AddAverageGroupFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
342  void AddAverageUtFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
343  void AddAverageSatFwdUserDevThroughput(SatStatsHelper::OutputType_t outputType);
344 
345  // Forward feeder link MAC-level throughput statistics.
346  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederMacThroughput)
347  void AddAverageBeamFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
349  void AddAverageUtFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
350  void AddAverageSatFwdFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
351 
352  // Forward user link MAC-level throughput statistics.
353  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserMacThroughput)
354  void AddAverageBeamFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
355  void AddAverageGroupFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
356  void AddAverageUtFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
357  void AddAverageSatFwdUserMacThroughput(SatStatsHelper::OutputType_t outputType);
358 
359  // Forward feeder link PHY-level throughput statistics.
360  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederPhyThroughput)
361  void AddAverageBeamFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
363  void AddAverageUtFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
364  void AddAverageSatFwdFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
365 
366  // Forward user link PHY-level throughput statistics.
367  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserPhyThroughput)
368  void AddAverageBeamFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
369  void AddAverageGroupFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
370  void AddAverageUtFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
371  void AddAverageSatFwdUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
372 
373  // Return link application-level packet delay statistics.
375  void AddAverageBeamRtnAppDelay(SatStatsHelper::OutputType_t outputType);
376  void AddAverageGroupRtnAppDelay(SatStatsHelper::OutputType_t outputType);
377  void AddAverageUtRtnAppDelay(SatStatsHelper::OutputType_t outputType);
378  void AddAverageUtUserRtnAppDelay(SatStatsHelper::OutputType_t outputType);
379  void AddAverageSatRtnAppDelay(SatStatsHelper::OutputType_t outputType);
380 
381  // Return link device-level packet delay statistics.
383  void AddAverageBeamRtnDevDelay(SatStatsHelper::OutputType_t outputType);
384  void AddAverageGroupRtnDevDelay(SatStatsHelper::OutputType_t outputType);
385  void AddAverageUtRtnDevDelay(SatStatsHelper::OutputType_t outputType);
386  void AddAverageSatRtnDevDelay(SatStatsHelper::OutputType_t outputType);
387 
388  // Return link MAC-level packet delay statistics.
390  void AddAverageBeamRtnMacDelay(SatStatsHelper::OutputType_t outputType);
391  void AddAverageGroupRtnMacDelay(SatStatsHelper::OutputType_t outputType);
392  void AddAverageUtRtnMacDelay(SatStatsHelper::OutputType_t outputType);
393  void AddAverageSatRtnMacDelay(SatStatsHelper::OutputType_t outputType);
394 
395  // Return link PHY-level packet delay statistics.
397  void AddAverageBeamRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
398  void AddAverageGroupRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
399  void AddAverageUtRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
400  void AddAverageSatRtnPhyDelay(SatStatsHelper::OutputType_t outputType);
401 
402  // Return feeder link DEV-level packet link delay statistics.
403  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevLinkDelay)
404  void AddAverageBeamRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
405  void AddAverageGroupRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
406  void AddAverageUtRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
407  void AddAverageSatRtnFeederDevLinkDelay(SatStatsHelper::OutputType_t outputType);
408 
409  // Return user link DEV-level packet link delay statistics.
410  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserDevLinkDelay)
411  void AddAverageBeamRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
412  void AddAverageGroupRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
413  void AddAverageUtRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
414  void AddAverageSatRtnUserDevLinkDelay(SatStatsHelper::OutputType_t outputType);
415 
416  // Return feeder link MAC-level packet link delay statistics.
417  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacLinkDelay)
418  void AddAverageBeamRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
419  void AddAverageGroupRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
420  void AddAverageUtRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
421  void AddAverageSatRtnFeederMacLinkDelay(SatStatsHelper::OutputType_t outputType);
422 
423  // Return user link MAC-level packet link delay statistics.
424  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserMacLinkDelay)
425  void AddAverageBeamRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
426  void AddAverageGroupRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
427  void AddAverageUtRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
428  void AddAverageSatRtnUserMacLinkDelay(SatStatsHelper::OutputType_t outputType);
429 
430  // Return feeder link PHY-level packet link delay statistics.
431  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyLinkDelay)
432  void AddAverageBeamRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
433  void AddAverageGroupRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
434  void AddAverageUtRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
435  void AddAverageSatRtnFeederPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
436 
437  // Return user link PHY-level packet link delay statistics.
438  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserPhyLinkDelay)
439  void AddAverageBeamRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
440  void AddAverageGroupRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
441  void AddAverageUtRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
442  void AddAverageSatRtnUserPhyLinkDelay(SatStatsHelper::OutputType_t outputType);
443 
444  // Return link application-level packet jitter statistics.
446  void AddAverageBeamRtnAppJitter(SatStatsHelper::OutputType_t outputType);
447  void AddAverageGroupRtnAppJitter(SatStatsHelper::OutputType_t outputType);
448  void AddAverageUtRtnAppJitter(SatStatsHelper::OutputType_t outputType);
449  void AddAverageUtUserRtnAppJitter(SatStatsHelper::OutputType_t outputType);
450  void AddAverageSatRtnAppJitter(SatStatsHelper::OutputType_t outputType);
451 
452  // Return link device-level packet jitter statistics.
454  void AddAverageBeamRtnDevJitter(SatStatsHelper::OutputType_t outputType);
455  void AddAverageGroupRtnDevJitter(SatStatsHelper::OutputType_t outputType);
456  void AddAverageUtRtnDevJitter(SatStatsHelper::OutputType_t outputType);
457  void AddAverageSatRtnDevJitter(SatStatsHelper::OutputType_t outputType);
458 
459  // Return link MAC-level packet jitter statistics.
461  void AddAverageBeamRtnMacJitter(SatStatsHelper::OutputType_t outputType);
462  void AddAverageGroupRtnMacJitter(SatStatsHelper::OutputType_t outputType);
463  void AddAverageUtRtnMacJitter(SatStatsHelper::OutputType_t outputType);
464  void AddAverageSatRtnMacJitter(SatStatsHelper::OutputType_t outputType);
465 
466  // Return link PHY-level packet jitter statistics.
468  void AddAverageBeamRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
469  void AddAverageGroupRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
470  void AddAverageUtRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
471  void AddAverageSatRtnPhyJitter(SatStatsHelper::OutputType_t outputType);
472 
473  // Return link feeder DEV-level packet link Jitter statistics.
474  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevLinkJitter)
475  void AddAverageBeamRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
477  void AddAverageUtRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
478  void AddAverageSatRtnFeederDevLinkJitter(SatStatsHelper::OutputType_t outputType);
479 
480  // Return link user DEV-level packet link Jitter statistics.
481  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserDevLinkJitter)
482  void AddAverageBeamRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
483  void AddAverageGroupRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
484  void AddAverageUtRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
485  void AddAverageSatRtnUserDevLinkJitter(SatStatsHelper::OutputType_t outputType);
486 
487  // Return link feeder MAC-level packet link Jitter statistics.
488  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacLinkJitter)
489  void AddAverageBeamRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
491  void AddAverageUtRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
492  void AddAverageSatRtnFeederMacLinkJitter(SatStatsHelper::OutputType_t outputType);
493 
494  // Return link user MAC-level packet link Jitter statistics.
495  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserMacLinkJitter)
496  void AddAverageBeamRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
497  void AddAverageGroupRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
498  void AddAverageUtRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
499  void AddAverageSatRtnUserMacLinkJitter(SatStatsHelper::OutputType_t outputType);
500 
501  // Return link feeder PHY-level packet link Jitter statistics.
502  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyLinkJitter)
503  void AddAverageBeamRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
505  void AddAverageUtRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
506  void AddAverageSatRtnFeederPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
507 
508  // Return link user PHY-level packet link Jitter statistics.
509  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserPhyLinkJitter)
510  void AddAverageBeamRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
511  void AddAverageGroupRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
512  void AddAverageUtRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
513  void AddAverageSatRtnUserPhyLinkJitter(SatStatsHelper::OutputType_t outputType);
514 
515  // Return link application-level packet PLT statistics.
517  void AddAverageBeamRtnAppPlt(SatStatsHelper::OutputType_t outputType);
518  void AddAverageGroupRtnAppPlt(SatStatsHelper::OutputType_t outputType);
519  void AddAverageUtRtnAppPlt(SatStatsHelper::OutputType_t outputType);
520  void AddAverageUtUserRtnAppPlt(SatStatsHelper::OutputType_t outputType);
521  void AddAverageSatRtnAppPlt(SatStatsHelper::OutputType_t outputType);
522 
523  // Return link queue size (in bytes) statistics.
525 
526  // Return link queue size (in number of packets) statistics.
528 
529  // Return feeder link queue size (in bytes) statistics.
530  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederQueueBytes)
531  void AddAverageBeamRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
532  void AddAverageGroupRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
533  void AddAverageUtRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
534  void AddAverageSatRtnFeederQueueBytes(SatStatsHelper::OutputType_t outputType);
535 
536  // Return feeder link queue size (in number of packets) statistics.
537  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederQueuePackets)
538  void AddAverageBeamRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType);
539  void AddAverageGroupRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType);
540  void AddAverageUtRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType);
541  void AddAverageSatRtnFeederQueuePackets(SatStatsHelper::OutputType_t outputType);
542 
543  // Forward user link queue size (in bytes) statistics.
545  void AddAverageBeamFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
546  void AddAverageGroupFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
547  void AddAverageUtFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
548  void AddAverageSatFwdUserQueueBytes(SatStatsHelper::OutputType_t outputType);
549 
550  // Forward user link queue size (in number of packets) statistics.
551  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserQueuePackets)
552  void AddAverageBeamFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
553  void AddAverageGroupFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
554  void AddAverageUtFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
555  void AddAverageSatFwdUserQueuePackets(SatStatsHelper::OutputType_t outputType);
556 
557  // Return link signalling load statistics.
559 
560  // Return link composite SINR statistics.
562 
563  // Return link application-level throughput statistics.
565  void AddAverageBeamRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
566  void AddAverageGroupRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
567  void AddAverageUtRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
568  void AddAverageUtUserRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
569  void AddAverageSatRtnAppThroughput(SatStatsHelper::OutputType_t outputType);
570 
571  // Return feeder link device-level throughput statistics.
572  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDevThroughput)
573  void AddAverageBeamRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
575  void AddAverageUtRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
576  void AddAverageSatRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType);
577 
578  // Return user link device-level throughput statistics.
579  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserDevThroughput)
580  void AddAverageBeamRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
581  void AddAverageGroupRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
582  void AddAverageUtRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
583  void AddAverageSatRtnUserDevThroughput(SatStatsHelper::OutputType_t outputType);
584 
585  // Return feeder link MAC-level throughput statistics.
586  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederMacThroughput)
587  void AddAverageBeamRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
589  void AddAverageUtRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
590  void AddAverageSatRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType);
591 
592  // Return user link MAC-level throughput statistics.
593  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserMacThroughput)
594  void AddAverageBeamRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
595  void AddAverageGroupRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
596  void AddAverageUtRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
597  void AddAverageSatRtnUserMacThroughput(SatStatsHelper::OutputType_t outputType);
598 
599  // Return feeder link PHY-level throughput statistics.
600  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederPhyThroughput)
601  void AddAverageBeamRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
603  void AddAverageUtRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
604  void AddAverageSatRtnFeederPhyThroughput(SatStatsHelper::OutputType_t outputType);
605 
606  // Return user link PHY-level throughput statistics.
607  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserPhyThroughput)
608  void AddAverageBeamRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
609  void AddAverageGroupRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
610  void AddAverageUtRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
611  void AddAverageSatRtnUserPhyThroughput(SatStatsHelper::OutputType_t outputType);
612 
613  // Forward link Dedicated Access packet error rate statistics.
614  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederDaPacketError)
615  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdUserDaPacketError)
616 
617  // Return link Dedicated Access packet error rate statistics.
618  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederDaPacketError)
619  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnUserDaPacketError)
620 
621  // Random Access Slotted ALOHA packet error rate statistics.
622  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederSlottedAlohaPacketError)
623  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserSlottedAlohaPacketError)
624 
625  // Random Access Slotted ALOHA packet collision rate statistics.
626  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederSlottedAlohaPacketCollision)
627  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserSlottedAlohaPacketCollision)
628 
629  // Random Access CRDSA packet error rate statistics.
630  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederCrdsaPacketError)
631  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserCrdsaPacketError)
632 
633  // Random Access CRDSA packet collision rate statistics.
634  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederCrdsaPacketCollision)
635  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserCrdsaPacketCollision)
636 
637  // Random Access Marsala packet correlation rate statistics.
639 
640  // Random Access E-SSA packet error rate statistics.
641  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederEssaPacketError)
642  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserEssaPacketError)
643 
644  // Random Access E-SSA packet collision rate statistics.
645  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FeederEssaPacketCollision)
646  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(UserEssaPacketCollision)
647 
648  // Dedicated Access carrier ID statistics
650 
651  // Capacity request statistics.
654  void AddAverageBeamRbdcRequest(SatStatsHelper::OutputType_t outputType);
655  void AddAverageGroupRbdcRequest(SatStatsHelper::OutputType_t outputType);
656  void AddAverageUtRbdcRequest(SatStatsHelper::OutputType_t outputType);
657  void AddAverageSatRbdcRequest(SatStatsHelper::OutputType_t outputType);
658 
659  // Resources granted statistics.
661 
662  // Backlogged request statistics.
664 
665  // Frame load statistics.
668 
669  // Waveform usage statistics.
671 
672  // Return link PHY-level packet link sinr statistics.
674  void AddAverageBeamFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
675  void AddAverageGroupFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
676  void AddAverageUtFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
677  void AddAverageSatFwdFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
678 
679  // Return link PHY-level packet link sinr statistics.
681  void AddAverageBeamFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
682  void AddAverageGroupFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
683  void AddAverageUtFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
684  void AddAverageSatFwdUserLinkSinr(SatStatsHelper::OutputType_t outputType);
685 
686  // Return link PHY-level packet link sinr statistics.
688  void AddAverageBeamRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
689  void AddAverageGroupRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
690  void AddAverageUtRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
691  void AddAverageSatRtnFeederLinkSinr(SatStatsHelper::OutputType_t outputType);
692 
693  // Return link PHY-level packet link sinr statistics.
695  void AddAverageBeamRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
696  void AddAverageGroupRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
697  void AddAverageUtRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
698  void AddAverageSatRtnUserLinkSinr(SatStatsHelper::OutputType_t outputType);
699 
700  // Return link PHY-level packet link RX power statistics.
701  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederLinkRxPower)
702  void AddAverageBeamFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
703  void AddAverageGroupFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
704  void AddAverageUtFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
705  void AddAverageSatFwdFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
706 
707  // Return link PHY-level packet link RX power statistics.
709  void AddAverageBeamFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
710  void AddAverageGroupFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
711  void AddAverageUtFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
712  void AddAverageSatFwdUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
713 
714  // Return link PHY-level packet link RX power statistics.
715  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederLinkRxPower)
716  void AddAverageBeamRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
717  void AddAverageGroupRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
718  void AddAverageUtRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
719  void AddAverageSatRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType);
720 
721  // Return link PHY-level packet link RX power statistics.
723  void AddAverageBeamRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
724  void AddAverageGroupRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
725  void AddAverageUtRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
726  void AddAverageSatRtnUserLinkRxPower(SatStatsHelper::OutputType_t outputType);
727 
728  // Return link PHY-level packet link MODCOD statistics.
729  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(FwdFeederLinkModcod)
730  void AddAverageBeamFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
731  void AddAverageGroupFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
732  void AddAverageUtFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
733  void AddAverageSatFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
734 
735  // Return link PHY-level packet link MODCOD statistics.
737  void AddAverageBeamFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
738  void AddAverageGroupFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
739  void AddAverageUtFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
740  void AddAverageSatFwdUserLinkModcod(SatStatsHelper::OutputType_t outputType);
741 
742  // Return link PHY-level packet link MODCOD statistics.
743  SAT_STATS_NORMAL_SCOPE_METHOD_DECLARATION(RtnFeederLinkModcod)
744  void AddAverageBeamRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
745  void AddAverageGroupRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
746  void AddAverageUtRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
747  void AddAverageSatRtnFeederLinkModcod(SatStatsHelper::OutputType_t outputType);
748 
749  // Return link PHY-level packet link MODCOD statistics.
751  void AddAverageBeamRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
752  void AddAverageGroupRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
753  void AddAverageUtRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
754  void AddAverageSatRtnUserLinkModcod(SatStatsHelper::OutputType_t outputType);
755 
756  // Frame type usage statistics.
758 
759  // Beam service time statistics
760  void AddPerBeamBeamServiceTime(SatStatsHelper::OutputType_t outputType);
761 
762  // Antenna Gain statistics.
764  void AddAverageBeamAntennaGain(SatStatsHelper::OutputType_t outputType);
765  void AddAverageGroupAntennaGain(SatStatsHelper::OutputType_t outputType);
766  void AddAverageUtAntennaGain(SatStatsHelper::OutputType_t outputType);
767  void AddAverageSatAntennaGain(SatStatsHelper::OutputType_t outputType);
768 
769  // Fwd Link Scheduler SymbolRate statistics.
771  void AddGlobalFwdLinkSchedulerSymbolRate(SatStatsHelper::OutputType_t outputType);
772 
773  // Window load statistics
774  void AddGlobalRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
775  void AddPerGwRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
776  void AddPerBeamRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType);
777 
778  // ISL queue drop statistics
779  void AddGlobalPacketDropRate(SatStatsHelper::OutputType_t outputType);
780  void AddPerIslPacketDropRate(SatStatsHelper::OutputType_t outputType);
781 
787  static std::string GetOutputTypeSuffix(SatStatsHelper::OutputType_t outputType);
788 
789  protected:
793  virtual void DoDispose();
794 
795  private:
797  Ptr<const SatHelper> m_satHelper;
798 
800  std::string m_name;
801 
803  std::list<Ptr<const SatStatsHelper>> m_stats;
804 
806  std::set<std::string> m_names;
807 
808 }; // end of class StatStatsHelperContainer
809 
810 } // end of namespace ns3
811 
812 #endif /* SATELLITE_STATS_HELPER_CONTAINER_H */
Build a satellite network set with needed objects and configuration.
Container of SatStatsHelper instances.
void AddAverageGroupFwdAppDelay(SatStatsHelper::OutputType_t outputType)
void AddAverageSatFwdAppPlt(SatStatsHelper::OutputType_t outputType)
void AddAverageUtFwdFeederLinkModcod(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederLinkRxPower(SatStatsHelper::OutputType_t outputType)
std::list< Ptr< const SatStatsHelper > > m_stats
Maintains the active SatStatsHelper instances which have created.
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)
void AddGlobalRtnFeederWindowLoad(SatStatsHelper::OutputType_t outputType)
void AddAverageGroupRtnFeederDevThroughput(SatStatsHelper::OutputType_t outputType)
void AddAverageSatRtnFeederMacThroughput(SatStatsHelper::OutputType_t outputType)
SatStatsHelperContainer(Ptr< const SatHelper > satHelper)
Creates a new instance of container.
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)
Ptr< const SatHelper > m_satHelper
Satellite module helper for reference.
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 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)
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)
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)