Добавить функцию в венах, используя TraCIcommandInterface - PullRequest
1 голос
/ 25 апреля 2020

Я хочу добавить функцию под названием getFollowSpeed в Венах, но получаю ошибку. Я уже определил имя функции в TraCIcommandInterface.cc и TraCIcommandInterface.h.

Я также определил функцию в TraCIconstant.h.

. См. Прилагаемый код в TraCIcommandInterface.cc.

double TraCICommandInterface::Vehicle::getFollowSpeed(double speed, double gap, double leaderSpeed, double leaderMaxDecel, const std::string leaderID)
{

    uint8_t variableId = VAR_FOLLOW_SPEED;
    uint8_t variableType = TYPE_COMPOUND;
    int32_t count = 5;
    uint8_t speedType = TYPE_DOUBLE;
    uint8_t gapType = TYPE_DOUBLE;
    uint8_t leaderSpeedType = TYPE_DOUBLE;
    uint8_t leaderMaxDecelType = TYPE_DOUBLE;
    uint8_t LeaderIdType = TYPE_STRING;

    TraCIBuffer request;
    request << variableId << nodeId << variableType << speedType << speed << gapType << gap <<
            leaderSpeedType << leaderSpeed << leaderMaxDecelType << leaderMaxDecel << LeaderIdType << leaderID ;


    TraCIBuffer response = connection->query(CMD_GET_VEHICLE_VARIABLE,request);

    ASSERT(buf.eof());

}

Вот сообщение об ошибке, которое я получил во время работы Omnet ++ и Sumo по венам.

Сервер TraCI сообщил об ошибке при выполнении команды 0xa4 («Получить переменную транспортного средства: неподдерживаемая переменная 0x1 * 1024» * указано "). - в модуле (TraCIDemo11p) RSUExampleScenario.node [0] .appl (id = 14), при t = 1 с, событие # 2

Я использую Вены 4.7.1 и O mnet 5.3 и сумо 0.32.0.

Может ли кто-нибудь помочь мне с этим? Почему я получаю эту ошибку. Я уже определил функцию. Я был бы очень благодарен за это.

Заранее спасибо.

1 Ответ

0 голосов
/ 25 апреля 2020

VAR_FOLLOW_SPEED недоступно в SUMO 0.32.0. Функция getFollowSpeed была недавно добавлена ​​к текущей GIT версии SUMO. См. SUMO changelog .

...