From: <yx...@us...> - 2010-12-17 00:21:46
|
Revision: 234 http://simspark.svn.sourceforge.net/simspark/?rev=234&view=rev Author: yxu Date: 2010-12-17 00:21:40 +0000 (Fri, 17 Dec 2010) Log Message: ----------- render the image of camera in RenderControl Modified Paths: -------------- trunk/spark/plugin/imageperceptor/imageperceptor.cpp trunk/spark/plugin/imageperceptor/imageperceptor.h Modified: trunk/spark/plugin/imageperceptor/imageperceptor.cpp =================================================================== --- trunk/spark/plugin/imageperceptor/imageperceptor.cpp 2010-12-17 00:21:21 UTC (rev 233) +++ trunk/spark/plugin/imageperceptor/imageperceptor.cpp 2010-12-17 00:21:40 UTC (rev 234) @@ -50,13 +50,21 @@ } mRender->SetCamera(mCamera); - AddChildReference(mRender); + + RegisterCachedPath(mRenderControl, "/sys/server/simulation/RenderControl"); + + if (mRenderControl.expired()) + { + GetLog()->Error() + << "(ImagePerceptor) ERROR: RenderControl not found\n"; + } else + { + mRenderControl->AddChildReference(mRender); + } } bool ImagePerceptor::Percept(boost::shared_ptr<PredicateList> predList) -{ - mRender->Render(); - +{ Predicate &predicate = predList->AddPredicate(); predicate.name = "IMG"; predicate.parameter.Clear(); Modified: trunk/spark/plugin/imageperceptor/imageperceptor.h =================================================================== --- trunk/spark/plugin/imageperceptor/imageperceptor.h 2010-12-17 00:21:21 UTC (rev 233) +++ trunk/spark/plugin/imageperceptor/imageperceptor.h 2010-12-17 00:21:40 UTC (rev 234) @@ -21,9 +21,10 @@ #ifndef IMAGEPERCEPTOR_H #define IMAGEPERCEPTOR_H +#include <libb64/encode.h> #include <oxygen/agentaspect/perceptor.h> #include <oxygen/sceneserver/camera.h> -#include <libb64/encode.h> +#include <kerosin/renderserver/rendercontrol.h> #include "imagerender.h" class ImagePerceptor : public oxygen::Perceptor @@ -50,6 +51,8 @@ boost::shared_ptr<ImageRender> mRender; + zeitgeist::Leaf::CachedPath<kerosin::RenderControl> mRenderControl; + base64::Encoder mB64Encoder; }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |