/src/ghostpdl/pdf/pdf_array.h
Line | Count | Source |
1 | | /* Copyright (C) 2018-2023 Artifex Software, Inc. |
2 | | All Rights Reserved. |
3 | | |
4 | | This software is provided AS-IS with no warranty, either express or |
5 | | implied. |
6 | | |
7 | | This software is distributed under license and may not be copied, |
8 | | modified or distributed except as expressly authorized under the terms |
9 | | of the license contained in the file LICENSE in this distribution. |
10 | | |
11 | | Refer to licensing information at http://www.artifex.com or contact |
12 | | Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, |
13 | | CA 94129, USA, for further information. |
14 | | */ |
15 | | |
16 | | /* array handling for the PDF interpreter */ |
17 | | |
18 | | #ifndef PDF_ARRAY_FUNCTIONS |
19 | | #define PDF_ARRAY_FUNCTIONS |
20 | | |
21 | 81.7M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }zpdfops.c:pdfi_array_size Line | Count | Source | 21 | 907k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
Unexecuted instantiation: ghostpdf.c:pdfi_array_size pdf_dict.c:pdfi_array_size Line | Count | Source | 21 | 308k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_array.c:pdfi_array_size Line | Count | Source | 21 | 691k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_xref.c:pdfi_array_size Line | Count | Source | 21 | 34.8k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
Unexecuted instantiation: pdf_int.c:pdfi_array_size pdf_file.c:pdfi_array_size Line | Count | Source | 21 | 159k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_colour.c:pdfi_array_size Line | Count | Source | 21 | 75.4k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_pattern.c:pdfi_array_size Line | Count | Source | 21 | 1.72k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_gstate.c:pdfi_array_size Line | Count | Source | 21 | 1.98M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_image.c:pdfi_array_size Line | Count | Source | 21 | 776k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_page.c:pdfi_array_size Line | Count | Source | 21 | 767k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_annot.c:pdfi_array_size Line | Count | Source | 21 | 520k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_mark.c:pdfi_array_size Line | Count | Source | 21 | 1.09k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_font.c:pdfi_array_size Line | Count | Source | 21 | 5.52M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
Unexecuted instantiation: pdf_font0.c:pdfi_array_size pdf_font1.c:pdfi_array_size Line | Count | Source | 21 | 27.9M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
Unexecuted instantiation: pdf_font1C.c:pdfi_array_size Unexecuted instantiation: pdf_fontps.c:pdfi_array_size Unexecuted instantiation: pdf_font3.c:pdfi_array_size Unexecuted instantiation: pdf_fontTT.c:pdfi_array_size Unexecuted instantiation: pdf_font11.c:pdfi_array_size Unexecuted instantiation: pdf_fmap.c:pdfi_array_size pdf_text.c:pdfi_array_size Line | Count | Source | 21 | 23.3M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_shading.c:pdfi_array_size Line | Count | Source | 21 | 205 | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_func.c:pdfi_array_size Line | Count | Source | 21 | 8.43k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_trans.c:pdfi_array_size Line | Count | Source | 21 | 636 | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_optcontent.c:pdfi_array_size Line | Count | Source | 21 | 105k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_check.c:pdfi_array_size Line | Count | Source | 21 | 946k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
Unexecuted instantiation: pdf_sec.c:pdfi_array_size pdf_deref.c:pdfi_array_size Line | Count | Source | 21 | 12.4k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_obj.c:pdfi_array_size Line | Count | Source | 21 | 17.2k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_doc.c:pdfi_array_size Line | Count | Source | 21 | 675k | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
pdf_fapi.c:pdfi_array_size Line | Count | Source | 21 | 16.9M | static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; } |
|
22 | | |
23 | | int pdfi_array_fetch(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o, bool setref, bool cache); |
24 | | /* The object returned by pdfi_array_get has its reference count incremented by 1 to |
25 | | * indicate the reference now held by the caller, in **o. |
26 | | */ |
27 | | static int inline pdfi_array_get(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o) |
28 | 224M | { |
29 | 224M | return pdfi_array_fetch(ctx, a, index, o, true, true); |
30 | 224M | } Unexecuted instantiation: zpdfops.c:pdfi_array_get Unexecuted instantiation: ghostpdf.c:pdfi_array_get pdf_dict.c:pdfi_array_get Line | Count | Source | 28 | 38.4k | { | 29 | 38.4k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 38.4k | } |
pdf_array.c:pdfi_array_get Line | Count | Source | 28 | 89.0M | { | 29 | 89.0M | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 89.0M | } |
Unexecuted instantiation: pdf_xref.c:pdfi_array_get Unexecuted instantiation: pdf_int.c:pdfi_array_get pdf_file.c:pdfi_array_get Line | Count | Source | 28 | 4.62k | { | 29 | 4.62k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 4.62k | } |
pdf_colour.c:pdfi_array_get Line | Count | Source | 28 | 107k | { | 29 | 107k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 107k | } |
pdf_pattern.c:pdfi_array_get Line | Count | Source | 28 | 282 | { | 29 | 282 | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 282 | } |
pdf_gstate.c:pdfi_array_get Line | Count | Source | 28 | 505 | { | 29 | 505 | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 505 | } |
Unexecuted instantiation: pdf_image.c:pdfi_array_get Unexecuted instantiation: pdf_page.c:pdfi_array_get Unexecuted instantiation: pdf_annot.c:pdfi_array_get pdf_mark.c:pdfi_array_get Line | Count | Source | 28 | 2.70k | { | 29 | 2.70k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 2.70k | } |
pdf_font.c:pdfi_array_get Line | Count | Source | 28 | 101M | { | 29 | 101M | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 101M | } |
pdf_font0.c:pdfi_array_get Line | Count | Source | 28 | 537k | { | 29 | 537k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 537k | } |
Unexecuted instantiation: pdf_font1.c:pdfi_array_get pdf_font1C.c:pdfi_array_get Line | Count | Source | 28 | 2.33k | { | 29 | 2.33k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 2.33k | } |
Unexecuted instantiation: pdf_fontps.c:pdfi_array_get pdf_font3.c:pdfi_array_get Line | Count | Source | 28 | 67.1k | { | 29 | 67.1k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 67.1k | } |
pdf_fontTT.c:pdfi_array_get Line | Count | Source | 28 | 4.80M | { | 29 | 4.80M | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 4.80M | } |
Unexecuted instantiation: pdf_font11.c:pdfi_array_get Unexecuted instantiation: pdf_fmap.c:pdfi_array_get pdf_text.c:pdfi_array_get Line | Count | Source | 28 | 21.7M | { | 29 | 21.7M | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 21.7M | } |
pdf_shading.c:pdfi_array_get Line | Count | Source | 28 | 7 | { | 29 | 7 | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 7 | } |
Unexecuted instantiation: pdf_func.c:pdfi_array_get Unexecuted instantiation: pdf_trans.c:pdfi_array_get pdf_optcontent.c:pdfi_array_get Line | Count | Source | 28 | 54.5k | { | 29 | 54.5k | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 54.5k | } |
Unexecuted instantiation: pdf_check.c:pdfi_array_get Unexecuted instantiation: pdf_sec.c:pdfi_array_get Unexecuted instantiation: pdf_deref.c:pdfi_array_get Unexecuted instantiation: pdf_obj.c:pdfi_array_get Unexecuted instantiation: pdf_doc.c:pdfi_array_get pdf_fapi.c:pdfi_array_get Line | Count | Source | 28 | 7.13M | { | 29 | 7.13M | return pdfi_array_fetch(ctx, a, index, o, true, true); | 30 | 7.13M | } |
|
31 | | |
32 | | static int inline pdfi_array_get_nocache(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o) |
33 | 26.6k | { |
34 | 26.6k | return pdfi_array_fetch(ctx, a, index, o, true, false); |
35 | 26.6k | } Unexecuted instantiation: zpdfops.c:pdfi_array_get_nocache Unexecuted instantiation: ghostpdf.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_dict.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_array.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_xref.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_int.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_file.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_colour.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_pattern.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_gstate.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_image.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_page.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_annot.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_mark.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font0.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font1.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font1C.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_fontps.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font3.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_fontTT.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_font11.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_fmap.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_text.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_shading.c:pdfi_array_get_nocache pdf_func.c:pdfi_array_get_nocache Line | Count | Source | 33 | 26.6k | { | 34 | 26.6k | return pdfi_array_fetch(ctx, a, index, o, true, false); | 35 | 26.6k | } |
Unexecuted instantiation: pdf_trans.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_optcontent.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_check.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_sec.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_deref.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_obj.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_doc.c:pdfi_array_get_nocache Unexecuted instantiation: pdf_fapi.c:pdfi_array_get_nocache |
36 | | |
37 | | void pdfi_free_array(pdf_obj *o); |
38 | | int pdfi_array_alloc(pdf_context *ctx, uint64_t size, pdf_array **a); |
39 | | int pdfi_array_from_stack(pdf_context *ctx, uint32_t indirect_num, uint32_t indirect_gen); |
40 | | int pdfi_array_get_no_deref(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o); |
41 | | int pdfi_array_get_no_store_R(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o); |
42 | | int pdfi_array_get_type(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj_type t, pdf_obj **o); |
43 | | int pdfi_array_get_int(pdf_context *ctx, pdf_array *a, uint64_t index, int64_t *i); |
44 | | int pdfi_array_get_number(pdf_context *ctx, pdf_array *a, uint64_t index, double *f); |
45 | | int pdfi_array_put(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj *o); |
46 | | int pdfi_array_put_int(pdf_context *ctx, pdf_array *a, uint64_t index, int64_t val); |
47 | | int pdfi_array_put_real(pdf_context *ctx, pdf_array *a, uint64_t index, double val); |
48 | | |
49 | | bool pdfi_array_known(pdf_context *ctx, pdf_array *a, pdf_obj *, int *index); |
50 | | |
51 | | void pdfi_normalize_rect(pdf_context *ctx, gs_rect *rect); |
52 | | int pdfi_array_to_gs_rect(pdf_context *ctx, pdf_array *array, gs_rect *rect); |
53 | | int pdfi_gs_rect_to_array(pdf_context *ctx, gs_rect *rect, pdf_array **new_array); |
54 | | int pdfi_array_to_gs_matrix(pdf_context *ctx, pdf_array *array, gs_matrix *matrix); |
55 | | int pdfi_array_to_num_array(pdf_context *ctx, pdf_array *array, double *out, int start, int size); |
56 | | void pdfi_bbox_transform(pdf_context *ctx, gs_rect *bbox, gs_matrix *matrix); |
57 | | |
58 | | int pdfi_array_fetch_recursing(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o, bool setref, bool cache); |
59 | | |
60 | | #endif |