
/* classbase.c */
DISPATCHERFLAGS struct IClass *ObtainGIFAnimEngine ( REGA6 struct ClassBase *cb );
DISPATCHERFLAGS struct Library *LibInit ( REGD0 struct ClassBase *cb , REGA0 BPTR seglist , REGA6 struct ExecBase *sysbase );
DISPATCHERFLAGS LONG LibOpen ( REGA6 struct ClassBase *cb );
DISPATCHERFLAGS LONG LibClose ( REGA6 struct ClassBase *cb );
DISPATCHERFLAGS LONG LibExpunge ( REGA6 struct ClassBase *cb );

/* stackswap.c */
DISPATCHERFLAGS ULONG StackSwapDispatch ( REGA0 struct IClass *cl , REGA2 Object *o , REGA1 Msg msg );
DISPATCHERFLAGS ULONG SwapMe ( REGA0 struct MyStackSwapStruct *mystk );
DISPATCHERFLAGS ULONG MyDispatch ( REGA0 struct MyStackSwapStruct *mystk );

/* dispatch.c */
struct IClass *initClass ( struct ClassBase *cb );
DISPATCHERFLAGS ULONG Dispatch ( REGA0 struct IClass *cl , REGA2 Object *o , REGA1 Msg msg );
void OpenLogfile ( struct ClassBase *cb , struct GIFAnimInstData *gaid );
void error_printf ( struct ClassBase *cb , struct GIFAnimInstData *gaid , STRPTR format , ...);
void verbose_printf ( struct ClassBase *cb , struct GIFAnimInstData *gaid , STRPTR format , ...);

/* prefs.c */
void ReadENVPrefs ( struct ClassBase *cb , struct GIFAnimInstData *gaid , struct GIFEncoder *genc );

/* misc.c */
void mysprintf ( struct ClassBase *cb , STRPTR buffer , STRPTR fmt , ...);
void IBMPC2ISOLatin1 ( STRPTR ibmpc , STRPTR isolatin1 );
BOOL CMAP2Object ( struct ClassBase *cb , Object *o , UBYTE *rgb , ULONG rgbsize );
struct ColorMap *CMAP2ColorMap ( struct ClassBase *cb , ULONG anumcolors , UBYTE *rgb , ULONG rgbsize );
struct ColorMap *CopyColorMap ( struct ClassBase *cb , struct ColorMap *src );
void WriteRGBPixelArray8 ( struct ClassBase *cb , struct BitMap *bm , ULONG animwidth , ULONG animheight , struct ColorRegister *cm , UBYTE *chunky );
void CopyBitMap ( struct ClassBase *cb , struct BitMap *dest , struct BitMap *src , ULONG width , ULONG height );
APTR AllocVecPooled ( struct ClassBase *cb , APTR pool , ULONG memsize );
void FreeVecPooled ( struct ClassBase *cb , APTR pool , APTR mem );

/* encoder.c */
ULONG SaveGIFAnim ( struct ClassBase *cb , struct IClass *cl , Object *o , struct dtWrite *dtw );
