RINASim
October 2016
Documentation of framework for OMNeT++
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
IntTSimpleRouting.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <string>
4
#include <map>
5
6
#include <
IntRouting.h
>
7
8
#include "
common/nhLMetric.h
"
9
#include "
common/Routing_Module.h
"
10
11
using namespace
std
;
12
13
class
updateI
{};
14
15
template
<
class
T>
16
class
IntTSimpleRouting
:
public
IntRouting
,
public
common_Routing::Routing_Module
{
17
protected
:
18
T
infinite
;
19
20
public
:
21
virtual
void
setInfinite
(
const
T & inf) { infinite = inf; }
22
23
//Process a Routing Update, return true => inform FWDG of the update
24
virtual
bool
processUpdate(
IntRoutingUpdate
* update) = 0;
25
26
//Modules connection
27
virtual
void
chSendUpdate(
common_Routing::Routing_Update
* update,
const
Address
& dst,
common_Routing::Routing_Alg_I
*) = 0;
28
virtual
void
chScheduleAt(
common_Routing::Routing_Alg_I
* update,
const
simtime_t & t) = 0;
29
30
31
//Flow inserted/removed
32
virtual
void
insertFlow(
const
Address
&addr,
const
string
&dst,
const
string
& qos,
const
T &metric) = 0;
33
virtual
void
removeFlow(
const
Address
&addr,
const
string
&dst,
const
string
& qos) = 0;
34
35
//Get Changes // QoS // Dst // <metric, next hops>
36
virtual
map<string, map<string, common_GraphCL::nhLMetric<T> > > getChanges() = 0;
37
virtual
map<string, map<string, common_GraphCL::nhLMetric<T> > > getAll() = 0;
38
39
protected
:
40
// Called after initialize
41
virtual
void
onPolicyInit() = 0;
42
};
IntTSimpleRouting
Definition:
IntTSimpleRouting.h:16
common_Routing::Routing_Alg_I
Definition:
Routing_Module.h:13
updateI
Definition:
IntTSimpleRouting.h:13
IntTSimpleRouting::setInfinite
virtual void setInfinite(const T &inf)
Definition:
IntTSimpleRouting.h:21
Routing_Module.h
std
IntRoutingUpdate
Definition:
IntRoutingUpdate.h:35
nhLMetric.h
IntRouting
Definition:
IntRouting.h:37
IntTSimpleRouting::infinite
T infinite
Definition:
IntTSimpleRouting.h:18
IntRouting.h
common_Routing::Routing_Module
Definition:
Routing_Module.h:18
common_Routing::Routing_Update
Definition:
Routing_Module.h:9
Address
Address class holds IPC Process identification.
Definition:
Address.h:42
policies
DIF
Routing
TSimpleRouting
IntTSimpleRouting.h
Generated on Tue Oct 25 2016 21:08:57 for RINASim by
1.8.10