m_active_object_messages is used like a queue. Use std::queue instead of std::list. Also rename to m_active_object_messages_queue

This commit is contained in:
Loic Blot 2015-04-21 23:26:34 +02:00
parent 436cb468e9
commit 972d17baea
2 changed files with 6 additions and 5 deletions

View File

@ -1238,7 +1238,7 @@ void ServerEnvironment::step(float dtime)
// Read messages from object
while(!obj->m_messages_out.empty())
{
m_active_object_messages.push_back(
m_active_object_messages_queue.push(
obj->m_messages_out.front());
obj->m_messages_out.pop();
}
@ -1458,11 +1458,11 @@ void ServerEnvironment::getRemovedActiveObjects(v3s16 pos, s16 radius,
ActiveObjectMessage ServerEnvironment::getActiveObjectMessage()
{
if(m_active_object_messages.empty())
if(m_active_object_messages_queue.empty())
return ActiveObjectMessage(0);
ActiveObjectMessage message = m_active_object_messages.front();
m_active_object_messages.pop_front();
ActiveObjectMessage message = m_active_object_messages_queue.front();
m_active_object_messages_queue.pop();
return message;
}

View File

@ -33,6 +33,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <set>
#include <list>
#include <map>
#include <queue>
#include "irr_v3d.h"
#include "activeobject.h"
#include "util/numeric.h"
@ -378,7 +379,7 @@ private:
// Active object list
std::map<u16, ServerActiveObject*> m_active_objects;
// Outgoing network message buffer for active objects
std::list<ActiveObjectMessage> m_active_object_messages;
std::queue<ActiveObjectMessage> m_active_object_messages_queue;
// Some timers
float m_send_recommended_timer;
IntervalLimiter m_object_management_interval;