AL_API void AL_APIENTRY alGetInteger64vSOFT(ALenum pname, ALint64SOFT *values) { ALCcontext *context; if(values) { switch(pname) { case AL_DOPPLER_FACTOR: case AL_DOPPLER_VELOCITY: case AL_DISTANCE_MODEL: case AL_SPEED_OF_SOUND: case AL_DEFERRED_UPDATES_SOFT: case AL_GAIN_LIMIT_SOFT: case AL_NUM_RESAMPLERS_SOFT: case AL_DEFAULT_RESAMPLER_SOFT: values[0] = alGetInteger64SOFT(pname); return; } } context = GetContextRef(); if(!context) return; switch(pname) { default: SET_ERROR_AND_GOTO(context, AL_INVALID_ENUM, done); } done: ALCcontext_DecRef(context); }
AL_API void AL_APIENTRY alGetInteger64vSOFT(ALenum pname, ALint64SOFT *values) { ALCcontext *context; ALCdevice *device; MidiSynth *synth; ALsizei i; if(values) { switch(pname) { case AL_DOPPLER_FACTOR: case AL_DOPPLER_VELOCITY: case AL_DISTANCE_MODEL: case AL_SPEED_OF_SOUND: case AL_DEFERRED_UPDATES_SOFT: case AL_MIDI_CLOCK_SOFT: case AL_SOUNDFONTS_SIZE_SOFT: case AL_MIDI_STATE_SOFT: values[0] = alGetInteger64SOFT(pname); return; } } context = GetContextRef(); if(!context) return; switch(pname) { case AL_SOUNDFONTS_SOFT: device = context->Device; synth = device->Synth; if(synth->NumSoundfonts > 0) { if(!(values)) SET_ERROR_AND_GOTO(context, AL_INVALID_VALUE, done); for(i = 0;i < synth->NumSoundfonts;i++) values[i] = (ALint64SOFT)synth->Soundfonts[i]->id; } break; default: SET_ERROR_AND_GOTO(context, AL_INVALID_ENUM, done); } done: ALCcontext_DecRef(context); }