Skip to content

Commit

Permalink
Replace std::list by std::vector into timerUpdate calls
Browse files Browse the repository at this point in the history
  • Loading branch information
nerzhul committed Feb 17, 2015
1 parent 24315db commit 3c91ad8
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 10 deletions.
8 changes: 4 additions & 4 deletions src/client.cpp
Expand Up @@ -434,7 +434,7 @@ void Client::step(float dtime)
const float map_timer_and_unload_dtime = 5.25;
if(m_map_timer_and_unload_interval.step(dtime, map_timer_and_unload_dtime)) {
ScopeProfiler sp(g_profiler, "Client: map timer and unload");
std::list<v3s16> deleted_blocks;
std::vector<v3s16> deleted_blocks;
m_env.getMap().timerUpdate(map_timer_and_unload_dtime,
g_settings->getFloat("client_unload_unused_data_timeout"),
&deleted_blocks);
Expand All @@ -444,8 +444,8 @@ void Client::step(float dtime)
NOTE: This loop is intentionally iterated the way it is.
*/

std::list<v3s16>::iterator i = deleted_blocks.begin();
std::list<v3s16> sendlist;
std::vector<v3s16>::iterator i = deleted_blocks.begin();
std::vector<v3s16> sendlist;
for(;;) {
if(sendlist.size() == 255 || i == deleted_blocks.end()) {
if(sendlist.empty())
Expand All @@ -462,7 +462,7 @@ void Client::step(float dtime)
*pkt << (u8) sendlist.size();

u32 k = 0;
for(std::list<v3s16>::iterator
for(std::vector<v3s16>::iterator
j = sendlist.begin();
j != sendlist.end(); ++j) {
*pkt << *j;
Expand Down
7 changes: 3 additions & 4 deletions src/map.cpp
Expand Up @@ -1421,7 +1421,7 @@ bool Map::getDayNightDiff(v3s16 blockpos)
Updates usage timers
*/
void Map::timerUpdate(float dtime, float unload_timeout,
std::list<v3s16> *unloaded_blocks)
std::vector<v3s16> *unloaded_blocks)
{
bool save_before_unloading = (mapType() == MAPTYPE_SERVER);

Expand All @@ -1435,8 +1435,7 @@ void Map::timerUpdate(float dtime, float unload_timeout,

beginSave();
for(std::map<v2s16, MapSector*>::iterator si = m_sectors.begin();
si != m_sectors.end(); ++si)
{
si != m_sectors.end(); ++si) {
MapSector *sector = si->second;

bool all_blocks_deleted = true;
Expand Down Expand Up @@ -1506,7 +1505,7 @@ void Map::timerUpdate(float dtime, float unload_timeout,
}
}

void Map::unloadUnreferencedBlocks(std::list<v3s16> *unloaded_blocks)
void Map::unloadUnreferencedBlocks(std::vector<v3s16> *unloaded_blocks)
{
timerUpdate(0.0, -1.0, unloaded_blocks);
}
Expand Down
4 changes: 2 additions & 2 deletions src/map.h
Expand Up @@ -277,13 +277,13 @@ class Map /*: public NodeContainer*/
Saves modified blocks before unloading on MAPTYPE_SERVER.
*/
void timerUpdate(float dtime, float unload_timeout,
std::list<v3s16> *unloaded_blocks=NULL);
std::vector<v3s16> *unloaded_blocks=NULL);

/*
Unloads all blocks with a zero refCount().
Saves modified blocks before unloading on MAPTYPE_SERVER.
*/
void unloadUnreferencedBlocks(std::list<v3s16> *unloaded_blocks=NULL);
void unloadUnreferencedBlocks(std::vector<v3s16> *unloaded_blocks=NULL);

// Deletes sectors and their blocks from memory
// Takes cache into account
Expand Down

0 comments on commit 3c91ad8

Please sign in to comment.