TPDFlibViewerBitmapCache
Gegevenstypen, viewerinteractie, caching
Beschrijving
Least-recently-used-bitmapcache die het geheugen begrenst dat de viewer aan gerenderde pagina's besteedt
Ingangen worden gesleuteld op paginanummer plus een gekwantiseerde zoom, dus het wijzigen van de zoom gaat verouderde renderingen vanzelf met pensioen naarmate het budget vult; de cache is eigenaar van haar bitmaps en geeft ze vrij bij uitzetting
Een bitmap groter dan het hele budget wordt toch alleen opgeslagen zodat de viewer de huidige pagina altijd kan tonen
De klasse is pure code zonder vensterafhankelijkheid, wat haar headless testbaar houdt; de viewer legt haar instantie bloot via de Cache-eigenschap en stelt het budget in via SetCacheLimit
Declaratie
TPDFlibViewerBitmapCache = classParameters
| Create | Bouwt de cache met een bytebudget uit AMaxBytes |
|---|---|
| Get | Geeft de gecachte bitmap terug en markeert haar als laatst gebruikt, of Nil bij een misser |
| Put | Slaat een bitmap onder een sleutel op en neemt het eigendom over; verwijdert minst recent gebruikte items totdat het budget klopt |
| RemovePage | Wist elk item van één pagina, over alle zoom- en rotatiesleutels heen |
| Clear | Geeft elke gecachte bitmap vrij |
| Count | Aantal behouden bitmaps |
| UsedBytes | Momenteel vastgehonden bytes |
| MaxBytes | Geheugenbudget in bytes, tijdens uitvoering beschrijfbaar |