Remove .gitignore do nothing is ignored.
[synfig.git] / synfig-core / trunk / src / modules / mod_gif / trgt_gif.h
index 381baed..ae10e31 100644 (file)
@@ -1,18 +1,22 @@
-/*! ========================================================================
-** Sinfg
-** Template Header File
-** $Id: trgt_gif.h,v 1.1.1.1 2005/01/04 01:23:10 darco Exp $
+/* === S Y N F I G ========================================================= */
+/*!    \file trgt_gif.h
+**     \brief Template Header
 **
-** Copyright (c) 2002 Robert B. Quattlebaum Jr.
+**     $Id$
 **
-** This software and associated documentation
-** are CONFIDENTIAL and PROPRIETARY property of
-** the above-mentioned copyright holder.
+**     \legal
+**     Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
 **
-** You may not copy, print, publish, or in any
-** other way distribute this software without
-** a prior written agreement with
-** the copyright holder.
+**     This package is free software; you can redistribute it and/or
+**     modify it under the terms of the GNU General Public License as
+**     published by the Free Software Foundation; either version 2 of
+**     the License, or (at your option) any later version.
+**
+**     This package is distributed in the hope that it will be useful,
+**     but WITHOUT ANY WARRANTY; without even the implied warranty of
+**     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+**     General Public License for more details.
+**     \endlegal
 **
 ** === N O T E S ===========================================================
 **
 
 /* === S T A R T =========================================================== */
 
-#ifndef __SINFG_TRGT_GIF_H
-#define __SINFG_TRGT_GIF_H
+#ifndef __SYNFIG_TRGT_GIF_H
+#define __SYNFIG_TRGT_GIF_H
 
 /* === H E A D E R S ======================================================= */
 
-#include <sinfg/target_scanline.h>
-#include <sinfg/string.h>
-#include <sinfg/smartfile.h>
+#include <synfig/target_scanline.h>
+#include <synfig/string.h>
+#include <synfig/smartfile.h>
 #include <cstdio>
-#include <sinfg/surface.h>
-#include <sinfg/palette.h>
+#include <synfig/surface.h>
+#include <synfig/palette.h>
 
 /* === M A C R O S ========================================================= */
 
 
 /* === C L A S S E S & S T R U C T S ======================================= */
 
-class gif : public sinfg::Target_Scanline
+class gif : public synfig::Target_Scanline
 {
-       SINFG_TARGET_MODULE_EXT
+       SYNFIG_TARGET_MODULE_EXT
 private:
        // Class for abstracting the
        // output of the codes
        struct bitstream
        {
-               sinfg::SmartFILE file;
+               synfig::SmartFILE file;
                unsigned char pool;
                char curr_bit;
                bitstream():pool(0),curr_bit(0),curr_pos(0) {}
-               bitstream(sinfg::SmartFILE file):file(file),pool(0),curr_bit(0),curr_pos(0) {}
+               bitstream(synfig::SmartFILE file):file(file),pool(0),curr_bit(0),curr_pos(0) {}
                unsigned char buffer[256];
                int curr_pos;
-               
+
                // Pushes a single bit onto the bit
                void push_bit(bool bit)
                {
@@ -63,8 +67,8 @@ private:
                        if(curr_bit==8)
                                empty();
                }
-               
-               // Emptys out the current pool into
+
+               // Empties out the current pool into
                // the buffer. Calls 'dump()' if the
                // buffer is full.
                void empty()
@@ -74,9 +78,9 @@ private:
                        pool=0;
                        if(curr_pos==255)dump();
                }
-               
+
                // If there is anything in the
-               // buffer or in the pool, it 
+               // buffer or in the pool, it
                // dumps it to the filestream.
                // Buffer and pool are cleared.
                void dump()
@@ -90,7 +94,7 @@ private:
                                curr_pos=0;
                        }
                }
-               
+
                // Pushes a symbol of the given size
                // onto the bitstream.
                void push_value(int value, int size)
@@ -108,24 +112,24 @@ private:
                int code; // lzwcode
                struct lzwcode* kids; // children of this node
                struct lzwcode* next; // siblings of this node
-               
+
                lzwcode():value(0),code(0),kids(0),next(0) { }
-               
+
                lzwcode *FindCode(int value)
                {
                        lzwcode *node=this;
-                       
+
                        // check the children (kids) of the node for the value
                        for (node = node->kids; node != 0; node = node->next)
                                if (node->value == value)
                                        return(node);
                        return(0);
                }
-       
+
                void AddNode(unsigned short code, unsigned short value)
                {
                        lzwcode *n = new lzwcode;
-               
+
                        // add a new child to node; the child will have code and value
                        n->value = value;
                        n->code = code;
@@ -133,21 +137,21 @@ private:
                        n->next = this->kids;
                        this->kids = n;
                }
-               
+
                static lzwcode * NewTable(int values)
                {
                        int i;
                        lzwcode * table = new lzwcode;
-               
+
                        table->kids = 0;
                        for (i = 0; i < values; i++)
                                table->AddNode( i, i);
-               
+
                        return(table);
                }
-               
+
                // Destructor just deletes any
-               // children and sibblings.
+               // children and siblings.
                ~lzwcode()
                {
                        if(kids)
@@ -159,16 +163,16 @@ private:
 
 private:
        bitstream bs;
-       sinfg::String filename;
-       sinfg::SmartFILE file;
-       int 
+       synfig::String filename;
+       synfig::SmartFILE file;
+       int
                i,                      // General-purpose index
                codesize,       // Current code size
-               rootsize,       // Size of pixel bits (will be recalculted)
+               rootsize,       // Size of pixel bits (will be recalculated)
                nextcode;       // Next code to use
        lzwcode *table,*next,*node;
-       
-       sinfg::Surface curr_surface;
+
+       synfig::Surface curr_surface;
        etl::surface<unsigned char> curr_frame;
        etl::surface<unsigned char> prev_frame;
 
@@ -184,22 +188,22 @@ private:
        int iframe_density;
        int loop_count;
        bool local_palette;
-       
-       sinfg::Palette curr_palette;
-       
+
+       synfig::Palette curr_palette;
+
        void output_curr_palette();
-       
+
 public:
        gif(const char *filename);
 
-       virtual bool set_rend_desc(sinfg::RendDesc *desc);
+       virtual bool set_rend_desc(synfig::RendDesc *desc);
        virtual bool init();
-       virtual bool start_frame(sinfg::ProgressCallback *cb);
+       virtual bool start_frame(synfig::ProgressCallback *cb);
        virtual void end_frame();
 
        virtual ~gif();
-       
-       virtual sinfg::Color * start_scanline(int scanline);
+
+       virtual synfig::Color * start_scanline(int scanline);
        virtual bool end_scanline(void);
 
 };