SophiaFramework UNIVERSE 5.3 |
BREW 2.0 | BREW 2.1 | BREW 3.1 | BREW 4.0 |
---|---|---|---|
× | ○ | ○ | ○ |
パブリック関数 | |
---|---|
SFCError |
CreateMedia(
AEEMediaData* data
, SFBMediaSmpPtr media
)
与えられたメディアデータを解析し、
SFBMedia 派生クラスのインスタンスを作成します。
|
SFCError |
CreateMediaEx(
AEEMediaCreateInfo* info
, SFBMediaSmpPtr media
)
SFBMedia ベースのオブジェクトの作成に必要な情報を指定する際に、 SFBMediaUtil::CreateMedia よりも高い柔軟性を提供します。
|
SFCError |
EncodeJPEG(
AEEMediaEncodeResult* result
, AEEMediaEncodeInfo* spec
, SFXCallbackPtr callback
)
JPEG 形式のメディアをエンコードします。
|
SFCError |
EncodeMedia(
AEEMediaEncodeResult* result
, AEECLSID clsidDest
, AEEMediaEncodeInfo* spec
, SFXCallbackPtr callback
)
指定した形式の新しいメディアをエンコードします。
|
SFCError |
EncodePMD(
AEEMediaEncodeResult* result
, AEEMediaEncodeInfo* spec
, SFXCallbackPtr callback
)
PMD 形式のメディアをエンコードします。
|
static SFBMediaUtilSmp |
NewInstance(
SFCErrorPtr exception = null
)
SFBMediaUtil インスタンスを生成します。
|
static SFBMediaUtilSmp |
NewInstance(
AEECLSID id
, SFCErrorPtr exception = null
)
SFBMediaUtil インスタンスを生成します。
|
SFCError |
QueryInterface(
AEECLSID clsid
, VoidHandle handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFCError |
QueryInterface(
AEECLSID clsid
, SFBBaseSmpPtr handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFBBaseSmp |
QueryInterface(
AEECLSID clsid
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
Void |
Self(
AEECLSID clsidReq
, SFBQuerySmpPtr clone
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
SFBQuerySmp |
Self(
AEECLSID clsidReq
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
プロテクト関数 | |
---|---|
static SFBBaseSmp |
FactoryByCreate(
AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを生成します。
|
static SFBBaseSmp |
FactoryByQuery(
SFBQuerySmpConstRef query
, AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを指定した SFBQuery インスタンスを使用して生成します。
|
[ public ] SFCError CreateMedia( AEEMediaData* data // メディア データ SFBMediaSmpPtr media // SFBMedia 派生クラスのインスタンスを受け取るポインタ );
SFBMediaUtil::CreateMedia() を使用して SFBMedia 派生クラスのインスタンスを作成し、 サウンドを再生します。
#include <SophiaFramework.hpp> #include "MediaSample.bid" // // MediaSample アプリケーションクラス // SFMTYPEDEFCLASS(MediaSample) class MediaSample : public SFRApplication { private: SFBMediaSmp _media; AEEMediaData _mdata; public: static SFCInvokerPtr ructorConst() { return new MediaSample; } private: MediaSample(Void); // コピー操作を防ぐために隠蔽する MediaSample(MediaSampleConstRef); MediaSampleConstRef operator = (ConstMediaSampleRef); // アプリ開始ハンドラ Void OnAppStart(Void); static Bool OnAppStartEntry(SFXEventConstRef event, VoidPtr data) { MediaSamplePtr(data)->OnAppStart(); return true; } // アプリ終了ハンドラ Void OnAppStop(Void); static Bool OnAppStopEntry(SFXEventConstRef event, VoidPtr data) { MediaSamplePtr(data)->OnAppStop(); return true; } }; // BREW アプレットの起動コード SFCInvokerSPP SFCApplet::Boot(AEECLSID id) { if (id == AEECLSID_MEDIASAMPLE) { return MediaSample::ructorConst; } else { return null; } } // コンストラクタ MediaSample::MediaSample(Void) { // イベントハンドラを登録する RegisterHandler(SFEVT_APP_START, HANDLER_BEFORE, OnAppStartEntry, this); RegisterHandler(SFEVT_APP_STOP, HANDLER_BEFORE, OnAppStopEntry, this); // メディア データを初期化する _mdata.pData = null; } // アプリ開始ハンドラ Void MediaSample::OnAppStart(Void) { // SFBMediaUtil オブジェクトを使用してメディアを再生する SFBShellSmp shell = SFBShell::GetInstance(); SFBMediaUtilSmp mutil = SFBMediaUtil::NewInstance(); const char* filename = "sample.mid"; if (mutil != null) { // メディアデータを設定する _mdata.clsData = MMD_FILE_NAME; _mdata.pData = STRDUP(filename); _mdata.dwSize = 0; // SFBMedia 派生クラスのインスタンスを作成する mutil->CreateMedia(&_mdata, (&_media); } if (_media != null) { // メディアを再生する _media->Play(); } } // アプリ終了ハンドラ Void MediaSample::OnAppStop(Void) { // メディア データを破棄する if (_mdata.pData != null) { FREE(_mdata.pData); } }
[ public ] SFCError CreateMediaEx( AEEMediaCreateInfo* info // 作成情報を含む構造体へのポインタ SFBMediaSmpPtr media // SFBMedia 派生クラスのインスタンスを受け取るポインタ );
[ public ] SFCError EncodeJPEG( AEEMediaEncodeResult* result // エンコードの結果を受け取る領域を指すポインタ AEEMediaEncodeInfo* spec // エンコード情報 SFXCallbackPtr callback // コールバック関数 );
[ public ] SFCError EncodeMedia( AEEMediaEncodeResult* result // エンコードの結果を受け取る領域を指すポインタ AEECLSID clsidDest // 宛先のエンコード ClassID AEEMediaEncodeInfo* spec // エンコード情報 SFXCallbackPtr callback // コールバック関数 );
[ public ] SFCError EncodePMD( AEEMediaEncodeResult* result // エンコードの結果を受け取る領域を指すポインタ AEEMediaEncodeInfo* spec // エンコード情報 SFXCallbackPtr callback // コールバック関数 );
[ public, static ] SFBMediaUtilSmp NewInstance( SFCErrorPtr exception = null // エラー値 );
[ public, static ] SFBMediaUtilSmp NewInstance( AEECLSID id // クラスID SFCErrorPtr exception = null // エラー値 );
Copyright(c) 2002 - 2024 Sophia Cradle Incorporated All Rights Reserved. |