FreeRDP
lodepng.h File Reference
#include <string.h>
This graph shows which files directly or indirectly include this file:

Data Structures

struct  LodePNGDecompressSettings
 
struct  LodePNGCompressSettings
 
struct  LodePNGColorMode
 
struct  LodePNGTime
 
struct  LodePNGInfo
 
struct  LodePNGDecoderSettings
 
struct  LodePNGColorProfile
 
struct  LodePNGEncoderSettings
 
struct  LodePNGState
 

Macros

#define LODEPNG_COMPILE_ZLIB
 
#define LODEPNG_COMPILE_PNG
 
#define LODEPNG_COMPILE_DECODER
 
#define LODEPNG_COMPILE_ENCODER
 
#define LODEPNG_COMPILE_DISK
 
#define LODEPNG_COMPILE_ANCILLARY_CHUNKS
 
#define LODEPNG_COMPILE_ERROR_TEXT
 

Enumerations

enum  LodePNGColorType {
  LCT_GREY = 0 , LCT_RGB = 2 , LCT_PALETTE = 3 , LCT_GREY_ALPHA = 4 ,
  LCT_RGBA = 6
}
 
enum  LodePNGFilterStrategy {
  LFS_ZERO , LFS_MINSUM , LFS_ENTROPY , LFS_BRUTE_FORCE ,
  LFS_PREDEFINED
}
 

Functions

unsigned lodepng_decode_memory (unsigned char **out, unsigned *w, unsigned *h, const unsigned char *in, size_t insize, LodePNGColorType colortype, unsigned bitdepth)
 
unsigned lodepng_decode32 (unsigned char **out, unsigned *w, unsigned *h, const unsigned char *in, size_t insize)
 
unsigned lodepng_decode24 (unsigned char **out, unsigned *w, unsigned *h, const unsigned char *in, size_t insize)
 
unsigned lodepng_decode_file (unsigned char **out, unsigned *w, unsigned *h, const char *filename, LodePNGColorType colortype, unsigned bitdepth)
 
unsigned lodepng_decode32_file (unsigned char **out, unsigned *w, unsigned *h, const char *filename)
 
unsigned lodepng_decode24_file (unsigned char **out, unsigned *w, unsigned *h, const char *filename)
 
unsigned lodepng_encode_memory (unsigned char **out, size_t *outsize, const unsigned char *image, unsigned w, unsigned h, LodePNGColorType colortype, unsigned bitdepth)
 
unsigned lodepng_encode32 (unsigned char **out, size_t *outsize, const unsigned char *image, unsigned w, unsigned h)
 
unsigned lodepng_encode24 (unsigned char **out, size_t *outsize, const unsigned char *image, unsigned w, unsigned h)
 
unsigned lodepng_encode_file (const char *filename, const unsigned char *image, unsigned w, unsigned h, LodePNGColorType colortype, unsigned bitdepth)
 
unsigned lodepng_encode32_file (const char *filename, const unsigned char *image, unsigned w, unsigned h)
 
unsigned lodepng_encode24_file (const char *filename, const unsigned char *image, unsigned w, unsigned h)
 
const char * lodepng_error_text (unsigned code)
 
void lodepng_decompress_settings_init (LodePNGDecompressSettings *settings)
 
void lodepng_compress_settings_init (LodePNGCompressSettings *settings)
 
void lodepng_color_mode_init (LodePNGColorMode *info)
 
void lodepng_color_mode_cleanup (LodePNGColorMode *info)
 
unsigned lodepng_color_mode_copy (LodePNGColorMode *dest, const LodePNGColorMode *source)
 
void lodepng_palette_clear (LodePNGColorMode *info)
 
unsigned lodepng_palette_add (LodePNGColorMode *info, unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
unsigned lodepng_get_bpp (const LodePNGColorMode *info)
 
unsigned lodepng_get_channels (const LodePNGColorMode *info)
 
unsigned lodepng_is_greyscale_type (const LodePNGColorMode *info)
 
unsigned lodepng_is_alpha_type (const LodePNGColorMode *info)
 
unsigned lodepng_is_palette_type (const LodePNGColorMode *info)
 
unsigned lodepng_has_palette_alpha (const LodePNGColorMode *info)
 
unsigned lodepng_can_have_alpha (const LodePNGColorMode *info)
 
size_t lodepng_get_raw_size (unsigned w, unsigned h, const LodePNGColorMode *color)
 
void lodepng_info_init (LodePNGInfo *info)
 
void lodepng_info_cleanup (LodePNGInfo *info)
 
unsigned lodepng_info_copy (LodePNGInfo *dest, const LodePNGInfo *source)
 
void lodepng_clear_text (LodePNGInfo *info)
 
unsigned lodepng_add_text (LodePNGInfo *info, const char *key, const char *str)
 
void lodepng_clear_itext (LodePNGInfo *info)
 
unsigned lodepng_add_itext (LodePNGInfo *info, const char *key, const char *langtag, const char *transkey, const char *str)
 
unsigned lodepng_convert (unsigned char *out, const unsigned char *in, LodePNGColorMode *mode_out, const LodePNGColorMode *mode_in, unsigned w, unsigned h)
 
void lodepng_decoder_settings_init (LodePNGDecoderSettings *settings)
 
void lodepng_color_profile_init (LodePNGColorProfile *profile)
 
unsigned get_color_profile (LodePNGColorProfile *profile, const unsigned char *image, unsigned w, unsigned h, const LodePNGColorMode *mode_in)
 
unsigned lodepng_auto_choose_color (LodePNGColorMode *mode_out, const unsigned char *image, unsigned w, unsigned h, const LodePNGColorMode *mode_in)
 
void lodepng_encoder_settings_init (LodePNGEncoderSettings *settings)
 
void lodepng_state_init (LodePNGState *state)
 
void lodepng_state_cleanup (LodePNGState *state)
 
void lodepng_state_copy (LodePNGState *dest, const LodePNGState *source)
 
unsigned lodepng_decode (unsigned char **out, unsigned *w, unsigned *h, LodePNGState *state, const unsigned char *in, size_t insize)
 
unsigned lodepng_inspect (unsigned *w, unsigned *h, LodePNGState *state, const unsigned char *in, size_t insize)
 
unsigned lodepng_encode (unsigned char **out, size_t *outsize, const unsigned char *image, unsigned w, unsigned h, LodePNGState *state)
 
unsigned lodepng_chunk_length (const unsigned char *chunk)
 
void lodepng_chunk_type (char type[5], const unsigned char *chunk)
 
unsigned char lodepng_chunk_type_equals (const unsigned char *chunk, const char *type)
 
unsigned char lodepng_chunk_ancillary (const unsigned char *chunk)
 
unsigned char lodepng_chunk_private (const unsigned char *chunk)
 
unsigned char lodepng_chunk_safetocopy (const unsigned char *chunk)
 
unsigned char * lodepng_chunk_data (unsigned char *chunk)
 
const unsigned char * lodepng_chunk_data_const (const unsigned char *chunk)
 
unsigned lodepng_chunk_check_crc (const unsigned char *chunk)
 
void lodepng_chunk_generate_crc (unsigned char *chunk)
 
unsigned char * lodepng_chunk_next (unsigned char *chunk)
 
const unsigned char * lodepng_chunk_next_const (const unsigned char *chunk)
 
unsigned lodepng_chunk_append (unsigned char **out, size_t *outlength, const unsigned char *chunk)
 
unsigned lodepng_chunk_create (unsigned char **out, size_t *outlength, unsigned length, const char *type, const unsigned char *data)
 
unsigned lodepng_crc32 (const unsigned char *buf, size_t len)
 
unsigned lodepng_inflate (unsigned char **out, size_t *outsize, const unsigned char *in, size_t insize, const LodePNGDecompressSettings *settings)
 
unsigned lodepng_zlib_decompress (unsigned char **out, size_t *outsize, const unsigned char *in, size_t insize, const LodePNGDecompressSettings *settings)
 
unsigned lodepng_zlib_compress (unsigned char **out, size_t *outsize, const unsigned char *in, size_t insize, const LodePNGCompressSettings *settings)
 
unsigned lodepng_huffman_code_lengths (unsigned *lengths, const unsigned *frequencies, size_t numcodes, unsigned maxbitlen)
 
unsigned lodepng_deflate (unsigned char **out, size_t *outsize, const unsigned char *in, size_t insize, const LodePNGCompressSettings *settings)
 
unsigned lodepng_load_file (unsigned char **out, size_t *outsize, const char *filename)
 
unsigned lodepng_save_file (const unsigned char *buffer, size_t buffersize, const char *filename)
 

Variables

const LodePNGDecompressSettings lodepng_default_decompress_settings
 
const LodePNGCompressSettings lodepng_default_compress_settings
 

Macro Definition Documentation

◆ LODEPNG_COMPILE_ANCILLARY_CHUNKS

#define LODEPNG_COMPILE_ANCILLARY_CHUNKS

◆ LODEPNG_COMPILE_DECODER

#define LODEPNG_COMPILE_DECODER

◆ LODEPNG_COMPILE_DISK

#define LODEPNG_COMPILE_DISK

◆ LODEPNG_COMPILE_ENCODER

#define LODEPNG_COMPILE_ENCODER

◆ LODEPNG_COMPILE_ERROR_TEXT

#define LODEPNG_COMPILE_ERROR_TEXT

◆ LODEPNG_COMPILE_PNG

#define LODEPNG_COMPILE_PNG

◆ LODEPNG_COMPILE_ZLIB

#define LODEPNG_COMPILE_ZLIB

Enumeration Type Documentation

◆ LodePNGColorType

Enumerator
LCT_GREY 
LCT_RGB 
LCT_PALETTE 
LCT_GREY_ALPHA 
LCT_RGBA 

◆ LodePNGFilterStrategy

Enumerator
LFS_ZERO 
LFS_MINSUM 
LFS_ENTROPY 
LFS_BRUTE_FORCE 
LFS_PREDEFINED 

Function Documentation

◆ get_color_profile()

unsigned get_color_profile ( LodePNGColorProfile profile,
const unsigned char *  image,
unsigned  w,
unsigned  h,
const LodePNGColorMode mode_in 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_add_itext()

unsigned lodepng_add_itext ( LodePNGInfo info,
const char *  key,
const char *  langtag,
const char *  transkey,
const char *  str 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_add_text()

unsigned lodepng_add_text ( LodePNGInfo info,
const char *  key,
const char *  str 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_auto_choose_color()

unsigned lodepng_auto_choose_color ( LodePNGColorMode mode_out,
const unsigned char *  image,
unsigned  w,
unsigned  h,
const LodePNGColorMode mode_in 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_can_have_alpha()

unsigned lodepng_can_have_alpha ( const LodePNGColorMode info)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_ancillary()

unsigned char lodepng_chunk_ancillary ( const unsigned char *  chunk)
Here is the caller graph for this function:

◆ lodepng_chunk_append()

unsigned lodepng_chunk_append ( unsigned char **  out,
size_t *  outlength,
const unsigned char *  chunk 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_check_crc()

unsigned lodepng_chunk_check_crc ( const unsigned char *  chunk)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_create()

unsigned lodepng_chunk_create ( unsigned char **  out,
size_t *  outlength,
unsigned  length,
const char *  type,
const unsigned char *  data 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_data()

unsigned char* lodepng_chunk_data ( unsigned char *  chunk)

◆ lodepng_chunk_data_const()

const unsigned char* lodepng_chunk_data_const ( const unsigned char *  chunk)
Here is the caller graph for this function:

◆ lodepng_chunk_generate_crc()

void lodepng_chunk_generate_crc ( unsigned char *  chunk)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_length()

unsigned lodepng_chunk_length ( const unsigned char *  chunk)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_next()

unsigned char* lodepng_chunk_next ( unsigned char *  chunk)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_next_const()

const unsigned char* lodepng_chunk_next_const ( const unsigned char *  chunk)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_chunk_private()

unsigned char lodepng_chunk_private ( const unsigned char *  chunk)

◆ lodepng_chunk_safetocopy()

unsigned char lodepng_chunk_safetocopy ( const unsigned char *  chunk)

◆ lodepng_chunk_type()

void lodepng_chunk_type ( char  type[5],
const unsigned char *  chunk 
)

◆ lodepng_chunk_type_equals()

unsigned char lodepng_chunk_type_equals ( const unsigned char *  chunk,
const char *  type 
)
Here is the caller graph for this function:

◆ lodepng_clear_itext()

void lodepng_clear_itext ( LodePNGInfo info)
Here is the call graph for this function:

◆ lodepng_clear_text()

void lodepng_clear_text ( LodePNGInfo info)
Here is the call graph for this function:

◆ lodepng_color_mode_cleanup()

void lodepng_color_mode_cleanup ( LodePNGColorMode info)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_color_mode_copy()

unsigned lodepng_color_mode_copy ( LodePNGColorMode dest,
const LodePNGColorMode source 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_color_mode_init()

void lodepng_color_mode_init ( LodePNGColorMode info)
Here is the caller graph for this function:

◆ lodepng_color_profile_init()

void lodepng_color_profile_init ( LodePNGColorProfile profile)
Here is the caller graph for this function:

◆ lodepng_compress_settings_init()

void lodepng_compress_settings_init ( LodePNGCompressSettings settings)
Here is the caller graph for this function:

◆ lodepng_convert()

unsigned lodepng_convert ( unsigned char *  out,
const unsigned char *  in,
LodePNGColorMode mode_out,
const LodePNGColorMode mode_in,
unsigned  w,
unsigned  h 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_crc32()

unsigned lodepng_crc32 ( const unsigned char *  buf,
size_t  len 
)
Here is the caller graph for this function:

◆ lodepng_decode()

unsigned lodepng_decode ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
LodePNGState state,
const unsigned char *  in,
size_t  insize 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_decode24()

unsigned lodepng_decode24 ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const unsigned char *  in,
size_t  insize 
)
Here is the call graph for this function:

◆ lodepng_decode24_file()

unsigned lodepng_decode24_file ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const char *  filename 
)
Here is the call graph for this function:

◆ lodepng_decode32()

unsigned lodepng_decode32 ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const unsigned char *  in,
size_t  insize 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_decode32_file()

unsigned lodepng_decode32_file ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const char *  filename 
)
Here is the call graph for this function:

◆ lodepng_decode_file()

unsigned lodepng_decode_file ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const char *  filename,
LodePNGColorType  colortype,
unsigned  bitdepth 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_decode_memory()

unsigned lodepng_decode_memory ( unsigned char **  out,
unsigned *  w,
unsigned *  h,
const unsigned char *  in,
size_t  insize,
LodePNGColorType  colortype,
unsigned  bitdepth 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_decoder_settings_init()

void lodepng_decoder_settings_init ( LodePNGDecoderSettings settings)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_decompress_settings_init()

void lodepng_decompress_settings_init ( LodePNGDecompressSettings settings)
Here is the caller graph for this function:

◆ lodepng_deflate()

unsigned lodepng_deflate ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  in,
size_t  insize,
const LodePNGCompressSettings settings 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_encode()

unsigned lodepng_encode ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  image,
unsigned  w,
unsigned  h,
LodePNGState state 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_encode24()

unsigned lodepng_encode24 ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  image,
unsigned  w,
unsigned  h 
)
Here is the call graph for this function:

◆ lodepng_encode24_file()

unsigned lodepng_encode24_file ( const char *  filename,
const unsigned char *  image,
unsigned  w,
unsigned  h 
)
Here is the call graph for this function:

◆ lodepng_encode32()

unsigned lodepng_encode32 ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  image,
unsigned  w,
unsigned  h 
)
Here is the call graph for this function:

◆ lodepng_encode32_file()

unsigned lodepng_encode32_file ( const char *  filename,
const unsigned char *  image,
unsigned  w,
unsigned  h 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_encode_file()

unsigned lodepng_encode_file ( const char *  filename,
const unsigned char *  image,
unsigned  w,
unsigned  h,
LodePNGColorType  colortype,
unsigned  bitdepth 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_encode_memory()

unsigned lodepng_encode_memory ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  image,
unsigned  w,
unsigned  h,
LodePNGColorType  colortype,
unsigned  bitdepth 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_encoder_settings_init()

void lodepng_encoder_settings_init ( LodePNGEncoderSettings settings)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_error_text()

const char* lodepng_error_text ( unsigned  code)

◆ lodepng_get_bpp()

unsigned lodepng_get_bpp ( const LodePNGColorMode info)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_get_channels()

unsigned lodepng_get_channels ( const LodePNGColorMode info)
Here is the call graph for this function:

◆ lodepng_get_raw_size()

size_t lodepng_get_raw_size ( unsigned  w,
unsigned  h,
const LodePNGColorMode color 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_has_palette_alpha()

unsigned lodepng_has_palette_alpha ( const LodePNGColorMode info)
Here is the caller graph for this function:

◆ lodepng_huffman_code_lengths()

unsigned lodepng_huffman_code_lengths ( unsigned *  lengths,
const unsigned *  frequencies,
size_t  numcodes,
unsigned  maxbitlen 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_inflate()

unsigned lodepng_inflate ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  in,
size_t  insize,
const LodePNGDecompressSettings settings 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_info_cleanup()

void lodepng_info_cleanup ( LodePNGInfo info)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_info_copy()

unsigned lodepng_info_copy ( LodePNGInfo dest,
const LodePNGInfo source 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_info_init()

void lodepng_info_init ( LodePNGInfo info)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_inspect()

unsigned lodepng_inspect ( unsigned *  w,
unsigned *  h,
LodePNGState state,
const unsigned char *  in,
size_t  insize 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_is_alpha_type()

unsigned lodepng_is_alpha_type ( const LodePNGColorMode info)
Here is the caller graph for this function:

◆ lodepng_is_greyscale_type()

unsigned lodepng_is_greyscale_type ( const LodePNGColorMode info)
Here is the caller graph for this function:

◆ lodepng_is_palette_type()

unsigned lodepng_is_palette_type ( const LodePNGColorMode info)

◆ lodepng_load_file()

unsigned lodepng_load_file ( unsigned char **  out,
size_t *  outsize,
const char *  filename 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_palette_add()

unsigned lodepng_palette_add ( LodePNGColorMode info,
unsigned char  r,
unsigned char  g,
unsigned char  b,
unsigned char  a 
)
Here is the caller graph for this function:

◆ lodepng_palette_clear()

void lodepng_palette_clear ( LodePNGColorMode info)
Here is the caller graph for this function:

◆ lodepng_save_file()

unsigned lodepng_save_file ( const unsigned char *  buffer,
size_t  buffersize,
const char *  filename 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_state_cleanup()

void lodepng_state_cleanup ( LodePNGState state)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_state_copy()

void lodepng_state_copy ( LodePNGState dest,
const LodePNGState source 
)
Here is the call graph for this function:

◆ lodepng_state_init()

void lodepng_state_init ( LodePNGState state)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_zlib_compress()

unsigned lodepng_zlib_compress ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  in,
size_t  insize,
const LodePNGCompressSettings settings 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ lodepng_zlib_decompress()

unsigned lodepng_zlib_decompress ( unsigned char **  out,
size_t *  outsize,
const unsigned char *  in,
size_t  insize,
const LodePNGDecompressSettings settings 
)
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ lodepng_default_compress_settings

const LodePNGCompressSettings lodepng_default_compress_settings
extern

◆ lodepng_default_decompress_settings

const LodePNGDecompressSettings lodepng_default_decompress_settings
extern