[Avida-cvs] [avida-svn] r484 - development/source/drivers
brysonda@myxo.css.msu.edu
brysonda at myxo.css.msu.edu
Sun Feb 26 08:46:39 PST 2006
Author: brysonda
Date: 2006-02-26 11:46:39 -0500 (Sun, 26 Feb 2006)
New Revision: 484
Modified:
development/source/drivers/cDriverManager.cc
development/source/drivers/cDriverManager.h
Log:
Move usage of static member variable into implementation file to prevent unsafe cross translation unit inlining on win32.
Modified: development/source/drivers/cDriverManager.cc
===================================================================
--- development/source/drivers/cDriverManager.cc 2006-02-26 16:44:42 UTC (rev 483)
+++ development/source/drivers/cDriverManager.cc 2006-02-26 16:46:39 UTC (rev 484)
@@ -46,3 +46,24 @@
{
delete m_dm;
}
+
+void cDriverManager::Register(cAvidaDriver* drv)
+{
+ if (m_dm) m_dm->m_adrvs.Push(drv);
+}
+
+void cDriverManager::Register(cWorldDriver* drv)
+{
+ if (m_dm) m_dm->m_wdrvs.Push(drv);
+}
+
+void cDriverManager::Unregister(cAvidaDriver* drv)
+{
+ if (m_dm) m_dm->m_adrvs.Remove(drv);
+}
+
+void cDriverManager::Unregister(cWorldDriver* drv)
+{
+ if (m_dm) m_dm->m_wdrvs.Remove(drv);
+}
+
Modified: development/source/drivers/cDriverManager.h
===================================================================
--- development/source/drivers/cDriverManager.h 2006-02-26 16:44:42 UTC (rev 483)
+++ development/source/drivers/cDriverManager.h 2006-02-26 16:46:39 UTC (rev 484)
@@ -35,11 +35,11 @@
static void Initialize(); // initialize static driver manager. This method is NOT thread-safe.
static void Destroy(); // destory the driver manager, and all registered drivers. Registered with atexit().
- static void Register(cAvidaDriver* drv) { if (m_dm) m_dm->m_adrvs.Push(drv); }
- static void Register(cWorldDriver* drv) { if (m_dm) m_dm->m_wdrvs.Push(drv); }
+ static void Register(cAvidaDriver* drv);
+ static void Register(cWorldDriver* drv);
- static void Unregister(cAvidaDriver* drv) { if (m_dm) m_dm->m_adrvs.Remove(drv); }
- static void Unregister(cWorldDriver* drv) { if (m_dm) m_dm->m_wdrvs.Remove(drv); }
+ static void Unregister(cAvidaDriver* drv);
+ static void Unregister(cWorldDriver* drv);
};
#endif
More information about the Avida-cvs
mailing list