Delete svn tags. We don't need them in git
[synfig.git] / synfig-core / tags / synfig_0_61_07_rc3 / src / synfig / surfacenew.h
diff --git a/synfig-core/tags/synfig_0_61_07_rc3/src/synfig/surfacenew.h b/synfig-core/tags/synfig_0_61_07_rc3/src/synfig/surfacenew.h
deleted file mode 100644 (file)
index 69e9ef6..0000000
+++ /dev/null
@@ -1,400 +0,0 @@
-/* === S Y N F I G ========================================================= */
-/*!    \file surfacenew.h
-**     \brief Template Header
-**
-**     $Id$
-**
-**     \legal
-**     Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
-**
-**     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
-*/
-/* ========================================================================= */
-
-/* === S T A R T =========================================================== */
-
-#ifndef __SYNFIG_SURFACENEW_H
-#define __SYNFIG_SURFACENEW_H
-
-/* === H E A D E R S ======================================================= */
-
-#include <ETL/handle>
-#include <ETL/ref_count>
-#include "color.h"
-#include "mutex.h"
-#include <map>
-
-/* === M A C R O S ========================================================= */
-
-/* === T Y P E D E F S ===================================================== */
-
-/* === C L A S S E S & S T R U C T S ======================================= */
-
-namespace synfig {
-
-class Surface;
-class SurfaceChannelLock;
-class SurfaceChannelLockConst;
-
-//! \writeme
-enum SurfaceColorSystem
-{
-       COLORSYS_RGB,
-       COLORSYS_YUV,
-
-       COLORSYS_END
-}; // END of enum SurfaceColorSystem
-
-//! \writeme
-enum SurfaceChannel
-{
-       CHAN_A,
-       CHAN_R,
-       CHAN_G,
-       CHAN_B,
-
-       CHAN_Y,
-       CHAN_U,
-       CHAN_V,
-
-       CHAN_END
-}; // END of enum SurfaceChannel
-
-class SurfaceNew : etl::shared_object
-{
-       friend class SurfaceChannelLock;
-
-       /*
- --    ** -- T Y P E S -----------------------------------------------------------
-       */
-
-public:
-
-       //! \writeme
-       typedef etl::handle<SurfaceNew> Handle;
-
-       //! \writeme
-       typedef etl::handle<const SurfaceNew> HandleConst;
-
-       //! \writeme
-       typedef etl::loose_handle<SurfaceNew> LooseHandle;
-
-       //! \writeme
-       typedef SurfaceChannel;
-
-       //! \writeme
-       typedef SurfaceChannelLock ChannelLock;
-
-       //! \writeme
-       typedef SurfaceChannelLockConst ChannelLockConst;
-
-       //! \writeme
-       typedef SurfaceColorSystem;
-
-       //! \writeme
-       class Lock
-       {
-               Handle x;
-       public:
-               Lock(const Handle& x):x(x) { x->lock(); }
-               void unlock() { if(x){ x->unlock(); x=0; } }
-               ~Lock() { unlock(); }
-       }; // END of class Lock
-       friend class Lock;
-
-private:
-
-       //! \writeme
-       class ChannelData;
-
-       /*
- --    ** -- D A T A -------------------------------------------------------------
-       */
-
-private:
-
-       //! \writeme
-       RecMutex mutex_;
-
-       //! \writeme
-       int w_,h_;
-
-       //! \writeme
-       ColorSystem color_system_;
-
-       //! \writeme
-       bool premult_flag_;
-
-       //! \writeme
-       std::map<Channel,ChannelData> channel_map_;
-
-       /*
- -- ** -- S I G N A L S -------------------------------------------------------
-       */
-
-private:
-
-       /*
- -- ** -- S I G N A L   I N T E R F A C E -------------------------------------
-       */
-
-public:
-
-       /*
- --    ** -- C O N S T R U C T O R S ---------------------------------------------
-       */
-
-protected:
-
-       //! \writeme
-       SurfaceNew();
-
-public:
-
-       //! \writeme
-       virtual ~SurfaceNew();
-
-       /*
- --    ** -- M E M B E R   F U N C T I O N S -------------------------------------
-       */
-
-public:
-
-       //! \writeme
-       int get_w()const;
-
-       //! \writeme
-       int get_h()const;
-
-       //! \writeme
-       void set_wh(int w, int h);
-
-       //! \writeme
-       ColorSystem get_color_system()const;
-
-       //! \writeme
-       void set_color_system(ColorSystem x);
-
-       //! Should only be used in certain circumstances
-       Color get_color(int x, int y)const;
-
-       //! \writeme
-       void lock();
-
-       //! \writeme
-       void unlock();
-
-       //! \writeme
-       bool trylock();
-
-       //! \writeme
-       ChannelLock lock_channel(Channel chan);
-
-       //! \writeme
-       ChannelLockConst lock_channel_const(Channel chan)const;
-
-       //! \writeme
-       ChannelLock lock_channel_alpha(Channel chan);
-
-       //! \writeme
-       ChannelLockConst lock_channel_alpha_const(Channel chan)const;
-
-       //! \writeme
-       bool is_channel_defined(Channel chan)const;
-
-       //! \writeme
-       bool get_premult()const;
-
-       //! \writeme
-       void set_premult();
-
-       /*
- --    ** -- S T A T I C   F U N C T I O N S -------------------------------------
-       */
-
-public:
-
-       //! Normal SurfaceNew Constructor
-       static Handle create(int w=0, int h=0, ColorSystem sys=COLORSYS_RGB);
-
-       //! Converts an old Surface to a SurfaceNew
-       static Handle create(const Surface&);
-
-       //! Dupilcates a surface
-       static Handle create(HandleConst);
-
-       //! Creates a cropped copy of a surface
-       static Handle crop(HandleConst, int x, int y, int w, int h);
-
-       static void blit(
-               Handle dest,
-               int x_dest,
-               int y_dest,
-               HandleConst src,
-               float amount=1.0,
-               Color::BlendMethod bm=Color::BLEND_COMPOSITE
-       );
-
-       static void blit(
-               Handle dest,
-               int x_dest,
-               int y_dest,
-               Handle src,
-               int x_src,
-               int y_src,
-               int w_src,
-               int h_src,
-               float amount=1.0,
-               Color::BlendMethod bm=Color::BLEND_COMPOSITE
-       );
-
-
-       static void chan_mlt(ChannelLock& dest, float x);
-       static void chan_mlt(ChannelLock& dest, const ChannelLockConst& x);
-
-       static void chan_div(ChannelLock& dest, float x);
-       static void chan_div(ChannelLock& dest, const ChannelLockConst& x);
-
-       static void chan_add(ChannelLock& dest, float x);
-       static void chan_add(ChannelLock& dest, const ChannelLockConst& x);
-
-       static void chan_sub(ChannelLock& dest, float x);
-       static void chan_sub(ChannelLock& dest, const ChannelLockConst& x);
-}; // END of class SurfaceNew
-
-//! \writeme
-class SurfaceChannelLockConst
-{
-       friend class SurfaceNew;
-
-       /*
- --    ** -- T Y P E S -----------------------------------------------------------
-       */
-
-public:
-
-       /*
- --    ** -- D A T A -------------------------------------------------------------
-       */
-
-protected:
-
-       //! \writeme
-       SurfaceNew::Handle surface_;
-
-       //! \writeme
-       etl::reference_counter ref_count_;
-
-       //! \writeme
-       SurfaceChannel channel_;
-
-       //! \writeme
-       bool data_ptr_checked_out_;
-
-       /*
- --    ** -- C O N S T R U C T O R S ---------------------------------------------
-       */
-
-public:
-
-       SurfaceChannelLockConst();
-
-       //! \writeme
-       ~SurfaceChannelLockConst();
-
-       /*
- --    ** -- M E M B E R   F U N C T I O N S -------------------------------------
-       */
-
-public:
-
-       //! \writeme
-       SurfaceChannel get_channel()const;
-
-       //! \writeme
-       int get_w()const;
-
-       //! \writeme
-       int get_h()const;
-
-       //! \writeme
-       float get_value(int x, int y);
-
-       //! \writeme
-       const float* get_data_ptr()const;
-
-       //! \writeme
-       int get_data_ptr_stride()const;
-
-       //! Releases the pointer obtained with get_data_ptr()
-       void release_data_ptr()const;
-
-       //! \writeme
-       operator bool()const;
-}; // END of class SurfaceChannelLockConst
-
-
-//! \writeme
-class SurfaceChannelLock : public SurfaceChannelLockConst
-{
-       friend class SurfaceNew;
-
-       using SurfaceChannelLock::get_data_ptr;
-
-       /*
- --    ** -- T Y P E S -----------------------------------------------------------
-       */
-
-public:
-
-       /*
- --    ** -- D A T A -------------------------------------------------------------
-       */
-
-private:
-
-       /*
- --    ** -- C O N S T R U C T O R S ---------------------------------------------
-       */
-
-public:
-
-       //! \writeme
-       SurfaceChannelLock();
-
-       //! \writeme
-       ~SurfaceChannelLock();
-
-       /*
- --    ** -- M E M B E R   F U N C T I O N S -------------------------------------
-       */
-
-public:
-
-       //! \writeme
-       void clear();
-
-       //! \writeme
-       void fill(float value);
-
-       //! \writeme
-       void set_value(int x, int y, float v);
-
-       float* get_data_ptr();
-}; // END of class ChannelLock
-
-
-}; // END of namespace synfig
-
-/* === E N D =============================================================== */
-
-#endif