ascmap.c File Reference

#include "config.h"
#include <string.h>
#include <sys/time.h>
#include <time.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdarg.h>
#include <ctype.h>
#include "afterbase.h"
#include "asimage.h"
#include "import.h"
#include "export.h"
#include "imencdec.h"
#include "ascmap.h"

Go to the source code of this file.

Functions

static ASMappedColornew_mapped_color (CARD32 red, CARD32 green, CARD32 blue, CARD32 indexed)
void add_index_color (ASSortedColorHash *index, CARD32 indexed, unsigned int slot, CARD32 red, CARD32 green, CARD32 blue)
void destroy_colorhash (ASSortedColorHash *index, Bool reusable)
void fix_colorindex_shortcuts (ASSortedColorHash *index)
static void add_colormap_item (register ASColormapEntry *pentry, ASMappedColor *pelem, int cmap_idx)
unsigned int add_colormap_items (ASSortedColorHash *index, unsigned int start, unsigned int stop, unsigned int quota, unsigned int base, ASColormapEntry *entries)
ASColormapcolor_hash2colormap (ASColormap *cmap, unsigned int max_colors)
void destroy_colormap (ASColormap *cmap, Bool reusable)
int get_color_index (ASSortedColorHash *index, CARD32 indexed, unsigned int slot)
int * colormap_asimage (ASImage *im, ASColormap *cmap, unsigned int max_colors, unsigned int dither, int opaque_threshold)


Function Documentation

static void add_colormap_item ( register ASColormapEntry pentry,
ASMappedColor pelem,
int  cmap_idx 
) [inline, static]

Definition at line 232 of file ascmap.c.

References ASMappedColor::blue, ASMappedColor::cmap_idx, ASMappedColor::green, LOCAL_DEBUG_OUT, and ASMappedColor::red.

Referenced by add_colormap_items().

unsigned int add_colormap_items ( ASSortedColorHash index,
unsigned int  start,
unsigned int  stop,
unsigned int  quota,
unsigned int  base,
ASColormapEntry entries 
)

Definition at line 242 of file ascmap.c.

References add_colormap_item(), ASMappedColor::count, entries, NULL, and total.

Referenced by color_hash2colormap().

void add_index_color ( ASSortedColorHash index,
CARD32  indexed,
unsigned int  slot,
CARD32  red,
CARD32  green,
CARD32  blue 
)

Definition at line 86 of file ascmap.c.

References ASSortedColorBucket::count, ASMappedColor::count, ASSortedColorBucket::head, ASMappedColor::indexed, new_mapped_color(), ASMappedColor::next, NULL, and ASSortedColorBucket::tail.

Referenced by colormap_asimage().

ASColormap* color_hash2colormap ( ASColormap cmap,
unsigned int  max_colors 
)

Definition at line 309 of file ascmap.c.

References add_colormap_items(), ASColormap::count, ASColormap::entries, ASColormap::hash, LOCAL_DEBUG_OUT, MIN, NULL, safemalloc, and total.

Referenced by colormap_asimage().

int* colormap_asimage ( ASImage im,
ASColormap cmap,
unsigned int  max_colors,
unsigned int  dither,
int  opaque_threshold 
)

Definition at line 407 of file ascmap.c.

References a, add_index_color(), ASScanline::alpha, ASFLAGS_EVERYTHING, b, blue, ASScanline::blue, ASSortedColorHash::buckets, ASSortedColorHash::buckets_num, ASImageDecoder::buffer, color_hash2colormap(), ASColormap::count, ASImageDecoder::decode_image_scanline, g, get_color_index(), green, ASScanline::green, ASColormap::has_opaque, ASColormap::hash, ASImage::height, INDEX_SHIFT_BLUE, INDEX_SHIFT_GREEN, INDEX_SHIFT_RED, INDEX_UNESHIFT_BLUE, INDEX_UNESHIFT_GREEN, INDEX_UNESHIFT_RED, LOCAL_DEBUG_OUT, MAKE_INDEXED_COLOR12, MAKE_INDEXED_COLOR15, MAKE_INDEXED_COLOR18, MAKE_INDEXED_COLOR21, MAKE_INDEXED_COLOR24, MAKE_INDEXED_COLOR3, MAKE_INDEXED_COLOR6, MAKE_INDEXED_COLOR9, MAX_COLOR_BUCKETS, NULL, print_asimage(), ASScanline::red, red, safecalloc, safemalloc, SCL_DO_ALL, SHOW_TIME, start_image_decoding(), START_TIME, stop_image_decoding(), True, ASImage::width, x, x07, and y.

Referenced by ASImage2gif(), ASImage2xpm(), ASImage2xpmRawBuff(), TASImage::Vectorize(), and vectorize_asimage().

void destroy_colorhash ( ASSortedColorHash index,
Bool  reusable 
)

Definition at line 133 of file ascmap.c.

References free(), and i.

Referenced by destroy_colormap().

void destroy_colormap ( ASColormap cmap,
Bool  reusable 
)

Definition at line 357 of file ascmap.c.

References destroy_colorhash(), ASColormap::entries, False, free(), and ASColormap::hash.

Referenced by ASImage2gif(), ASImage2xpm(), ASImage2xpmRawBuff(), TASImage::Vectorize(), and vectorize_asimage().

void fix_colorindex_shortcuts ( ASSortedColorHash index  ) 

Definition at line 180 of file ascmap.c.

References free(), and NULL.

int get_color_index ( ASSortedColorHash index,
CARD32  indexed,
unsigned int  slot 
)

Definition at line 371 of file ascmap.c.

References ASMappedColor::cmap_idx, ASSortedColorBucket::head, ASMappedColor::indexed, LOCAL_DEBUG_OUT, ASMappedColor::next, NULL, and ASSortedColorBucket::tail.

Referenced by colormap_asimage().

static ASMappedColor* new_mapped_color ( CARD32  red,
CARD32  green,
CARD32  blue,
CARD32  indexed 
) [inline, static]

Definition at line 68 of file ascmap.c.

References ASMappedColor::blue, ASMappedColor::cmap_idx, ASMappedColor::count, ASMappedColor::green, INDEX_UNSHIFT_BLUE, INDEX_UNSHIFT_GREEN, INDEX_UNSHIFT_RED, ASMappedColor::indexed, malloc(), ASMappedColor::next, NULL, and ASMappedColor::red.

Referenced by add_index_color().


Generated on Tue Jul 5 15:57:43 2011 for ROOT_528-00b_version by  doxygen 1.5.1