DD_UPDATEOVERLAYDATA 構造体 (ddrawint.h)
DD_UPDATEOVERLAYDATA構造体には、オーバーレイ サーフェスを更新するために必要な情報が含まれています。
構文
typedef struct _DD_UPDATEOVERLAYDATA {
PDD_DIRECTDRAW_GLOBAL lpDD;
PDD_SURFACE_LOCAL lpDDDestSurface;
RECTL rDest;
PDD_SURFACE_LOCAL lpDDSrcSurface;
RECTL rSrc;
DWORD dwFlags;
DDOVERLAYFX overlayFX;
HRESULT ddRVal;
VOID *UpdateOverlay;
} *PDD_UPDATEOVERLAYDATA, DD_UPDATEOVERLAYDATA;
メンバー
lpDD
ドライバーのデバイスを記述する DD_DIRECTDRAW_GLOBAL 構造体を指します。
lpDDDestSurface
オーバーレイする Microsoft DirectDraw サーフェスを表す DD_SURFACE_LOCAL 構造体を指します。 dwFlags でDDOVER_HIDEが指定されている場合、この値は NULL になります。
rDest
オーバーレイする宛先サーフェス上の領域の x、y、幅、および高さを含む RECTL 構造体を指定します。
lpDDSrcSurface
オーバーレイ サーフェスを記述するDD_SURFACE_LOCAL構造体を指します。
rSrc
オーバーレイに使用するソース サーフェス上の領域の x、y、幅、および高さを含む RECTL 構造体を指定します。
dwFlags
ドライバーがオーバーレイを処理する方法を指定します。 このメンバーは、次のいずれかのフラグの組み合わせにすることができます。
フラグ | 説明 |
---|---|
DDOVER_ADDDIRTYRECT | ドライバーでは無視する必要があります。 |
DDOVER_AUTOFLIP | ハードウェア ビデオ ポートの自動フラグが設定されるたびに、ドライバーはオーバーレイをオートフリップする必要があります。 ビデオ ポート拡張機能 (VPE) をサポートするドライバーは、このフラグチェックする必要があります。 |
DDOVER_BOB | ドライバーは、VPE オブジェクト データの各フィールドを個別に表示する必要があります。ジッターアーティファクトは発生しません。 このフラグは、カーネル モードのビデオ トランスポート機能を使用してカーネル モードで独自の反転を実行する VPE とデコーダーの両方に関連します。 |
DDOVER_BOBHARDWARE | bob がソフトウェアまたはエミュレーションではなくハードウェアによって実行されることを示します。 VPE をサポートするドライバーは、このフラグチェックする必要があります。 |
DDOVER_DDFX | ドライバーは、 overlayFX メンバーで指定された属性を使用してオーバーレイサーフェイスを表示する必要があります。 |
DDOVER_HIDE | ドライバーはオーバーレイを非表示にする必要があります。つまり、ドライバーはこのオーバーレイをオフにする必要があります。 |
DDOVER_INTERLEAVED | オーバーレイ サーフェスは、インターリーブされたフィールドで構成されます。 VPE をサポートするドライバーは、このフラグチェックする必要があります。 |
DDOVER_KEYDEST | ドライバーは、移動先サーフェスに関連付けられている色キーを使用する必要があります。 |
DDOVER_KEYDESTOVERRIDE | ドライバーは、DDOVERLAYFX 構造体の dckDestColorKey メンバー (DirectDraw SDK ドキュメントで説明) を、変換先サーフェスに関連付けられているカラー キーではなく、コピー先の色キーとして使用する必要があります。 |
DDOVER_KEYSRC | ドライバーは、移動先サーフェスに関連付けられている色キーを使用する必要があります。 |
DDOVER_KEYSRCOVERRIDE | ドライバーは、DDOVERLAYFX 構造体の dckSrcColorKey メンバー (DirectDraw SDK ドキュメントで説明) を、変換先サーフェスに関連付けられているカラー キーではなく、ソース カラー キーとして使用する必要があります。 |
DDOVER_OVERRIDEBOBWEAVE | Bob/weave の決定は、他のインターフェイスによってオーバーライドされるべきではありません。 オーバーレイ ミキサーでこのフラグが設定されている場合、DirectDraw では、カーネル モード ドライバーがカーネル モードのビデオ トランスポート機能を使用して、ハードウェアを bob モードと織りモードに切り替えられません。 |
DDOVER_REFRESHALL | ドライバーでは無視する必要があります。 |
DDOVER_REFRESHDIRTYRECTS | ドライバーでは無視する必要があります。 |
DDOVER_SHOW | ドライバーはオーバーレイを表示する必要があります。つまり、ドライバーはこのオーバーレイをオンにする必要があります。 |
overlayFX
ドライバーがオーバーレイの更新に使用する必要がある追加の効果について説明する DDOVERLAYFX 構造体 (DirectDraw SDK ドキュメントで説明) を指定します。 ドライバーは、 dwFlags メンバーにDDOVER_DDFX、DDOVER_KEYDESTOVERRIDE、またはDDOVER_KEYSRCOVERRIDEのいずれかが設定されている場合にのみ、この構造体を使用する必要があります。
ddRVal
ドライバーが DdUpdateOverlay コールバックの戻り値を書き込む場所を指定します。 DD_OKのリターン コードは成功を示します。 詳細については、「 DirectDraw の戻り値」を参照してください。
UpdateOverlay
DirectDraw API によって使用され、ドライバーで入力しないでください。
要件
Header | ddrawint.h (Winddi.h を含む) |