From: <axl...@us...> - 2008-12-13 00:13:51
|
Revision: 71 http://hgengine.svn.sourceforge.net/hgengine/?rev=71&view=rev Author: axlecrusher Date: 2008-12-13 00:13:48 +0000 (Sat, 13 Dec 2008) Log Message: ----------- experimental threaded update Modified Paths: -------------- Mercury2/src/MercuryNode.cpp Mercury2/src/MercuryNode.h Modified: Mercury2/src/MercuryNode.cpp =================================================================== --- Mercury2/src/MercuryNode.cpp 2008-12-13 00:11:10 UTC (rev 70) +++ Mercury2/src/MercuryNode.cpp 2008-12-13 00:13:48 UTC (rev 71) @@ -1,5 +1,6 @@ #include <MercuryNode.h> #include <MercuryUtil.h> +#include <UpdateThreader.h> using namespace std; @@ -88,6 +89,16 @@ (*i)->RecursiveUpdate(dTime); } +void MercuryNode::ThreadedUpdate(float dTime) +{ + //XXX EXPERIMENTAL + Update(dTime); + + list< MercuryNode* >::iterator i; + for (i = m_children.begin(); i != m_children.end(); ++i ) + UpdateThreader::GetInstance().AddNode( *i ); +} + void MercuryNode::LoadFromXML(const XMLNode& node) { //Not much to do here except run through all the children nodes Modified: Mercury2/src/MercuryNode.h =================================================================== --- Mercury2/src/MercuryNode.h 2008-12-13 00:11:10 UTC (rev 70) +++ Mercury2/src/MercuryNode.h 2008-12-13 00:13:48 UTC (rev 71) @@ -39,6 +39,7 @@ virtual void Update(float dTime) {}; void RecursiveUpdate(float dTime); + void ThreadedUpdate(float dTime); ///Run on parent when a child is added virtual void OnAddChild() {}; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |