次の方法で共有


VideoPortAllocateCommonBuffer 関数 (video.h)

VideoPortAllocateCommonBuffer 関数は、システム メモリを割り当ててマップし、共通バッファー DMA 操作のためにプロセッサとデバイスの両方から同時にアクセスできるようにします。

構文

VIDEOPORT_DEPRECATED VIDEOPORT_API PVOID VideoPortAllocateCommonBuffer(
  [in]  IN PVOID              HwDeviceExtension,
  [in]  IN PVP_DMA_ADAPTER    VpDmaAdapter,
  [in]  IN ULONG              DesiredLength,
  [out] OUT PPHYSICAL_ADDRESS LogicalAddress,
  [in]  IN BOOLEAN            CacheEnabled,
  [out] OUT PVOID             Reserved
);

パラメーター

[in] HwDeviceExtension

ミニポート ドライバーのデバイス拡張機能へのポインター。

[in] VpDmaAdapter

バス マスター アダプターを表す VP_DMA_ADAPTER 構造体へのポインター。 この構造体は、VideoPortGetDmaAdapter 以前の呼び出しによって返されました。

[in] DesiredLength

要求されたメモリのバイト数を指定します。

[out] LogicalAddress

割り当てられたバッファーにアクセスするためにアダプターが使用する論理アドレスを受け取るメモリ位置へのポインター。

[in] CacheEnabled

割り当てられたメモリをキャッシュできるかどうかを指定します。 詳細については、AllocateCommonBufferCacheEnabled パラメーターの説明を参照してください。

[out] Reserved

現在、ビデオ ポート ドライバーでは無視されます。は NULL に設定する必要があります。

戻り値

VideoPortAllocateCommonBuffer は、成功した場合に割り当てられたバッファーのベース仮想アドレスを返します。それ以外の場合は、バッファーを割り当てることができない場合 NULL が返されます。

備考

バッファーが不要になったら、ビデオ ミニポート ドライバーは、VideoPortReleaseCommonBuffer 呼び出すことによって、バッファーを解放する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows XP 以降のバージョンの Windows オペレーティング システムで使用できます。
ターゲット プラットフォーム デスクトップ
ヘッダー video.h (Video.h を含む)
ライブラリ Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

関連項目

AllocateCommonBuffer

VP_DMA_ADAPTER

VideoPortGetDmaAdapter

VideoPortReleaseCommonBuffer