X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=inline;f=source%2Fsource.h;h=1426a805cad02e53990d23cd9929edd201fbe179;hb=2ff6e1cc7fcae3099b127a886360d7919a4b3efa;hp=090de0ff36b12e30666fdff8f55c2bd821122046;hpb=58dc1e7c15f928d0f861a20c46f2be4112bf5baf;p=libs%2Fal.git diff --git a/source/source.h b/source/source.h index 090de0f..1426a80 100644 --- a/source/source.h +++ b/source/source.h @@ -25,6 +25,9 @@ enum SourceState STOPPED = AL_STOPPED }; +/** +Represents an audio source in the 3D environment. +*/ class Source { private: @@ -40,17 +43,22 @@ public: void attribute(ALenum, const float *); void get_attribute(ALenum, int *) const; void get_attribute(ALenum, float *) const; + SourceState get_state() const; - unsigned get_buffers_queued() const; - unsigned get_buffers_processed() const; void set_position(float, float, float); - void set_looping(bool); + void set_gain(float); + + void set_rolloff_factor(float); void set_buffer(const Buffer &); void queue_buffers(const std::vector &); void queue_buffer(const Buffer &); void unqueue_buffers(const std::vector &); void unqueue_buffer(const Buffer &); void clear_buffers(); + unsigned get_buffers_queued() const; + unsigned get_buffers_processed() const; + + void set_looping(bool); void play(); void pause(); void stop();