diff options
Diffstat (limited to 'src/libjin/audio/source.h')
-rw-r--r-- | src/libjin/audio/source.h | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/src/libjin/audio/source.h b/src/libjin/audio/source.h index 96da208..79fa8e0 100644 --- a/src/libjin/audio/source.h +++ b/src/libjin/audio/source.h @@ -10,21 +10,32 @@ namespace audio class Source { + public: - void play(); - void stop(); - void pause(); - void resume(); - void rewind(); - void isStopped() const; - void isPaused() const; - void isFinished() const; - void setPitch(float pitch); - void setVolume(float volume); + + virtual void play() = 0; + virtual void stop() = 0; + virtual void pause() = 0; + virtual void resume() = 0; + virtual void rewind() = 0; + virtual void isStopped() const = 0; + virtual void isPaused() const = 0; + virtual void isFinished() const = 0; + virtual void setPitch(float pitch) = 0; + virtual void setVolume(float volume) = 0; + virtual bool setLoop(bool loop) = 0; + virtual void setRate(float rate) = 0; + + protected: + + Source(); + virtual ~Source(); private: + unsigned char * curPos; unsigned int length; + }; } |