Loading...
Searching...
No Matches
satellite-stats-signalling-load-helper.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 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation;
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 *
18 * Author: Budiarto Herman <budiarto.herman@magister.fi>
19 *
20 */
21
22#ifndef SATELLITE_STATS_SIGNALLING_LOAD_HELPER_H
23#define SATELLITE_STATS_SIGNALLING_LOAD_HELPER_H
24
26
27#include "ns3/address.h"
28#include "ns3/collector-map.h"
29#include "ns3/ptr.h"
30
31#include <list>
32#include <map>
33#include <utility>
34
35namespace ns3
36{
37
38// BASE CLASS /////////////////////////////////////////////////////////////////
39
40class SatHelper;
41class Node;
42class Packet;
43class DataCollectionObject;
44
51{
52 public:
53 // inherited from SatStatsHelper base class
54 SatStatsSignallingLoadHelper(Ptr<const SatHelper> satHelper);
55
60
64 static TypeId GetTypeId();
65
70 void InstallProbes();
71
81 void SignallingTxCallback(Ptr<const Packet> packet, const Address& to);
82
83 protected:
84 // inherited from SatStatsHelper base class
85 void DoInstall();
86
90 virtual void DoInstallProbes() = 0;
91
94
97
99 Ptr<DataCollectionObject> m_aggregator;
100
101}; // end of class SatStatsSignallingLoadHelper
102
103// FORWARD LINK ///////////////////////////////////////////////////////////////
104
123{
124 public:
125 // inherited from SatStatsHelper base class
126 SatStatsFwdSignallingLoadHelper(Ptr<const SatHelper> satHelper);
127
132
136 static TypeId GetTypeId();
137
138 protected:
139 // inherited from SatStatsThroughputHelper base class
140 void DoInstallProbes();
141
142}; // end of class SatStatsFwdSignallingLoadHelper
143
144// RETURN LINK ////////////////////////////////////////////////////////////////
145
146class Probe;
147
166{
167 public:
168 // inherited from SatStatsHelper base class
169 SatStatsRtnSignallingLoadHelper(Ptr<const SatHelper> satHelper);
170
175
179 static TypeId GetTypeId();
180
184 virtual void UpdateIdentifierOnProbes();
185
186 protected:
187 // inherited from SatStatsThroughputHelper base class
188 void DoInstallProbes();
189
190 private:
192 std::map<Ptr<Probe>, std::pair<Ptr<Node>, uint32_t>> m_probes;
193
194}; // end of class SatStatsRtnSignallingLoadHelper
195
196} // end of namespace ns3
197
198#endif /* SATELLITE_STATS_SIGNALLING_LOAD_HELPER_H */
Build a satellite network set with needed objects and configuration.
SatStatsFwdSignallingLoadHelper(Ptr< const SatHelper > satHelper)
static TypeId GetTypeId()
inherited from ObjectBase base class
SatStatsHelper(Ptr< const SatHelper > satHelper)
Creates a new helper instance.
SatStatsRtnSignallingLoadHelper(Ptr< const SatHelper > satHelper)
std::map< Ptr< Probe >, std::pair< Ptr< Node >, uint32_t > > m_probes
Maintains a list of probes created by this helper.
static TypeId GetTypeId()
inherited from ObjectBase base class
virtual void UpdateIdentifierOnProbes()
Change identifier used on probes, when handovers occur.
Ptr< DataCollectionObject > m_aggregator
The aggregator created by this helper.
void DoInstall()
Install the probes, collectors, and aggregators necessary to produce the statistics output.
void InstallProbes()
Set up several probes or other means of listeners and connect them to the first-level collectors.
CollectorMap m_terminalCollectors
Maintains a list of second-level collectors created by this helper.
void SignallingTxCallback(Ptr< const Packet > packet, const Address &to)
Receive inputs from trace sources and determine the right collector to forward the inputs to.
static TypeId GetTypeId()
inherited from ObjectBase base class
SatStatsSignallingLoadHelper(Ptr< const SatHelper > satHelper)
CollectorMap m_conversionCollectors
Maintains a list of first-level collectors created by this helper.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.