void al_getlistener3i( int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[] ) { if (NULL == alGetListener3i) mogl_glunsupported("alGetListener3i"); alGetListener3i((ALenum)mxGetScalar(prhs[0]), (ALint*)mxGetData(prhs[1]), (ALint*)mxGetData(prhs[2]), (ALint*)mxGetData(prhs[3])); }
value lime_al_get_listener3i (value param) { ALint val1, val2, val3; alGetListener3i (val_int (param), &val1, &val2, &val3); value result = alloc_array (3); val_array_set_i (result, 0, alloc_int (val1)); val_array_set_i (result, 1, alloc_int (val2)); val_array_set_i (result, 2, alloc_int (val3)); return result; }
AL_API void AL_APIENTRY alGetListeneriv(ALenum eParam, ALint* plValues) { ALCcontext *Context; switch(eParam) { case AL_POSITION: case AL_VELOCITY: alGetListener3i(eParam, plValues+0, plValues+1, plValues+2); return; } Context = GetContextRef(); if(!Context) return; if(plValues) { switch(eParam) { case AL_ORIENTATION: LockContext(Context); // AT then UP plValues[0] = (ALint)Context->Listener.Forward[0]; plValues[1] = (ALint)Context->Listener.Forward[1]; plValues[2] = (ALint)Context->Listener.Forward[2]; plValues[3] = (ALint)Context->Listener.Up[0]; plValues[4] = (ALint)Context->Listener.Up[1]; plValues[5] = (ALint)Context->Listener.Up[2]; UnlockContext(Context); break; default: alSetError(Context, AL_INVALID_ENUM); break; } } else alSetError(Context, AL_INVALID_VALUE); ALCcontext_DecRef(Context); }
AL_API void AL_APIENTRY alGetListeneriv(ALenum param, ALint* values) { ALCcontext *Context; switch(param) { case AL_POSITION: case AL_VELOCITY: alGetListener3i(param, values+0, values+1, values+2); return; } Context = GetContextRef(); if(!Context) return; al_try { CHECK_VALUE(Context, values); switch(param) { case AL_ORIENTATION: LockContext(Context); // AT then UP values[0] = (ALint)Context->Listener->Forward[0]; values[1] = (ALint)Context->Listener->Forward[1]; values[2] = (ALint)Context->Listener->Forward[2]; values[3] = (ALint)Context->Listener->Up[0]; values[4] = (ALint)Context->Listener->Up[1]; values[5] = (ALint)Context->Listener->Up[2]; UnlockContext(Context); break; default: al_throwerr(Context, AL_INVALID_ENUM); } } al_endtry; ALCcontext_DecRef(Context); }
AL_API void AL_APIENTRY alGetListeneriv(ALenum param, ALint* values) { ALCcontext *context; switch(param) { case AL_POSITION: case AL_VELOCITY: alGetListener3i(param, values+0, values+1, values+2); return; } context = GetContextRef(); if(!context) return; ReadLock(&context->PropLock); if(!(values)) SET_ERROR_AND_GOTO(context, AL_INVALID_VALUE, done); switch(param) { case AL_ORIENTATION: // AT then UP values[0] = (ALint)context->Listener->Forward[0]; values[1] = (ALint)context->Listener->Forward[1]; values[2] = (ALint)context->Listener->Forward[2]; values[3] = (ALint)context->Listener->Up[0]; values[4] = (ALint)context->Listener->Up[1]; values[5] = (ALint)context->Listener->Up[2]; break; default: SET_ERROR_AND_GOTO(context, AL_INVALID_ENUM, done); } done: ReadUnlock(&context->PropLock); ALCcontext_DecRef(context); }
ALvoid CDECL wine_alGetListener3i(ALenum param, ALint *value1, ALint *value2, ALint *value3) { alGetListener3i(param, value1, value2, value3); }
//***************************************************************************** // alGetListener3i //***************************************************************************** // ALAPI ALvoid ALAPIENTRY alGetListener3i(ALenum param, ALint* v1, ALint* v2, ALint* v3) { AL_VOID_FXN(alGetListener3i(param, v1, v2, v3)); }