#pragma once #include namespace GSL { class GSLSoundV : protected Framework::Thread { public: virtual ~GSLSoundV() {} virtual void playSound() = 0; virtual void setPause( bool p ) = 0; virtual void stopSound() = 0; virtual void warteAufSound( int zeit ) = 0; // Lautstärke: 0 - 0xFFFF virtual void setVolume( unsigned int links, unsigned int rechts ) = 0; // zum Speichern virtual void open() = 0; virtual int getDaten( char *buffer, int len ) = 0; virtual void close() = 0; virtual bool istMono() const = 0; virtual int getSampleRate() const = 0; virtual __int64 getDatLength() const = 0; // Reference Counting virtual GSLSoundV *getThis() = 0; virtual GSLSoundV *release() = 0; }; }