실패한 DStorage 요청에 대한 자세한 기록을 수신하는 구조입니다.
구문
typedef struct DSTORAGE_ERROR_RECORD {
UINT32 FailureCount;
struct
{
HRESULT HResult ;
DSTORAGE_COMMAND_TYPE CommandType;
union
{
struct
{
DSTORAGE_REQUEST_OPTIONS Options;
void *Destination;
UINT32 DestinationSize;
WCHAR Filename[MAX_PATH];
UINT64 FileOffset;
void *Source;
UINT32 SourceSize;
UINT64 CancellationTag;
CHAR Name[DSTORAGE_REQUEST_MAX_NAME];
} Request;
struct
{
IDStorageStatusArrayX *StatusArray;
UINT32 Index;
} Status;
struct
{
ID3D12Fence *Fence;
UINT64 Value;
} Signal;
};
} FirstFailure;
} DSTORAGE_ERROR_RECORD
멤버
FailureCount
형식: UINT32
마지막 RetrieveErrorRecord 호출 이후 큐에서 실패한 요청 수입니다.
HResult
형식: HRESULT
실패의 HRESULT 코드입니다.
CommandType
형식: DSTORAGE_COMMAND_TYPE
실패를 유발한 큐 요청의 유형입니다.
옵션
형식: DSTORAGE_REQUEST_OPTIONS
실패한 요청의 여러 가지 옵션입니다.
Destination
형식: void *
실패한 요청의 최종 결과를 수신할 버퍼의 주소입니다.
DestinationSize
형식: UINT32
초기 요청의 일부로 전달된 실패한 요청의 최종 결과에서 예상되는 크기(바이트)입니다.
파일 이름
형식: WCHAR[MAX_PATH]
요청 대상 파일의 이름입니다.
FileOffset
형식: UINT64
파일에서 실패한 읽기 요청을 시작할 오프셋(바이트)입니다.
*
Source
형식: void
메모리 원본 요청의 경우 읽을 버퍼의 주소입니다.
SourceSize
형식: UINT32
원본에서 읽을 바이트 수입니다.
CancellationTag
형식: UINT64
취소 일치에 사용되는 임의 UINT64 숫자입니다.
이름
형식: CHAR[DSTORAGE_REQUEST_MAX_NAME]
요청의 이름입니다.
*
StatusArray
Type: IDStorageStatusArrayX
상태 쓰기 요청의 경우 IDStorageStatusArrayX 개체.
색인
형식: UINT32
상태 쓰기 요청의 경우 상태를 받을 IDStorageStatusArrayX 개체의 상태 항목의 인덱스입니다.
*
Fence
형식: ID3D12Fence*
펀스 쓰기 요청의 경우에는 ID3D12Fence 개체입니다.
Value
형식: UINT64
펀스 쓰기 요청의 경우 펀스에 쓸 값입니다.
주석
이 구조는 IDStorageQueueX::RetrieveErrorRecord 메서드에서 사용합니다.
CommandType이 DSTORAGE_COMMAND_TYPE_NONE일 경우 나머지 데이터는 정의되지 않습니다.
자세한 내용은 DirectStorage 개요의 “GetErrorEvent/RetrieveErrorRecord” 섹션을 참조하세요.
요구 사항
헤더: dstorage_xs.h
지원되는 플랫폼: Xbox Series 콘솔