|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
Objectcom.docomostar.opt.device.IrReceiver
public class IrReceiver
携帯電話のネイティブ赤外線受信機能にアクセスする手段を提供します。
受信した赤外線信号の 1 パケット分のデータ列は以下のような構成となっており、 有意なデータ列「データ部(論理 0)」・「データ部(論理 1)」の羅列部分が 1 パケット分の取得データとなります。
受信したパケットデータは、getInputStream()より取得した入力ストリーム(java.io.InputStream)から 読み出すことで取得できます。
InputStream による読み出し (read()) は、内部にある赤外線受信したデータを保持するバッファより バイト単位で今回要求された分を返し、バイト配列で読み出す場合の戻り値には、読み込まれたバイト数を返します。 ただし、バッファにデータが溜まっていない場合には、戻り値で -1 を返します。 また、一度読み出されたデータについては、再度読み出すことはできません。 そのため、この InputStream は mark() および reset() はサポートされておりません。
赤外線受信が停止した場合、停止前までのデータを読み出すことは可能です。 ただし、停止前のデータを一度読み出した後に、再度データの読み出しを行った時には、 それぞれ以下のような振る舞いとなります。
cancel() によって赤外線受信を停止した場合、 -1 を返します。
赤外線受信機能では、受信可能なデータ部の受信信号波形のデータ出力パターンは、 High 先行 (IrRemoteControl において PATTERN_HL をデータ出力パターンとして指定した場合と同様の信号波形) のみとなります。
| コンストラクタの概要 | |
|---|---|
protected |
IrReceiver()
直接このコンストラクタを呼び出してオブジェクトを生成することはできません。 |
| メソッドの概要 | |
|---|---|
void |
cancel()
赤外線受信を停止します。 |
java.io.InputStream |
getInputStream()
赤外線受信したデータを取り出すための入力ストリームを取得します。 |
static IrReceiver |
getIrReceiver()
赤外線受信機能のオブジェクトを取得します。 |
void |
receive(IrReceiverParam start,
IrReceiverParam stop,
IrReceiverParam data0,
IrReceiverParam data1,
int tTimeMax,
int tTimeMin)
赤外線受信を開始します。 |
| クラス Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
|---|
protected IrReceiver()
| メソッドの詳細 |
|---|
public static IrReceiver getIrReceiver()
このメソッドでは、複数回呼び出された場合でも常に同じオブジェクトへの参照を返します。
端末によっては赤外線受信機能をサポートしていない場合があります。 未サポートの場合、メソッドが呼び出された時点で UnsupportedOperationException が発生します。
com.docomostar.lang.UnsupportedOperationException -
com.docomostar.device.DeviceException - public java.io.InputStream getInputStream()
このメソッドを複数回呼び出した場合、常に同じオブジェクトへの参照を返します。
赤外線受信に利用する InputStream は close() を呼び出してもなにも行わず、
receive(IrReceiverParam, IrReceiverParam, IrReceiverParam,
IrReceiverParam, int, int) 〜 cancel()
によって赤外線受信を繰り返し行った場合においても同じオブジェクトを利用し続けることができます。
ただし、receive(IrReceiverParam, IrReceiverParam, IrReceiverParam,
IrReceiverParam, int, int) によって新しく赤外線受信を開始する際に前回受信したデータが残っている場合、
そのデータはクリアされます。
public void receive(IrReceiverParam start,
IrReceiverParam stop,
IrReceiverParam data0,
IrReceiverParam data1,
int tTimeMax,
int tTimeMin)
引数 start、stop、data0、data1 には、それぞれの受信信号波形における High/Low 時間の最小値、最大値を設定した
IrReceiverParam オブジェクトを指定します。
引数 tTimeMax、tTimeMin には、赤外線信号の T 時間の最小値・最大値をマイクロ秒単位で指定します。 ここで T 時間とは、家電製品協会フォーマットという規格における時間の最小単位となります。 この規格では、T 時間の組み合わせによりスタート部やデータ部、ストップ部の時間を設定することで、 各受信信号波形を識別します。
赤外線受信開始時に、前回受信したデータが InputStream に残っている場合、そのデータはクリアされます。
このメソッドの呼び出しによって既に赤外線受信中の場合は、 再度このメソッドを呼び出しても何も行いません。 このメソッドの呼び出し以外によって既に赤外線の送受信が行われていた場合は、 このメソッドを呼び出すと例外が発生します。
以下の原因により赤外線受信が停止した場合、本メソッドでは例外は発生せず、getInputStream() から取得した InputStream の各メソッド呼び出し時に例外が発生します。
start - 赤外線信号のスタート部の情報を指定します。stop - 赤外線信号のストップ部の情報を指定します。data0 - 赤外線信号のデータ部(論理 0 )の情報を指定します。data1 - 赤外線信号のデータ部(論理 1 )の情報を指定します。tTimeMax - 赤外線信号の T 時間の最大値 (usec) を指定します。tTimeMin - 赤外線信号の T 時間の最小値 (usec) を指定します。
NullPointerException -
IllegalArgumentException -
SecurityException -
com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - LocationProvider.setTrackingListener(TrackingListener listener,
int interval, int timeout)
の引数 listener に null 以外が設定されている場合も含みます。
com.docomostar.device.DeviceException - com.docomostar.device.DeviceException - public void cancel()
赤外線受信が開始されていない場合は、何も行いません。
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
NTT DOCOMO,INC.
本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。
Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。
FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。
「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。
その他記載された会社名、製品名などは該当する各社の商標または登録商標です。