DragonNest/Common/FMODEngine/FMOD_static/src/fmod_system.cpp

1694 lines
32 KiB
C++
Raw Normal View History

2024-12-19 09:48:26 +08:00
/*$ preserve start $*/
#include "fmod_settings.h"
#include "fmod_systemi.h"
#include "fmod_cmdlog.h"
namespace FMOD
{
//AJS
/*AJS
#ifdef FMOD_SUPPORT_CMDLOG
result = FMOD_CmdLog_Release();
if (result != FMOD_OK)
{
return result;
}
#endif
AJS*/
/*$ preserve end $*/
FMOD_RESULT System::release()
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->release();
}
}
FMOD_RESULT System::setOutput(FMOD_OUTPUTTYPE output)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setOutput(output);
}
}
FMOD_RESULT System::getOutput(FMOD_OUTPUTTYPE *output)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getOutput(output);
}
}
FMOD_RESULT System::getNumDrivers(int *numdrivers)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getNumDrivers(numdrivers);
}
}
FMOD_RESULT System::getDriverInfo(int id, char *name, int namelen, FMOD_GUID *guid)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDriverInfo(id, name, namelen, guid);
}
}
FMOD_RESULT System::getDriverInfoW(int id, short *name, int namelen, FMOD_GUID *guid)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDriverInfoW(id, name, namelen, guid);
}
}
FMOD_RESULT System::getDriverCaps(int id, FMOD_CAPS *caps, int *minfrequency, int *maxfrequency, FMOD_SPEAKERMODE *controlpanelspeakermode)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDriverCaps(id, caps, minfrequency, maxfrequency, controlpanelspeakermode);
}
}
FMOD_RESULT System::setDriver(int driver)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setDriver(driver);
}
}
FMOD_RESULT System::getDriver(int *driver)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDriver(driver);
}
}
FMOD_RESULT System::setHardwareChannels(int min2d, int max2d, int min3d, int max3d)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setHardwareChannels(min2d, max2d, min3d, max3d);
}
}
FMOD_RESULT System::setSoftwareChannels(int numsoftwarechannels)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setSoftwareChannels(numsoftwarechannels);
}
}
FMOD_RESULT System::getSoftwareChannels(int *numsoftwarechannels)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getSoftwareChannels(numsoftwarechannels);
}
}
FMOD_RESULT System::setSoftwareFormat(int samplerate, FMOD_SOUND_FORMAT format, int numoutputchannels, int maxinputchannels, FMOD_DSP_RESAMPLER resamplemethod)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setSoftwareFormat(samplerate, format, numoutputchannels, maxinputchannels, resamplemethod);
}
}
FMOD_RESULT System::getSoftwareFormat(int *samplerate, FMOD_SOUND_FORMAT *format, int *numoutputchannels, int *maxinputchannels, FMOD_DSP_RESAMPLER *resamplemethod, int *bits)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getSoftwareFormat(samplerate, format, numoutputchannels, maxinputchannels, resamplemethod, bits);
}
}
FMOD_RESULT System::setDSPBufferSize(unsigned int bufferlength, int numbuffers)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setDSPBufferSize(bufferlength, numbuffers);
}
}
FMOD_RESULT System::getDSPBufferSize(unsigned int *bufferlength, int *numbuffers)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDSPBufferSize(bufferlength, numbuffers);
}
}
FMOD_RESULT System::setFileSystem(FMOD_FILE_OPENCALLBACK useropen, FMOD_FILE_CLOSECALLBACK userclose, FMOD_FILE_READCALLBACK userread, FMOD_FILE_SEEKCALLBACK userseek, int blockalign)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setFileSystem(useropen, userclose, userread, userseek, blockalign);
}
}
FMOD_RESULT System::attachFileSystem(FMOD_FILE_OPENCALLBACK useropen, FMOD_FILE_CLOSECALLBACK userclose, FMOD_FILE_READCALLBACK userread, FMOD_FILE_SEEKCALLBACK userseek)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->attachFileSystem(useropen, userclose, userread, userseek);
}
}
FMOD_RESULT System::setAdvancedSettings(FMOD_ADVANCEDSETTINGS *settings)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setAdvancedSettings(settings);
}
}
FMOD_RESULT System::getAdvancedSettings(FMOD_ADVANCEDSETTINGS *settings)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getAdvancedSettings(settings);
}
}
FMOD_RESULT System::setSpeakerMode(FMOD_SPEAKERMODE speakermode)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setSpeakerMode(speakermode);
}
}
FMOD_RESULT System::getSpeakerMode(FMOD_SPEAKERMODE *speakermode)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getSpeakerMode(speakermode);
}
}
FMOD_RESULT System::setCallback(FMOD_SYSTEM_CALLBACK callback)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setCallback(callback);
}
}
FMOD_RESULT System::setPluginPath(const char *path)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setPluginPath(path);
}
}
FMOD_RESULT System::loadPlugin(const char *filename, unsigned int *handle, unsigned int priority)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->loadPlugin(filename, handle, priority);
}
}
FMOD_RESULT System::unloadPlugin(unsigned int handle)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->unloadPlugin(handle);
}
}
FMOD_RESULT System::getNumPlugins(FMOD_PLUGINTYPE plugintype, int *numplugins)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getNumPlugins(plugintype, numplugins);
}
}
FMOD_RESULT System::getPluginHandle(FMOD_PLUGINTYPE plugintype, int index, unsigned int *handle)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getPluginHandle(plugintype, index, handle);
}
}
FMOD_RESULT System::getPluginInfo(unsigned int handle, FMOD_PLUGINTYPE *plugintype, char *name, int namelen, unsigned int *version)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getPluginInfo(handle, plugintype, name, namelen, version);
}
}
FMOD_RESULT System::setOutputByPlugin(unsigned int handle)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setOutputByPlugin(handle);
}
}
FMOD_RESULT System::getOutputByPlugin(unsigned int *handle)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getOutputByPlugin(handle);
}
}
FMOD_RESULT System::createDSPByPlugin(unsigned int handle, DSP **dsp)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createDSPByPlugin(handle, (DSPI **)dsp);
}
}
FMOD_RESULT System::createCodec(FMOD_CODEC_DESCRIPTION *description, unsigned int priority)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createCodec(description, priority);
}
}
FMOD_RESULT System::init(int maxchannels, FMOD_INITFLAGS flags, void *extradriverdata)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->init(maxchannels, flags, extradriverdata);
}
}
FMOD_RESULT System::close()
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->close();
}
}
FMOD_RESULT System::update()
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->update();
}
}
FMOD_RESULT System::set3DSettings(float dopplerscale, float distancefactor, float rolloffscale)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->set3DSettings(dopplerscale, distancefactor, rolloffscale);
}
}
FMOD_RESULT System::get3DSettings(float *dopplerscale, float *distancefactor, float *rolloffscale)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->get3DSettings(dopplerscale, distancefactor, rolloffscale);
}
}
FMOD_RESULT System::set3DNumListeners(int numlisteners)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->set3DNumListeners(numlisteners);
}
}
FMOD_RESULT System::get3DNumListeners(int *numlisteners)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->get3DNumListeners(numlisteners);
}
}
FMOD_RESULT System::set3DListenerAttributes(int listener, const FMOD_VECTOR *pos, const FMOD_VECTOR *vel, const FMOD_VECTOR *forward, const FMOD_VECTOR *up)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->set3DListenerAttributes(listener, pos, vel, forward, up);
}
}
FMOD_RESULT System::get3DListenerAttributes(int listener, FMOD_VECTOR *pos, FMOD_VECTOR *vel, FMOD_VECTOR *forward, FMOD_VECTOR *up)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->get3DListenerAttributes(listener, pos, vel, forward, up);
}
}
FMOD_RESULT System::set3DRolloffCallback(FMOD_3D_ROLLOFFCALLBACK callback)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->set3DRolloffCallback(callback);
}
}
FMOD_RESULT System::set3DSpeakerPosition(FMOD_SPEAKER speaker, float x, float y, bool active)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->set3DSpeakerPosition(speaker, x, y, active);
}
}
FMOD_RESULT System::get3DSpeakerPosition(FMOD_SPEAKER speaker, float *x, float *y, bool *active)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->get3DSpeakerPosition(speaker, x, y, active);
}
}
FMOD_RESULT System::setStreamBufferSize(unsigned int filebuffersize, FMOD_TIMEUNIT filebuffersizetype)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setStreamBufferSize(filebuffersize, filebuffersizetype);
}
}
FMOD_RESULT System::getStreamBufferSize(unsigned int *filebuffersize, FMOD_TIMEUNIT *filebuffersizetype)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getStreamBufferSize(filebuffersize, filebuffersizetype);
}
}
FMOD_RESULT System::getVersion(unsigned int *version)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getVersion(version);
}
}
FMOD_RESULT System::getOutputHandle(void **handle)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getOutputHandle(handle);
}
}
FMOD_RESULT System::getChannelsPlaying(int *channels)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getChannelsPlaying(channels);
}
}
FMOD_RESULT System::getHardwareChannels(int *num2d, int *num3d, int *total)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getHardwareChannels(num2d, num3d, total);
}
}
FMOD_RESULT System::getCPUUsage(float *dsp, float *stream, float *geometry, float *update, float *total)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getCPUUsage(dsp, stream, geometry, update, total);
}
}
FMOD_RESULT System::getSoundRAM(int *currentalloced, int *maxalloced, int *total)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getSoundRAM(currentalloced, maxalloced, total);
}
}
FMOD_RESULT System::getNumCDROMDrives(int *numdrives)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getNumCDROMDrives(numdrives);
}
}
FMOD_RESULT System::getCDROMDriveName(int drive, char *drivename, int drivenamelen, char *scsiname, int scsinamelen, char *devicename, int devicenamelen)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getCDROMDriveName(drive, drivename, drivenamelen, scsiname, scsinamelen, devicename, devicenamelen);
}
}
FMOD_RESULT System::getSpectrum(float *spectrumarray, int numvalues, int channeloffset, FMOD_DSP_FFT_WINDOW windowtype)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getSpectrum(spectrumarray, numvalues, channeloffset, windowtype);
}
}
FMOD_RESULT System::getWaveData(float *wavearray, int numvalues, int channeloffset)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getWaveData(wavearray, numvalues, channeloffset);
}
}
FMOD_RESULT System::createSound(const char *name_or_data, FMOD_MODE mode, FMOD_CREATESOUNDEXINFO *exinfo, Sound **sound)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createSound(name_or_data, mode, exinfo, (SoundI **)sound);
}
}
FMOD_RESULT System::createStream(const char *name_or_data, FMOD_MODE mode, FMOD_CREATESOUNDEXINFO *exinfo, Sound **sound)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createStream(name_or_data, mode, exinfo, (SoundI **)sound);
}
}
FMOD_RESULT System::createDSP(FMOD_DSP_DESCRIPTION *description, DSP **dsp)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createDSP(description, (DSPI **)dsp);
}
}
FMOD_RESULT System::createDSPByType(FMOD_DSP_TYPE type, DSP **dsp)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createDSPByType(type, (DSPI **)dsp);
}
}
FMOD_RESULT System::createChannelGroup(const char *name, ChannelGroup **channelgroup)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createChannelGroup(name, (ChannelGroupI **)channelgroup);
}
}
FMOD_RESULT System::createSoundGroup(const char *name, SoundGroup **soundgroup)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createSoundGroup(name, (SoundGroupI **)soundgroup);
}
}
FMOD_RESULT System::createReverb(Reverb **reverb)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createReverb((ReverbI **)reverb);
}
}
FMOD_RESULT System::playSound(FMOD_CHANNELINDEX channelid, Sound *sound, bool paused, Channel **channel)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->playSound(channelid, (SoundI *)sound, paused, (ChannelI **)channel);
}
}
FMOD_RESULT System::playDSP(FMOD_CHANNELINDEX channelid, DSP *dsp, bool paused, Channel **channel)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->playDSP(channelid, (DSPI *)dsp, paused, (ChannelI **)channel);
}
}
FMOD_RESULT System::getChannel(int channelid, Channel **channel)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getChannel(channelid, (ChannelI **)channel);
}
}
FMOD_RESULT System::getMasterChannelGroup(ChannelGroup **channelgroup)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getMasterChannelGroup((ChannelGroupI **)channelgroup);
}
}
FMOD_RESULT System::getMasterSoundGroup(SoundGroup **soundgroup)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getMasterSoundGroup((SoundGroupI **)soundgroup);
}
}
FMOD_RESULT System::setReverbProperties(const FMOD_REVERB_PROPERTIES *prop)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setReverbProperties(prop);
}
}
FMOD_RESULT System::getReverbProperties(FMOD_REVERB_PROPERTIES *prop)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getReverbProperties(prop);
}
}
FMOD_RESULT System::setReverbAmbientProperties(FMOD_REVERB_PROPERTIES *prop)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setReverbAmbientProperties(prop);
}
}
FMOD_RESULT System::getReverbAmbientProperties(FMOD_REVERB_PROPERTIES *prop)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getReverbAmbientProperties(prop);
}
}
FMOD_RESULT System::getDSPHead(DSP **dsp)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDSPHead((DSPI **)dsp);
}
}
FMOD_RESULT System::addDSP(DSP *dsp, DSPConnection **connection)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->addDSP((DSPI *)dsp, (DSPConnectionI **)connection);
}
}
FMOD_RESULT System::lockDSP()
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->lockDSP();
}
}
FMOD_RESULT System::unlockDSP()
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->unlockDSP();
}
}
FMOD_RESULT System::getDSPClock(unsigned int *hi, unsigned int *lo)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getDSPClock(hi, lo);
}
}
FMOD_RESULT System::getRecordNumDrivers(int *numdrivers)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getRecordNumDrivers(numdrivers);
}
}
FMOD_RESULT System::getRecordDriverInfo(int id, char *name, int namelen, FMOD_GUID *guid)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getRecordDriverInfo(id, name, namelen, guid);
}
}
FMOD_RESULT System::getRecordDriverInfoW(int id, short *name, int namelen, FMOD_GUID *guid)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getRecordDriverInfoW(id, name, namelen, guid);
}
}
FMOD_RESULT System::getRecordDriverCaps(int id, FMOD_CAPS *caps, int *minfrequency, int *maxfrequency)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getRecordDriverCaps(id, caps, minfrequency, maxfrequency);
}
}
FMOD_RESULT System::getRecordPosition(int id, unsigned int *position)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getRecordPosition(id, position);
}
}
FMOD_RESULT System::recordStart(int id, Sound *sound, bool loop)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->recordStart(id, (SoundI *)sound, loop);
}
}
FMOD_RESULT System::recordStop(int id)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->recordStop(id);
}
}
FMOD_RESULT System::isRecording(int id, bool *recording)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->isRecording(id, recording);
}
}
FMOD_RESULT System::createGeometry(int maxpolygons, int maxvertices, Geometry **geometry)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->createGeometry(maxpolygons, maxvertices, (GeometryI **)geometry);
}
}
FMOD_RESULT System::setGeometrySettings(float maxworldsize)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setGeometrySettings(maxworldsize);
}
}
FMOD_RESULT System::getGeometrySettings(float *maxworldsize)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getGeometrySettings(maxworldsize);
}
}
FMOD_RESULT System::loadGeometry(const void *data, int datasize, Geometry **geometry)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->loadGeometry(data, datasize, (GeometryI **)geometry);
}
}
FMOD_RESULT System::getGeometryOcclusion(const FMOD_VECTOR *listener, const FMOD_VECTOR *source, float *direct, float *reverb)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getGeometryOcclusion(listener, source, direct, reverb);
}
}
FMOD_RESULT System::setNetworkProxy(const char *proxy)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setNetworkProxy(proxy);
}
}
FMOD_RESULT System::getNetworkProxy(char *proxy, int proxylen)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getNetworkProxy(proxy, proxylen);
}
}
FMOD_RESULT System::setNetworkTimeout(int timeout)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setNetworkTimeout(timeout);
}
}
FMOD_RESULT System::getNetworkTimeout(int *timeout)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getNetworkTimeout(timeout);
}
}
FMOD_RESULT System::setUserData(void *_userdata)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->setUserData(_userdata);
}
}
FMOD_RESULT System::getUserData(void **_userdata)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getUserData(_userdata);
}
}
FMOD_RESULT System::getMemoryInfo(unsigned int memorybits, unsigned int event_memorybits, unsigned int *memoryused, FMOD_MEMORY_USAGE_DETAILS *memoryused_details)
{
FMOD_RESULT result;
SystemI *systemi;
result = SystemI::validate(this, &systemi);
if (result != FMOD_OK)
{
return result;
}
else
{
return systemi->getMemoryInfo(memorybits, event_memorybits, memoryused, memoryused_details);
}
}
/*$ preserve start $*/
}
/*$ preserve end $*/