Pepper NAO Choregraphe Naoqi wiki - ALBasicAwareness API

このページについて

NAOqi Interaction engines - 概要 | API | 入門

Namespace : AL
#include <alproxies/albasicawareness>

Method list


どのモジュールでも、このモジュールはALModule APIからメソッドを継承します。また、以下の具体的な方法もあります:
class ALBasicAwarenessProxy

Events lists

Methods



void ALBasicAwarenessProxy::setEnabled(bool enabled)
Basic Awarenessを有効または無効にします。

Parameters:
enabled - Trueが有効でFalseが無効


bool ALBasicAwarenessProxy::isEnabled()
Basic Awarenessが有効かどうかを返します。

Returns: 有効か、無効か



bool ALBasicAwarenessProxy::isRunning()
basic awarenessが実際に実行中であるかどうかを返します。すなわち、開始され、一時停止されていない(手動でも自動でもない)かどうかを返します。

Returns: 実行中のときはTrue、そうでないときはFalse。


void ALBasicAwarenessProxy::pauseAwareness()
ALBasicAwarenessを手動で一時停止します。詳細は、Pausing and Resuming を参照してください。


void ALBasicAwarenessProxy::resumeAwareness()
ALBasicAwarenessを手動で再開します。詳細はPausing and Resumingを参照してください。



bool ALBasicAwarenessProxy::isAwarenessPaused()
モジュールの状態(一時停止か、否か)を得ることができます。

Returns: モジュールが一時停止していたらTrue、それ以外はFalse。


void ALBasicAwarenessProxy::setStimulusDetectionEnabled(const std::string stimType, const bool enable)
特定の種類の刺激を有効または無効にできます。

Parameters:
stimType – 刺激の種類、詳細についてはTypes of simulus
enable – Trueだと有効、Falseだと無効


bool ALBasicAwarenessProxy::isStimulusDetectionEnabled(const std::string stimType)
特定の種類の刺激の検知の有効・無効状態を得ることができます。

Parameters:
stimType – 種類の刺激。詳細についてはTypes of simulus
Returns:
Trueの時は有効、Falseの時は無効
📝メモ
もし設定に失敗した時にはAL::ALErrorを投げます。



void ALBasicAwarenessProxy::setEngagementMode(const std::string& modeName)
エンゲージメントモードに設定します。

Parameters:
modeName – 設定したいエンゲージメントモードの名前。詳細については Engagement Modes.


std::string ALBasicAwarenessProxy::getEngagementMode()
選択されているエンゲージメントモードを取得します。
詳細についてはEngagement Mode.

Returns: そのエンゲージメントモードの名前。


bool ALBasicAwarenessProxy::engagePerson(const int idPersonToEngage)
PeoplePerception IDで識別されるIDと強制的にロボットと接触させます。

Parameters:
idPersonToEngage – 接触した人のID。また、人をPeoplePerception/PeopleList()で見つけることができます。

Returns:
ロボットが人々へ接触に成功したらtrue、それ以外はfalseを返します。


int ALBasicAwarenessProxy::triggerStimulus(const std::vector<float>& positionFrameWorld)
他の刺激として処理される特別な刺激をトリガーします。しかし、優先順位は高くなります。

Parameters:
positionFrameWorld – Frame Worldのカスタム刺激の位置。

Returns:
PeoplePerception/PeopleList()が参照されている場合、発見された人間のID、または人間が見つからなければ-1を返す。


void ALBasicAwarenessProxy::setTrackingMode(const std::string& trackingMode)
トラッキングモードを設定します。

Parameters:
trackingMode – トラッキングモードの名前。詳細については:Tracking Modes.


std::string ALBasicAwarenessProxy::getTrackingMode()
選択されているトラッキングモードの名前を取得します。

Returns: トラッキングモードの名前。詳細についてはTracking Modes.


void ALBasicAwarenessProxy::setParameter(const std::string& paramName, const AL::ALValue& paramValue)
basic awarenessに関連するパラメータを設定します。

Parameters:
paramName – 次のパラメータ名 :
  • "LookStimulusSpeed" : 刺激を見つけるときの頭を動かす速さ(0から1までの実数値).
  • “LookBackSpeed”: 誤警報の後に頭を前の位置に動かすときの速さ(0から1までの実数値).

Parameters:
paramValue – セットしたいパラメータ値(ALValue).


AL::ALValue ALBasicAwarenessProxy::getParameter(const std::string& paramName)
basic awarenessに関連したパラメータを取得します。

Parameters:
paramName – "LookStimulusSpeed", "LookBackSpeed"のいずれかのパラメータ名.
Returns:
パラメータ値(ALValue).


void ALBasicAwarenessProxy::resetAllParameters()
全てのパラメータを各デフォルト値にリセットします。


void ALBasicAwarenessProxy::startAwareness()
2.4から非推奨 : 代わりにALBasicAwarenessProxy::setEnabledを使用してください。

basic awarenessを起動します。


void ALBasicAwarenessProxy::stopAwareness()
2.4から非推奨 : 代わりにALBasicAwarenessProxy::setEnabledを使用してください。

basic awarenessを停止します。


bool ALBasicAwarenessProxy::isAwarenessRunning()
2.4から非推奨 : 代わりにALBasicAwarenessProxy::isRunningを使用してください。

モジュールの状態(開始もしくは動いていない)を取得します。
Returns: ブール値 : モジュールが起動していればtrue、停止もしくは一時停止であればfalseを返します。

Events



Event: "ALBasicAwareness/StimulusDetected"
callback(std::string eventName, std::string stimulusName, std::string subscriberIdentifier)
刺激を検知したとき、発火します。

Parameters:
eventName (std::string) – “ALBasicAwareness/StimulusDetected”
stimulusName – 検知した刺激の名前. 使用可能な刺激の名前については、Stimuli Typeのセクションを参照してください。
subscriberIdentifier (std::string) –
📝メモ
一般的に人が検知されたかどうかを知るには、人物値StimulusDetectedイベントではなく、HumanTrackedイベントを使用します. 例えば、ロボットが音の刺激をい人々を検知したとき、ロボットはStimulusDetectedの値をSoundにしてその人物を認識、正しいIDでHumanTrackedイベントを発火させますが、Peopleという値を持つStimulusDetectedイベントは発火しません.


Event: "ALBasicAwareness/HumanTracked"
callback(std::string eventName, int humanID, std::string subscriberIdentifier)
ロボットが人の追跡を開始したとき、人の追跡をロストしたとき、人のIDを更新したときに発生します.

Parameters:
eventName (std::string) – “ALBasicAwareness/HumanTracked”
humanID – 追跡した人のID。人を追跡していなければ-1。
subscriberIdentifier (std::string) –


Event: "ALBasicAwareness/HumanLost"
callback(std::string eventName, std::string subscriberIdentifier)
長い間追跡した人を見つけることができなかったときに発火します。