Указатель на объект в файле .msg

#c #omnet #inet

Вопрос:

В настоящее время я внедряю планировщик, для которого мне нужно больше информации о каждом кадре, чем содержится в сообщении и его стандартных заголовках. Я создал объект, содержащий всю информацию, и теперь я хочу добавить указатель на файл .msg, указывающий на объект informatino. Файл .msg используется для последующего добавления информации в кадр.

Для этого я создал новый файл сообщений.

 cplusplus{{
#include "inet/common/TagBase_m.h"
#include <cstdint>
}}

class noncobject inet::TagBase;

namespace nesting;

class FilterTag extends inet::TagBase
{
    intptr_t streamFilterID; 
    simtime_t etT; 
    simtime_t startTime; 
    simtime_t endTime;  
}
 

К сожалению, INET v4.1.2 не позволяет добавлять указатели из коробки. Вот почему я попытался изменить свой указатель и добавить вместо него, включив. intptr_t <cstdint> Однако при этом я сталкиваюсь с этой ошибкой:

Ошибка: неизвестный тип «intptr_t» для поля «streamFilterID» в «Теге фильтра»

Похоже, мой импорт работает не так, как я думал. Как бы мне удалось заставить мой файл .msg распознавать intptr_t ? Есть ли лучший способ сделать то, что я пытаюсь сделать?

Ответ №1:

Добавьте следующую строку в определение вашего сообщения:

 class noncobject intptr_t;
 

Он сообщает компилятору сообщений, что intptr_t это внешний тип.

Комментарии:

1. Можете ли вы указать мне на документацию по этому вопросу ? Я еще не нашел его в Интернете.

2. Вот вы где: Руководство по моделированию .