aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/audio/source.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/audio/source.h')
-rw-r--r--src/libjin/audio/source.h31
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;
+
};
}