summaryrefslogtreecommitdiff
path: root/cbz/mucbz.h
diff options
context:
space:
mode:
Diffstat (limited to 'cbz/mucbz.h')
-rw-r--r--cbz/mucbz.h40
1 files changed, 35 insertions, 5 deletions
diff --git a/cbz/mucbz.h b/cbz/mucbz.h
index e18a7474..080423bf 100644
--- a/cbz/mucbz.h
+++ b/cbz/mucbz.h
@@ -1,15 +1,45 @@
-#ifndef _MUCBZ_H_
-#define _MUCBZ_H_
+#ifndef MUCBZ_H
+#define MUCBZ_H
-#ifndef _FITZ_H_
-#error "fitz.h must be included before mucbz.h"
-#endif
+#include "fitz.h"
typedef struct cbz_document_s cbz_document;
typedef struct cbz_page_s cbz_page;
+/*
+ cbz_open_document: Open a document.
+
+ Open a document for reading so the library is able to locate
+ objects and pages inside the file.
+
+ The returned cbz_document should be used when calling most
+ other functions. Note that it wraps the context, so those
+ functions implicitly get access to the global state in
+ context.
+
+ filename: a path to a file as it would be given to open(2).
+*/
cbz_document *cbz_open_document(fz_context *ctx, char *filename);
+
+/*
+ cbz_open_document_with_stream: Opens a document.
+
+ Same as cbz_open_document, but takes a stream instead of a
+ filename to locate the document to open. Increments the
+ reference count of the stream. See fz_open_file,
+ fz_open_file_w or fz_open_fd for opening a stream, and
+ fz_close for closing an open stream.
+*/
cbz_document *cbz_open_document_with_stream(fz_stream *file);
+
+/*
+ cbz_close_document: Closes and frees an opened document.
+
+ The resource store in the context associated with cbz_document
+ is emptied.
+
+ Does not throw exceptions.
+*/
void cbz_close_document(cbz_document *doc);
int cbz_count_pages(cbz_document *doc);