Мне нужно создать протокол маршрутизации MANET, поэтому я смотрю исходный код GPSR и DSDV в INET, чтобы понять, как это сделать.
Я проверил файлы DsdvHello.msg
и Gpsr.msg
, в которых определены классы, представляющие пакеты этих протоколов. Эти классы расширяют класс FieldsChunk
. Я предположил, что мне нужно определить пакеты своего протокола таким же образом, поэтому я сделал файл Protocolo.msg
в своем проекте следующим образом.
cplusplus {{
#include "inet/common/packet/chunk/FieldsChunk.h"
#include "inet/networklayer/contract/ipv6/Ipv6Address.h"
}}
class FieldsChunk;
class Ipv6Address;
class Hola extends FieldsChunk {
Ipv6Address ip;
string ubicacion;
}
class Adios extends FieldsChunk {
Ipv6Address ip;
}
Я не уверен, что делаю правильно, но я делаю это, как я вижу в DsdvHello.msg
и Gpsr.msg
и в главе «Определения сообщений» в Руководстве по моделированию OMNeT ++.
Я выбрал INET в Project> Properties> Project References, но когда я создаю свой проект, я получаю сообщение fatal error: inet/common/packet/chunk/FieldsChunk.h: No such file or directory
, когда он пытается скомпилировать мой .msg
файл.
У меня также есть файл NED, который без проблем использует IManetRouting (также из INET), но по какой-то причине он не находит FieldsChunk.h
и IPv6Address.h
внутри файла .msg
.
Может ли кто-нибудь сказать мне, нужно ли мне делать что-нибудь еще, чтобы использовать эти классы в моем .msg
файле?