00001 /* 00002 * @(#)listen/ins/Destination.h 3.00 21 August 2000 00003 * 00004 * Copyright (c) 2000 Pete Goodliffe (pete@cthree.org) 00005 * 00006 * This file is part of TSE3 - the Trax Sequencer Engine version 3.00. 00007 * 00008 * This library is modifiable/redistributable under the terms of the GNU 00009 * General Public License. 00010 * 00011 * You should have received a copy of the GNU General Public License along 00012 * with this program; see the file COPYING. If not, write to the Free Software 00013 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00014 * 00015 */ 00016 00017 #ifndef TSE3_LISTEN_INS_DESTINATION_H 00018 #define TSE3_LISTEN_INS_DESTINATION_H 00019 00020 #include <cstddef> 00021 00022 namespace TSE3 00023 { 00024 namespace Ins 00025 { 00026 class Instrument; 00027 class Destination; 00028 00036 class DestinationListener 00037 { 00038 public: 00039 typedef Destination notifier_type; 00040 00041 virtual void Destination_Altered(Destination *, 00042 size_t /*channel*/, 00043 size_t /*port*/, 00044 Instrument *) {} 00045 virtual void Destination_InstrumentAdded(Destination*, 00046 Instrument *) {} 00047 virtual void Destination_InstrumentRemoved(Destination *, 00048 Instrument *) {} 00049 }; 00050 } 00051 } 00052 00053 #endif