From 6a1670dbc31cc0e44178bbd9ad34ff0d5981a060 Mon Sep 17 00:00:00 2001 From: Ilya Zhuravlev Date: Thu, 20 Dec 2012 21:19:49 +0400 Subject: Migrate to STL containers/algorithms. --- src/clientmap.cpp | 55 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 27 deletions(-) (limited to 'src/clientmap.cpp') diff --git a/src/clientmap.cpp b/src/clientmap.cpp index aa92dfdee..c08068367 100644 --- a/src/clientmap.cpp +++ b/src/clientmap.cpp @@ -30,6 +30,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "profiler.h" #include "settings.h" #include "util/mathconstants.h" +#include #define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")" @@ -83,7 +84,7 @@ MapSector * ClientMap::emergeSector(v2s16 p2d) { //JMutexAutoLock lock(m_sector_mutex); // Bulk comment-out - m_sectors.insert(p2d, sector); + m_sectors[p2d] = sector; } return sector; @@ -164,11 +165,11 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) INodeDefManager *nodemgr = m_gamedef->ndef(); - for(core::map::Iterator - i = m_drawlist.getIterator(); - i.atEnd() == false; i++) + for(std::map::iterator + i = m_drawlist.begin(); + i != m_drawlist.end(); ++i) { - MapBlock *block = i.getNode()->getValue(); + MapBlock *block = i->second; block->refDrop(); } m_drawlist.clear(); @@ -215,11 +216,11 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) // Blocks from which stuff was actually drawn //u32 blocks_without_stuff = 0; - for(core::map::Iterator - si = m_sectors.getIterator(); - si.atEnd() == false; si++) + for(std::map::iterator + si = m_sectors.begin(); + si != m_sectors.end(); ++si) { - MapSector *sector = si.getNode()->getValue(); + MapSector *sector = si->second; v2s16 sp = sector->getPos(); if(m_control.range_all == false) @@ -231,7 +232,7 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) continue; } - core::list< MapBlock * > sectorblocks; + std::list< MapBlock * > sectorblocks; sector->getBlocks(sectorblocks); /* @@ -240,7 +241,7 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) u32 sector_blocks_drawn = 0; - core::list< MapBlock * >::Iterator i; + std::list< MapBlock * >::iterator i; for(i=sectorblocks.begin(); i!=sectorblocks.end(); i++) { MapBlock *block = *i; @@ -350,7 +351,7 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) } // foreach sectorblocks if(sector_blocks_drawn != 0) - m_last_drawn_sectors[sp] = true; + m_last_drawn_sectors.insert(sp); } m_control.blocks_would_have_drawn = blocks_would_have_drawn; @@ -368,12 +369,12 @@ void ClientMap::updateDrawList(video::IVideoDriver* driver) struct MeshBufList { video::SMaterial m; - core::list bufs; + std::list bufs; }; struct MeshBufListList { - core::list lists; + std::list lists; void clear() { @@ -382,8 +383,8 @@ struct MeshBufListList void add(scene::IMeshBuffer *buf) { - for(core::list::Iterator i = lists.begin(); - i != lists.end(); i++){ + for(std::list::iterator i = lists.begin(); + i != lists.end(); ++i){ MeshBufList &l = *i; if(l.m == buf->getMaterial()){ l.bufs.push_back(buf); @@ -487,11 +488,11 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) MeshBufListList drawbufs; - for(core::map::Iterator - i = m_drawlist.getIterator(); - i.atEnd() == false; i++) + for(std::map::iterator + i = m_drawlist.begin(); + i != m_drawlist.end(); ++i) { - MapBlock *block = i.getNode()->getValue(); + MapBlock *block = i->second; // If the mesh of the block happened to get deleted, ignore it if(block->mesh == NULL) @@ -569,11 +570,11 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) } } - core::list &lists = drawbufs.lists; + std::list &lists = drawbufs.lists; int timecheck_counter = 0; - for(core::list::Iterator i = lists.begin(); - i != lists.end(); i++) + for(std::list::iterator i = lists.begin(); + i != lists.end(); ++i) { { timecheck_counter++; @@ -595,8 +596,8 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) driver->setMaterial(list.m); - for(core::list::Iterator j = list.bufs.begin(); - j != list.bufs.end(); j++) + for(std::list::iterator j = list.bufs.begin(); + j != list.bufs.end(); ++j) { scene::IMeshBuffer *buf = *j; driver->drawMeshBuffer(buf); @@ -769,7 +770,7 @@ int ClientMap::getBackgroundBrightness(float max_d, u32 daylight_factor, float sunlight_min_d = max_d*0.8; if(sunlight_min_d > 35*BS) sunlight_min_d = 35*BS; - core::array values; + std::vector values; for(u32 i=0; i= 10) num_values_to_use -= num_values_to_use/2; -- cgit v1.2.3