summaryrefslogtreecommitdiff
path: root/cbz
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2012-06-20 11:56:12 +0200
committerTor Andersson <tor.andersson@artifex.com>2012-06-20 11:56:12 +0200
commitacfcf144a708aa3afc739904dfafccbec48e64bb (patch)
tree6f58a2c03924f6bd6b228e7afceba5805ecc7b27 /cbz
parent69bcec1c5204bcc64a9405c818e65cc260fb0078 (diff)
downloadmupdf-acfcf144a708aa3afc739904dfafccbec48e64bb.tar.xz
Reduce amount of boiler plate by casting function pointers to void*.
Remove the shim indirection layer for fz_document. A little less type safe, but a lot less boiler plate.
Diffstat (limited to 'cbz')
-rw-r--r--cbz/mucbz.c57
1 files changed, 9 insertions, 48 deletions
diff --git a/cbz/mucbz.c b/cbz/mucbz.c
index e8e8faa3..a8a1097a 100644
--- a/cbz/mucbz.c
+++ b/cbz/mucbz.c
@@ -458,44 +458,9 @@ cbz_run_page(cbz_document *doc, cbz_page *page, fz_device *dev, fz_matrix ctm, f
fz_fill_image(dev, &image->base, ctm, 1);
}
-/* Document interface wrappers */
-
-static void cbz_close_document_shim(fz_document *doc)
-{
- cbz_close_document((cbz_document*)doc);
-}
-
-static int cbz_count_pages_shim(fz_document *doc)
-{
- return cbz_count_pages((cbz_document*)doc);
-}
-
-static fz_page *cbz_load_page_shim(fz_document *doc, int number)
-{
- return (fz_page*) cbz_load_page((cbz_document*)doc, number);
-}
-
-static fz_rect cbz_bound_page_shim(fz_document *doc, fz_page *page)
-{
- return cbz_bound_page((cbz_document*)doc, (cbz_page*)page);
-}
-
-static void cbz_run_page_shim(fz_document *doc, fz_page *page, fz_device *dev, fz_matrix transform, fz_cookie *cookie)
-{
- cbz_run_page((cbz_document*)doc, (cbz_page*)page, dev, transform, cookie);
-}
-
-static void cbz_free_page_shim(fz_document *doc, fz_page *page)
-{
- cbz_free_page((cbz_document*)doc, (cbz_page*)page);
-}
-
-static int cbz_meta(fz_document *doc_, int key, void *ptr, int size)
+static int
+cbz_meta(cbz_document *doc, int key, void *ptr, int size)
{
- cbz_document *doc = (cbz_document *)doc_;
-
- doc = doc;
-
switch(key)
{
case FZ_META_FORMAT_INFO:
@@ -509,15 +474,11 @@ static int cbz_meta(fz_document *doc_, int key, void *ptr, int size)
static void
cbz_init_document(cbz_document *doc)
{
- doc->super.close = cbz_close_document_shim;
- doc->super.needs_password = NULL;
- doc->super.authenticate_password = NULL;
- doc->super.load_outline = NULL;
- doc->super.count_pages = cbz_count_pages_shim;
- doc->super.load_page = cbz_load_page_shim;
- doc->super.load_links = NULL;
- doc->super.bound_page = cbz_bound_page_shim;
- doc->super.run_page = cbz_run_page_shim;
- doc->super.free_page = cbz_free_page_shim;
- doc->super.meta = cbz_meta;
+ doc->super.close = (void*)cbz_close_document;
+ doc->super.count_pages = (void*)cbz_count_pages;
+ doc->super.load_page = (void*)cbz_load_page;
+ doc->super.bound_page = (void*)cbz_bound_page;
+ doc->super.run_page = (void*)cbz_run_page;
+ doc->super.free_page = (void*)cbz_free_page;
+ doc->super.meta = (void*)cbz_meta;
}