diff options
Diffstat (limited to 'src/pdf_bridge.h')
| -rw-r--r-- | src/pdf_bridge.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/pdf_bridge.h b/src/pdf_bridge.h index bda1eea1..40eaa46c 100644 --- a/src/pdf_bridge.h +++ b/src/pdf_bridge.h @@ -14,6 +14,27 @@ extern "C" { */ typedef struct pardes_pdf_document pardes_pdf_document; +typedef void *(*pardes_pdf_alloc_fn)(void *user, size_t size); +typedef void *(*pardes_pdf_realloc_fn)( + void *user, + void *pointer, + size_t size +); +typedef void (*pardes_pdf_free_fn)(void *user, void *pointer); + +typedef struct pardes_pdf_allocator { + void *user; + pardes_pdf_alloc_fn alloc; + pardes_pdf_realloc_fn realloc; + pardes_pdf_free_fn free; +} pardes_pdf_allocator; + +/* + * Install one process-global allocator, or restore libc/default MuPDF + * allocation by passing NULL. Changing it while a document is live fails. + */ +int pardes_pdf_set_allocator(const pardes_pdf_allocator *allocator); + typedef struct pardes_pdf_raster_layout { int width; int height; |
