From: <he...@us...> - 2012-11-24 15:15:36
|
Revision: 327 http://simspark.svn.sourceforge.net/simspark/?rev=327&view=rev Author: hedayat Date: 2012-11-24 15:15:30 +0000 (Sat, 24 Nov 2012) Log Message: ----------- Scene parameters can be sent to SceneEffector now. Modified Paths: -------------- trunk/spark/ChangeLog trunk/spark/plugin/sceneeffector/sceneaction.h trunk/spark/plugin/sceneeffector/sceneeffector.cpp Modified: trunk/spark/ChangeLog =================================================================== --- trunk/spark/ChangeLog 2012-09-13 08:05:11 UTC (rev 326) +++ trunk/spark/ChangeLog 2012-11-24 15:15:30 UTC (rev 327) @@ -1,3 +1,9 @@ +2012-11-24 Hedayat Vatankhah <hed...@gm...> + + * plugin/sceneeffector/sceneaction.h: + * plugin/sceneeffector/sceneeffector.cpp: + - added the ability to receive and apply scene parameters + 2012-05-23 Hedayat Vatankhah <hed...@gm...> * lib/kerosin/CMakeLists.txt: Modified: trunk/spark/plugin/sceneeffector/sceneaction.h =================================================================== --- trunk/spark/plugin/sceneeffector/sceneaction.h 2012-09-13 08:05:11 UTC (rev 326) +++ trunk/spark/plugin/sceneeffector/sceneaction.h 2012-11-24 15:15:30 UTC (rev 327) @@ -24,20 +24,29 @@ #include <oxygen/gamecontrolserver/actionobject.h> #include <salt/vector.h> +#include <zeitgeist/parameterlist.h> class SceneAction : public oxygen::ActionObject { public: - SceneAction(const std::string& predicate, const std::string& scene) - : ActionObject(predicate), mScene(scene) {} + SceneAction(const std::string& predicate, const std::string& scene, + boost::shared_ptr<zeitgeist::ParameterList> parameters) + : ActionObject(predicate), mScene(scene), mParameters(parameters) {} virtual ~SceneAction() {} /** returns the stored scene name */ const std::string& GetScene() { return mScene; } + /** returns the stored scene parameters */ + const boost::shared_ptr<zeitgeist::ParameterList> &GetSceneParameters() + { return mParameters; } + protected: /** the name of the scene to be created by the SceneEffector */ std::string mScene; + + /** the parameters of the scene to be created by the SceneEffector */ + boost::shared_ptr<zeitgeist::ParameterList> mParameters; }; #endif // SCENEACTION_H Modified: trunk/spark/plugin/sceneeffector/sceneeffector.cpp =================================================================== --- trunk/spark/plugin/sceneeffector/sceneeffector.cpp 2012-09-13 08:05:11 UTC (rev 326) +++ trunk/spark/plugin/sceneeffector/sceneeffector.cpp 2012-11-24 15:15:30 UTC (rev 327) @@ -65,10 +65,12 @@ return; } - boost::shared_ptr<ParameterList> parameter(new ParameterList()); + string s; + sceneAction->GetSceneParameters()->GetValue(sceneAction->GetSceneParameters()->begin(), s); + GetLog()->Error() << "HHHHHH Params: " << s << endl; + aspect->ImportScene(sceneAction->GetScene(), + sceneAction->GetSceneParameters()); - aspect->ImportScene(sceneAction->GetScene(), parameter); - } boost::shared_ptr<ActionObject> @@ -89,5 +91,10 @@ return boost::shared_ptr<ActionObject>(); }; - return boost::shared_ptr<ActionObject>(new SceneAction(GetPredicate(),scene)); + boost::shared_ptr<ParameterList> parameters( + new ParameterList(predicate.parameter)); + parameters->Pop_Front(); + + return boost::shared_ptr<ActionObject>( + new SceneAction(GetPredicate(), scene, parameters)); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |