IHPDFCustomStreamFilter
Définit un décodeur personnalisé à comptage de références utilisé par les pipelines de filtres de flux chargés
Déclaration
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;
Paramètres
Input est emprunté pour le rappel, Output est une destination bornée et isolée pour le mode push, et Request fournit l'identité d'étape, le budget restant et l'annulation
DecodedStream appartient à HotPDF après un résultat pull réussi, tandis que Diagnostic doit expliquer un résultat faux
Valeur de retour
Retournez True uniquement après avoir produit un résultat d'étape complet et valide
Notes d'utilisation
- Seule la méthode sélectionnée par
Modeest appelée - Ne libérez, ne conservez et ne retournez pas le flux
Inputemprunté - Les longues opérations devraient vérifier
Request.CancellationTokende façon coopérative - Les exceptions sont isolées comme
dpsCustomFilterError,dpsBudgetExceededoudpsCancelled - Les rappels s'exécutent de façon synchrone et hors du verrou du registre