+ const std::string& get_vendor() { return _vendor; }
+ const std::string& get_renderer() { return _renderer; }
+
+private:
+ class SoundManagerPrivate;
+ /// private implementation object
+ std::auto_ptr<SoundManagerPrivate> d;
+
+ bool _active;
+ bool _changed;
+ float _volume;
+
+ // Position of the listener.
+ SGVec3d _offset_pos;
+ SGGeod _geod_pos;
+
+ // Velocity of the listener.
+ SGVec3d _velocity;
+
+ bool _bad_doppler;
+ std::string _renderer;
+ std::string _vendor;
+ std::string _device_name;
+
+ bool testForALError(std::string s);
+ bool testForALCError(std::string s);
+ bool testForError(void *p, std::string s);
+
+ void update_sample_config( SGSampleGroup *sound );