Example #1
0
void al_bufferi( int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[] ) {

	if (NULL == alBufferi) mogl_glunsupported("alBufferi");
	alBufferi((ALuint)mxGetScalar(prhs[0]),
		(ALenum)mxGetScalar(prhs[1]),
		(ALint)mxGetScalar(prhs[2]));

}
Example #2
0
void alBufferiv(ALuint buffer, ALenum param, const ALint *values)
{
    DEBUGLOGCALL(LCF_OPENAL);
    if (values == nullptr) {
        ALSETERROR(AL_INVALID_VALUE);
        return;
    }
    alBufferi(buffer, param, *values);
}
Example #3
0
AL_API void AL_APIENTRY alBufferiv(ALuint buffer, ALenum param, const ALint *values)
{
    ALCdevice *device;
    ALCcontext *context;
    ALbuffer *albuf;

    if(values)
    {
        switch(param)
        {
            case AL_UNPACK_BLOCK_ALIGNMENT_SOFT:
            case AL_PACK_BLOCK_ALIGNMENT_SOFT:
                alBufferi(buffer, param, values[0]);
                return;
        }
    }

    context = GetContextRef();
    if(!context) return;

    device = context->Device;
    LockBuffersRead(device);
    if((albuf=LookupBuffer(device, buffer)) == NULL)
        SET_ERROR_AND_GOTO(context, AL_INVALID_NAME, done);

    if(!(values))
        SET_ERROR_AND_GOTO(context, AL_INVALID_VALUE, done);
    switch(param)
    {
    case AL_LOOP_POINTS_SOFT:
        WriteLock(&albuf->lock);
        if(ReadRef(&albuf->ref) != 0)
        {
            WriteUnlock(&albuf->lock);
            SET_ERROR_AND_GOTO(context, AL_INVALID_OPERATION, done);
        }
        if(values[0] >= values[1] || values[0] < 0 ||
           values[1] > albuf->SampleLen)
        {
            WriteUnlock(&albuf->lock);
            SET_ERROR_AND_GOTO(context, AL_INVALID_VALUE, done);
        }

        albuf->LoopStart = values[0];
        albuf->LoopEnd = values[1];
        WriteUnlock(&albuf->lock);
        break;

    default:
        SET_ERROR_AND_GOTO(context, AL_INVALID_ENUM, done);
    }

done:
    UnlockBuffersRead(device);
    ALCcontext_DecRef(context);
}
Example #4
0
value lime_al_bufferi (value buffer, value param, value value) {

    alBufferi (val_int (buffer), val_int (param), val_int (value));
    return alloc_null ();

}
Example #5
0
ALvoid CDECL wine_alBufferi(ALuint bid, ALenum param, ALint value)
{
    alBufferi(bid, param, value);
}
Example #6
0
void WSound::SetFrequency(uint buffer, uint frequency) {
	if (!m_bCheck() || buffer >= m_numBuffers) return;

	alBufferi(m_buffers[buffer], AL_FREQUENCY, frequency);
}
Example #7
0
	void lime_al_bufferi (int buffer, int param, int value) {
		
		alBufferi (buffer, param, value);
		
	}
Example #8
0
//*****************************************************************************
// alBufferi
//*****************************************************************************
//
ALAPI ALvoid ALAPIENTRY alBufferi(ALuint bufferName, ALenum param, ALint value)
{
    AL_VOID_FXN(alBufferi(bufferName, param, value));
}