#include <service_if.h>
Public 型 | |
typedef RTC::CorbaConsumer < RGIS::RTComp::MapService > | MapService_t |
MapService_t RGISのMapServiceオブジェクトを表す型 | |
typedef RTC::CorbaConsumer < RGIS::RTComp::RouteService > | RouteService_t |
RouteService_t RGISのRouteServiceオブジェクトを表す型 | |
Public メソッド | |
ServiceIF (MapService_t &ms, RouteService_t &rs) | |
constructor. | |
virtual | ~ServiceIF () |
仮想デストラクタ。何もしない | |
void | initialize () |
初期状態に復帰 | |
bool | setDestination (const RGIS::PntC &dest, NavData::PotentialGrid &grid) |
目的地をセットする。ポテンシャルグリッドを出力. | |
bool | setCurrentPosition (const CurPos &pos, Path &path) |
現在地をセット 最短経路を出力. | |
bool | storeProbabilityMap (const GridMap &gm) |
確率グリッドをセットし,内部に保存. | |
bool | recalcPotentialGrid (NavData::PotentialGrid &grid) |
PotentialGrid再計算を開始 | |
bool | getDestination (RGIS::PntC &dest) const |
目的地が設定されていれば,それを返す。 | |
bool | getCurrentPos (CurPos &pos) const |
現在地が設定されていれば,それを返す. | |
void | setObstacleThreshold (double th) |
障害グリッドとpotentialGridをマージする際の閾値を設定. | |
bool | getCurrentPath (Path &path) |
最短経路が設定されていればそれを返す. | |
void | setPotentialGridDepth (int depth) |
ポテンシャルグリッドの階調数をセット. | |
Private メソッド | |
bool | emit_pgrid (NavData::PotentialGrid &grid) |
ポテンシャルグリッド出力. | |
bool | emit_path (Path &path) |
最短経路出力. | |
bool | update_pgrid () |
内部のポテンシャルグリッドcacheを更新 | |
std::vector< RGIS::PntC > | get_path () |
RGISよりパスを取得. | |
void | merge_grid () |
ポテンシャルと障害グリッドをマージ | |
Private 変数 | |
MapService_t & | ms_ |
MapServicePortへの参照 | |
RouteService_t & | rs_ |
RouteServicePortへの参照 | |
RGIS::PntC | dest_ |
目的地 | |
RGIS::Geo::GridC | pgrid_ |
ポテンシャルグリッド | |
RGIS::Geo::GridC | merged_grid_ |
障害物グリッドとマージされたpgrid | |
CurPos | current_pos_ |
現在地 | |
RGIS::BoxC | extent_ |
マップ存在範囲 | |
GridMap | pmap_ |
確率グリッドマップ | |
bool | have_dest_ |
フラグ: 目的地はセットされているか | |
bool | have_currrent_pos_ |
フラグ: 現在地はセットされているか | |
bool | have_pgrid_ |
フラグ: ポテンシャルグリッドがあるか | |
bool | have_pmap_ |
フラグ: 確率グリッドはあるか | |
size_t | pgrid_depth_ |
ポテンシャルグリッドの値の数(bitではない) | |
double | obstacle_thresh_ |
障害グリッドとポテンシャルグリッドを重ねるときにこの値以上は障害物 と見なす |
RGISとのインターフェースを提供する。状態を持ち,通信データ削減のために データのCacheも行う。(XMLは理解しない。XMLの処理は上位 GNav が行う)
RTC::CorbaConsumer< RGIS::RTComp::MapService > ServiceIF::MapService_t |
MapService_t RGISのMapServiceオブジェクトを表す型
RTC::CorbaConsumer< RGIS::RTComp::RouteService > ServiceIF::RouteService_t |
RouteService_t RGISのRouteServiceオブジェクトを表す型
ServiceIF::ServiceIF | ( | MapService_t & | ms, | |
RouteService_t & | rs | |||
) |
constructor.
[in] | ms | MapServicePortへの参照 |
[in] | rs | RouteServicePortへの参照 |
virtual ServiceIF::~ServiceIF | ( | ) | [inline, virtual] |
仮想デストラクタ。何もしない
void ServiceIF::initialize | ( | ) |
初期状態に復帰
bool ServiceIF::setDestination | ( | const RGIS::PntC & | dest, | |
NavData::PotentialGrid & | grid | |||
) |
目的地をセットする。ポテンシャルグリッドを出力.
[in] | dest | 目的地 |
[out] | grid | 出力される NavData::PotentialGrid |
bool ServiceIF::setCurrentPosition | ( | const CurPos & | pos, | |
Path & | path | |||
) |
現在地をセット 最短経路を出力.
現在値が過去にセットされたことがある場合,trueが返されるが,path は空の物が返される。
[in] | pos | 現在地 |
[out] | path | 出力される Path |
bool ServiceIF::storeProbabilityMap | ( | const GridMap & | gm | ) |
bool ServiceIF::recalcPotentialGrid | ( | NavData::PotentialGrid & | grid | ) |
PotentialGrid再計算を開始
[out] | grid | 出力される PotentialGrid |
bool ServiceIF::getDestination | ( | RGIS::PntC & | dest | ) | const |
目的地が設定されていれば,それを返す。
[out] | dest | 目的地があればここに格納される |
bool ServiceIF::getCurrentPos | ( | CurPos & | pos | ) | const |
現在地が設定されていれば,それを返す.
[out] | pos | 現在地があればここに格納される |
void ServiceIF::setObstacleThreshold | ( | double | th | ) |
障害グリッドとpotentialGridをマージする際の閾値を設定.
[in] | th | 新しい閾値。これ以上は障害物と見なす |
bool ServiceIF::getCurrentPath | ( | Path & | path | ) |
最短経路が設定されていればそれを返す.
[out] | path | 出力される Path |
void ServiceIF::setPotentialGridDepth | ( | int | depth | ) |
ポテンシャルグリッドの階調数をセット.
[in] | depth | 階調数。bit数ではなく色の数であることに注意 |
bool ServiceIF::emit_pgrid | ( | NavData::PotentialGrid & | grid | ) | [private] |
ポテンシャルグリッド出力.
したうけ
[out] | grid | 出力されるPotentialGrid |
bool ServiceIF::emit_path | ( | Path & | path | ) | [private] |
最短経路出力.
[out] | path | 出力される Path |
bool ServiceIF::update_pgrid | ( | ) | [private] |
内部のポテンシャルグリッドcacheを更新
vector< PntC > ServiceIF::get_path | ( | ) | [private] |
RGISよりパスを取得.
void ServiceIF::merge_grid | ( | ) | [private] |
ポテンシャルと障害グリッドをマージ
MapService_t& ServiceIF::ms_ [private] |
MapServicePortへの参照
RouteService_t& ServiceIF::rs_ [private] |
RouteServicePortへの参照
RGIS::PntC ServiceIF::dest_ [private] |
目的地
RGIS::Geo::GridC ServiceIF::pgrid_ [private] |
ポテンシャルグリッド
RGIS::Geo::GridC ServiceIF::merged_grid_ [private] |
障害物グリッドとマージされたpgrid
CurPos ServiceIF::current_pos_ [private] |
現在地
RGIS::BoxC ServiceIF::extent_ [private] |
マップ存在範囲
GridMap ServiceIF::pmap_ [private] |
確率グリッドマップ
bool ServiceIF::have_dest_ [private] |
フラグ: 目的地はセットされているか
bool ServiceIF::have_currrent_pos_ [private] |
フラグ: 現在地はセットされているか
bool ServiceIF::have_pgrid_ [private] |
フラグ: ポテンシャルグリッドがあるか
bool ServiceIF::have_pmap_ [private] |
フラグ: 確率グリッドはあるか
size_t ServiceIF::pgrid_depth_ [private] |
ポテンシャルグリッドの値の数(bitではない)
double ServiceIF::obstacle_thresh_ [private] |
障害グリッドとポテンシャルグリッドを重ねるときにこの値以上は障害物 と見なす