THPDFCABIOperationV1 Record

Versionshanterad C ABI-beskrivare för en JSON-dokumentoperation med återanropsbaserad IO

THPDFCABIOperationV1 = record
  StructSize: UInt32;
  ABIVersion: UInt32;
  Flags: UInt64;
  JSON: PAnsiChar;
  JSONLength: NativeUInt;
  InputIO: PHPDFCABIIOV1;
  OutputIO: PHPDFCABIIOV1;
  ResultIO: PHPDFCABIIOV1;
end;

Enheten är HPDFCAPI; StructSize och ABIVersion måste matcha de storlekar och versioner som hpdf_abi_operation_v1_size och hpdf_abi_version rapporterar, i annat fall avvisas anropet

JSON med JSONLength bär UTF-8-operationsobjektet som samma motor accepterar som THPDFJobProcessor.ExecuteLoadedOperation

De tre IO-posterna är lånade återanropsbuntar: InputIO tillhandahåller källbyte, OutputIO tar emot binära resultat, och ResultIO tar emot JSON-resultatdokumentet

För JSON-körning och två-handle-jämförelseoperationer anropas ett misslyckat skrivåteranrop inte igen för att publicera ett felresultat genom samma writer- och user-data-par, inklusive när OutputIO och ResultIO delar det paret; partiella kandidatbyte som anroparen redan tagit emot förblir anroparens ansvar

Skrivstatusvärden utanför den definierade icke-noll-statusintervallet, samt noll eller överdrivna lyckade byteantal, blir HPDF_STATUS_IO_ERROR; V1-postlayouten och lyckat partiellt skrivbeteende förblir oförändrade

Strukten skickas per pekare till hpdf_document_execute_json_v1 och hpdf_document_compare_json_v1, och utvidgas endast genom att lägga till fält bakom en ny ABI-version

JSON- och C ABI-dokumentoperationer