SensorDirectChannel.Configure(Sensor, SensorDirectRateLevel) メソッド

定義

センサー レートまたは停止センサー レポートを構成します。

[Android.Runtime.Register("configure", "(Landroid/hardware/Sensor;I)I", "", ApiSince=26)]
public int Configure (Android.Hardware.Sensor? sensor, Android.Hardware.SensorDirectRateLevel rateLevel);
[<Android.Runtime.Register("configure", "(Landroid/hardware/Sensor;I)I", "", ApiSince=26)>]
member this.Configure : Android.Hardware.Sensor * Android.Hardware.SensorDirectRateLevel -> int

パラメーター

sensor
Sensor

android.hardware.Sensor操作するセンサーを示す オブジェクト。

rateLevel
SensorDirectRateLevel

で定義されている android.hardware.SensorDirectChannelレート レベル。

戻り値

  • レポートの開始またはレートの変更: 成功した場合は正のセンサー レポート トークン、失敗した場合は 0。* 停止レポート: 成功した場合は 1、失敗した場合は 0。
属性

注釈

センサー レートまたは停止センサー レポートを構成します。

センサーのイベント レポートを開始するか、既存のレポートのレートを変更するには、 以外 android.hardware.SensorDirectChannel#RATE_STOPの rateLevel を指定してこの関数を呼び出します。 センサー イベントは、方向チャネルの作成に使用される共有メモリによって形成されたキューに追加されます。 キューの各要素のサイズは 104 バイトで、センサー イベントを表します。 要素のデータ構造 (リトル エンディアンのすべてのフィールド):

offset   type                    name
            ------------------------------------------------------------------------
              0x0000   int32_t                 size (always 104)
              0x0004   int32_t                 sensor report token
              0x0008   int32_t                 type (see SensorType)
              0x000C   uint32_t                atomic counter
              0x0010   int64_t                 timestamp (see Event)
              0x0018   float[16]/int64_t[8]    data (data type depends on sensor type)
              0x0058   int32_t[4]              reserved (set to zero)

頭や尾のポインターはありません。 新しいセンサー イベントのシーケンスとフロンティアは、直接チャネルの作成後に 1 からカウントされ、新しいイベントごとに 1 をインクリメントするアトミック カウンターによって決定されます。 アトミック カウンターは、UINT32_MAXに達すると 1 に戻り、初期化されていないメモリとの混乱を避けるために値 0 をスキップします。 センサー システムのライターは、最後に達すると、共有メモリ領域の開始時からラップされます。 メモリ領域のサイズが要素のサイズの倍数 (104 バイト) でない場合、残差は最後に使用されません。 関数は、成功した場合に正のセンサー レポート トークンを返します。 このトークンは、センサー イベントと同じ種類の複数のセンサーを区別するために使用できます。 たとえば、システム A と B に 2 つの加速度計がある場合、センサー A と B の起動時に異なるレポート トークンが返されることを保証します。

センサーを停止するには、rateLevel が と等しい android.hardware.SensorDirectChannel#RATE_STOPこの関数を呼び出します。 センサー パラメーターを null のままにすると、指定された直接チャネルに関連付けられているアクティブなセンサー レポートがすべて停止します。 関数は、成功した場合は 1、失敗した場合は 0 を返します。

android.hardware.SensorDirectChannel.configure(android.hardware.Sensor, int)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象