summaryrefslogtreecommitdiffstats
path: root/src/gifenc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gifenc.h')
-rw-r--r--src/gifenc.h90
1 files changed, 0 insertions, 90 deletions
diff --git a/src/gifenc.h b/src/gifenc.h
deleted file mode 100644
index cfeacae..0000000
--- a/src/gifenc.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/******************************************************************************
- *
- *
- *
- *
- * Copyright (C) 1997-2002 by Dimitri van Heesch.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation under the terms of the GNU General Public License is hereby
- * granted. No representations are made about the suitability of this software
- * for any purpose. It is provided "as is" without express or implied warranty.
- * See the GNU General Public License for more details.
- *
- * Documents produced by Doxygen are derivative works derived from the
- * input used in their production; they are not affected by this license.
- *
- */
-
-#ifndef _GIFENC_H
-#define _GIFENC_H
-#include <qfile.h>
-
-typedef unsigned char Byte;
-typedef unsigned short Word;
-
-struct Color
-{
- Byte red;
- Byte green;
- Byte blue;
-};
-
-const int hashTableSize=5003; // size of the hash table
-
-class GifEncoder
-{
- public:
- GifEncoder(Byte *rawBytes,Color *p,int w,int h,Byte d,int t);
- ~GifEncoder();
- void writeGIF(QFile &fp);
-
- protected:
- void putWord( Word w, QFile &fp );
- void putByte( Byte b, QFile &fp );
- void compress(int csize, QFile &fp);
- void writeCode(int code, QFile &fp);
- void writeChar( Byte c, QFile &fp );
- void writePacket(QFile &fp);
- int nextPixel()
- {
- if ( --numPixels < 0) return EOF;
- return *dataPtr++;
- }
- void clearHashTable();
-
- private:
- const int colorResolution; // 8 bit for Red, Green and Blue;
- const int globalPaletteFlag;
- const int bits;
- const int maxMaxCode;
-
- // image variables
- int width; // image width
- int height; // image height
- Byte depth; // bits per CLUT entry
- int transIndex; // index of the transparant color; -1 = none
- Color *palette; // pointer to the color palette
- int numPixels; // total number of pixel (i.e. width * height)
- Byte *data; // pointer to the image data (one byte per pixel)
- Byte *dataPtr; // pointer located at the current pixel.
-
- // compression variables
- bool clearFlag; // clear hash table flag
- int freeEntry; // first free entry in the hash table
- unsigned int curAccum; // encoded bit accumulator
- int curBits; // number of bits in curAccum
- Byte accum[256]; // Buffer for a packet
- int aCount; // Number of characters so far in this 'packet'
- int nBits; // number of bits/code
- int maxCode; // maximum code, given n_bits
- int initBits; // initial number of bits
- int EOFCode; // code for signaling the end of the file
- int ClearCode; // the clear code for the decompressor
-
- // tables
- int htab[hashTableSize]; // the hash table
- Word codetab[hashTableSize]; // the code table
-};
-
-#endif