Main MRPT website > C++ reference for MRPT 1.5.6
Classes | Macros | Typedefs | Enumerations | Functions
jdmarker.cpp File Reference
#include "jinclude.h"
#include "mrpt_jpeglib.h"
Include dependency graph for jdmarker.cpp:

Go to the source code of this file.

Classes

struct  my_marker_reader
 

Macros

#define JPEG_INTERNALS
 
#define INPUT_VARS(cinfo)
 
#define INPUT_SYNC(cinfo)
 
#define INPUT_RELOAD(cinfo)
 
#define MAKE_BYTE_AVAIL(cinfo, action)
 
#define INPUT_BYTE(cinfo, V, action)
 
#define INPUT_2BYTES(cinfo, V, action)
 
#define get_dac(cinfo)   skip_variable(cinfo)
 
#define APP0_DATA_LEN   14 /* Length of interesting data in APP0 */
 
#define APP14_DATA_LEN   12 /* Length of interesting data in APP14 */
 
#define APPN_DATA_LEN   14 /* Must be the largest of the above!! */
 

Typedefs

typedef my_marker_readermy_marker_ptr
 

Enumerations

enum  JPEG_MARKER {
  M_SOF0 = 0xc0, M_SOF1 = 0xc1, M_SOF2 = 0xc2, M_SOF3 = 0xc3,
  M_SOF5 = 0xc5, M_SOF6 = 0xc6, M_SOF7 = 0xc7, M_JPG = 0xc8,
  M_SOF9 = 0xc9, M_SOF10 = 0xca, M_SOF11 = 0xcb, M_SOF13 = 0xcd,
  M_SOF14 = 0xce, M_SOF15 = 0xcf, M_DHT = 0xc4, M_DAC = 0xcc,
  M_RST0 = 0xd0, M_RST1 = 0xd1, M_RST2 = 0xd2, M_RST3 = 0xd3,
  M_RST4 = 0xd4, M_RST5 = 0xd5, M_RST6 = 0xd6, M_RST7 = 0xd7,
  M_SOI = 0xd8, M_EOI = 0xd9, M_SOS = 0xda, M_DQT = 0xdb,
  M_DNL = 0xdc, M_DRI = 0xdd, M_DHP = 0xde, M_EXP = 0xdf,
  M_APP0 = 0xe0, M_APP1 = 0xe1, M_APP2 = 0xe2, M_APP3 = 0xe3,
  M_APP4 = 0xe4, M_APP5 = 0xe5, M_APP6 = 0xe6, M_APP7 = 0xe7,
  M_APP8 = 0xe8, M_APP9 = 0xe9, M_APP10 = 0xea, M_APP11 = 0xeb,
  M_APP12 = 0xec, M_APP13 = 0xed, M_APP14 = 0xee, M_APP15 = 0xef,
  M_JPG0 = 0xf0, M_JPG13 = 0xfd, M_COM = 0xfe, M_TEM = 0x01,
  M_ERROR = 0x100, M_SOF0 = 0xc0, M_SOF1 = 0xc1, M_SOF2 = 0xc2,
  M_SOF3 = 0xc3, M_SOF5 = 0xc5, M_SOF6 = 0xc6, M_SOF7 = 0xc7,
  M_JPG = 0xc8, M_SOF9 = 0xc9, M_SOF10 = 0xca, M_SOF11 = 0xcb,
  M_SOF13 = 0xcd, M_SOF14 = 0xce, M_SOF15 = 0xcf, M_DHT = 0xc4,
  M_DAC = 0xcc, M_RST0 = 0xd0, M_RST1 = 0xd1, M_RST2 = 0xd2,
  M_RST3 = 0xd3, M_RST4 = 0xd4, M_RST5 = 0xd5, M_RST6 = 0xd6,
  M_RST7 = 0xd7, M_SOI = 0xd8, M_EOI = 0xd9, M_SOS = 0xda,
  M_DQT = 0xdb, M_DNL = 0xdc, M_DRI = 0xdd, M_DHP = 0xde,
  M_EXP = 0xdf, M_APP0 = 0xe0, M_APP1 = 0xe1, M_APP2 = 0xe2,
  M_APP3 = 0xe3, M_APP4 = 0xe4, M_APP5 = 0xe5, M_APP6 = 0xe6,
  M_APP7 = 0xe7, M_APP8 = 0xe8, M_APP9 = 0xe9, M_APP10 = 0xea,
  M_APP11 = 0xeb, M_APP12 = 0xec, M_APP13 = 0xed, M_APP14 = 0xee,
  M_APP15 = 0xef, M_JPG0 = 0xf0, M_JPG13 = 0xfd, M_COM = 0xfe,
  M_TEM = 0x01, M_ERROR = 0x100
}
 

Functions

 get_soi (j_decompress_ptr cinfo)
 
 get_sof (j_decompress_ptr cinfo, boolean is_prog, boolean is_arith)
 
 get_sos (j_decompress_ptr cinfo)
 
 get_dht (j_decompress_ptr cinfo)
 
 get_dqt (j_decompress_ptr cinfo)
 
 get_dri (j_decompress_ptr cinfo)
 
 examine_app0 (j_decompress_ptr cinfo, JOCTET FAR *data, unsigned int datalen, INT32 remaining)
 
 examine_app14 (j_decompress_ptr cinfo, JOCTET FAR *data, unsigned int datalen, INT32 remaining)
 
 get_interesting_appn (j_decompress_ptr cinfo)
 
 save_marker (j_decompress_ptr cinfo)
 
 skip_variable (j_decompress_ptr cinfo)
 
 next_marker (j_decompress_ptr cinfo)
 
 first_marker (j_decompress_ptr cinfo)
 
 read_markers (j_decompress_ptr cinfo)
 
 read_restart_marker (j_decompress_ptr cinfo)
 
 jpeg_resync_to_restart (j_decompress_ptr cinfo, int desired)
 
 reset_marker_reader (j_decompress_ptr cinfo)
 
 jinit_marker_reader (j_decompress_ptr cinfo)
 
 jpeg_save_markers (j_decompress_ptr cinfo, int marker_code, unsigned int length_limit)
 
 jpeg_set_marker_processor (j_decompress_ptr cinfo, int marker_code, jpeg_marker_parser_method routine)
 

Macro Definition Documentation

◆ APP0_DATA_LEN

#define APP0_DATA_LEN   14 /* Length of interesting data in APP0 */

Definition at line 573 of file jdmarker.cpp.

Referenced by examine_app0(), and jpeg_save_markers().

◆ APP14_DATA_LEN

#define APP14_DATA_LEN   12 /* Length of interesting data in APP14 */

Definition at line 574 of file jdmarker.cpp.

Referenced by examine_app14(), and jpeg_save_markers().

◆ APPN_DATA_LEN

#define APPN_DATA_LEN   14 /* Must be the largest of the above!! */

Definition at line 575 of file jdmarker.cpp.

Referenced by get_interesting_appn().

◆ get_dac

#define get_dac (   cinfo)    skip_variable(cinfo)

Definition at line 408 of file jdmarker.cpp.

Referenced by read_markers().

◆ INPUT_2BYTES

#define INPUT_2BYTES (   cinfo,
  V,
  action 
)
Value:
MAKESTMT( MAKE_BYTE_AVAIL(cinfo,action); \
bytes_in_buffer--; \
V = ((unsigned int) GETJOCTET(*next_input_byte++)) << 8; \
MAKE_BYTE_AVAIL(cinfo,action); \
bytes_in_buffer--; \
V += GETJOCTET(*next_input_byte++); )
#define GETJOCTET(value)
Definition: jmorecfg.h:116
#define MAKE_BYTE_AVAIL(cinfo, action)
Definition: jdmarker.cpp:133
#define MAKESTMT(stuff)
Definition: jerror.h:229

Definition at line 151 of file jdmarker.cpp.

Referenced by get_dht(), get_dqt(), get_dri(), get_interesting_appn(), get_sof(), get_sos(), save_marker(), and skip_variable().

◆ INPUT_BYTE

#define INPUT_BYTE (   cinfo,
  V,
  action 
)
Value:
MAKESTMT( MAKE_BYTE_AVAIL(cinfo,action); \
bytes_in_buffer--; \
V = GETJOCTET(*next_input_byte++); )
#define GETJOCTET(value)
Definition: jmorecfg.h:116
#define MAKE_BYTE_AVAIL(cinfo, action)
Definition: jdmarker.cpp:133
#define MAKESTMT(stuff)
Definition: jerror.h:229

Definition at line 143 of file jdmarker.cpp.

Referenced by first_marker(), get_dht(), get_dqt(), get_interesting_appn(), get_sof(), get_sos(), and next_marker().

◆ INPUT_RELOAD

#define INPUT_RELOAD (   cinfo)
Value:
( next_input_byte = datasrc->next_input_byte, \
bytes_in_buffer = datasrc->bytes_in_buffer )

Definition at line 125 of file jdmarker.cpp.

◆ INPUT_SYNC

#define INPUT_SYNC (   cinfo)
Value:
( datasrc->next_input_byte = next_input_byte, \
datasrc->bytes_in_buffer = bytes_in_buffer )

Definition at line 120 of file jdmarker.cpp.

Referenced by first_marker(), get_dht(), get_dqt(), get_dri(), get_interesting_appn(), get_sof(), get_sos(), next_marker(), save_marker(), and skip_variable().

◆ INPUT_VARS

#define INPUT_VARS (   cinfo)
Value:
struct jpeg_source_mgr * datasrc = (cinfo)->src; \
const JOCTET * next_input_byte = datasrc->next_input_byte; \
size_t bytes_in_buffer = datasrc->bytes_in_buffer
GLuint src
Definition: glext.h:6303
size_t bytes_in_buffer
Definition: mrpt_jpeglib.h:724
char JOCTET
Definition: jmorecfg.h:112
const JOCTET * next_input_byte
Definition: mrpt_jpeglib.h:723

Definition at line 114 of file jdmarker.cpp.

Referenced by first_marker(), get_dht(), get_dqt(), get_dri(), get_interesting_appn(), get_sof(), get_sos(), next_marker(), save_marker(), and skip_variable().

◆ JPEG_INTERNALS

#define JPEG_INTERNALS

Definition at line 10 of file jdmarker.cpp.

◆ MAKE_BYTE_AVAIL

#define MAKE_BYTE_AVAIL (   cinfo,
  action 
)
Value:
if (bytes_in_buffer == 0) { \
if (! (*datasrc->fill_input_buffer) (cinfo)) \
{ action; } \
INPUT_RELOAD(cinfo); \
}
size_t bytes_in_buffer
Definition: mrpt_jpeglib.h:724

Definition at line 133 of file jdmarker.cpp.

Referenced by save_marker().

Typedef Documentation

◆ my_marker_ptr

Definition at line 102 of file jdmarker.cpp.

Enumeration Type Documentation

◆ JPEG_MARKER

Enumerator
M_SOF0 
M_SOF1 
M_SOF2 
M_SOF3 
M_SOF5 
M_SOF6 
M_SOF7 
M_JPG 
M_SOF9 
M_SOF10 
M_SOF11 
M_SOF13 
M_SOF14 
M_SOF15 
M_DHT 
M_DAC 
M_RST0 
M_RST1 
M_RST2 
M_RST3 
M_RST4 
M_RST5 
M_RST6 
M_RST7 
M_SOI 
M_EOI 
M_SOS 
M_DQT 
M_DNL 
M_DRI 
M_DHP 
M_EXP 
M_APP0 
M_APP1 
M_APP2 
M_APP3 
M_APP4 
M_APP5 
M_APP6 
M_APP7 
M_APP8 
M_APP9 
M_APP10 
M_APP11 
M_APP12 
M_APP13 
M_APP14 
M_APP15 
M_JPG0 
M_JPG13 
M_COM 
M_TEM 
M_ERROR 
M_SOF0 
M_SOF1 
M_SOF2 
M_SOF3 
M_SOF5 
M_SOF6 
M_SOF7 
M_JPG 
M_SOF9 
M_SOF10 
M_SOF11 
M_SOF13 
M_SOF14 
M_SOF15 
M_DHT 
M_DAC 
M_RST0 
M_RST1 
M_RST2 
M_RST3 
M_RST4 
M_RST5 
M_RST6 
M_RST7 
M_SOI 
M_EOI 
M_SOS 
M_DQT 
M_DNL 
M_DRI 
M_DHP 
M_EXP 
M_APP0 
M_APP1 
M_APP2 
M_APP3 
M_APP4 
M_APP5 
M_APP6 
M_APP7 
M_APP8 
M_APP9 
M_APP10 
M_APP11 
M_APP12 
M_APP13 
M_APP14 
M_APP15 
M_JPG0 
M_JPG13 
M_COM 
M_TEM 
M_ERROR 

Definition at line 15 of file jdmarker.cpp.

Function Documentation

◆ examine_app0()

examine_app0 ( j_decompress_ptr  cinfo,
JOCTET FAR data,
unsigned int  datalen,
INT32  remaining 
)

Definition at line 579 of file jdmarker.cpp.

References APP0_DATA_LEN, datalen, GETJOCTET, TRACEMS1, TRACEMS2, TRACEMS5, TRUE, and WARNMS2.

Referenced by get_interesting_appn(), and save_marker().

◆ examine_app14()

examine_app14 ( j_decompress_ptr  cinfo,
JOCTET FAR data,
unsigned int  datalen,
INT32  remaining 
)

Definition at line 655 of file jdmarker.cpp.

References APP14_DATA_LEN, datalen, GETJOCTET, TRACEMS1, TRACEMS4, TRUE, and version.

Referenced by get_interesting_appn(), and save_marker().

◆ first_marker()

first_marker ( j_decompress_ptr  cinfo)

Definition at line 916 of file jdmarker.cpp.

References ERREXIT2, FALSE, INPUT_BYTE, INPUT_SYNC, INPUT_VARS, M_SOI, and TRUE.

Referenced by read_markers().

◆ get_dht()

get_dht ( j_decompress_ptr  cinfo)

◆ get_dqt()

get_dqt ( j_decompress_ptr  cinfo)

◆ get_dri()

get_dri ( j_decompress_ptr  cinfo)

Definition at line 543 of file jdmarker.cpp.

References ERREXIT, FALSE, INPUT_2BYTES, INPUT_SYNC, INPUT_VARS, TRACEMS1, and TRUE.

Referenced by read_markers().

◆ get_interesting_appn()

get_interesting_appn ( j_decompress_ptr  cinfo)

◆ get_sof()

get_sof ( j_decompress_ptr  cinfo,
boolean  is_prog,
boolean  is_arith 
)

◆ get_soi()

get_soi ( j_decompress_ptr  cinfo)

Definition at line 192 of file jdmarker.cpp.

References ERREXIT, FALSE, JCS_UNKNOWN, NUM_ARITH_TBLS, TRACEMS, and TRUE.

Referenced by read_markers().

◆ get_sos()

get_sos ( j_decompress_ptr  cinfo)

◆ jinit_marker_reader()

jinit_marker_reader ( j_decompress_ptr  cinfo)

◆ jpeg_resync_to_restart()

jpeg_resync_to_restart ( j_decompress_ptr  cinfo,
int  desired 
)

Definition at line 1187 of file jdmarker.cpp.

References desired, FALSE, M_RST0, M_RST7, M_SOF0, marker, next_marker(), TRACEMS2, TRUE, and WARNMS2.

Referenced by jpeg_stdio_src().

◆ jpeg_save_markers()

jpeg_save_markers ( j_decompress_ptr  cinfo,
int  marker_code,
unsigned int  length_limit 
)

◆ jpeg_set_marker_processor()

jpeg_set_marker_processor ( j_decompress_ptr  cinfo,
int  marker_code,
jpeg_marker_parser_method  routine 
)

Definition at line 1344 of file jdmarker.cpp.

References ERREXIT1, M_APP0, M_APP15, M_COM, marker, marker_code, and routine.

◆ next_marker()

next_marker ( j_decompress_ptr  cinfo)

Definition at line 869 of file jdmarker.cpp.

References FALSE, INPUT_BYTE, INPUT_SYNC, INPUT_VARS, TRUE, and WARNMS2.

Referenced by jpeg_resync_to_restart(), read_markers(), and read_restart_marker().

◆ read_markers()

read_markers ( j_decompress_ptr  cinfo)

◆ read_restart_marker()

read_restart_marker ( j_decompress_ptr  cinfo)

Definition at line 1108 of file jdmarker.cpp.

References FALSE, M_RST0, next_marker(), TRACEMS1, and TRUE.

Referenced by jinit_marker_reader().

◆ reset_marker_reader()

reset_marker_reader ( j_decompress_ptr  cinfo)

Definition at line 1237 of file jdmarker.cpp.

References FALSE, and marker.

Referenced by jinit_marker_reader().

◆ save_marker()

save_marker ( j_decompress_ptr  cinfo)

◆ skip_variable()

skip_variable ( j_decompress_ptr  cinfo)

Definition at line 840 of file jdmarker.cpp.

References FALSE, INPUT_2BYTES, INPUT_SYNC, INPUT_VARS, TRACEMS2, and TRUE.

Referenced by jinit_marker_reader(), jpeg_save_markers(), and read_markers().




Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019