Win32 API 日本語リファレンス
ホームMedia.DirectShow.Tv › IIsdbDownloadContentDescriptor

IIsdbDownloadContentDescriptor

COM
IID5298661e-cb88-4f5f-a1de-5f440c185b92継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子からデータを取得するメソッドを実装します。

メソッド 17

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetTag(BYTE* pbVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子を識別するタグを取得します。

pbValBYTE*outタグ値を受け取ります。ISDB のダウンロードコンテンツ記述子の場合、この値は 0xC9 です。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 4 HRESULT GetLength(BYTE* pbVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子の本体長をバイト単位で取得します。

pbValBYTE*out記述子の長さを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 5 HRESULT GetFlags(BOOL* pfReboot, BOOL* pfAddOn, BOOL* pfCompatibility, BOOL* pfModuleInfo, BOOL* pfTextInfo)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子からフラグ値を取得します。

pfRebootBOOL*outreboot フラグの値を受け取ります。このフラグは、ダウンロード後に再起動が必要な場合は 1、不要な場合は 0 です。
pfAddOnBOOL*outadd_on フラグの値を受け取ります。このフラグは、ダウンロードが既存のファイルに追加される場合は 1、既存のファイルを上書きする場合は 0 です。
pfCompatibilityBOOL*outcompatibility_flag フィールドの値を受け取ります。このフラグは、記述子が互換性記述子を持つ場合は 1、持たない場合は 0 です。
pfModuleInfoBOOL*outmodule_info フラグの値を受け取ります。このフラグは、記述子に各モジュールの情報が含まれる場合は 1、含まれない場合は 0 です。
pfTextInfoBOOL*outtext_info_flag フィールドの値を受け取ります。このフラグは、記述子の最後のフィールドにテキストによる説明が含まれる場合は 1、含まれない場合は 0 です。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 6 HRESULT GetComponentSize(DWORD* pdwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、同一のカルーセル内で伝送されるコンポーネントの合計サイズをバイト単位で取得します。

pdwValDWORD*outコンポーネントのサイズを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 7 HRESULT GetDownloadId(DWORD* pdwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子からダウンロード識別子を取得します。ダウンロード識別子は、ダウンロードのアプリケーション番号を識別します。

pdwValDWORD*outダウンロード識別子を受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 8 HRESULT GetTimeOutValueDII(DWORD* pdwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から time_out_value_DII フィールドの値を取得します。

pdwValDWORD*out推奨されるタイムアウト値を受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 9 HRESULT GetLeakRate(DWORD* pdwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、トランスポートバッファーのリークレートをバイト毎秒で取得します。

pdwValDWORD*outリークレートを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 10 HRESULT GetComponentTag(BYTE* pbVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、ストリームコンポーネントを識別するタグを取得します。このタグは、program map table (PMT) 内のストリームも識別します。

pbValBYTE*outコンポーネントタグを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 11 HRESULT GetCompatiblityDescriptorLength(WORD* pwLength)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、互換性記述子の長さを取得します。

pwLengthWORD*out互換性記述子の長さを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 12 HRESULT GetCompatiblityDescriptor(BYTE** ppbData)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子内の互換性記述子からデータを取得します。互換性記述子は、ダウンロードによって更新される対象を指定します。

ppbDataBYTE**out互換性記述子を受け取るバッファーへのポインター。このメモリの解放は呼び出し側の責任です。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 13 HRESULT GetCountOfRecords(WORD* pwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子の本体長をバイト単位で取得します。

pwValWORD*outレコード数を受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 14 HRESULT GetRecordModuleId(WORD wRecordIndex, WORD* pwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、ダウンロードに使用されるカルーセルを指定する識別子を取得します。

wRecordIndexWORDinモジュールのレコード番号を 0 から始まるインデックスで指定します。拡張イベント記述子内のレコード数を取得するには、IIsdbDownloadContentDescriptor::GetCountOfRecords メソッドを呼び出します。
pwValWORD*outモジュール ID を受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 15 HRESULT GetRecordModuleSize(WORD wRecordIndex, DWORD* pdwVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、モジュールのサイズをバイト単位で取得します。

wRecordIndexWORDinmodule_info_byte フィールドを含むモジュールのレコード番号を 0 から始まるインデックスで指定します。ダウンロードコンテンツ記述子内のレコード数を取得するには、IIsdbDownloadContentDescriptor::GetCountOfRecords メソッドを呼び出します。
pdwValDWORD*outモジュールのサイズを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 16 HRESULT GetRecordModuleInfoLength(WORD wRecordIndex, BYTE* pbVal)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から module_info_length フィールドの値を取得します。module_info_length フィールドは、記述子内の module_info_byte フィールドの長さを示します。

wRecordIndexWORDinmodule_info_byte フィールドを含むモジュールのレコード番号を 0 から始まるインデックスで指定します。拡張イベント記述子内のレコード数を取得するには、IIsdbDownloadContentDescriptor::GetCountOfRecords メソッドを呼び出します。
pbValBYTE*outmodule_info_byte フィールドの長さを受け取ります。このフィールドの内容を取得するには、IIsdbDownloadContentDescriptor::GetRecordModuleInfo メソッドを呼び出します。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 17 HRESULT GetRecordModuleInfo(WORD wRecordIndex, BYTE** ppbData)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子内のモジュールレコードから、module_info_byte フィールドの値を取得します。

wRecordIndexWORDinmodule_info_byte フィールドを含むモジュールのレコード番号を 0 から始まるインデックスで指定します。拡張イベント記述子内のレコード数を取得するには、IIsdbDownloadContentDescriptor::GetCountOfRecords メソッドを呼び出します。
ppbDataBYTE**outフィールド値を受け取るバッファーへのポインター。このメモリの解放は呼び出し側の責任です。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 18 HRESULT GetTextLanguageCode(BYTE* szCode)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、3 文字の ISO 639 言語コードを取得します。

szCodeBYTE*out言語コードを受け取ります。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 19 HRESULT GetTextW(DVB_STRCONV_MODE convMode, LPWSTR* pbstrName)

Integrated Services Digital Broadcasting (ISDB) のダウンロードコンテンツ記述子から、記述子の内容を説明するテキストを Unicode テキスト形式で取得します。

convModeDVB_STRCONV_MODEin

使用する文字列変換モードを指定します。このパラメーターには、次のいずれかの値を指定できます。

pbstrNameLPWSTR*out説明テキストを受け取るバッファーへのポインター。このメモリの解放は呼び出し側の責任です。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IIsdbDownloadContentDescriptor "{5298661E-CB88-4F5F-A1DE-5F440C185B92}"
#usecom global IIsdbDownloadContentDescriptor IID_IIsdbDownloadContentDescriptor "{}"
#comfunc global IIsdbDownloadContentDescriptor_GetTag                           3 var
#comfunc global IIsdbDownloadContentDescriptor_GetLength                        4 var
#comfunc global IIsdbDownloadContentDescriptor_GetFlags                         5 var,var,var,var,var
#comfunc global IIsdbDownloadContentDescriptor_GetComponentSize                 6 var
#comfunc global IIsdbDownloadContentDescriptor_GetDownloadId                    7 var
#comfunc global IIsdbDownloadContentDescriptor_GetTimeOutValueDII               8 var
#comfunc global IIsdbDownloadContentDescriptor_GetLeakRate                      9 var
#comfunc global IIsdbDownloadContentDescriptor_GetComponentTag                  10 var
#comfunc global IIsdbDownloadContentDescriptor_GetCompatiblityDescriptorLength  11 var
#comfunc global IIsdbDownloadContentDescriptor_GetCompatiblityDescriptor        12 var
#comfunc global IIsdbDownloadContentDescriptor_GetCountOfRecords                13 var
#comfunc global IIsdbDownloadContentDescriptor_GetRecordModuleId                14 int,var
#comfunc global IIsdbDownloadContentDescriptor_GetRecordModuleSize              15 int,var
#comfunc global IIsdbDownloadContentDescriptor_GetRecordModuleInfoLength        16 int,var
#comfunc global IIsdbDownloadContentDescriptor_GetRecordModuleInfo              17 int,var
#comfunc global IIsdbDownloadContentDescriptor_GetTextLanguageCode              18 var
#comfunc global IIsdbDownloadContentDescriptor_GetTextW                         19 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。