Doxygen Source Code Documentation
        
Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals   Search   
gifx.h
Go to the documentation of this file.00001 #ifndef GIFX_H
00002 #define GIFX_H
00003 #ifdef __cplusplus
00004 extern "C" {
00005 #endif
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #include "gif.h"
00021 #include <X11/Xlib.h>
00022 
00023 #define GIFX_COLORMAP_EXTENSION -107
00024 
00025 
00026 typedef struct Gif_XContext Gif_XContext;
00027 typedef struct Gif_XColormap Gif_XColormap;
00028 
00029 struct Gif_XContext {
00030   
00031   Display *display;
00032   int screen_number;
00033   Drawable drawable;
00034   Visual *visual;
00035   u_int16_t depth;
00036   u_int16_t ncolormap;
00037   Colormap colormap;
00038   
00039   u_int16_t nclosest;
00040   Gif_Color *closest;
00041   
00042   int free_deleted_colormap_pixels;
00043   Gif_XColormap *xcolormap;
00044   
00045   GC image_gc;
00046   GC mask_gc;
00047   
00048   unsigned long transparent_pixel;
00049   unsigned long foreground_pixel;
00050   int refcount;
00051   
00052 };
00053 
00054 
00055 Gif_XContext *  Gif_NewXContext(Display *, Window);
00056 Gif_XContext *  Gif_NewXContextFromVisual(Display *, int screen_number,
00057                                         Visual *, int depth, Colormap);
00058 void            Gif_DeleteXContext(Gif_XContext *);
00059 
00060 Pixmap          Gif_XImage(Gif_XContext *, Gif_Stream *, Gif_Image *);
00061 Pixmap          Gif_XImageColormap(Gif_XContext *, Gif_Stream *,
00062                                 Gif_Colormap *, Gif_Image *);
00063 Pixmap          Gif_XSubImage(Gif_XContext *, Gif_Stream *, Gif_Image *,
00064                                 int l, int t, int w, int h);
00065 Pixmap          Gif_XSubImageColormap(Gif_XContext *, Gif_Image *,
00066                                 Gif_Colormap *, int l, int t, int w, int h);
00067 
00068 Pixmap          Gif_XMask(Gif_XContext *, Gif_Stream *, Gif_Image *);
00069 Pixmap          Gif_XSubMask(Gif_XContext *, Gif_Image *,
00070                                 int l, int t, int w, int h);
00071 
00072 Pixmap          Gif_XNextImage(Gif_XContext *, Pixmap last_last, Pixmap last,
00073                                Gif_Stream *, int n);
00074 
00075 int             Gif_XAllocateColors(Gif_XContext *, Gif_Colormap *);
00076 void            Gif_XDeallocateColors(Gif_XContext *, Gif_Colormap *);
00077 unsigned long * Gif_XClaimStreamColors(Gif_XContext *, Gif_Stream *, int *);
00078 
00079 
00080 #ifdef __cplusplus
00081 }
00082 #endif
00083 #endif