다음을 통해 공유


DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA 구조체(d3dkmddi.h)

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

구문

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

멤버

StandardAllocationType

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

pCreateSharedPrimarySurfaceData

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

pCreateShadowSurfaceData

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

pCreateStagingSurfaceData

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

pCreateGdiSurfaceData

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

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

pCreateVirtualGpuSurfaceData

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

pCreateFenceStorageData

pAllocationPrivateDriverData

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

AllocationPrivateDriverDataSize

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

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

pResourcePrivateDriverData

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

ResourcePrivateDriverDataSize

[out] 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