3 This file is part of libmspal
4 Copyright © 2008 Mikko Rasa, Mikkosoft Productions
5 Diestributed under the LGPL
23 alDeleteSources(1, &id);
26 void Source::attribute(ALenum attr, int v)
28 alSourcei(id, attr, v);
31 void Source::attribute(ALenum attr, float v)
33 alSourcef(id, attr, v);
36 void Source::attribute(ALenum attr, float v0, float v1, float v2)
38 alSource3f(id, attr, v0, v1, v2);
41 void Source::attribute(ALenum attr, const float *v)
43 alSourcefv(id, attr, v);
46 void Source::set_buffer(Buffer &buffer)
48 attribute(AL_BUFFER, static_cast<int>(buffer.get_id()));
51 void Source::queue_buffers(const vector<Buffer *> &buffers)
54 ids.reserve(buffers.size());
55 for(vector<Buffer *>::const_iterator i=buffers.begin(); i!=buffers.end(); ++i)
56 ids.push_back((*i)->get_id());
57 alSourceQueueBuffers(id, ids.size(), &ids.front());
60 void Source::queue_buffer(Buffer &buffer)
62 uint bid=buffer.get_id();
63 alSourceQueueBuffers(id, 1, &bid);