IHPDFCustomStreamFilter
Definira dekoder po meri s štetjem sklicev, ki ga uporabljajo cevovodi filtrov naloženih tokov
Deklaracija
IHPDFCustomStreamFilter = interface(IInterface)
function GetFilterName: AnsiString;
function GetMode: THPDFCustomStreamFilterMode;
function GetInputSeekContract: THPDFCustomStreamSeekContract;
function GetOutputSeekContract: THPDFCustomStreamSeekContract;
function DecodePush(Input, Output: TStream;
const Request: THPDFCustomStreamFilterRequest;
out Diagnostic: AnsiString): Boolean;
function OpenPullStream(Input: TStream;
const Request: THPDFCustomStreamFilterRequest;
out DecodedStream: TStream;
out Diagnostic: AnsiString): Boolean;
end;
Parametri
Input je izposojen za povratni klic, Output je izoliran omejen cilj za potisni način, Request pa zagotovi identiteto stopnje, preostali proračun in preklic
DecodedStream je v lasti HotPDF po uspešnem vlečnem rezultatu, medtem ko mora Diagnostic pojasniti neresničen rezultat
Vrnjena vrednost
Vrnite True šele po izdelavi popolnega veljavnega rezultata stopnje
Opombe o uporabi
- Pokliče se le metoda, ki jo izbere
Mode - Ne sproščajte, ne zadržujte in ne vračajte izposojenega toka
Input - Dolge operacije morajo sodelovalno preverjati
Request.CancellationToken - Izjeme so izolirane kot
dpsCustomFilterError,dpsBudgetExceededalidpsCancelled - Povratni klici se izvedejo sinhrono in zunaj zaklepa registra