From 543cc6b75eac3dc8864c21ed65707e1affa2e78f Mon Sep 17 00:00:00 2001 From: rubidium Date: Sun, 17 May 2009 19:36:28 +0000 Subject: (svn r16345) -Codechange: replace the Sound(Entry) pool with a simple vector of SoundEntries. --- src/newgrf_sound.cpp | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/newgrf_sound.cpp b/src/newgrf_sound.cpp index 249ea03ba..ffdddd5ca 100644 --- a/src/newgrf_sound.cpp +++ b/src/newgrf_sound.cpp @@ -8,26 +8,21 @@ #include "newgrf_sound.h" #include "vehicle_base.h" #include "sound_func.h" +#include "core/smallvec_type.hpp" -static uint _sound_count = 0; -STATIC_OLD_POOL(SoundInternal, SoundEntry, 3, 1000, NULL, NULL) +static SmallVector _sounds; /* Allocate a new Sound */ SoundEntry *AllocateSound() { - if (_sound_count == GetSoundInternalPoolSize()) { - if (!_SoundInternal_pool.AddBlockToPool()) return NULL; - } - - return GetSoundInternal(_sound_count++); + return _sounds.Append(); } void InitializeSoundPool() { - _SoundInternal_pool.CleanPool(); - _sound_count = 0; + _sounds.Clear(); /* Copy original sound data to the pool */ SndCopyToPool(); @@ -36,14 +31,14 @@ void InitializeSoundPool() SoundEntry *GetSound(SoundID index) { - if (index >= GetNumSounds()) return NULL; - return GetSoundInternal(index); + if (index >= _sounds.Length()) return NULL; + return &_sounds[index]; } uint GetNumSounds() { - return _sound_count; + return _sounds.Length(); } -- cgit v1.2.3-54-g00ecf