X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fpbd%2Fpbd%2Fdestructible.h;h=8881b45c55116d9f6523d06e6a997c68c780a6ac;hb=d074bc586e494d7dd83d415a487195a477095a4f;hp=6692ff564c742d3fb7a9109501feb2ab520b2fa2;hpb=fedf3d34f32264ac57c6a222b678dc90f2bb1a88;p=ardour.git diff --git a/libs/pbd/pbd/destructible.h b/libs/pbd/pbd/destructible.h index 6692ff564c..8881b45c55 100644 --- a/libs/pbd/pbd/destructible.h +++ b/libs/pbd/pbd/destructible.h @@ -1,18 +1,38 @@ +/* + Copyright (C) 2000-2007 Paul Davis + + 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; either version 2 of the License, or + (at your option) any later version. + + This program 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. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + #ifndef __pbd_destructible_h__ #define __pbd_destructible_h__ -#include +#include "pbd/signals.h" namespace PBD { -class Destructible : public virtual sigc::trackable { +class Destructible { public: - Destructible() {} - virtual ~Destructible () {} - - sigc::signal GoingAway; + Destructible() {} + virtual ~Destructible () { Destroyed(); } + + PBD::Signal0 Destroyed; + PBD::Signal0 DropReferences; - void drop_references () const { GoingAway(); } + void drop_references () { DropReferences(); } }; }