jp.co.sharp.android.io.irrc
クラス IrRemoteController

java.lang.Object
  上位を拡張 jp.co.sharp.android.io.irrc.IrRemoteController

public class IrRemoteController
extends java.lang.Object

赤外線リモートコントローラ機能を提供する。 

データ送信前にキャリア情報、論理パルス情報を設定する必要がある。 設定した情報は以後の送信時に使用される。

関連項目:
IrRemoteControllerFrame

フィールドの概要
static int PPM_HIGH_LOW
           データ変調方式がPPM変調High-Lowを表す。
static int PPM_LOW_HIGH
           データ変調方式がPPM変調Low-Highを表す。
static int REPEAT_INFINITE
           ブロック繰り返し回数無限を表す。
 
コンストラクタの概要
IrRemoteController(android.content.Context context)
           IrRemoteControllerを生成する。
 
メソッドの概要
protected  void finalize()
           
 void send(IrRemoteControllerFrame[] frames, int block_repeat_count)
           タイムアウト10秒でデータを送信する。
 void send(IrRemoteControllerFrame[] frames, int timeout, int block_repeat_count)
           データを送信する。
 void setCarrier(int high, int low)
           キャリアを設定する。
 void setPulse0(int modulation, int high, int low)
           論理パルス0を設定する。
 void setPulse1(int modulation, int high, int low)
           論理パルス1を設定する。
 void stop()
           送信を中断する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

PPM_HIGH_LOW

public static final int PPM_HIGH_LOW
データ変調方式がPPM変調High-Lowを表す。

関連項目:
定数フィールド値

PPM_LOW_HIGH

public static final int PPM_LOW_HIGH
データ変調方式がPPM変調Low-Highを表す。

関連項目:
定数フィールド値

REPEAT_INFINITE

public static final int REPEAT_INFINITE
ブロック繰り返し回数無限を表す。

関連項目:
定数フィールド値
コンストラクタの詳細

IrRemoteController

public IrRemoteController(android.content.Context context)
                   throws java.lang.NullPointerException,
                          java.lang.RuntimeException
IrRemoteControllerを生成する。

パラメータ:
context - アプリケーションコンテキスト
例外:
java.lang.NullPointerException
java.lang.RuntimeException
メソッドの詳細

finalize

protected void finalize()
                 throws java.lang.Throwable
オーバーライド:
クラス java.lang.Object 内の finalize
例外:
java.lang.Throwable

send

public void send(IrRemoteControllerFrame[] frames,
                 int block_repeat_count)
          throws java.lang.NullPointerException,
                 java.lang.IllegalArgumentException,
                 IrRemoteControllerException
タイムアウト10秒でデータを送信する。 

このメソッドは非同期に実行され、ブロックしない。 また、送信完了イベントは通知されない。 送信中に端末状態が以下になった場合、送信は中断される。

パラメータ:
frames - 送信データ(要素数は1-8)。
block_repeat_count - ブロック繰返し回数(0-255)。REPEAT_INFINITEを指定した場合には、stop()を呼び出す、タイムアウトする、または他の理由により中断されるまで無限回送信される。
例外:
java.lang.NullPointerException - frames が null の場合に発生する。
java.lang.IllegalArgumentException - framesの要素数が有効範囲外の場合に発生する。
java.lang.IllegalArgumentException - block_repeat_countが有効範囲外の場合に発生する。
java.lang.IllegalArgumentException - 設定されたキャリア情報が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された論理パルス0情報が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された論理パルス1情報が不正な場合に発生する。
java.lang.NullPointerException - frames の要素に null が設定されている場合に発生する。
java.lang.NullPointerException - frames の要素の data_length が0より大きく、かつ data に null が設定されている場合に発生する。
java.lang.IllegalArgumentException - frames の要素の data_length が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された送信データの有効ビット長が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたフレームの間隔時間が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたフレームの繰り返し回数が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたリーダー波形が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたトレーラー波形が不正な場合に発生する。
IrRemoteControllerException - 既に赤外線通信中の場合に発生する(USING_RESOURCE)。
IrRemoteControllerException - 音声電話中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - 低電圧中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - HDMI利用中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - 電波OFFモードがONの場合に発生する(ABNORMAL_STATE)。

send

public void send(IrRemoteControllerFrame[] frames,
                 int timeout,
                 int block_repeat_count)
          throws java.lang.NullPointerException,
                 java.lang.IllegalArgumentException,
                 IrRemoteControllerException
データを送信する。 

このメソッドは非同期に実行され、ブロックしない。 また、送信完了イベントは通知されない。 送信中に端末状態が以下になった場合、送信は中断される。

パラメータ:
frames - 送信データ(要素数は1-8)。
timeout - タイムアウト値(1-10秒)。
block_repeat_count - ブロック繰返し回数(0-255)。REPEAT_INFINITEを指定した場合には、stop()を呼び出す、タイムアウトする、または他の理由により中断されるまで無限回送信される。
例外:
java.lang.NullPointerException - frames が null の場合に発生する。
java.lang.IllegalArgumentException - framesの要素数が有効範囲外の場合に発生する。
java.lang.IllegalArgumentException - timeoutが有効範囲外の場合に発生する。
java.lang.IllegalArgumentException - block_repeat_countが有効範囲外の場合に発生する。
java.lang.IllegalArgumentException - 設定されたキャリア情報が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された論理パルス0情報が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された論理パルス1情報が不正な場合に発生する。
java.lang.NullPointerException - frames の要素に null が設定されている場合に発生する。
java.lang.NullPointerException - frames の要素の data_length が0より大きく、かつ data に null が設定されている場合に発生する。
java.lang.IllegalArgumentException - frames の要素の data_length が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定された送信データの有効ビット長が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたフレームの間隔時間が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたフレームの繰り返し回数が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたリーダー波形が不正な場合に発生する。
java.lang.IllegalArgumentException - 設定されたトレーラー波形が不正な場合に発生する。
IrRemoteControllerException - 既に赤外線通信中の場合に発生する(USING_RESOURCE)。
IrRemoteControllerException - 音声電話中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - 低電圧中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - HDMI利用中の場合に発生する(RACE_HAZARD)。
IrRemoteControllerException - 電波OFFモードがONの場合に発生する(ABNORMAL_STATE)。

setCarrier

public void setCarrier(int high,
                       int low)
                throws java.lang.IllegalArgumentException
キャリアを設定する。

パラメータ:
high - High時間(0.1マイクロ秒)。
low - Low時間(0.1マイクロ秒)。
例外:
java.lang.IllegalArgumentException - high, lowが有効範囲外の場合に発生する。

setPulse0

public void setPulse0(int modulation,
                      int high,
                      int low)
               throws java.lang.IllegalArgumentException
論理パルス0を設定する。

パラメータ:
modulation - 変調方式。PPM_HIGH_LOWPPM_LOW_HIGHのいずれかを指定する。
high - High時間(マイクロ秒)。
low - Low時間(マイクロ秒)。
例外:
java.lang.IllegalArgumentException - modulationが不正な場合に発生する。
java.lang.IllegalArgumentException - high, lowが有効範囲外の場合に発生する。

setPulse1

public void setPulse1(int modulation,
                      int high,
                      int low)
               throws java.lang.IllegalArgumentException
論理パルス1を設定する。

パラメータ:
modulation - 変調方式。PPM_HIGH_LOWPPM_LOW_HIGHのいずれかを指定する。
high - High時間(マイクロ秒)。
low - Low時間(マイクロ秒)。
例外:
java.lang.IllegalArgumentException - modulationが不正な場合に発生する。
java.lang.IllegalArgumentException - high, lowが有効範囲外の場合に発生する。

stop

public void stop()
送信を中断する。 

呼び出した時点で直ちに送信を中断する。