DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA 구조체(d3dkmddi.h)

DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA 구조는 표준 할당 유형을 설명합니다.

구문

typedef struct _DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA {
  [in]     D3DKMDT_STANDARDALLOCATION_TYPE StandardAllocationType;
  union {
    [in]     D3DKMDT_SHAREDPRIMARYSURFACEDATA *pCreateSharedPrimarySurfaceData;
    [in]     D3DKMDT_SHADOWSURFACEDATA        *pCreateShadowSurfaceData;
    [in]     D3DKMDT_STAGINGSURFACEDATA       *pCreateStagingSurfaceData;
    [in]     D3DKMDT_GDISURFACEDATA           *pCreateGdiSurfaceData;
             D3DKMDT_VIRTUALGPUSURFACEDATA    *pCreateVirtualGpuSurfaceData;
  };
  [in/out] VOID                            *pAllocationPrivateDriverData;
  [out]    UINT                            AllocationPrivateDriverDataSize;
  [in/out] VOID                            *pResourcePrivateDriverData;
  [out]    UINT                            ResourcePrivateDriverDataSize;
           UINT                            PhysicalAdapterIndex;
} DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA;

멤버

[in] StandardAllocationType

설명할 표준 할당 유형을 식별하는 D3DKMDT_STANDARDALLOCATION_TYPE 형식의 값입니다.

[in] pCreateSharedPrimarySurfaceData

StandardAllocationTypeD3DKMDT_STANDARDALLOCATION_SHAREDPRIMARYSURFACE 지정하는 경우 D3DKMDT_SHAREDPRIMARYSURFACEDATA 구조체에 대한 포인터입니다.

[in] pCreateShadowSurfaceData

StandardAllocationTypeD3DKMDT_STANDARDALLOCATION_SHADOWSURFACE 지정하는 경우 D3DKMDT_SHADOWSURFACEDATA 구조체에 대한 포인터입니다.

[in] pCreateStagingSurfaceData

StandardAllocationType이 D3DKMDT_STANDARDALLOCATION_STAGINGSURFACE 지정하는 경우 D3DKMDT_STAGINGSURFACEDATA 구조체에 대한 포인터입니다.

[in] pCreateGdiSurfaceData

standardAllocationTypeD3DKMDT_STANDARDALLOCATION_GDISURFACE 지정하는 경우에만 사용할 수 있는 D3DKMDT_GDISURFACEDATA 구조체에 대한 포인터입니다.

이 멤버는 Windows 7부터 사용할 수 있습니다.

pCreateVirtualGpuSurfaceData

StandardAllocationTypeD3DKMDT_STANDARDALLOCATION_VIRTUALGPUSURFACE 경우 D3DKMDT_VIRTUALGPUSURFACEDATA 구조체에 대한 포인터입니다. WDDM 2.1부터 사용할 수 있습니다.

[in/out] pAllocationPrivateDriverData

표준 할당 유형을 설명하는 할당 프라이빗 데이터 블록에 대한 포인터입니다. 그렇지 않으면 이 멤버가 NULL입니다. 디스플레이 미니포트 드라이버의 DxgkDdiGetStandardAllocationDriverData 함수가 반환하는 할당 프라이빗 데이터는 드라이버가 StandardAllocationType에서 요청하는 형식에 따라 달라집니다.

[out] AllocationPrivateDriverDataSize

pAllocationPrivateDriverData가 가리키는 할당 프라이빗 데이터의 크기(바이트)입니다. 드라이버가 pAllocationPrivateDriverData 를 NULL로 설정하는 경우 드라이버는 AllocationPrivateDriverDataSize 를 드라이버가 지정된 표준 할당 유형을 설명하는 데 필요한 버퍼 크기로 설정해야 합니다.

드라이버가 표준 할당 유형에 대한 각 할당에 프라이빗 데이터를 사용하지 않는 경우 드라이버는 AllocationPrivateDriverDataSize 를 0으로 설정할 수 있습니다.

[in/out] pResourcePrivateDriverData

표준 할당 유형을 설명하는 리소스 프라이빗 데이터 블록에 대한 포인터입니다. 그렇지 않으면 이 멤버가 NULL입니다. 디스플레이 미니포트 드라이버의 DxgkDdiGetStandardAllocationDriverData 함수가 반환하는 리소스 프라이빗 데이터는 드라이버가 StandardAllocationType에서 요청하는 형식에 따라 달라집니다.

[out] ResourcePrivateDriverDataSize

pResourcePrivateDriverData가 가리키는 리소스 개인 데이터의 크기(바이트)입니다. 드라이버가 pResourcePrivateDriverData 를 NULL로 설정하는 경우 드라이버는 ResourcePrivateDriverDataSize 를 드라이버가 지정된 표준 할당 유형을 설명하는 데 필요한 버퍼 크기로 설정해야 합니다.

드라이버가 표준 할당 유형에 대해 각 리소스에 대해 프라이빗 데이터를 사용하지 않는 경우 드라이버는 ResourcePrivateDriverDataSize 를 0으로 설정할 수 있습니다.

PhysicalAdapterIndex

설명

디스플레이 미니포트 드라이버가 pAllocationPrivateDriverDatapResourcePrivateDriverData 멤버에서 NULL을 반환하는 경우 드라이버는 AllocationPrivateDriverDataSizeResourcePrivateDriverDataSize 멤버에서 드라이버에 필요한 버퍼의 크기를 반환해야 합니다. 그러나 드라이버는 버퍼의 필요한 크기를 얻기 위해 DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA 포함된 공용 구조체의 표준 할당 구조체 내용을 변경해서는 안 됩니다.

드라이버는 ResourcePrivateDriverDataSize 또는 AllocationPrivateDriverDataSize 를 0으로 설정할 수 있지만 드라이버는 둘 다 0으로 설정할 수 없습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista
머리글 d3dkmddi.h(D3dkmddi.h 포함)

추가 정보

D3DKMDT_GDISURFACEDATA

D3DKMDT_SHADOWSURFACEDATA

D3DKMDT_SHAREDPRIMARYSURFACEDATA

D3DKMDT_STAGINGSURFACEDATA

D3DKMDT_STANDARDALLOCATION_TYPE

D3DKMDT_VIRTUALGPUSURFACEDATA

DxgkDdiGetStandardAllocationDriverData