diff options
author | Chris Robinson <[email protected]> | 2018-11-22 22:53:22 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2018-11-22 22:53:22 -0800 |
commit | 438e626993fe86831b666a42b5f90731d5c26aeb (patch) | |
tree | 9fb4dc49e8dc1d5bc43a7f4e8c3986db4ec4f972 /OpenAL32/Include/alMain.h | |
parent | 976e49711b47d6c742995986e976275badb5c9f0 (diff) |
Avoid a couple explicit loops
Diffstat (limited to 'OpenAL32/Include/alMain.h')
-rw-r--r-- | OpenAL32/Include/alMain.h | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h index efec58a0..1a2f7d8d 100644 --- a/OpenAL32/Include/alMain.h +++ b/OpenAL32/Include/alMain.h @@ -20,6 +20,7 @@ #include <vector> #include <string> #include <chrono> +#include <algorithm> #include "AL/al.h" #include "AL/alc.h" @@ -822,15 +823,11 @@ void SetDefaultWFXChannelOrder(ALCdevice *device); const ALCchar *DevFmtTypeString(enum DevFmtType type); const ALCchar *DevFmtChannelsString(enum DevFmtChannels chans); -inline ALint GetChannelIndex(const enum Channel names[MAX_OUTPUT_CHANNELS], enum Channel chan) +inline ALint GetChannelIndex(const enum Channel (&names)[MAX_OUTPUT_CHANNELS], enum Channel chan) { - ALint i; - for(i = 0;i < MAX_OUTPUT_CHANNELS;i++) - { - if(names[i] == chan) - return i; - } - return -1; + auto iter = std::find(std::begin(names), std::end(names), chan); + if(iter == std::end(names)) return -1; + return std::distance(names, iter); } /** * GetChannelIdxByName |