A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Portuguese
Docs ▼
Wiki
Manual
Models
Develop ▼
API
Bugs
API
src
flow-monitor
model
flow-classifier.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
//
3
// Copyright (c) 2009 INESC Porto
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: Gustavo J. A. M. Carneiro <gjc@inescporto.pt> <gjcarneiro@gmail.com>
19
//
20
21
#ifndef FLOW_CLASSIFIER_H
22
#define FLOW_CLASSIFIER_H
23
24
#include "ns3/simple-ref-count.h"
25
#include <ostream>
26
27
namespace
ns3
{
28
33
typedef
uint32_t
FlowId
;
34
39
typedef
uint32_t
FlowPacketId
;
40
41
53
class
FlowClassifier
:
public
SimpleRefCount
<FlowClassifier>
54
{
55
private
:
56
FlowId
m_lastNewFlowId
;
57
59
FlowClassifier
(
FlowClassifier
const
&);
62
FlowClassifier
&
operator=
(
FlowClassifier
const
&);
63
64
public
:
65
66
FlowClassifier
();
67
virtual
~FlowClassifier
();
68
72
virtual
void
SerializeToXmlStream
(std::ostream &os, uint16_t
indent
)
const
= 0;
73
74
protected
:
77
FlowId
GetNewFlowId
();
78
83
void
Indent
(std::ostream &os, uint16_t level)
const
;
84
85
};
86
87
inline
void
88
FlowClassifier::Indent
(std::ostream &os, uint16_t level)
const
89
{
90
for
(uint16_t __xpto = 0; __xpto < level; __xpto++) os <<
' '
;
91
}
92
93
94
}
// namespace ns3
95
96
#endif
/* FLOW_CLASSIFIER_H */
ns3::FlowPacketId
uint32_t FlowPacketId
Abstract identifier of a packet within a flow.
Definition:
flow-classifier.h:39
ns3::FlowClassifier::FlowClassifier
FlowClassifier()
Definition:
flow-classifier.cc:25
ns3::FlowClassifier::GetNewFlowId
FlowId GetNewFlowId()
Returns a new, unique Flow Identifier.
Definition:
flow-classifier.cc:36
ns3::FlowClassifier::SerializeToXmlStream
virtual void SerializeToXmlStream(std::ostream &os, uint16_t indent) const =0
Serializes the results to an std::ostream in XML format.
check-style.indent
def indent(source, debug, level)
Definition:
check-style.py:424
ns3::FlowClassifier::~FlowClassifier
virtual ~FlowClassifier()
Definition:
flow-classifier.cc:31
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::FlowClassifier::operator=
FlowClassifier & operator=(FlowClassifier const &)
Defined and not implemented to avoid misuse.
ns3::FlowClassifier::Indent
void Indent(std::ostream &os, uint16_t level) const
Add a number of spaces for indentation purposes.
Definition:
flow-classifier.h:88
ns3::FlowClassifier::m_lastNewFlowId
FlowId m_lastNewFlowId
Last known Flow ID.
Definition:
flow-classifier.h:56
ns3::SimpleRefCount
A template-based reference counting class.
Definition:
simple-ref-count.h:73
ns3::FlowId
uint32_t FlowId
Abstract identifier of a packet flow.
Definition:
flow-classifier.h:33
ns3::FlowClassifier
Provides a method to translate raw packet data into abstract flow identifier and packet identifier pa...
Definition:
flow-classifier.h:53
Generated on Wed Nov 7 2018 10:01:53 for ns-3 by
1.8.14