#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <endian.h>
#include <rfb/rfb.h>
#include "img.h"
#include "png.h"
#include "jpeglib.h"
Data Structures | |
struct | bmp_header |
BMP header data. More... | |
struct | img_jpg_error_mgr |
JPG error handling data. More... | |
Defines | |
#define | e16(A) A |
#define | e32(A) A |
#define | IMG_BMP_EXT ".bmp" |
#define | IMG_BMP_IDENTIFIER 0x4d42 |
#define | IMG_PNG_EXT ".png" |
#define | IMG_PNG_CHECK_BYTES 4 |
#define | IMG_JPG_EXT ".jpg" |
Typedefs | |
typedef struct img_jpg_error_mgr * | img_jpg_error_ptr |
Functions | |
static int | img_read_bmp (char *filename, struct img_bitmap *bitmap) |
static void | img_png_error (png_structp png_ptr, png_const_charp error_msg) |
static void | img_png_warning (png_structp png_ptr, png_const_charp warning_msg) |
static int | img_read_png (char *filename, struct img_bitmap *bitmap, int alpha_mode) |
static void | img_jpg_error (j_common_ptr cinfo) |
static int | img_read_jpg (char *filename, struct img_bitmap *bitmap) |
struct img_bitmap * | img_read (char *filename, int alpha_mode) |
void | img_free (struct img_bitmap *bitmap) |
Variables | |
struct bmp_header | packed |
#define e16 | ( | A | ) | A |
Endian conversion for 16-bit values.
#define e32 | ( | A | ) | A |
Endian conversion for 32-bit values.
#define IMG_BMP_EXT ".bmp" |
BMP file extension.
#define IMG_BMP_IDENTIFIER 0x4d42 |
BMP identifier (first 2 bytes of image file).
#define IMG_PNG_EXT ".png" |
PNG file extension.
#define IMG_PNG_CHECK_BYTES 4 |
Number of check bytes for PNG images.
#define IMG_JPG_EXT ".jpg" |
JPG file extension.
typedef struct img_jpg_error_mgr* img_jpg_error_ptr |
JPG error handling data.
static int img_read_bmp | ( | char * | filename, | |
struct img_bitmap * | bitmap | |||
) | [static] |
Reads a 24bpp BMP file.
filename | BMP filename | |
bitmap | bitmap data (return value) |
static void img_png_error | ( | png_structp | png_ptr, | |
png_const_charp | error_msg | |||
) | [static] |
PNG error function.
png_ptr | pointer to PNG context | |
error_msg | error message |
static void img_png_warning | ( | png_structp | png_ptr, | |
png_const_charp | warning_msg | |||
) | [static] |
PNG warning function.
png_ptr | pointer to PNG context | |
warning_msg | warning message |
static int img_read_png | ( | char * | filename, | |
struct img_bitmap * | bitmap, | |||
int | alpha_mode | |||
) | [static] |
Reads a 24bpp or 32bpp PNG file.
filename | PNG filename | |
bitmap | bitmap data (return value) | |
alpha_mode | preserve or ignore alpha channel |
static void img_jpg_error | ( | j_common_ptr | cinfo | ) | [static] |
JPG error function.
cinfo | jpeg decompression parameters |
static int img_read_jpg | ( | char * | filename, | |
struct img_bitmap * | bitmap | |||
) | [static] |
Reads a 24bpp JPG file.
filename | JPG filename | |
bitmap | bitmap data (return value) |
struct img_bitmap* img_read | ( | char * | filename, | |
int | alpha_mode | |||
) | [read] |
Reads an image file (BMP, PNG, JPG).
filename | image filename | |
alpha_mode | preserve or ignore alpha channel |
void img_free | ( | struct img_bitmap * | bitmap | ) |
Bitmap data cleanup.
Frees allocated memory.
bitmap | bitmap data |
struct bmp_header packed |
BMP header data.