URGCapture Class Reference

URG 基本操作のインターフェース. More...

#include <urgCapture.h>

Inheritance diagram for URGCapture:

Inheritance graph
[legend]

List of all members.

Public Types

enum  { HeaderError = -2, RecvSizeError = -3, MissmatchLF = -4 }

Public Member Functions

virtual const char * what (void)=0
 エラー状態を示す文字列を返す
virtual int connect (const char *device, long baudrate)=0
 センサへの接続を行う
virtual int connectSocket (const char *host, short port)=0
 ソケットに対して接続
virtual void disconnect (void)=0
 センサとの接続を切断する
virtual bool isConnected (void)=0
 センサと接続されているかを返す
virtual void set_recvTimeout (int timeout)=0
 受信時のタイムアウトを指定
virtual void setTimestampMode (bool withTimestamp)=0
 タイムスタンプ取得モードに設定する
virtual int capture (long length[], int first_index, int last_index, int group, URGInterface::urgParams_t &params, unsigned long *raw_timestamp=NULL)=0
 センサからのデータ取得
virtual int getCaptureTimes (void)=0
 センサからデータを取得した回数を返す
virtual int send (const char *data, int size)=0
 センサに直接コマンドを転送する
virtual int recv (char *data, int maxsize, long timeout=0)=0
 センサから直接メッセージを受け取る
virtual int recv_line (char *data, int maxsize, long timeout=0)=0
 センサから1行分のメッセージを直接受け取る
virtual int laser (bool on)=0


Detailed Description

URG 基本操作のインターフェース.

Definition at line 21 of file urgCapture.h.


Member Function Documentation

virtual const char* URGCapture::what ( void   )  [pure virtual]

エラー状態を示す文字列を返す

Todo:
説明を記述

Implemented in URGManualCapture.

Referenced by URGCtrl::connect(), and URGCtrl::connectSocket().

virtual int URGCapture::connect ( const char *  device,
long  baudrate 
) [pure virtual]

センサへの接続を行う

Todo:
説明を記述
Parameters:
device [i] 接続デバイス名
baudrate [i] 接続ボーレート
Return values:
0 正常終了
戻り値 < 0 エラー

Implemented in URGManualCapture.

Referenced by URGCtrl::connect().

virtual int URGCapture::connectSocket ( const char *  host,
short  port 
) [pure virtual]

ソケットに対して接続

Todo:
説明を記述
Parameters:
host [i] 接続ホスト
port [i] 接続ポート
Return values:
0 正常終了
戻り値 < 0 エラー

Implemented in URGManualCapture.

Referenced by URGCtrl::connectSocket().

virtual void URGCapture::disconnect ( void   )  [pure virtual]

センサとの接続を切断する

Todo:
説明を記述

Implemented in URGManualCapture.

virtual bool URGCapture::isConnected ( void   )  [pure virtual]

センサと接続されているかを返す

Todo:
説明を記述

Implemented in URGManualCapture.

Referenced by URGCtrl::isConnected().

virtual void URGCapture::set_recvTimeout ( int  timeout  )  [pure virtual]

受信時のタイムアウトを指定

Parameters:
timeout [i] タイムアウト時間 [msec]

Implemented in URGManualCapture.

Referenced by URGCtrl::set_recvTimeout().

virtual void URGCapture::setTimestampMode ( bool  withTimestamp  )  [pure virtual]

タイムスタンプ取得モードに設定する

Todo:
説明を記述
Parameters:
withTimestamp [i] タイムスタンプが利用できる場合 true

Implemented in URGManualCapture.

Referenced by URGCtrl::checkVersion().

virtual int URGCapture::capture ( long  length[],
int  first_index,
int  last_index,
int  group,
URGInterface::urgParams_t params,
unsigned long *  raw_timestamp = NULL 
) [pure virtual]

センサからのデータ取得

Todo:
引数についての説明を記述する
urgIndex.png

配列に格納されるデータと角度の関係(センサ真上より)

Parameters:
length [o] 測定データが格納される配列
first_index [i] 測定データの要求開始位置
last_index [i] 測定データの要求終了位置
group [i] グルーピングを行うデータ個数
params [i] センサのパラメータ情報
raw_timestamp [o] センサのタイムスタンプ値
Return values:
戻り値 > 0 取得したデータ配列の添え字の最大値
戻り値 < 0 エラー

Implemented in URGAutoCapture, and URGManualCapture.

Referenced by URGCtrl::raw_capture().

virtual int URGCapture::getCaptureTimes ( void   )  [pure virtual]

センサからデータを取得した回数を返す

Todo:
説明を記述

Implemented in URGAutoCapture, and URGManualCapture.

Referenced by URGCtrl::getCaptureTimes().

virtual int URGCapture::send ( const char *  data,
int  size 
) [pure virtual]

センサに直接コマンドを転送する

Todo:
説明を記述
Parameters:
data [i] 送信データ
size [i] 送信データサイズ
Return values:
戻り値 >= 0 送信バイト数
戻り値 < 0 エラー

Implemented in URGManualCapture.

Referenced by URGCtrl::beginTimeAdjust(), URGCtrl::checkVersion(), URGCtrl::endTimeAdjust(), and URGCtrl::getURGTimestamp().

virtual int URGCapture::recv ( char *  data,
int  maxsize,
long  timeout = 0 
) [pure virtual]

センサから直接メッセージを受け取る

Todo:
説明を記述
Parameters:
data [o] 受信データ
maxsize [i] 受信可能サイズ
timeout [i] タイムアウト [msec]
Return values:
戻り値 >= 0 受信バイト数
戻り値 < 0 エラー

Implemented in URGManualCapture.

Referenced by URGCtrl::checkVersion().

virtual int URGCapture::recv_line ( char *  data,
int  maxsize,
long  timeout = 0 
) [pure virtual]

センサから1行分のメッセージを直接受け取る

Todo:
説明を記述 改行を含む
Parameters:
data [o] 受信データ
maxsize [i] 受信可能サイズ
timeout [i] タイムアウト [msec]
Return values:
戻り値 >= 0 受信バイト数
戻り値 < 0 エラー

Implemented in URGManualCapture.

Referenced by URGCtrl::getURGTimestamp().


The documentation for this class was generated from the following file:

Generated on Mon Apr 13 22:52:07 2009 by  doxygen 1.5.7.1