#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Defines | |
#define | ARGS(alist) () |
#define | BITS 12 |
#define | THELIMIT 4096 |
#define | HSIZE 5003 |
#define | SHIFT 4 |
#define | put_byte(A) (*put_b)((byte)(A)); Nbyte++ |
Typedefs | |
typedef unsigned char | byte |
Functions | |
static void put_b | ARGS ((byte)) |
static void output | ARGS ((int)) |
static void | char_init () |
static void | char_flush () |
long | GIFencode (void *int, void *int, void *int, R, G, B, ScLine, void *get_scline, pb) |
static void | output (int code) |
static void | char_out (int c) |
static void | put_short (int word) |
Variables | |
static long | HashTab [HSIZE] |
static int | CodeTab [HSIZE] |
static int | BitsPixel |
static int | IniCodeSize |
static int | CurCodeSize |
static int | CurMaxCode |
static int | ClearCode |
static int | EOFCode |
static int | FreeCode |
static long | Nbyte |
static unsigned long | cur_accum |
static int | cur_bits |
static int | a_count |
static char | accum [256] |
static unsigned long | masks [] |
#define ARGS | ( | alist | ) | () |
Definition at line 10 of file gifencode.c.
#define BITS 12 |
Definition at line 13 of file gifencode.c.
#define HSIZE 5003 |
Definition at line 15 of file gifencode.c.
#define SHIFT 4 |
Definition at line 16 of file gifencode.c.
#define THELIMIT 4096 |
Definition at line 14 of file gifencode.c.
typedef unsigned char byte |
Definition at line 20 of file gifencode.c.
static void put_short ARGS | ( | (int) | ) | [static] |
static void put_b ARGS | ( | (byte) | ) | [static] |
static void char_flush | ( | ) | [static] |
static void char_init | ( | ) | [static] |
static void char_out | ( | int | c | ) | [static] |
Definition at line 63 of file gifencode.c.
References BITS, BitsPixel, char_init(), ClearCode, Code, CodeTab, CurCodeSize, CurMaxCode, EOFCode, fprintf(), FreeCode, HashTab, HSIZE, i, IniCodeSize, TMath::K(), long, Nbyte, NOMATCH, output(), put_byte, put_short, SHIFT, THELIMIT, x, and y.
static void output | ( | int | code | ) | [static] |
Definition at line 226 of file gifencode.c.
References BITS, char_flush(), char_out(), ClearCode, cur_accum, cur_bits, CurCodeSize, CurMaxCode, EOFCode, FreeCode, HashTab, IniCodeSize, long, masks, and THELIMIT.
static void put_short | ( | int | word | ) | [static] |
int a_count [static] |
Definition at line 209 of file gifencode.c.
char accum[256] [static] |
Definition at line 210 of file gifencode.c.
int BitsPixel [static] |
Definition at line 25 of file gifencode.c.
int ClearCode [static] |
Definition at line 25 of file gifencode.c.
int CodeTab[HSIZE] [static] |
Definition at line 23 of file gifencode.c.
Definition at line 207 of file gifencode.c.
int cur_bits [static] |
Definition at line 208 of file gifencode.c.
int CurCodeSize [static] |
Definition at line 25 of file gifencode.c.
int CurMaxCode [static] |
Definition at line 25 of file gifencode.c.
int EOFCode [static] |
Definition at line 25 of file gifencode.c.
int FreeCode [static] |
Definition at line 25 of file gifencode.c.
Definition at line 22 of file gifencode.c.
int IniCodeSize [static] |
Definition at line 25 of file gifencode.c.
Initial value:
{ 0x0000, 0x0001, 0x0003, 0x0007, 0x000F, 0x001F, 0x003F, 0x007F, 0x00FF, 0x01FF, 0x03FF, 0x07FF, 0x0FFF, 0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF }
Definition at line 211 of file gifencode.c.
Definition at line 33 of file gifencode.c.