From: Markus R. <rol...@us...> - 2007-02-18 08:08:01
|
Update of /cvsroot/simspark/simspark/spark/spark In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv30902 Modified Files: Tag: WIN32 spark.cpp spark.h Log Message: - added ResetCached() and UpdateCached() Index: spark.cpp =================================================================== RCS file: /cvsroot/simspark/simspark/spark/spark/spark.cpp,v retrieving revision 1.3.2.1 retrieving revision 1.3.2.2 diff -C2 -d -r1.3.2.1 -r1.3.2.2 *** spark.cpp 15 Feb 2007 21:03:22 -0000 1.3.2.1 --- spark.cpp 18 Feb 2007 08:07:57 -0000 1.3.2.2 *************** *** 52,55 **** --- 52,60 ---- // reset shared ptr to objects in the zeitgeist hierarchy before // the zeitgeist core is shutdown + ResetCached(); + } + + void Spark::ResetCached() + { mLogServer.reset(); mScriptServer.reset(); *************** *** 58,69 **** } ! bool ! Spark::Init(int argc, char** argv) { mLogServer = mZeitgeist->GetCore()->GetLogServer(); if (mLogServer.get() == 0) { cerr << "(Spark) ERROR: LogServer not found\n"; ! return false; } --- 63,75 ---- } ! bool Spark::UpdateCached() { + bool ok = true; + mLogServer = mZeitgeist->GetCore()->GetLogServer(); if (mLogServer.get() == 0) { cerr << "(Spark) ERROR: LogServer not found\n"; ! ok = false; } *************** *** 72,86 **** { mLogServer->Error() << "(Spark) ERROR: ScriptServer not found\n"; ! return false; } - // run the spark init script - mZeitgeist->GetCore()->GetRoot()->GetScript()->RunInitScript - ( - "spark.rb", - "lib/spark", - ScriptServer::IS_COMMON - ); - mSceneServer = shared_dynamic_cast<SceneServer> (mZeitgeist->GetCore()->Get("/sys/server/scene")); --- 78,84 ---- { mLogServer->Error() << "(Spark) ERROR: ScriptServer not found\n"; ! ok = false; } mSceneServer = shared_dynamic_cast<SceneServer> (mZeitgeist->GetCore()->Get("/sys/server/scene")); *************** *** 89,93 **** { mLogServer->Error() << "(Spark) ERROR: SceneServer not found\n"; ! return false; } --- 87,91 ---- { mLogServer->Error() << "(Spark) ERROR: SceneServer not found\n"; ! ok = false; } *************** *** 98,104 **** { mLogServer->Error() << "(Spark) ERROR: SimulationServer not found\n"; ! return false; } // run the app defined init return InitApp(argc,argv); --- 96,118 ---- { mLogServer->Error() << "(Spark) ERROR: SimulationServer not found\n"; ! ok = false; } + return ok; + } + + bool + Spark::Init(int argc, char** argv) + { + // run the spark init script + mZeitgeist->GetCore()->GetScriptServer()->RunInitScript + ( + "spark.rb", + "lib/spark", + ScriptServer::IS_COMMON + ); + + UpdateCached(); + // run the app defined init return InitApp(argc,argv); Index: spark.h =================================================================== RCS file: /cvsroot/simspark/simspark/spark/spark/spark.h,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** spark.h 8 Mar 2006 18:17:03 -0000 1.3 --- spark.h 18 Feb 2007 08:07:57 -0000 1.3.2.1 *************** *** 72,75 **** --- 72,81 ---- bool Init(int argc, char** argv); + /** resets all cached object references */ + void ResetCached(); + + /** updated all cached object references */ + bool UpdateCached(); + // // user callbacks |