nuclear@48: #ifndef SOURCE_H_ nuclear@48: #define SOURCE_H_ nuclear@48: nuclear@48: #include "vmath/vmath.h" nuclear@48: #include "sample.h" nuclear@48: nuclear@48: class AudioSource { nuclear@48: private: nuclear@48: unsigned int alsrc; nuclear@48: const AudioSample *sample; nuclear@48: nuclear@48: public: nuclear@48: AudioSource(); nuclear@48: ~AudioSource(); nuclear@48: nuclear@48: void set_sample(const AudioSample *sample); nuclear@48: const AudioSample *get_sample() const; nuclear@48: nuclear@48: void set_position(const Vector3 &pos, bool viewspace = false); nuclear@48: Vector3 get_position() const; nuclear@48: nuclear@51: void set_volume(float vol); nuclear@51: float get_volume() const; nuclear@51: nuclear@51: void set_reference_dist(float rdist); nuclear@51: float get_reference_dist() const; nuclear@51: nuclear@48: bool is_playing() const; nuclear@48: void play(); nuclear@48: void stop(); nuclear@48: }; nuclear@48: nuclear@48: #endif // SOURCE_H_