私は自分のUDPアプリケーションをinetのUDPBasicAppから実装しようとしています。私はこのようになりますVoIPApp.ccを作成しました:omnet ++のUDPBasicApp由来アプリケーションが登録されていないか、またはリンクされていません
#include <omnetpp.h>
class VoIPApp: public inet::UDPBasicApp {
public:
};
Register_Class(VoIPApp);
私は私のnetwork.nedファイル内のアプリを宣言:
import inet.networklayer.configurator.ipv4.FlatNetworkConfigurator;
import inet.node.inet.StandardHost;
import ned.DatarateChannel;
import inet.applications.udpapp.UDPBasicApp;
simple VoIPApp extends UDPBasicApp
{
@class(VoIPApp);
}
network VoIPNetwork
{
@display("bgb=561,272");
types:
channel standardChannel extends DatarateChannel
{
delay = default(10ms);
datarate = default(10Mbps);
}
submodules:
host1: StandardHost {
@display("p=108,96");
}
host2: StandardHost {
@display("p=431,96");
}
flatNetworkConfigurator: FlatNetworkConfigurator {
@display("p=253,31");
}
host3: StandardHost {
@display("p=250,221");
}
connections:
host1.pppg++ <--> standardChannel <--> host2.pppg++;
host1.pppg++ <--> standardChannel <--> host3.pppg++;
host3.pppg++ <--> standardChannel <--> host2.pppg++;
}
そして私は3つのStandardHostでノードの少なくとも一方が使用するように設定omnetpp.iniで、このアプリ:私はこれを実行すると
[General]
network = VoIPNetwork
repeat = 1
sim-time-limit = 100s
**.networkConfiguratorModule = ""
#Measure
**.ppp[*].numInputHooks = 1
**.ppp[*].inputHook[0].typename = "ThruputMeter"
**.vector-recording = false
# Client settings
**.host1.numUdpApps = 1
**.host1.udpApp[0].typename = "VoIPApp"
**.host1.udpApp[0].destAddresses = "host2 host3"
**.host1.udpApp[0].destPort = 5000
**.host1.udpApp[0].localPort = 5000
**.host1.udpApp[0].messageLength = 32B + 40B #Data: 32B, Header: 40B = 20B(IP) + 8B(UDP) + 12B(RTP)
**.host1.udpApp[0].sendInterval = 20ms # 1000ms/20ms = 50 packets per second.
**.host2.numUdpApps = 1
**.host2.udpApp[0].typename = "UDPBasicApp"
**.host2.udpApp[0].destAddresses = "host1 host3"
**.host2.udpApp[0].destPort = 5000
**.host2.udpApp[0].localPort = 5000
**.host2.udpApp[0].messageLength = 32B + 40B
**.host2.udpApp[0].sendInterval = 20ms
**.host3.numUdpApps = 1
**.host3.udpApp[0].typename = "UDPBasicApp"
**.host3.udpApp[0].destAddresses = "host1 host2"
**.host3.udpApp[0].destPort = 5000
**.host3.udpApp[0].localPort = 5000
**.host3.udpApp[0].messageLength = 32B + 40B
**.host3.udpApp[0].sendInterval = 20ms
私は次のエラーを取得する:
Error in module (omnetpp::cModule) VoIPNetwork.host1 (id=2) during network setup: Class "VoIPApp" not found -- perhaps its code was not linked in, or the class wasn't registered with Register_Class(), or in the case of modules and channels, with Define_Module()/Define_Channel().
私はまた、Define_Module()をRegister_Class()の代わりに使用して、同じエラーを発生させました。
私には何が欠けていますか?
'VoIPApp.cc'と' VoIPApp.ned'ファイルは、別々のプロジェクトやINET 'src/inet/applications/udpapp'にどこに置いていますか? –