A Discrete-Event Network Simulator
API
packet-data-calculators.cc
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2008 Drexel University
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: Joe Kopena (tjkopena@cs.drexel.edu)
19  */
20 
21 #include "ns3/log.h"
22 #include "ns3/packet.h"
23 #include "ns3/mac48-address.h"
24 
25 #include "ns3/basic-data-calculators.h"
27 
28 using namespace ns3;
29 
30 NS_LOG_COMPONENT_DEFINE ("PacketDataCalculators");
31 
32 //--------------------------------------------------------------
33 //----------------------------------------------
35 {
37 }
38 
40 {
42 }
43 /* static */
44 TypeId
46 {
47  static TypeId tid = TypeId ("ns3::PacketCounterCalculator")
49  .SetGroupName ("Network")
50  .AddConstructor<PacketCounterCalculator> ()
51  ;
52  return tid;
53 }
54 void
56 {
58 
60  // PacketCounterCalculator::DoDispose
61 }
62 
63 void
65  Ptr<const Packet> packet)
66 {
68 
70 
71  // PacketCounterCalculator::Update
72 }
73 void
75  Ptr<const Packet> packet,
76  Mac48Address realto)
77 {
79 
81 
82  // PacketCounterCalculator::Update
83 }
84 
85 
86 
87 
88 //--------------------------------------------------------------
89 //----------------------------------------------
91 {
93 }
94 
96 {
98 }
99 /* static */
100 TypeId
102 {
103  static TypeId tid = TypeId ("ns3::PacketSizeMinMaxAvgTotalCalculator")
105  .SetGroupName ("Network")
106  .AddConstructor<PacketSizeMinMaxAvgTotalCalculator> ()
107  ;
108  return tid;
109 }
110 void
112 {
114 
116  // end PacketSizeMinMaxAvgTotalCalculator::DoDispose
117 }
118 
119 void
121  Ptr<const Packet> packet)
122 {
124 
126 
127  // end PacketSizeMinMaxAvgTotalCalculator::Update
128 }
129 void
131  Ptr<const Packet> packet,
132  Mac48Address realto)
133 {
135 
137 
138  // end PacketSizeMinMaxAvgTotalCalculator::Update
139 }
virtual void DoDispose(void)
Dispose of this Object.
void Update()
Increments count by 1.
an EUI-48 address
Definition: mac48-address.h:44
virtual void DoDispose(void)
Dispose of this Object.
void Update(const T i)
Updates all variables of MinMaxAvgTotalCalculator.
A stat for counting packets.
static TypeId GetTypeId(void)
Register this type.
virtual void DoDispose(void)
Dispose of this Object.
void FrameUpdate(std::string path, Ptr< const Packet > packet, Mac48Address realto)
Increments the packet counter by one.
void PacketUpdate(std::string path, Ptr< const Packet > packet)
Increments the packet counter by one.
uint32_t GetSize(void) const
Returns the the size in bytes of the packet (including the zero-filled initial payload).
Definition: packet.h:856
A stat for collecting packet size statistics: min, max and average.
void FrameUpdate(std::string path, Ptr< const Packet > packet, Mac48Address realto)
Increments the packet stats by the size of the packet.
static TypeId GetTypeId(void)
Register this type.
virtual void DoDispose(void)
Dispose of this Object.
void PacketUpdate(std::string path, Ptr< const Packet > packet)
Increments the packet stats by the size of the packet.
a unique identifier for an interface.
Definition: type-id.h:59
TypeId SetParent(TypeId tid)
Set the parent TypeId.
Definition: type-id.cc:922
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition: log.h:205
#define NS_LOG_FUNCTION_NOARGS()
Output the name of the function.
Every class exported by the ns3 library is enclosed in the ns3 namespace.