File Overlay/Vast/OverlayVast.ned

Contains:

//
// Copyright (C) 2006 Institut fuer Telematik, Universitaet Karlsruhe (TH)
//
// 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.
//

// @file OverlayVast.ned
// @author Helge Backhaus
//
import
    "NeighborsList",
    "Vast";

module OverlayVast

    parameters:
        localPort: numeric,
        debugOutput: bool,
        keyLength : numeric,
        measureNetwInitPhase: bool,
        drawOverlayTopology : bool,
        hopCountMax : numeric,

        lookupNumberNextHops : numeric,
        lookupParallelPaths : numeric,
        lookupParallelRpcs : numeric,
        lookupSecure : bool,
        lookupMerge : bool,
	lookupFailedNodeRpcs : bool,

        useBaseLookup : bool,
        iterativeLookup : bool,

        debugVastOutput: bool,
        AOI_size: numeric,
        joinTimeout: numeric,
        pingTimeout: numeric;

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

    submodules:
        vast: Vast;
            parameters:
                localPort=localPort,
                debugOutput=debugOutput,

                keyLength=keyLength,
                measureNetwInitPhase=measureNetwInitPhase,
                drawOverlayTopology=drawOverlayTopology,
                hopCountMax=hopCountMax,

                lookupNumberNextHops=lookupNumberNextHops,
                lookupParallelPaths=lookupParallelPaths,
                lookupParallelRpcs=lookupParallelRpcs,
                lookupSecure=lookupSecure,
                lookupMerge=lookupMerge,
		lookupFailedNodeRpcs=lookupFailedNodeRpcs,

                useBaseLookup=useBaseLookup,
                iterativeLookup=iterativeLookup,

                debugVastOutput=debugVastOutput,
                AOI_size=AOI_size,
                joinTimeout=joinTimeout,
                pingTimeout=pingTimeout;
            display: "p=60,60;i=block/circle";

        neighborsList: NeighborsList;
            display: "p=180,60;i=block/table";

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