Grok  7.6.0
Data Structures | Namespaces | Macros | Typedefs | Enumerations | Variables
FileFormat.h File Reference

Go to the source code of this file.

Data Structures

struct  grk::grk_jp2_comps
 JP2 component. More...
 
struct  grk::grk_jp2_buffer
 
struct  grk::grk_jp2_uuid
 
struct  grk::FileFormat
 JPEG 2000 file format reader/writer. More...
 
struct  grk::grk_jp2_box
 JP2 Box. More...
 
struct  grk::grk_jp2_header_handler
 
struct  grk::grk_jp2_img_header_writer_handler
 

Namespaces

 grk
 Copyright (C) 2016-2020 Grok Image Compression Inc.
 

Macros

#define JP2_JP   0x6a502020
 JPEG 2000 signature box. More...
 
#define JP2_FTYP   0x66747970
 File type box. More...
 
#define JP2_JP2H   0x6a703268
 JP2 header box (super-box) More...
 
#define JP2_IHDR   0x69686472
 Image header box. More...
 
#define JP2_COLR   0x636f6c72
 Colour specification box. More...
 
#define JP2_JP2C   0x6a703263
 Contiguous code stream box. More...
 
#define JP2_PCLR   0x70636c72
 Palette box. More...
 
#define JP2_CMAP   0x636d6170
 Component Mapping box. More...
 
#define JP2_CDEF   0x63646566
 Channel Definition box. More...
 
#define JP2_DTBL   0x6474626c
 Data Reference box. More...
 
#define JP2_BPCC   0x62706363
 Bits per component box. More...
 
#define JP2_JP2   0x6a703220
 File type fields. More...
 
#define JP2_RES   0x72657320
 Resolution box (super-box) More...
 
#define JP2_CAPTURE_RES   0x72657363
 Capture resolution box. More...
 
#define JP2_DISPLAY_RES   0x72657364
 Display resolution box. More...
 
#define JP2_JP2I   0x6a703269
 Intellectual property box. More...
 
#define JP2_XML   0x786d6c20
 XML box. More...
 
#define JP2_UUID   0x75756964
 UUID box. More...
 
#define JP2_UINF   0x75696e66
 UUID info box (super-box) More...
 
#define JP2_ULST   0x756c7374
 UUID list box. More...
 
#define JP2_URL   0x75726c20
 Data entry URL box. More...
 
#define JP2_MAX_NUM_UUIDS   128
 

Typedefs

typedef bool(* grk::jp2_procedure) (FileFormat *fileFormat, BufferedStream *)
 

Enumerations

enum  grk::JP2_STATE {
  grk::JP2_STATE_NONE = 0x0, grk::JP2_STATE_SIGNATURE = 0x1, grk::JP2_STATE_FILE_TYPE = 0x2, grk::JP2_STATE_HEADER = 0x4,
  grk::JP2_STATE_CODESTREAM = 0x8, grk::JP2_STATE_END_CODESTREAM = 0x10, grk::JP2_STATE_UNKNOWN = 0x7fffffff
}
 
enum  grk::JP2_IMG_STATE { grk::JP2_IMG_STATE_NONE = 0x0, grk::JP2_IMG_STATE_UNKNOWN = 0x7fffffff }
 

Functions

Exported functions
void grk::jp2_destroy (FileFormat *fileFormat)
 Destroy a JP2 decompressor handle. More...
 
bool grk::jp2_init_compress (FileFormat *fileFormat, grk_cparameters *parameters, grk_image *image)
 Set up compress parameters using the current image and using user parameters. More...
 
bool grk::jp2_start_compress (FileFormat *fileFormat, BufferedStream *stream)
 Starts a compression scheme, i.e. More...
 
bool grk::jp2_compress (FileFormat *fileFormat, grk_plugin_tile *tile, BufferedStream *stream)
 Encode an image into a JPEG 2000 file stream. More...
 
bool grk::jp2_compress_tile (FileFormat *fileFormat, TileProcessor *tileProcessor, uint16_t tile_index, uint8_t *p_data, uint64_t uncompressed_data_size, BufferedStream *stream)
 Compress tile. More...
 
bool grk::jp2_end_compress (FileFormat *fileFormat, BufferedStream *stream)
 Ends the compression procedures and possibly add data to be read after the code stream. More...
 
void grk::jp2_init_decompress (void *fileFormat, grk_dparameters *parameters)
 Set up the decompress parameters using user parameters. More...
 
bool grk::jp2_decompress (FileFormat *fileFormat, grk_plugin_tile *tile, BufferedStream *stream, grk_image *p_image)
 Decompress an image from a JPEG 2000 file stream. More...
 
bool grk::jp2_end_decompress (FileFormat *fileFormat, BufferedStream *stream)
 Ends the decompression procedures and possibly add data to be read after the code stream. More...
 
bool grk::jp2_read_header (BufferedStream *stream, FileFormat *fileFormat, grk_header_info *header_info, grk_image **p_image)
 Read a JPEG 2000 file header. More...
 
bool grk::jp2_read_tile_header (FileFormat *fileFormat, uint16_t *tile_index, bool *can_decode_tile_data, BufferedStream *stream)
 Reads a tile header. More...
 
bool grk::jp2_set_decompress_area (FileFormat *fileFormat, grk_image *image, uint32_t start_x, uint32_t start_y, uint32_t end_x, uint32_t end_y)
 Sets the given area to be decompressed. More...
 
bool grk::jp2_decompress_tile (FileFormat *fileFormat, BufferedStream *stream, grk_image *p_image, uint16_t tile_index)
 

Variables

const uint8_t grk::IPTC_UUID [16]
 
const uint8_t grk::XMP_UUID [16]
 

Macro Definition Documentation

◆ JP2_BPCC

#define JP2_BPCC   0x62706363

Bits per component box.

◆ JP2_CAPTURE_RES

#define JP2_CAPTURE_RES   0x72657363

Capture resolution box.

◆ JP2_CDEF

#define JP2_CDEF   0x63646566

Channel Definition box.

◆ JP2_CMAP

#define JP2_CMAP   0x636d6170

Component Mapping box.

◆ JP2_COLR

#define JP2_COLR   0x636f6c72

Colour specification box.

◆ JP2_DISPLAY_RES

#define JP2_DISPLAY_RES   0x72657364

Display resolution box.

◆ JP2_DTBL

#define JP2_DTBL   0x6474626c

Data Reference box.

◆ JP2_FTYP

#define JP2_FTYP   0x66747970

File type box.

◆ JP2_IHDR

#define JP2_IHDR   0x69686472

Image header box.

◆ JP2_JP

#define JP2_JP   0x6a502020

JPEG 2000 signature box.

◆ JP2_JP2

#define JP2_JP2   0x6a703220

File type fields.

◆ JP2_JP2C

#define JP2_JP2C   0x6a703263

Contiguous code stream box.

◆ JP2_JP2H

#define JP2_JP2H   0x6a703268

JP2 header box (super-box)

◆ JP2_JP2I

#define JP2_JP2I   0x6a703269

Intellectual property box.

◆ JP2_MAX_NUM_UUIDS

#define JP2_MAX_NUM_UUIDS   128

◆ JP2_PCLR

#define JP2_PCLR   0x70636c72

Palette box.

◆ JP2_RES

#define JP2_RES   0x72657320

Resolution box (super-box)

◆ JP2_UINF

#define JP2_UINF   0x75696e66

UUID info box (super-box)

◆ JP2_ULST

#define JP2_ULST   0x756c7374

UUID list box.

◆ JP2_URL

#define JP2_URL   0x75726c20

Data entry URL box.

◆ JP2_UUID

#define JP2_UUID   0x75756964

UUID box.

◆ JP2_XML

#define JP2_XML   0x786d6c20

XML box.