THPDFCABIOperationV1 Record
Versioned C ABI descriptor for one JSON document operation with callback-backed IO
THPDFCABIOperationV1 = record
StructSize: UInt32;
ABIVersion: UInt32;
Flags: UInt64;
JSON: PAnsiChar;
JSONLength: NativeUInt;
InputIO: PHPDFCABIIOV1;
OutputIO: PHPDFCABIIOV1;
ResultIO: PHPDFCABIIOV1;
end;
The unit is HPDFCAPI; StructSize and ABIVersion must match the sizes and versions reported by hpdf_abi_operation_v1_size and hpdf_abi_version or the call is rejected
JSON together with JSONLength carries the UTF-8 operation object accepted by the same engine as THPDFJobProcessor.ExecuteLoadedOperation
The three IO records are borrowed callback bundles: InputIO supplies source bytes, OutputIO receives binary results, and ResultIO receives the JSON result document
For JSON execute and two-handle comparison operations, a failed write callback is not called again to publish an error result through the same writer and user-data pair, including when OutputIO and ResultIO share that pair; partial candidate bytes already received by the caller remain the caller's responsibility
Write status values outside the defined non-zero status range, and zero or excessive successful byte counts, become HPDF_STATUS_IO_ERROR; the V1 record layout and successful partial-write behaviour remain unchanged
The struct is passed by pointer to hpdf_document_execute_json_v1 and hpdf_document_compare_json_v1, and is extended only by appending fields behind a new ABI version