1 /* 2 Copyright (C) 2001 Paul Davis 3 Copyright (C) 2004-2008 Grame 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program; if not, write to the Free Software 17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18 19 */ 20 21 #ifndef __JackLoopbackDriver__ 22 #define __JackLoopbackDriver__ 23 24 #include "JackAudioDriver.h" 25 26 namespace Jack 27 { 28 29 /*! 30 \brief The loopback driver : to be used to "pipeline" applications connected in sequence. 31 */ 32 33 class JackLoopbackDriver : public JackAudioDriver 34 { 35 36 private: 37 38 virtual int ProcessReadSync(); 39 virtual int ProcessWriteSync(); 40 41 virtual int ProcessReadAsync(); 42 virtual int ProcessWriteAsync(); 43 44 public: 45 JackLoopbackDriver(JackLockedEngine * engine,JackSynchro * table)46 JackLoopbackDriver(JackLockedEngine* engine, JackSynchro* table) 47 : JackAudioDriver("loopback", "loopback", engine, table) 48 {} ~JackLoopbackDriver()49 virtual ~JackLoopbackDriver() 50 {} 51 }; 52 53 } // end of namespace 54 55 #endif 56