(svn r17494) -Codechange: improve algorithmic complexitiy of Depot::GetByTile from O(n) to O(1)

This commit is contained in:
rubidium
2009-09-10 14:36:38 +00:00
parent 55ddce8da2
commit 751ea62f44
2 changed files with 5 additions and 25 deletions

View File

@@ -13,7 +13,7 @@
#define DEPOT_BASE_H
#include "tile_type.h"
#include "depot_type.h"
#include "depot_map.h"
#include "core/pool_type.hpp"
#include "town_type.h"
@@ -27,7 +27,10 @@ struct Depot : DepotPool::PoolItem<&_depot_pool> {
Depot(TileIndex xy = INVALID_TILE) : xy(xy) {}
~Depot();
static Depot *GetByTile(TileIndex tile);
static FORCEINLINE Depot *GetByTile(TileIndex tile)
{
return Depot::Get(GetDepotIndex(tile));
}
};
#define FOR_ALL_DEPOTS_FROM(var, start) FOR_ALL_ITEMS_FROM(Depot, depot_index, var, start)