Develop and Download Open Source Software

Browse Subversion Repository

Contents of /runCtrl/RunCtrlInterface.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 279 - (show annotations) (download) (as text)
Wed Mar 12 05:28:19 2008 UTC (16 years, 2 months ago) by satofumi
File MIME type: text/x-chdr
File size: 1886 byte(s)
adjust tab index
1 #ifndef RUN_CTRL_INTERFACE_H
2 #define RUN_CTRL_INTERFACE_H
3
4 /*!
5 \file
6 \brief 走行制御インターフェース
7
8 \author Satofumi KAMIMURA
9
10 $Id$
11
12 \todo 自動車の様なタイプでも処理できるコマンドにまで絞り込む
13 */
14
15 #include "GridTypes.h"
16
17 namespace beego {
18 class CoordinateCtrl;
19 class ConnectionInterface;
20
21
22 /*!
23 \brief 走行制御インターフェース
24 */
25 class RunCtrlInterface {
26 public:
27 virtual ~RunCtrlInterface(void) {}
28
29 virtual bool connect(ConnectionInterface* con) = 0;
30
31 virtual void push_runState(void) = 0;
32 virtual void pop_runState(void) = 0;
33
34 // 移動コマンド
35 virtual void stop(void) = 0;
36 virtual void follow_circle(const CoordinateCtrl* crd,
37 const Grid<int>& point,
38 const int radius) = 0;
39 virtual void stop_toLine(const CoordinateCtrl* crd,
40 const Position<int>& position) = 0;
41 virtual void stop_toPoint(const CoordinateCtrl* crd,
42 const Grid<int>& point) = 0;
43 virtual void move_length(const int length) = 0;
44
45 virtual void rotate_angle(const Angle& angle) = 0;
46 virtual void stop_toAngle(const CoordinateCtrl* crd,
47 const Angle& angle) = 0;
48
49 //void getParams_
50 //void setParams_
51
52 // !!! 接線指定の円弧追従
53 // !!! 速度指定の回転
54 // !!! 直前の移動コマンドを再発行
55
56 // 判定コマンド
57 virtual bool isStable(void) = 0;
58 virtual int getLength_toLine(const CoordinateCtrl* crd,
59 const Position<int>& position) = 0;
60 virtual int getLength_toPoint(const CoordinateCtrl* crd,
61 const Grid<int>& point) = 0;
62
63 virtual Angle getAngle_toDirection(void) = 0;
64 virtual Angle getAngle_toPoint(void) = 0;
65 virtual Angle getAngle_toLine(void) = 0;
66 };
67 };
68
69 #endif /* !RUN_CTRL_INTERFACE_H */

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26