kaudiorecordstream.h
00001     
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
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
 
This file is part of the documentation for arts Library Version 3.2.0.