com.j_phone.system
クラス MotionDetectiveSensor

java.lang.Object
  |
  +--com.j_phone.system.MotionDetectiveSensor

public class MotionDetectiveSensor
extends java.lang.Object

モーションコントロールを制御するためのクラスです。

一時停止/再開時の動作について

モーションコントロールは、Javaアプリケーションの一時停止時に停止し、 再開時に再起動します。 モーションコントロールの開始時は、モーションコントロールが初期化され蓄積されているデータが消去されるため、 POSTURE_INFO モードで起動しているときに一時停止した場合、 再開後は蓄積された姿勢情報は消去されています。

導入されたバージョン:
JSCL 1.3.2

フィールドの概要
static int CYCLE_100
          サンプリング周期:100msです。
static int CYCLE_20
          サンプリング周期:20msです。
static int CYCLE_40
          サンプリング周期:40msです。
static int CYCLE_60
          サンプリング周期:60msです。
static int CYCLE_80
          サンプリング周期:80msです。
static int KEY_COMPATIBLE
          モーションコントロール種別:キーイベント互換モードを示します。
static int KEY_SENSOR
          モーションコントロール種別:キーイベントモーションコントロール専用モードを示します。
static int POSTURE_INFO
          モーションコントロール種別:姿勢情報を示します。
 
メソッドの概要
static MotionDetectiveSensor getDefaultMotionDetectiveSensor()
          唯一のMotionDetectiveSensorインスタンスを取得します。
 PostureInfo getPostureInfoLatest()
          最新の姿勢情報を取得します。
 PostureInfo getPostureInfoStack(int num)
          姿勢情報を取得します。
 int getStackCount()
          スタック数を取得します。
 int getState()
          モーションコントロールの起動状態を取得します。
 void startSensor(int type, int cycle)
          モーションコントロールを開始します。
 void stopSensor()
          モーションコントロールを停止します。
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

POSTURE_INFO

public static final int POSTURE_INFO
モーションコントロール種別:姿勢情報を示します。

KEY_COMPATIBLE

public static final int KEY_COMPATIBLE
モーションコントロール種別:キーイベント互換モードを示します。

DeviceControl.getDeviceState(int)DeviceControl.KEY_STATEを指定して取得するキーの押下状態に影響します。 Canvasクラスの keyPressed()、keyReleased()、keyRepeated()のイベントは発生しません。


KEY_SENSOR

public static final int KEY_SENSOR
モーションコントロール種別:キーイベントモーションコントロール専用モードを示します。

DeviceControl.getDeviceState(int)DeviceControl.KEY_STATEを指定して取得するキーの押下状態に影響します。 Canvasクラス keyPressed(), keyReleased(), keyRepeated()のイベントは発生しません。


CYCLE_20

public static final int CYCLE_20
サンプリング周期:20msです。

CYCLE_40

public static final int CYCLE_40
サンプリング周期:40msです。

CYCLE_60

public static final int CYCLE_60
サンプリング周期:60msです。

CYCLE_80

public static final int CYCLE_80
サンプリング周期:80msです。

CYCLE_100

public static final int CYCLE_100
サンプリング周期:100msです。
メソッドの詳細

getDefaultMotionDetectiveSensor

public static final MotionDetectiveSensor getDefaultMotionDetectiveSensor()
                                                                   throws java.io.IOException
唯一のMotionDetectiveSensorインスタンスを取得します。
戻り値:
MotionDetectiveSensorのインスタンス
例外:
java.io.IOException - モーションコントロール未サポート時に発生する

startSensor

public void startSensor(int type,
                        int cycle)
モーションコントロールを開始します。

モーションコントロールは、開始時に初期化され、 蓄積されているデータは消去されます。

パラメータ:
type - モーションコントロール種別として以下のどれかを指定する。
cycle - サンプリング周期として以下のどれかを指定する。 typeにPOSTURE_INFO以外を指定した場合は無効。
例外:
java.lang.IllegalArgumentException - 不正な引数が指定された場合に発生する
IllegalStateException - モーションコントロール起動中の場合に発生する
java.lang.RuntimeException - モーションコントロール起動に失敗した場合に発生する

stopSensor

public void stopSensor()
モーションコントロールを停止します。

getPostureInfoLatest

public PostureInfo getPostureInfoLatest()
                                 throws java.io.IOException
最新の姿勢情報を取得します。

モーションコントロールに蓄積された姿勢情報のうち最新の情報を取得します。 モーションコントロールに蓄積されたデータはそのまま保持されます。 このメソッドはモーションコントロールがPOSTURE_INFOで起動している間だけ有効となり、 起動停止中または他のモードで起動中の場合は IOException が発生します。

戻り値:
最新の姿勢情報
例外:
java.io.IOException - 取得エラーが発生した場合に発生する

getPostureInfoStack

public PostureInfo getPostureInfoStack(int num)
                                throws java.io.IOException
姿勢情報を取得します。

モーションコントロールに蓄積された姿勢情報を古い記録順に取得します。 取得した部分のデータは、モーションコントロールに蓄積されたデータから消去されます。 このメソッドはモーションコントロールがPOSTURE_INFOで起動している間だけ有効となり、 起動停止中または他のモードで起動中の場合は IOException が発生します。

パラメータ:
num - 情報取得数
戻り値:
姿勢情報
例外:
java.lang.IllegalArgumentException - 不正な引数が指定された場合に発生する
java.io.IOException - 取得エラーが発生した場合に発生する

getStackCount

public int getStackCount()
スタック数を取得します。

モーションコントロールに蓄積されている姿勢情報のスタック数を取得します。 このメソッドはモーションコントロールがPOSTURE_INFOで起動している間だけ有効となり、 起動停止中または他のモードで起動中の場合は 0 が返ります。

戻り値:
蓄積されているスタック数

getState

public int getState()
モーションコントロールの起動状態を取得します。

起動していない場合 0 が返ります。 起動中の場合以下のどれかが返ります。

戻り値:
モーションコントロール起動状態