다음을 통해 공유


PFND3D11DDI_COPYSTRUCTURECOUNT 콜백 함수(d3d10umddi.h)

CopyStructureCount 함수는 추가 버퍼 UAV(순서가 지정되지 않은 액세스 뷰)의 채워진 부분(즉, 채워진 크기 값)의 항목 수를 대상 버퍼에 오프셋으로 복사합니다.

통사론

PFND3D11DDI_COPYSTRUCTURECOUNT Pfnd3d11ddiCopystructurecount;

void Pfnd3d11ddiCopystructurecount(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D10DDI_HRESOURCE unnamedParam2,
  UINT unnamedParam3,
  D3D11DDI_HUNORDEREDACCESSVIEW unnamedParam4
)
{...}

매개 변수

unnamedParam1

hDevice [in]

디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

unnamedParam2

hDstBuffer [in]

UAV의 채워진 크기 값을 복사할 대상 버퍼에 대한 핸들입니다. 이 대상 버퍼를 만들려면 런타임에서 D3D10DDIRESOURCE_BUFFER 값으로 설정된 D3D11DDIARG_CREATERESOURCE 구조체의 ResourceDimension 멤버를 사용하여 드라이버의 CreateResource(D3D11) 함수를 호출해야 합니다.

unnamedParam3

DstAlignedByteOffset [in]

hDstBuffer 매개 변수가 지정하는 대상 버퍼에 대한 4바이트 정렬 오프셋(바이트)입니다. CopyStructureCounthSrcView 매개 변수가 hDstBuffer이 오프셋에 지정하는 추가 버퍼 뷰의 채워진 크기 값을 복사합니다. DstAlignedByteOffset 4의 배수여야 합니다.

unnamedParam4

hSrcView [in]

추가 버퍼 뷰여야 하는 원본 추가 UAV에 대한 핸들입니다. CopyStructureCount 이 뷰의 채워진 크기 값을 hDstBuffer 매개 변수가 지정하는 대상 버퍼에 복사합니다. 이 추가 버퍼 뷰를 만들려면 런타임에서 이전에 드라이버의 CreateUnorderedAccessView 함수를 D3D11_DDI_BUFFER_UAV_FLAG_APPEND 플래그 집합으로 호출해야 합니다.

반환 값

없음

발언

드라이버는 pfnSetErrorCb 콜백 함수를 사용하여 오류 코드를 설정할 수 있습니다.

드라이버는 D3DDDIERR_DEVICEREMOVED 제외하고 오류가 발생하지 않아야 합니다. 따라서 드라이버가 D3DDDIERR_DEVICEREMOVED 제외하고 pfnSetErrorCb 함수에 대한 호출에서 오류를 전달하는 경우 Direct3D 런타임은 오류가 중요하다고 결정합니다. 디바이스가 제거되더라도 드라이버는 D3DDDIERR_DEVICEREMOVED 반환할 필요가 없습니다. 그러나 디바이스 제거가 CopyStructureCount(일반적으로 발생하지 않아야 하는) 작업을 방해하는 경우 드라이버는 D3DDDIERR_DEVICEREMOVED 반환할 수 있습니다.

CopyStructureCount 추가 버퍼 UAV(스택과 같은 구조체에서 푸시 및 팝업 작업을 지원하는 UAV)의 채워진 크기 값을 가져와서 이 값을 대상 버퍼에 오프셋으로 복사합니다. 그래픽 하드웨어는 4바이트 채워진 크기 값을 사용하여 추가 버퍼 UAV에 채워지는 데이터의 양을 추적합니다.

요구 사항

요구
지원되는 최소 클라이언트 CopyStructureCount는 Windows 7 운영 체제부터 지원됩니다.
대상 플랫폼 바탕 화면
헤더 d3d10umddi.h(D3d10umddi.h 포함)

참고 항목

CreateResource(D3D11)

CreateUnorderedAccessView

D3D11DDI_DEVICEFUNCS

pfnSetErrorCb