RINASim
October 2016
Documentation of framework for OMNeT++
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
SimpleEdgeForwarding.h
Go to the documentation of this file.
1
// The MIT License (MIT)
2
//
3
// Copyright (c) 2014-2016 Brno University of Technology, PRISTINE project
4
//
5
// Permission is hereby granted, free of charge, to any person obtaining a copy
6
// of this software and associated documentation files (the "Software"), to deal
7
// in the Software without restriction, including without limitation the rights
8
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
// copies of the Software, and to permit persons to whom the Software is
10
// furnished to do so, subject to the following conditions:
11
//
12
// The above copyright notice and this permission notice shall be included in
13
// all copies or substantial portions of the Software.
14
//
15
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
// THE SOFTWARE.
22
23
#pragma once
24
25
#include "
SimpleDCForwarding.h
"
26
27
namespace
NSPSimpleDC
{
28
29
using namespace
std
;
30
31
struct
eFWDEntry
{
32
bool
entryType
;
//false == NONE, true == DOWN
33
bool
inverseStorage
;
34
set<Port>
ports
;
35
36
eFWDEntry
();
37
};
38
39
class
SimpleEdgeForwarding
:
public
iSimpleDCForwarding
{
40
41
public
:
42
bool
setNeigh(
const
DCAddr
& n_addr,
Port
port);
43
void
setDst(
const
DCAddr
& n_addr,
const
set<DCAddr> & next);
44
void
finish();
45
46
47
protected
:
48
int
downCount
;
49
Port
*
portsArray
;
50
vector<Port>
downV
;
51
map<DCAddr, eFWDEntry>
table
;
52
53
void
onPolicyInit();
54
vector<Port> search(
const
DCAddr
& n_addr);
55
56
eFWDEntry
getFWDEntry(
const
set<int> & pIds);
57
};
58
59
}
NSPSimpleDC::SimpleEdgeForwarding::downCount
int downCount
Definition:
SimpleEdgeForwarding.h:48
std
SimpleDCForwarding.h
NSPSimpleDC::SimpleEdgeForwarding
Definition:
SimpleEdgeForwarding.h:39
NSPSimpleDC::eFWDEntry::entryType
bool entryType
Definition:
SimpleEdgeForwarding.h:32
NSPSimpleDC::DCAddr
Definition:
DCAddr.h:9
NSPSimpleDC::eFWDEntry
Definition:
SimpleEdgeForwarding.h:31
NSPSimpleDC::eFWDEntry::inverseStorage
bool inverseStorage
Definition:
SimpleEdgeForwarding.h:33
NSPSimpleDC::eFWDEntry::ports
set< Port > ports
Definition:
SimpleEdgeForwarding.h:34
NSPSimpleDC::SimpleEdgeForwarding::downV
vector< Port > downV
Definition:
SimpleEdgeForwarding.h:50
NSPSimpleDC::SimpleEdgeForwarding::portsArray
Port * portsArray
Definition:
SimpleEdgeForwarding.h:49
NSPSimpleDC::iSimpleDCForwarding
Definition:
SimpleDCForwarding.h:40
NSPSimpleDC::SimpleEdgeForwarding::table
map< DCAddr, eFWDEntry > table
Definition:
SimpleEdgeForwarding.h:51
RMTPort
Definition:
RMTPort.h:36
NSPSimpleDC
Definition:
SimpleDCGenerator.cc:21
policies
DIF
RMT
PDUForwarding
SimpleDCForwarding
Edge
SimpleEdgeForwarding.h
Generated on Tue Oct 25 2016 21:08:56 for RINASim by
1.8.10