com.docomostar.media
インタフェース MediaImage

すべてのスーパーインタフェース:
MediaResource

public interface MediaImage
extends MediaResource

メディアイメージを定義します。 このメディアイメージ インタフェースは、 メディアリソースを画像として扱う場合に使用します。

メディアイメージは MediaManager クラスなどのメソッドを使用して取得します。 実際にどのようなクラスのオブジェクトが返されるかは機種依存です。 メディアイメージは VisualPresenter コンポーネントで表示するか、 Image オブジェクトを取り出して使用します。

導入されたバージョン:
Star-1.0
関連項目:
MediaManager, VisualPresenter

メソッドの概要
 ExifData getExifData() [iアプリオプションAPI]
           このメディアイメージに関連付けられている EXIF 情報を取得します。
 int getHeight()
           イメージの高さを取得します。
 Image getImage()
           メディアイメージからイメージオブジェクトを取得します。
 int getWidth()
           イメージの幅を取得します。
 void setExifData(ExifData exif) [iアプリオプションAPI]
           このメディアイメージに、指定された EXIF 情報を関連付けます。
 void use(MediaResource overwritten, boolean useOnce)
           メモリ領域を再利用したいメディアリソース、および 、一度きりの利用であるかどうかを指定して、 このメディアイメージの使用開始を宣言します。
 
インタフェース com.docomostar.media.MediaResource から継承されたメソッド
dispose, getProperty, isRedistributable, setProperty, setRedistributable, unuse, use
 

メソッドの詳細

getWidth

int getWidth()

イメージの幅を取得します。以下の場合は 0 が返ります。

戻り値:
イメージの幅を返します。
例外:
MediaException -
(ILLEGAL_STATE)
既に dispose されているメディアイメージに対して呼び出された場合に発生します。

getHeight

int getHeight()

イメージの高さを取得します。以下の場合は 0 が返ります。

戻り値:
イメージの高さを返します。
例外:
MediaException -
(ILLEGAL_STATE)
既に dispose されているメディアイメージに対して呼び出された場合に発生します。

getImage

Image getImage()

メディアイメージからイメージオブジェクトを取得します。 メディアイメージをイメージオブジェクトに変換できない場合は null を返します。

このメソッドを呼び出すことにより得られたイメージオブジェクトを Image.dispose() しない限り、 複数回このメソッドを呼び出しても、 同一の有効なイメージオブジェクトへの参照が返されます。
得られたイメージオブジェクトを dispose() してからこのメソッドを呼び出すと、 新しく有効なイメージオブジェクトが生成されて返されます。

このメディアイメージが unuse()dispose() された場合は、メディアイメージから取得したイメージオブジェクトは、 そのオブジェクトを参照しているオブジェクトが存在しているか否かに関係なく 無効 (Image.dispose() が呼ばれた状態 ) となります。

このメディアイメージが Flash® コンテンツである場合は null が返ります。

戻り値:
イメージオブジェクトを返します。 返されるイメージオブジェクトには、 このオブジェクトの再配布可能かどうかの設定は引き継がれません。 返されるイメージオブジェクトには、 MediaResource.setProperty(String, String) で設定されたプロパティ値は引き継がれません。
例外:
MediaException -
(ILLEGAL_STATE)
このメディアイメージが unuse 、 dispose されている場合に発生します。

use

void use(MediaResource overwritten,
         boolean useOnce)
         throws ConnectionException

メモリ領域を再利用したいメディアリソース、および 、一度きりの利用であるかどうかを指定して、 このメディアイメージの使用開始を宣言します。 このメソッドの基本的な動作については、 スーパーインタフェースの説明を参照して下さい。 なお、メディアイメージにおいては、加えて下記のように振る舞います。

定義:
インタフェース MediaResource 内の use
パラメータ:
overwritten - 領域を再利用したいメディアイメージを指定します。 null を指定すると、このメディアイメージの 「内部データ領域」は新規に確保されます。
useOnce - このメディアイメージの利用が「一度きり」の場合には true を、そうでない場合には false を指定します。
例外:
MediaException -
(ILLEGAL_STATE)
既に dispose されているメディアイメージに対して呼び出された場合に発生します。
IllegalArgumentException -
引数 overwritten に このオブジェクト自身が設定された場合に発生します。
ClassCastException -
引数 overwritten の実行時の型と、 このオブジェクトの実行時の型が異なる場合に発生します。
MediaException -
(UNSUPPORTED_FORMAT)
引数 overwritten で指定されたメディアイメージが、 「内部データ領域」 の再利用対象外のデータフォーマットであった場合に発生します。
MediaException -
(UNSUPPORTED_FORMAT)
このメディアイメージが 「内部データ領域」 の再利用対象外のデータフォーマットであり、 引数 overwritten に非 null が設定された場合に発生します。
MediaException -
(ILLEGAL_STATE)
引数 overwritten が利用可能状態でない場合に発生します。
MediaException -
(ILLEGAL_STATE)
このオブジェクトが、「一度きり」と指定して use され、その後 unuse されていた場合に発生します。
MediaException -
(NO_RESOURCES)
このメディアイメージを利用可能状態にするのに必要な領域が、 引数 overwritten が確保している領域よりも大きい場合に発生します。
SecurityException -
セキュリティ上の制約に触れた場合に発生します。
ConnectionException -
ネットワーク通信などで例外が発生した場合に発生します。 ネットワークサービスがないか圏外の場合、 ステータスには OUT_OF_SERVICE が設定されています。 タイムアウトの場合には、 TIMEOUT が設定されています。
MediaException -
(UNSUPPORTED_FORMAT)
画像データのフォーマットがサポートされていないか不正な場合に発生します。 データの長さが0の場合など、 フォーマットが不正と見なされる場合を含みます。
MediaException -
(NO_RESOURCES)
画像の展開時にリソース不足になった場合に発生します。

getExifData

ExifData getExifData() [iアプリオプションAPI]

このメディアイメージに関連付けられている EXIF 情報を取得します。 このメディアイメージが JPEG-EXIF フォーマットでない場合には null が返されます。

GPS info IFD に記録されているタグの取得のみがサポートされています。 その他のタグについては、存在している場合でも参照することはできません。

このメソッドによって返されるオブジェクトは、 内部で保持しているオブジェクトのコピーです。

ExifData.getSupportStatus(int, int) により ExifData.SUPPORT_GET または (ExifData.SUPPORT_GET | ExifData.SUPPORT_SET) を返すタグのみが ExifData オブジェクトに格納されます。

戻り値:
このメディアイメージに関連付けられている EXIF 情報を返します。
例外:
MediaException -
(ILLEGAL_STATE)
このメディアイメージが use 状態でない場合に発生します。
MediaException -
(ILLEGAL_STATE)
このメディアイメージが「一度きり」と指定して use されていた場合に発生します。

setExifData

void setExifData(ExifData exif) [iアプリオプションAPI]

このメディアイメージに、指定された EXIF 情報を関連付けます。

既に、このメディアイメージに EXIF 情報 (ExifData) が関連付けられている場合には、 既存の関連付けを解消し、 引数で指定した新しい EXIF 情報を関連付けます。 このメディアイメージが、(EXIF 拡張が無い ) JFIF フォーマットである場合には、 このメソッドで指定された EXIF 情報を持つ JPEG-EXIF フォーマットのデータに変更されます。

このメディアイメージが JPEG ベースライン DCT フォーマットではない場合、 このメソッドを呼び出すと例外が発生します。

GPS info IFD に記録されるタグのうち、 以下の情報が設定されていない場合には例外が発生します。

JFIF フォーマットから JPEG-EXIF フォーマットのデータに変更される際には、 EXIF 仕様にて規定されている必須のタグが自動的に補完されます。 その際に、どのような内容で補完されるかは機種依存です。

このメソッドは、引数で指定されたオブジェクトをコピーして保持します。

このメディアイメージに ExifData で扱うことのできないタグが含まれている場合には、 それらのタグはこのメソッド呼び出しによる影響を受けません。 ExifData で扱うことのできないタグとは、 ExifData.getSupportStatus(int, int) により 0 が返されるタグのことです。 ただし、JFIF フォーマットから JPEG-EXIF フォーマットのデータに変更される際には、 上記の通り、EXIF 仕様上の必須タグについては自動補完されます。

パラメータ:
exif - このメディアイメージに関連付ける EXIF 情報を指定します。 このメディアイメージから EXIF 情報を取り除く場合には null を指定します。
例外:
MediaException -
(ILLEGAL_STATE)
このメディアイメージが use 状態でない場合に発生します。
MediaException -
(ILLEGAL_STATE)
このメディアイメージが「一度きり」と指定して use されていた場合に発生します。
IllegalArgumentException -
引数 exif に必須の情報が欠けている場合に発生します。
MediaException -
(UNSUPPORTED_FORMAT)
このメディアイメージが JPEG ベースライン DCT フォーマットでない場合に発生します。