THPDFCABIOperationV1 Record
콜백 기반 IO를 가진 하나의 JSON 문서 연산에 대한 버전 지정 C ABI 디스크립터입니다
THPDFCABIOperationV1 = record
StructSize: UInt32;
ABIVersion: UInt32;
Flags: UInt64;
JSON: PAnsiChar;
JSONLength: NativeUInt;
InputIO: PHPDFCABIIOV1;
OutputIO: PHPDFCABIIOV1;
ResultIO: PHPDFCABIIOV1;
end;
유닛은 HPDFCAPI입니다. StructSize와 ABIVersion은 hpdf_abi_operation_v1_size와 hpdf_abi_version이 보고하는 크기와 버전과 일치해야 하며, 그렇지 않으면 호출이 거부됩니다
JSONLength를 가진 JSON은 THPDFJobProcessor.ExecuteLoadedOperation과 같은 엔진이 받는 UTF-8 연산 객체를 운반합니다
세 IO 레코드는 빌린 콜백 번들입니다. InputIO는 소스 바이트를 공급하고, OutputIO는 바이너리 결과를 받으며, ResultIO는 JSON 결과 문서를 받습니다
JSON 실행과 두 핸들 비교 연산에서 실패한 쓰기 콜백은 같은 라이터와 user-data 쌍을 통해 오류 결과를 발행하려고 다시 호출되지 않습니다. OutputIO와 ResultIO가 그 쌍을 공유할 때도 포함입니다. 호출자가 이미 받은 부분 후보 바이트는 호출자의 책임으로 남습니다
정의된 0이 아닌 상태 범위 밖의 쓰기 상태 값과, 0이거나 과도한 성공 바이트 수는 HPDF_STATUS_IO_ERROR가 됩니다. V1 레코드 레이아웃과 성공적인 부분 쓰기 동작은 변경되지 않습니다
이 구조는 hpdf_document_execute_json_v1과 hpdf_document_compare_json_v1에 포인터로 전달되며, 새 ABI 버전 뒤에 필드를 추가하는 방식으로만 확장됩니다