Mercurial > hgrepos > Python2 > PyMuPDF
diff mupdf-source/thirdparty/jbig2dec/jbig2_segment.h @ 2:b50eed0cc0ef upstream
ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4.
The directory name has changed: no version number in the expanded directory now.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:43:07 +0200 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mupdf-source/thirdparty/jbig2dec/jbig2_segment.h Mon Sep 15 11:43:07 2025 +0200 @@ -0,0 +1,54 @@ +/* Copyright (C) 2001-2023 Artifex Software, Inc. + All Rights Reserved. + + This software is provided AS-IS with no warranty, either express or + implied. + + This software is distributed under license and may not be copied, + modified or distributed except as expressly authorized under the terms + of the license contained in the file LICENSE in this distribution. + + Refer to licensing information at http://www.artifex.com or contact + Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, + CA 94129, USA, for further information. +*/ + +/* + jbig2dec +*/ + +#ifndef _JBIG2_SEGMENT_H +#define _JBIG2_SEGMENT_H + +/* segment header routines */ + +struct _Jbig2Segment { + uint32_t number; + uint8_t flags; + uint32_t page_association; + size_t data_length; + int referred_to_segment_count; + uint32_t *referred_to_segments; + uint32_t rows; + void *result; +}; + +Jbig2Segment *jbig2_parse_segment_header(Jbig2Ctx *ctx, uint8_t *buf, size_t buf_size, size_t *p_header_size); +int jbig2_parse_segment(Jbig2Ctx *ctx, Jbig2Segment *segment, const uint8_t *segment_data); +void jbig2_free_segment(Jbig2Ctx *ctx, Jbig2Segment *segment); +Jbig2Segment *jbig2_find_segment(Jbig2Ctx *ctx, uint32_t number); + +/* region segment info */ + +typedef struct { + uint32_t width; + uint32_t height; + uint32_t x; + uint32_t y; + Jbig2ComposeOp op; + uint8_t flags; +} Jbig2RegionSegmentInfo; + +void jbig2_get_region_segment_info(Jbig2RegionSegmentInfo *info, const uint8_t *segment_data); + +#endif /* _JBIG2_SEGMENT_H */
