File Overlay/Koorde/OverlayKoorde.ned

Contains:

//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
//

import
	"../Chord/ChordSuccessorList",
	"Koorde";

module OverlayKoorde

	parameters:
		debugOutput : bool,
		measureNetwInitPhase : bool,
	joinOnApplicationRequest : bool, // only join the overlay on application request
                lookupRedundantNodes : numeric,
                lookupParallelPaths : numeric,
                lookupParallelRpcs : numeric,
                lookupSecure : bool,
                lookupMerge : bool,
		lookupFailedNodeRpcs : bool,

		keyLength : numeric,
		hopCountMax : numeric,
		drawOverlayTopology : bool,	
		localPort : numeric;

	gates:
        	in: from_udp;
        	out: to_udp;
		in: from_app;
		out: to_app;

	submodules:
        	koorde: Koorde;
			parameters: 
				debugOutput = debugOutput,
				measureNetwInitPhase = measureNetwInitPhase,
				keyLength = keyLength,
				joinOnApplicationRequest = joinOnApplicationRequest,
                                lookupRedundantNodes = lookupRedundantNodes,
                                lookupParallelPaths = lookupParallelPaths,
                                lookupParallelRpcs = lookupParallelRpcs,
                                lookupSecure = lookupSecure,
                                lookupMerge = lookupMerge,
				lookupFailedNodeRpcs = lookupFailedNodeRpcs,
				hopCountMax = hopCountMax,
				localPort = localPort,
				drawOverlayTopology = drawOverlayTopology;

            		display: "p=60,60;i=block/circle";

		successorList: ChordSuccessorList;
			display: "p=240,60;i=block/table";
		deBruijnList: ChordSuccessorList;
			display: "p=300,60;i=block/table";
	

	connections:
		from_udp --> koorde.from_udp++;
		to_udp <-- koorde.to_udp++;
		from_app --> koorde.from_app;
		to_app <-- koorde.to_app;

endmodule