Imported NED file not found by another NED file

30 Views Asked by At

I have installed omnet++ 6 and inet 4.3.9 as well as inet4.5. For UE,eNodeB,PGW,Router, created separate NED files and imported in my main NED file like this." import enodeb;" considering my file name is enodeb.ned. Also, all ned files are under same project. But error says--> imported NED type not found: 'enodeb'. Referenced inet 4.5 also. all modules and gates are defined in seperate files in same project folder

Expecting to run this LTE architecture NED file correctly.

code as below:

import inet.common.packet.recorder.PcapRecorder;
import inet.networklayer.configurator.ipv4.Ipv4FlatNetworkConfigurator;
import inet.node.inet.Router;
import inet.node.internetcloud.InternetCloud;
import inet.node.wireless.AccessPoint;
import inet.node.xmipv6.HomeAgent6;
import inet.queueing.flow.FlowMeasurementRecorder;
import simu5g.common.binder.Binder;
import simu5g.nodes.PgwStandard;
import simu5g.nodes.Ue;
import simu5g.nodes.eNodeB;
import simu5g.stack.phy.ChannelModel.LteChannelModel;
import simu5g.world.radio.LteChannelControl;
import ue;
import enodeb;
import Router;
import internet;
import PGW;
//
// TODO documentation
//

network Network
{
    @display("bgb=669,388");
    
   
    types:
        channel C extends ned.DatarateChannel
        {
            datarate = 100Mbps;
        }
 

    submodules:
        ue: Ue {
            @display("p=168,95");
        }
        ue1: Ue {
            @display("p=275,286");
        }
        eNodeB: eNodeB {
            @display("p=275,147");
        }
        binder: Binder {
            @display("p=24,252");
        }
        pgwStandard: PgwStandard {
            @display("p=467,147");
        }
        ipv4FlatNetworkConfigurator: Ipv4FlatNetworkConfigurator {
            @display("p=34,173");
        }
        internetCloud: InternetCloud {
            @display("p=592,110");
        }
        router: Router {
            @display("p=375,130");
        }
        flowMeasurementRecorder: FlowMeasurementRecorder {
            @display("p=28,105");
        }

        lteChannelModel: LteChannelModel {
            @display("p=28,325");
        }
        
        connections:
           // Wireless connections between UEs and eNodeB using DatarateChannel
    Ue.enodeb_out --> eNodeB.ue_in;
    ue1.enodeb_out --> eNodeB.ue_in;
    eNodeB.ue_out --> ue.enodeb_in;
    eNodeB.ue_out --> ue1.enodeb_in;
    eNodeB.rou_out --> router.enb_in;
    router.enb_out --> eNodeB.rou_in;
    router.pgw_out --> pgwStandard.router_in;
    pgwStandard.router_out -->router.pgw_in;
    pgwStandard.internet_out --> internetCloud.in;
    internetCloud.out --> pgwStandard.internet_in
       
}
1

There are 1 best solutions below

1
Rudi On

If you have your Ned types in the same folder where the Network is defined, you don't have to import them. They are imported implicitly (i.e. you can use any modules defined in the same folder without any import statment).

What you wrote, tried to import those names from the package root, not from the current directory)