21#ifndef __vtkMRMLLayerDisplayableManager_h
22#define __vtkMRMLLayerDisplayableManager_h
24#include "vtkSlicerLayerDMModuleMRMLDisplayableManagerExport.h"
30#include <vtkSmartPointer.h>
49 void PrintSelf(ostream& os, vtkIndent indent)
override;
102 vtkSmartPointer<vtkMRMLLayerDMPipelineManager> PipelineManager;
vtkMRMLAbstractDisplayableManager()
Factory where displayable manager classes are registered.
Class responsible for handling adding / updating / removing pipelines depending on nodes added / remo...
Interface for the layered displayable manager pipelines.
void PrintSelf(ostream &os, vtkIndent indent) override
~vtkMRMLLayerDisplayableManager() override=default
static void RegisterInDefaultViews()
Register the DM in the 2D and 3D view factories.
bool CanProcessInteractionEvent(vtkMRMLInteractionEventData *eventData, double &distance2) override
static void RenderWindowBufferToImage(vtkRenderWindow *window, const vtkSmartPointer< vtkImageData > &imageData)
vtkMRMLLayerDisplayableManager()
void SetHasFocus(bool hasFocus, vtkMRMLInteractionEventData *eventData) override
Set if the widget gets/loses focus (interaction events are processed by this displayable manager).
vtkSmartPointer< vtkMRMLLayerDMPipeline > GetNodePipeline(vtkMRMLNode *node) const
vtkMRMLLayerDisplayableManager(const vtkMRMLLayerDisplayableManager &)=delete
void UpdateFromMRML() override
void OnMRMLSceneNodeAdded(vtkMRMLNode *node) override
int GetMouseCursor() override
Displayable manager returns ID of the mouse cursor shape that should be displayed.
bool ProcessInteractionEvent(vtkMRMLInteractionEventData *eventData) override
void OnMRMLSceneStartBatchProcess() override
static vtkMRMLLayerDisplayableManager * New()
void SetRenderer(vtkRenderer *newRenderer) override
void operator=(const vtkMRMLLayerDisplayableManager &)=delete
static vtkSmartPointer< vtkImageData > RenderWindowBufferToImage(vtkRenderWindow *window)
void OnMRMLSceneEndBatchProcess() override
static bool IsRegisteredInFactory(vtkMRMLDisplayableManagerFactory *factory)
true if the input factory is defined and displayable manager is present in the input factory
void UnobserveMRMLScene() override
void OnMRMLSceneNodeRemoved(vtkMRMLNode *node) override
void OnMRMLDisplayableNodeModifiedEvent(vtkObject *caller) override
static void RegisterInFactory(vtkMRMLDisplayableManagerFactory *factory)
Register the Displayable Manager in the given input factory if it's not already registered.
Abstract Superclass for all specific types of MRML nodes.