summaryrefslogtreecommitdiff
path: root/library/sound.h
authorzecke <zecke>2004-08-25 21:32:12 (UTC)
committer zecke <zecke>2004-08-25 21:32:12 (UTC)
commite4811064703ad34f42f15c3044cd8f63c0e7583c (patch) (unidiff)
tree5c2ab29a176540761b351c29b6556c852067f613 /library/sound.h
parent656d233aa88a92b461abaa618e52db11c1f9d625 (diff)
downloadopie-e4811064703ad34f42f15c3044cd8f63c0e7583c.zip
opie-e4811064703ad34f42f15c3044cd8f63c0e7583c.tar.gz
opie-e4811064703ad34f42f15c3044cd8f63c0e7583c.tar.bz2
-If play() is called again kill old 'looping/playing' in favor
of the new value. This deletes the timer and would fix possible shortage on timer resources -A small friend to hook to an internal signal to avoid problems in Opie::Core::ODevice entering the event loop to wait for the sound to be finished. processEvents() can give strange results as some applications do not expect that the eventloop is entered. This could possible deliver a Timer, or an Event from QSocketNotifier which could give all kind of problems of wrong reentrancy. So let us avoid it.
Diffstat (limited to 'library/sound.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/sound.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/library/sound.h b/library/sound.h
index 9f35107..daef70f 100644
--- a/library/sound.h
+++ b/library/sound.h
@@ -1,45 +1,47 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef SOUND_H 20#ifndef SOUND_H
21#define SOUND_H 21#define SOUND_H
22 22
23class QString; 23class QString;
24class SoundData; 24class SoundData;
25class QObject;
25 26
26class Sound { 27class Sound {
28 /*INTERNAL*/ friend void register_qpe_sound_finished( Sound*, QObject *obj, const char* slot);
27public: 29public:
28 Sound(const QString& name); 30 Sound(const QString& name);
29 ~Sound(); 31 ~Sound();
30 32
31 void play(); 33 void play();
32 void playLoop(); 34 void playLoop();
33 void stop(); 35 void stop();
34 36
35 bool isFinished ( ) const; 37 bool isFinished ( ) const;
36 38
37 static void soundAlarm(); 39 static void soundAlarm();
38 //static void soundClick(); 40 //static void soundClick();
39 //static void soundTap(); 41 //static void soundTap();
40 42
41private: 43private:
42 SoundData* d; 44 SoundData* d;
43}; 45};
44 46
45#endif 47#endif