arts Library API Documentation

kaudiorecordstream.h

00001     /*
00002 
00003     Copyright (C) 2001,2002 Matthias Kretz
00004                             kretz@kde.org
00005                   2003      Arnold Krille
00006                             arnold@arnoldarts.de
00007 
00008     This library is free software; you can redistribute it and/or
00009     modify it under the terms of the GNU Library General Public
00010     License as published by the Free Software Foundation; either
00011     version 2 of the License, or (at your option) any later version.
00012   
00013     This library is distributed in the hope that it will be useful,
00014     but WITHOUT ANY WARRANTY; without even the implied warranty of
00015     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00016     Library General Public License for more details.
00017 
00018     You should have received a copy of the GNU Library General Public License
00019     along with this library; see the file COPYING.LIB.  If not, write to
00020     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00021     Boston, MA 02111-1307, USA.
00022 
00023     */
00024 
00025 #ifndef _KAUDIORECORDSTREAM__H
00026 #define _KAUDIORECORDSTREAM__H
00027 
00028 #include <qobject.h>
00029 
00030 class KArtsServer;
00031 namespace Arts { class StereoEffectStack; }
00032 
00039 class KAudioRecordStream : public QObject
00040 {
00041     Q_OBJECT
00042 
00043     public:
00050         KAudioRecordStream( KArtsServer * server, const QString & title, QObject * parent = 0, const char * name = 0 );
00051 
00052         ~KAudioRecordStream();
00053 
00062         int read( char *, int size );
00063 
00070         void setBlockingIO( bool );
00071 
00077         bool blockingIO() const;
00078 
00087         void usePolling( bool );
00088 
00094         bool polling() const;
00095 
00099         Arts::StereoEffectStack effectStack() const;
00100 
00105         bool running() const;
00106 
00107     public slots:
00112         void stop();
00113 
00126         void start( int samplingRate, int bits, int channels );
00127 
00131         void flush();
00132 
00133     signals:
00141         void data( QByteArray & data );
00142 
00147         void running( bool );
00148 
00149     private slots:
00150         void slotRestartedServer();
00151         void slotData( const char *, unsigned int );
00152 
00153     private:
00154         KAudioRecordStream( const KAudioRecordStream & );
00155         KAudioRecordStream & operator=( const KAudioRecordStream & );
00156 
00157         struct Data;
00158         Data * d;
00159 };
00160 
00161 #endif //_KAUDIORECORDSTREAM__H
KDE Logo
This file is part of the documentation for arts Library Version 3.2.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Feb 4 12:35:27 2004 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2003