From feec302053f9726165db7efb292a5fee59501450 Mon Sep 17 00:00:00 2001 From: djairoh Date: Sun, 5 May 2024 08:29:55 +0200 Subject: [PATCH] added addObserver function to layer --- vtk/src/helperClasses/Layer.cpp | 7 +++++++ vtk/src/helperClasses/Layer.h | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/vtk/src/helperClasses/Layer.cpp b/vtk/src/helperClasses/Layer.cpp index 68476ac..f5a4a50 100644 --- a/vtk/src/helperClasses/Layer.cpp +++ b/vtk/src/helperClasses/Layer.cpp @@ -1,4 +1,6 @@ #include "Layer.h" +#include +#include using std::string; @@ -8,3 +10,8 @@ vtkSmartPointer Layer::getLayer() { void Layer::updateData(int t) { } + + +void Layer::addObserver(const char *event, vtkCommand *observer) { + this->getLayer()->GetRenderWindow()->GetInteractor()->AddObserver(event, observer); +} diff --git a/vtk/src/helperClasses/Layer.h b/vtk/src/helperClasses/Layer.h index 7e418b8..5a357c5 100644 --- a/vtk/src/helperClasses/Layer.h +++ b/vtk/src/helperClasses/Layer.h @@ -1,6 +1,7 @@ #ifndef LAYER_H #define LAYER_H +#include #include /** This class represents one abstract layer to be rendered to VTK. @@ -21,6 +22,12 @@ public: * @param t : the timestamp which the data should reflect. */ virtual void updateData(int t); + + /** Adds an observer to the renderWindowinteractor within which this layer is active. + * @param event : the specific event type to subscribe to (see the vtkCommand::EventIds enum) + * @param observer : the observer to add. + */ + virtual void addObserver(const char *event, vtkCommand *observer); }; #endif