17 #ifndef OVERLAYMANAGER_H
18 #define OVERLAYMANAGER_H
21 #include "itkEventObject.h"
25 #include <itkLightObject.h>
26 #include <vtkSmartPointer.h>
44 typedef std::map<const std::string, AbstractOverlayLayouter::Pointer>
LayouterMap;
50 void AddOverlay(const
Overlay::
Pointer &overlay,
bool ForceInForeground = true);
51 void AddOverlay(const
Overlay::
Pointer &overlay, BaseRenderer *renderer,
bool ForceInForeground = true);
55 void RemoveAllOverlays();
58 void SetLayouter(
Overlay *overlay, const
std::
string &identifier, BaseRenderer *renderer);
61 void UpdateLayouts(BaseRenderer *renderer);
69 void AddBaseRenderer(BaseRenderer *renderer);
72 void UpdateOverlays(BaseRenderer *baseRenderer);
74 void RemoveBaseRenderer(
mitk::BaseRenderer *renderer);
76 void RemoveAllBaseRenderers();
78 const OverlaySet &GetAllOverlays();
89 OverlaySet m_OverlaySet;
91 BaseRendererSet m_BaseRendererSet;
93 LayouterRendererMap m_LayouterMap;
95 ForegroundRendererMap m_ForegroundRenderer;
98 OverlayManager(const OverlayManager &);
101 OverlayManager &operator=(const OverlayManager &);
106 #endif // OVERLAYMANAGER_H
itkEventMacroDeclaration(OverlayAddEvent, itk::AnyEvent) class BaseRenderer
std::map< const BaseRenderer *, LayouterMap > LayouterRendererMap
DataCollection - Class to facilitate loading/accessing structured data.
std::set< Overlay::Pointer > OverlaySet
std::map< const BaseRenderer *, vtkSmartPointer< vtkRenderer > > ForegroundRendererMap
#define mitkClassMacroItkParent(className, SuperClassName)
Baseclass of Overlay layouters.
std::map< const std::string, AbstractOverlayLayouter::Pointer > LayouterMap
std::set< BaseRenderer * > BaseRendererSet
Base class for all overlays.
The OverlayManager updates and manages Overlays and the respective Layouters.