IHPDFCustomStreamFilter
Definuje vlastný dekodér s počítaním referencií používaný potrubiami filtrov načítaných prúdov
Deklarácia
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;
Parametre
Input je požičaný pre spätné volanie, Output je izolovaný ohraničený cieľ pre režim push a Request dodáva identitu fázy, zostávajúci rozpočet a zrušenie
DecodedStream vlastní HotPDF po úspešnom výsledku pull, zatiaľ čo Diagnostic by mal vysvetliť nepravdivý výsledok
Návratová hodnota
Vráťte True iba po vytvorení úplného platného výsledku fázy
Poznámky k použitiu
- Volá sa iba metóda vybraná cez
Mode - Neuvoľňujte, nezachovávajte ani nevracajte požičaný prúd
Input - Dlhé operácie by mali kooperatívne kontrolovať
Request.CancellationToken - Výnimky sa izolujú ako
dpsCustomFilterError,dpsBudgetExceededalebodpsCancelled - Spätné volania sa vykonávajú synchrónne a mimo zámku registra