Mercurial > hg > orthanc-stone
diff Framework/Scene2D/Internals/CompositorHelper.h @ 1211:d10d2acb8a02 broker
compositors do not keep a reference to the scene anymore
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 04 Dec 2019 16:47:21 +0100 |
parents | e4ac54cb8771 |
children | 0ca50d275b9a |
line wrap: on
line diff
--- a/Framework/Scene2D/Internals/CompositorHelper.h Wed Dec 04 16:13:10 2019 +0100 +++ b/Framework/Scene2D/Internals/CompositorHelper.h Wed Dec 04 16:47:21 2019 +0100 @@ -64,9 +64,9 @@ typedef std::map<int, Item*> Content; - const Scene2D& scene_; IRendererFactory& factory_; Content content_; + const Scene2D* lastScene_; // This is only a safeguard, don't use it! // Only valid during a call to Refresh() AffineTransform2D sceneTransform_; @@ -74,21 +74,22 @@ unsigned int canvasHeight_; protected: - virtual void Visit(const ISceneLayer& layer, + virtual void Visit(const Scene2D& scene, + const ISceneLayer& layer, uint64_t layerIdentifier, int depth); public: - CompositorHelper(const Scene2D& scene, - IRendererFactory& factory) : - scene_(scene), - factory_(factory) + CompositorHelper(IRendererFactory& factory) : + factory_(factory), + lastScene_(NULL) { } ~CompositorHelper(); - void Refresh(unsigned int canvasWidth, + void Refresh(const Scene2D& scene, + unsigned int canvasWidth, unsigned int canvasHeight); }; }