Ошибка: Класс «BaseStation» не найден — возможно, его код не был связан, или класс не был зарегистрирован с помощью Register_Class() или, в случае модулей и каналов, с помощью Define_Module()/Define_Channel() — в модуле (omnetpp::cModule) SimulationNetwork (id=1), во время настройки сети
Я проверил, что с вызовами BaseStation все в порядке, но я не могу понять, где находится ошибка.
Было бы здорово, если бы вы мне помогли, это действительно спасет мне жизнь.
Заранее спасибо.
У меня есть 3 файла ned: Node.ned, BaseStation.ned и Network.ned:
Node.ned:
Код: Выделить всё
package _6g_simulation;
simple Node {
parameters:
int id;
@display("i=device/laptop");
gates:
inout inoutg[];
}
Код: Выделить всё
package _6g_simulation;
simple BaseStation {
parameters:
@display("i=device/server");
gates:
inout inoutg[];
}
Код: Выделить всё
package _6g_simulation;
import _6g_simulation.BaseStation;
import _6g_simulation.Node;
network SimulationNetwork
{
submodules:
basestation: BaseStation {
@display("p=40,111");
}
edgeNode[5]: Node {
@display("p=150,38");
}
endUser[10]: Node {
@display("p=241,64");
}
connections allowunconnected:
// Connect base station to edge nodes
for i=0..4 {
basestation.inoutg[i] edgeNode[i].inoutg[0];
}
// Connect edge nodes to end users
for i=0..9 {
edgeNode[i % 5].inoutg[0] endUser[i].inoutg[0];
}
}
Код: Выделить всё
[General]
network = _6g_simulation.SimulationNetwork
Код: Выделить всё
#include
using namespace omnetpp;
class BaseStation : public cSimpleModule {
protected:
virtual void initialize() override;
virtual void handleMessage(cMessage *msg) override;
};
Define_Module(BaseStation);
void BaseStation::initialize() {
EV
Подробнее здесь: [url]https://stackoverflow.com/questions/78712437/omnet-simulation-class-not-found-perhaps-its-code-was-not-linked-in[/url]
Мобильная версия