#ifndef IAUDIO_H #define IAUDIO_H #include "tier1/interface.h" #include "tier2/iappsystem.h" #include "trig.h" abstract_class IAudioPlayer { public: virtual void StartAt( double fTime ) = 0; virtual double GetPlayTime() = 0; virtual double Stop() = 0; virtual void Continue() = 0; virtual void SetDirection( Vector v ) = 0; virtual void SetVolume( float fValue ) = 0; }; abstract_class IAudio { public: virtual IAudioPlayer *SpawnPlayer() = 0; }; abstract_class IAudioManager: public IAppSystem { public: virtual void Frame() = 0; virtual IAudio *CreateAudio( const char *szFile ) = 0; virtual void DestroyAudio( IAudio *pAudio ) = 0; }; #define AUDIO_MANAGER_INTERFACE_VERSION "Audio001" #endif