Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

/home/pete/Work/TSE3.svn/tse3/src/tse3/MidiEcho.h

Go to the documentation of this file.
00001 /*
00002  * @(#)MidiEcho.h 3.00 22 February 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_MIDIECHO_H
00018 #define TSE3_MIDIECHO_H
00019 
00020 #include "tse3/listen/MidiEcho.h"
00021 
00022 #include "tse3/Notifier.h"
00023 #include "tse3/MidiFilter.h"
00024 
00025 namespace TSE3
00026 {
00027     class MidiScheduler;
00028 
00050     class MidiEcho : public Notifier<MidiEchoListener>
00051     {
00052         public:
00053 
00059             MidiEcho(MidiScheduler *scheduler);
00060 
00069             MidiFilter *filter() { return &_filter; }
00070 
00081             int channel() const { return _channel; }
00082 
00092             void setChannel(int c);
00093 
00104             int port() const { return _port; }
00105 
00115             void setPort(int p);
00116 
00127             void echo(MidiEvent command);
00128 
00129         private:
00130 
00131             MidiScheduler *scheduler;
00132             MidiFilter     _filter;
00133             int            _channel;
00134             int            _port;
00135     };
00136 }
00137 
00138 #endif

Generated on Wed May 25 14:45:07 2005 for TSE3 by doxygen 1.3.2