X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fasyncrenderer.h;h=04adab742d67402bca98fe9d681e7da72bb0c95a;hb=72dc78092947e9abef71cc98651a11495682bbaf;hp=028fa1e2c2d731ed236650020a05ddebf824c305;hpb=02252941b29de64037116f4d37991a38d9ff0d94;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/asyncrenderer.h b/synfig-studio/trunk/src/gtkmm/asyncrenderer.h index 028fa1e..04adab7 100644 --- a/synfig-studio/trunk/src/gtkmm/asyncrenderer.h +++ b/synfig-studio/trunk/src/gtkmm/asyncrenderer.h @@ -2,19 +2,20 @@ /*! \file asyncrenderer.h ** \brief Template Header ** -** $Id: asyncrenderer.h,v 1.3 2005/01/12 07:03:42 darco Exp $ +** $Id$ ** ** \legal -** Copyright (c) 2002 Robert B. Quattlebaum Jr. +** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley ** -** This software and associated documentation -** are CONFIDENTIAL and PROPRIETARY property of -** the above-mentioned 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. ** -** 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 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 */ /* ========================================================================= */ @@ -41,6 +42,9 @@ /* === M A C R O S ========================================================= */ +#define single_threaded() App::single_threaded +#define NotLock Glib::NOT_LOCK + /* === T Y P E D E F S ===================================================== */ /* === C L A S S E S & S T R U C T S ======================================= */ @@ -53,16 +57,16 @@ class AsyncRenderer : public etl::shared_object, public sigc::trackable sigc::signal signal_success_; std::list activity_connection_list; - + //etl::handle target_scanline; //etl::handle target_tile; etl::handle target; bool error; bool success; - + synfig::ProgressCallback *cb; - + sigc::signal signal_stop_; Glib::Thread* render_thread; @@ -82,10 +86,13 @@ public: void stop(); void pause(); void resume(); + void rendering_progress(); bool has_error()const { return error; } bool has_success()const { return success; } + bool updating; + sigc::signal& signal_finished() { return signal_finished_; } sigc::signal& signal_success() { return signal_success_; } @@ -99,7 +106,7 @@ private: */ protected: - + }; }; // END of namespace studio