summaryrefslogtreecommitdiff
path: root/library/sound.cpp
Side-by-side diff
Diffstat (limited to 'library/sound.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--library/sound.cpp31
1 files changed, 27 insertions, 4 deletions
diff --git a/library/sound.cpp b/library/sound.cpp
index 1ff3b3f..c8704f9 100644
--- a/library/sound.cpp
+++ b/library/sound.cpp
@@ -105,9 +105,9 @@ public:
SoundData ( const QString& name ) :
QSound ( Resource::findSound ( name )),
filename ( Resource::findSound ( name ))
{
- loopsleft=0;
+ loopsleft=0;
ms = WAVsoundDuration(filename);
}
void playLoop ( int loopcnt = -1 )
@@ -127,12 +127,12 @@ public:
killTimer ( e-> timerId ( ));
loopsleft = 0;
return;
}
- }
+ }
play();
}
-
+
bool isFinished ( ) const
{
return ( loopsleft == 0 );
}
@@ -144,37 +144,44 @@ private:
};
#endif
+/*! Opens a wave sound file \a name for playing
+ * Resource is used for finding the file
+ **/
Sound::Sound(const QString& name)
{
#ifndef QT_NO_SOUND
d = new SoundData(name);
#endif
}
+/*! Destroys the sound */
Sound::~Sound()
{
#ifndef QT_NO_SOUND
delete d;
#endif
}
+/*! Play the sound once */
void Sound::play()
{
#ifndef QT_NO_SOUND
d->playLoop(1);
#endif
}
+/*! Play the sound, repeatedly until stop() is called */
void Sound::playLoop()
{
#ifndef QT_NO_SOUND
d->killTimers();
d->playLoop();
#endif
}
+/*! Do not repeat the sound after it finishes. This will end a playLoop() */
void Sound::stop()
{
#ifndef QT_NO_SOUND
d->killTimers();
@@ -189,10 +196,26 @@ bool Sound::isFinished() const
return true;
#endif
}
+/*! Sounds the audible system alarm. This is used for applications such
+ as Calendar when it needs to alarm the user of an event.
+*/
void Sound::soundAlarm()
{
#ifndef QT_NO_COP
QCopEnvelope( "QPE/TaskBar", "soundAlarm()" );
-#endif
+#endif
}
+
+
+/*! \class Sound
+ \brief The Sound class plays WAVE sound files and can invoke the audible alarm.
+
+ The Sound class is constructed with the .wav music file name. The Sound
+ class retrieves the sound file from the shared Resource class. This class
+ ties together QSound and the available sound resources.
+
+ To sound an audible system alarm, call the static method soundAlarm()
+
+ \ingroup qtopiaemb
+*/