#pragma once #include once "crt/stdio.bi" #include once "surface.bi" extern "C" ' type GifRGBA ' as ubyte b, g, r, a ' end type type GifRGBA as RGBcolor type GifPalette bitDepth as long colors(0 to 255) as GifRGBA end type type GifKDTree as GifKDTreeFwd type GifWriter f as FILE ptr oldImage as ubyte ptr firstFrame as boolean deltaCoded as boolean globalPal as GifPalette ptr maxWidth as integer maxHeight as integer currentWidth as integer currentHeight as integer sizeChanged as boolean lastFramePos as clong end type declare function GifBegin(byval writer as GifWriter ptr, byval file as FILE ptr, byval width as ulong, byval height as ulong, byval delay as ulong, byval transparent as boolean = false, byval globalPal as const GifPalette ptr = NULL) as bool declare function GifWriteFrame(byval writer as GifWriter ptr, byval image as const GifRGBA ptr, byval width as ulong, byval height as ulong, byval delay as ulong, byval bitDepth as long = 8, byval dither as boolean = false) as bool declare function GifWriteFrame8(byval writer as GifWriter ptr, byval image as const ubyte ptr, byval width as ulong, byval height as ulong, byval delay as ulong, byval pal as const GifPalette ptr = NULL) as bool declare sub GifOverwriteLastDelay(byval writer as GifWriter ptr, byval delay as ulong) declare function GifEnd(byval writer as GifWriter ptr) as bool declare sub GifGetClosestPaletteColor(byval tree as GifKDTree ptr, byval color as GifRGBA, byval bestInd as long ptr, byval bestDiff as long ptr, byval nodeIndex as long = 0) ' The following are in gif.cpp, not part of gif.h itself declare sub dither_image(byval image as const GifRGBA ptr, byval width as ulong, byval height as ulong, byval result as ubyte ptr, byval computePalette as bool, byval palette as const GifRGBA ptr, byval bitDepth as long, byval firstIndex as long, byval maxError as long) declare function make_KDTree_for_palette(byval palette as const RGBcolor ptr, byval bitDepth as long, byval firstindex as long) as GifKDTree ptr declare sub delete_KDTree(byval tree as GifKDTree ptr) declare function query_KDTree(byval tree as GifKDTree ptr, byval color as RGBcolor) as long extern kGifMaxAccumError as integer end extern