# /home/samy/kbilliards/src/soundmodule.h

    00001 /***************************************************************************
    00002                           soundmodule.h  -  description
    00003                              -------------------
    00004     begin                : ven lug 12 2002
    00005     copyright            : (C) 2002 by Samuele Catuzzi
    00006     email                : samuele_catuzzi@yahoo.it
    00007  ***************************************************************************/
    00008
    00009 /***************************************************************************
    00010  *                                                                         *
    00011  *   This program is free software; you can redistribute it and/or modify  *
    00012  *   it under the terms of the GNU General Public License as published by  *
    00013  *   the Free Software Foundation; either version 2 of the License, or     *
    00014  *   (at your option) any later version.                                   *
    00015  *                                                                         *
    00016  ***************************************************************************/
    00017
    00018 #ifndef SOUNDMODULE_H
    00019 #define SOUNDMODULE_H
    00020
    00021
    00026 #include <qobject.h>
    00027 #include <kurl.h>
    00028 #include "soundengine.h"
    00029
    00030 class SoundModule : public QObject
    00031 {
    00032  Q_OBJECT
    00033
    00034
    00035 public:
    00036         SoundModule(QString p_sound, QObject *parent = 0);
    00037         ~SoundModule();
    00039   void setLoop(bool );
    00041   void stop();
    00043   void loadfile(QString );
    00045   void play();
    00047   void OneShot(QString);
    00049   bool getMusicState();
    00051   bool getEffectState();
    00052 private: // Private attributes
    00054   SoundEngine * musicEngine;
    00056   SoundEngine * effectEngine;
    00058   bool unfinished;
    00060   QString path_sound;
    00062   bool sLoop;
    00064   bool enablemusic;
    00066   bool enableeffects;
    00068   int numbofloop;
    00070   bool loop_ok;
    00071 protected: // Protected methods
    00073   void timerEvent( QTimerEvent * );
    00074 public slots: // Public slots
    00076   void enableMusic(bool );
    00078   void enableEffects(bool);
    00079 private slots: // Private slots
    00081   void setMusicOn();
    00082 };
    00083
    00084 #endif