次のように、omnet++/veins に実装されていないように見えるいくつかの相撲/traci コマンドを使用したいと思います。
- たとえば、信号機コマンド setRedYellowGreenState(tlsID, state)
- ジャンクションコマンド
- およびその他のコマンド
これらのコマンドを omnet++/veins から使用できるようにする最も簡単な方法は何ですか?
助けてくれてありがとう。よろしく:)
たとえば、TL プログラムを設定するために、TraCICommandInterface.cc で SUMO と対話するための既存のクライアント ソース コードを見つけることができます。
TraCIBuffer buf = connection->query(CMD_SET_TL_VARIABLE, TraCIBuffer()
<< static_cast<uint8_t>(TL_PROGRAM)
<< trafficLightId
<< static_cast<uint8_t>(TYPE_STRING)
<< program
);
対応するサーバーのソース コードは、TraCIServerAPI_TLS.cpp にあります。たとえば、TL プログラムを設定します。
// variable & id
int variable = inputStorage.readUnsignedByte();
std::string id = inputStorage.readString();
// [...] case TL_PROGRAM:
server.readTypeCheckingString(inputStorage, subID)
vars.switchTo(tlsControl, subID);
サーバーがクライアントとやり取りする準備ができている方法 (およびクライアントが既にサーバーとやり取りしている方法) を調査することで、希望に応じてクライアントを拡張できるはずです。