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 #include <kdelibs_export.h>
00031 
00032 class KArtsServer;
00033 namespace Arts { class StereoEffectStack; }
00034 
00041 class KDE_ARTS_EXPORT KAudioRecordStream : public QObject
00042 {
00043     Q_OBJECT
00044 
00045     public:
00052         KAudioRecordStream( KArtsServer * server, const QString & title, QObject * parent = 0, const char * name = 0 );
00053 
00054         ~KAudioRecordStream();
00055 
00064         int read( char *, int size );
00065 
00072         void setBlockingIO( bool );
00073 
00079         bool blockingIO() const;
00080 
00089         void usePolling( bool );
00090 
00096         bool polling() const;
00097 
00101         Arts::StereoEffectStack effectStack() const;
00102 
00107         bool running() const;
00108 
00109     public slots:
00114         void stop();
00115 
00128         void start( int samplingRate, int bits, int channels );
00129 
00133         void flush();
00134 
00135     signals:
00143         void data( QByteArray & data );
00144 
00149         void running( bool );
00150 
00151     private slots:
00152         void slotRestartedServer();
00153         void slotData( const char *, unsigned int );
00154 
00155     private:
00156         KAudioRecordStream( const KAudioRecordStream & );
00157         KAudioRecordStream & operator=( const KAudioRecordStream & );
00158 
00159         struct Data;
00160         Data * d;
00161 };
00162 
00163 #endif //_KAUDIORECORDSTREAM__H
KDE Logo
This file is part of the documentation for arts Library Version 3.4.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Jul 20 12:43:14 2006 by doxygen 1.4.4 written by Dimitri van Heesch, © 1997-2003