// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "audio/openal_sound_source.hpp"
+
#include "audio/sound_manager.hpp"
OpenALSoundSource::OpenALSoundSource() :
}
void
+OpenALSoundSource::pause()
+{
+ alSourcePause(source);
+ SoundManager::check_al_error("Couldn't pause audio source: ");
+}
+
+void
+OpenALSoundSource::resume()
+{
+ if( !this->paused() )
+ {
+ return;
+ }
+
+ this->play();
+}
+
+bool
+OpenALSoundSource::paused()
+{
+ ALint state = AL_PAUSED;
+ alGetSourcei(source, AL_SOURCE_STATE, &state);
+ return state == AL_PAUSED;
+}
+
+void
OpenALSoundSource::update()
{
}
}
void
+OpenALSoundSource::set_relative(bool relative)
+{
+ alSourcei(source, AL_SOURCE_RELATIVE, relative ? AL_TRUE : AL_FALSE);
+}
+
+void
OpenALSoundSource::set_position(const Vector& position)
{
alSource3f(source, AL_POSITION, position.x, position.y, 0);
alSourcef(source, AL_REFERENCE_DISTANCE, distance);
}
-void
-OpenALSoundSource::set_rollof_factor(float factor)
-{
- alSourcef(source, AL_ROLLOFF_FACTOR, factor);
-}
-
/* EOF */