summaryrefslogtreecommitdiff
path: root/include/mupdf/pdf/xref.h
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2015-01-21 16:42:45 +0100
committerTor Andersson <tor.andersson@artifex.com>2015-02-17 18:05:39 +0100
commitf84a189d5f94250e46d2cbd1a75aba00130e2dd6 (patch)
tree8ee614ab90de1baa8941f91ae4946ed5c2e70721 /include/mupdf/pdf/xref.h
parent681039767f2ccc72e236246178893eb0989169c9 (diff)
downloadmupdf-f84a189d5f94250e46d2cbd1a75aba00130e2dd6.tar.xz
Add ctx parameter and remove embedded contexts for API regularity.
Purge several embedded contexts: Remove embedded context in fz_output. Remove embedded context in fz_stream. Remove embedded context in fz_device. Remove fz_rebind_stream (since it is no longer necessary). Remove embedded context in svg_device. Remove embedded context in XML parser. Add ctx argument to fz_document functions. Remove embedded context in fz_document. Remove embedded context in pdf_document. Remove embedded context in pdf_obj. Make fz_page independent of fz_document in the interface. We shouldn't need to pass the document to all functions handling a page. If a page is tied to the source document, it's redundant; otherwise it's just pointless. Fix reference counting oddity in fz_new_image_from_pixmap.
Diffstat (limited to 'include/mupdf/pdf/xref.h')
-rw-r--r--include/mupdf/pdf/xref.h86
1 files changed, 43 insertions, 43 deletions
diff --git a/include/mupdf/pdf/xref.h b/include/mupdf/pdf/xref.h
index 63580723..c41b0291 100644
--- a/include/mupdf/pdf/xref.h
+++ b/include/mupdf/pdf/xref.h
@@ -4,17 +4,17 @@
/*
pdf_create_object: Allocate a slot in the xref table and return a fresh unused object number.
*/
-int pdf_create_object(pdf_document *doc);
+int pdf_create_object(fz_context *ctx, pdf_document *doc);
/*
pdf_delete_object: Remove object from xref table, marking the slot as free.
*/
-void pdf_delete_object(pdf_document *doc, int num);
+void pdf_delete_object(fz_context *ctx, pdf_document *doc, int num);
/*
pdf_update_object: Replace object in xref table with the passed in object.
*/
-void pdf_update_object(pdf_document *doc, int num, pdf_obj *obj);
+void pdf_update_object(fz_context *ctx, pdf_document *doc, int num, pdf_obj *obj);
/*
pdf_update_stream: Replace stream contents for object in xref table with the passed in buffer.
@@ -24,7 +24,7 @@ void pdf_update_object(pdf_document *doc, int num, pdf_obj *obj);
the stream dictionary. If storing deflated data, make sure to set the
/Filter value to /FlateDecode.
*/
-void pdf_update_stream(pdf_document *doc, int num, fz_buffer *buf);
+void pdf_update_stream(fz_context *ctx, pdf_document *doc, int num, fz_buffer *buf);
/*
* xref and object / stream api
@@ -66,48 +66,48 @@ struct pdf_xref_s
pdf_obj *pre_repair_trailer;
};
-pdf_xref_entry *pdf_cache_object(pdf_document *doc, int num, int gen);
+pdf_xref_entry *pdf_cache_object(fz_context *ctx, pdf_document *doc, int num, int gen);
-int pdf_count_objects(pdf_document *doc);
-pdf_obj *pdf_resolve_indirect(pdf_obj *ref);
-pdf_obj *pdf_load_object(pdf_document *doc, int num, int gen);
+int pdf_count_objects(fz_context *ctx, pdf_document *doc);
+pdf_obj *pdf_resolve_indirect(fz_context *ctx, pdf_obj *ref);
+pdf_obj *pdf_load_object(fz_context *ctx, pdf_document *doc, int num, int gen);
-fz_buffer *pdf_load_raw_stream(pdf_document *doc, int num, int gen);
-fz_buffer *pdf_load_stream(pdf_document *doc, int num, int gen);
-fz_stream *pdf_open_raw_stream(pdf_document *doc, int num, int gen);
-fz_stream *pdf_open_stream(pdf_document *doc, int num, int gen);
+fz_buffer *pdf_load_raw_stream(fz_context *ctx, pdf_document *doc, int num, int gen);
+fz_buffer *pdf_load_stream(fz_context *ctx, pdf_document *doc, int num, int gen);
+fz_stream *pdf_open_raw_stream(fz_context *ctx, pdf_document *doc, int num, int gen);
+fz_stream *pdf_open_stream(fz_context *ctx, pdf_document *doc, int num, int gen);
-fz_stream *pdf_open_inline_stream(pdf_document *doc, pdf_obj *stmobj, int length, fz_stream *chain, fz_compression_params *params);
-fz_compressed_buffer *pdf_load_compressed_stream(pdf_document *doc, int num, int gen);
-void pdf_load_compressed_inline_image(pdf_document *doc, pdf_obj *dict, int length, fz_stream *cstm, int indexed, fz_image *image);
-fz_stream *pdf_open_stream_with_offset(pdf_document *doc, int num, int gen, pdf_obj *dict, int stm_ofs);
+fz_stream *pdf_open_inline_stream(fz_context *ctx, pdf_document *doc, pdf_obj *stmobj, int length, fz_stream *chain, fz_compression_params *params);
+fz_compressed_buffer *pdf_load_compressed_stream(fz_context *ctx, pdf_document *doc, int num, int gen);
+void pdf_load_compressed_inline_image(fz_context *ctx, pdf_document *doc, pdf_obj *dict, int length, fz_stream *cstm, int indexed, fz_image *image);
+fz_stream *pdf_open_stream_with_offset(fz_context *ctx, pdf_document *doc, int num, int gen, pdf_obj *dict, int stm_ofs);
fz_stream *pdf_open_compressed_stream(fz_context *ctx, fz_compressed_buffer *);
-fz_stream *pdf_open_contents_stream(pdf_document *doc, pdf_obj *obj);
-fz_buffer *pdf_load_raw_renumbered_stream(pdf_document *doc, int num, int gen, int orig_num, int orig_gen);
-fz_buffer *pdf_load_renumbered_stream(pdf_document *doc, int num, int gen, int orig_num, int orig_gen, int *truncated);
-fz_stream *pdf_open_raw_renumbered_stream(pdf_document *doc, int num, int gen, int orig_num, int orig_gen);
-
-pdf_obj *pdf_trailer(pdf_document *doc);
-void pdf_set_populating_xref_trailer(pdf_document *doc, pdf_obj *trailer);
-int pdf_xref_len(pdf_document *doc);
-pdf_xref_entry *pdf_get_populating_xref_entry(pdf_document *doc, int i);
-pdf_xref_entry *pdf_get_xref_entry(pdf_document *doc, int i);
-void pdf_replace_xref(pdf_document *doc, pdf_xref_entry *entries, int n);
-void pdf_xref_ensure_incremental_object(pdf_document *doc, int num);
-int pdf_xref_is_incremental(pdf_document *doc, int num);
-
-void pdf_repair_xref(pdf_document *doc);
-void pdf_repair_obj_stms(pdf_document *doc);
-pdf_obj *pdf_new_ref(pdf_document *doc, pdf_obj *obj);
-void pdf_ensure_solid_xref(pdf_document *doc, int num);
-void pdf_mark_xref(pdf_document *doc);
-void pdf_clear_xref(pdf_document *doc);
-void pdf_clear_xref_to_mark(pdf_document *doc);
-
-int pdf_repair_obj(pdf_document *doc, pdf_lexbuf *buf, int *stmofsp, int *stmlenp, pdf_obj **encrypt, pdf_obj **id, pdf_obj **page, int *tmpofs);
-
-pdf_obj *pdf_progressive_advance(pdf_document *doc, int pagenum);
-
-void pdf_print_xref(pdf_document *);
+fz_stream *pdf_open_contents_stream(fz_context *ctx, pdf_document *doc, pdf_obj *obj);
+fz_buffer *pdf_load_raw_renumbered_stream(fz_context *ctx, pdf_document *doc, int num, int gen, int orig_num, int orig_gen);
+fz_buffer *pdf_load_renumbered_stream(fz_context *ctx, pdf_document *doc, int num, int gen, int orig_num, int orig_gen, int *truncated);
+fz_stream *pdf_open_raw_renumbered_stream(fz_context *ctx, pdf_document *doc, int num, int gen, int orig_num, int orig_gen);
+
+pdf_obj *pdf_trailer(fz_context *ctx, pdf_document *doc);
+void pdf_set_populating_xref_trailer(fz_context *ctx, pdf_document *doc, pdf_obj *trailer);
+int pdf_xref_len(fz_context *ctx, pdf_document *doc);
+pdf_xref_entry *pdf_get_populating_xref_entry(fz_context *ctx, pdf_document *doc, int i);
+pdf_xref_entry *pdf_get_xref_entry(fz_context *ctx, pdf_document *doc, int i);
+void pdf_replace_xref(fz_context *ctx, pdf_document *doc, pdf_xref_entry *entries, int n);
+void pdf_xref_ensure_incremental_object(fz_context *ctx, pdf_document *doc, int num);
+int pdf_xref_is_incremental(fz_context *ctx, pdf_document *doc, int num);
+
+void pdf_repair_xref(fz_context *ctx, pdf_document *doc);
+void pdf_repair_obj_stms(fz_context *ctx, pdf_document *doc);
+pdf_obj *pdf_new_ref(fz_context *ctx, pdf_document *doc, pdf_obj *obj);
+void pdf_ensure_solid_xref(fz_context *ctx, pdf_document *doc, int num);
+void pdf_mark_xref(fz_context *ctx, pdf_document *doc);
+void pdf_clear_xref(fz_context *ctx, pdf_document *doc);
+void pdf_clear_xref_to_mark(fz_context *ctx, pdf_document *doc);
+
+int pdf_repair_obj(fz_context *ctx, pdf_document *doc, pdf_lexbuf *buf, int *stmofsp, int *stmlenp, pdf_obj **encrypt, pdf_obj **id, pdf_obj **page, int *tmpofs);
+
+pdf_obj *pdf_progressive_advance(fz_context *ctx, pdf_document *doc, int pagenum);
+
+void pdf_print_xref(fz_context *ctx, pdf_document *);
#endif