A Discrete-Event Network Simulator
API
phy-tx-stats-calculator.h
Go to the documentation of this file.
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
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: Jaume Nin <jnin@cttc.es>
19  * modified by: Marco Miozzo <mmiozzo@cttc.es>
20  * Convert MacStatsCalculator in PhyTxStatsCalculator
21  */
22 
23 #ifndef PHY_TX_STATS_CALCULATOR_H_
24 #define PHY_TX_STATS_CALCULATOR_H_
25 
26 #include "ns3/lte-stats-calculator.h"
27 #include "ns3/nstime.h"
28 #include "ns3/uinteger.h"
29 #include <string>
30 #include <fstream>
31 #include <ns3/lte-common.h>
32 
33 namespace ns3 {
34 
51 {
52 public:
57 
61  virtual ~PhyTxStatsCalculator ();
62 
63  // Inherited from ns3::Object
68  static TypeId GetTypeId (void);
69 
75  void SetUlTxOutputFilename (std::string outputFilename);
76 
81  std::string GetUlTxOutputFilename (void);
82 
88  void SetDlTxOutputFilename (std::string outputFilename);
89 
94  std::string GetDlTxOutputFilename (void);
95 
101 
107 
108 
117  std::string path, PhyTransmissionStatParameters params);
118 
127  std::string path, PhyTransmissionStatParameters params);
128 
129 private:
137 
145 
146 };
147 
148 } // namespace ns3
149 
150 #endif /* PHY_TX_STATS_CALCULATOR_H_ */
Base class for ***StatsCalculator classes.
Smart pointer class similar to boost::intrusive_ptr.
Definition: ptr.h:73
bool m_dlTxFirstWrite
When writing DL TX PHY statistics first time to file, columns description is added.
void SetDlTxOutputFilename(std::string outputFilename)
Set the name of the file where the DL TX PHY statistics will be stored.
std::string GetDlTxOutputFilename(void)
Get the name of the file where the DL TX PHY statistics will be stored.
void DlPhyTransmission(PhyTransmissionStatParameters params)
Notifies the stats calculator that an downlink trasmission has occurred.
std::string GetUlTxOutputFilename(void)
Get the name of the file where the UL RX PHY statistics will be stored.
Takes care of storing the information generated at PHY layer regarding transmission.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
bool m_ulTxFirstWrite
When writing UL TX PHY statistics first time to file, columns description is added.
static void DlPhyTransmissionCallback(Ptr< PhyTxStatsCalculator > phyTxStats, std::string path, PhyTransmissionStatParameters params)
trace sink
virtual ~PhyTxStatsCalculator()
Destructor.
static void UlPhyTransmissionCallback(Ptr< PhyTxStatsCalculator > phyTxStats, std::string path, PhyTransmissionStatParameters params)
trace sink
void SetUlTxOutputFilename(std::string outputFilename)
Set the name of the file where the UL Tx PHY statistics will be stored.
a unique identifier for an interface.
Definition: type-id.h:58
static TypeId GetTypeId(void)
Register this type.
void UlPhyTransmission(PhyTransmissionStatParameters params)
Notifies the stats calculator that an uplink trasmission has occurred.