/* * --- GSMP-COPYRIGHT-NOTE-BEGIN --- * * This copyright note is auto-generated by ./scripts/Create-CopyPatch. * Please add additional copyright information _after_ the line containing * the GSMP-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by * the ./scripts/Create-CopyPatch script. Do not edit this copyright text! * * GSMP: dam/include/Signals.hh_in * General Sound Manipulation Program is Copyright (C) 2000 - 2004 * Valentin Ziegler and René Rebe * * This program 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; version 2. A copy of the GNU General * Public License can be found in the file LICENSE. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANT- * ABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General * Public License for more details. * * --- GSMP-COPYRIGHT-NOTE-END --- */ // This file contains specialisations of SigC Signals most commonly // used in DAM and special marshallers #ifndef DAM__SIGNALS_HH__ #define DAM__SIGNALS_HH__ #include namespace DAM { // outdated : for old libsig only class RequestMarshaller { public: typedef bool InType; typedef bool OutType; RequestMarshaller (); static bool default_value () { return true; } bool marshal (const InType& in); OutType value () { return m_value; }; private: OutType m_value; }; /*Expand*/ __TypeList<> class Event__NO : public sigc::signal __TypeRep {}; /*!Expand*/ /*Expand*/ __TypeList<> class Request__NO : public sigc::signal {}; /*!Expand*/ typedef Event0 Event; typedef Request0 Request; // Todo: Some kind of guarded access to Signal::emit () } // end namespace DAM /* include template implementation */ #define DAM__SIGNALS_TMPL__ #include "template/Signals.tcc" #undef DAM__SIGNALS_TMPL__ #endif // DAM__SIGNALS_HH__