#include <gui_main.h>
Public メソッド | |
MapViewerGUI () | |
コンストラクタ | |
virtual | ~MapViewerGUI () |
仮想デストラクタ。何もしない | |
bool | tryDequeueResult (std::string &result) |
実装クラスの同メソッドをコール | |
void | enqueueXml (const std::string &xml) |
実装クラスの同メソッドをコール | |
void | readConfigFrom (const ConfigData &cd) |
設定データを読み込む | |
bool | is_running () const |
Protected メソッド | |
int | svc () |
実装クラスの同メソッドをコール | |
Private 変数 | |
boost::shared_ptr< Impl > | impl_ |
内部実装クラスへのスマートポインタ | |
構成 | |
class | Impl |
MapViewerGUIの実装詳細クラス [詳細] |
RTコンポーネントから見たGUIのエントリクラス。ACE_Taskを継承し,別ス レッドとしてMapViewer のGUI部分を動かす。RTCとの通信は SharedQueueを介して行う。
スレッドのルーチンとして何を選ぶか迷ったが,以下の理由でACEを選択した。
また,複数のスレッドライブラリの共存を許さないとGUIからSharedQueueの 監視を行うスレッドをQthreadから起動することが選択肢から外れてしまう。 QThreadがつかえると,signal/slotでスレッド間通信ができて楽なのだが, これは出来ないため,GUIはTimerイベントでqueueをpollすることとした。
Queueをブロックせずにpollするために, にtry_dequeueメソッ ドを用意し,ブロックの必要がある場合は即座にfalseを返して抜けるよう にした。
MapViewerGUI::MapViewerGUI | ( | ) |
コンストラクタ
virtual MapViewerGUI::~MapViewerGUI | ( | ) | [inline, virtual] |
仮想デストラクタ。何もしない
bool MapViewerGUI::tryDequeueResult | ( | std::string & | result | ) |
void MapViewerGUI::enqueueXml | ( | const std::string & | xml | ) |
void MapViewerGUI::readConfigFrom | ( | const ConfigData & | cd | ) |
設定データを読み込む
[in] | cd | 設定データ |
bool MapViewerGUI::is_running | ( | ) | const |
int MapViewerGUI::svc | ( | ) | [protected] |
boost::shared_ptr<Impl> MapViewerGUI::impl_ [private] |