Slicer 5.13
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLLayerDMObjectEventObserver Class Reference

VTK object observer with one callback endpoint when an event is triggered. Can observe multiple objects and multiple events per object. More...

#include <Modules/Loadable/LayerDM/MRML/vtkMRMLLayerDMObjectEventObserver.h>

Inheritance diagram for vtkMRMLLayerDMObjectEventObserver:
Collaboration diagram for vtkMRMLLayerDMObjectEventObserver:

Classes

struct  UpdateGuard
 

Public Types

typedef vtkObject Superclass
 

Public Member Functions

void ClearCallback ()
 Forget the update callback.
 
virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
bool IsBlocked () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
void RemoveObservations (vtkObject *obj)
 
bool SetBlocked (bool isBlocked)
 
bool UpdateObservation (vtkObject *prevObj, vtkObject *obj, unsigned long event=vtkCommand::ModifiedEvent)
 
bool UpdateObservation (vtkObject *prevObj, vtkObject *obj, const std::vector< unsigned long > &events)
 
void SetUpdateCallback (const std::function< void(vtkObject *node)> &callback)
 
void SetUpdateCallback (const std::function< void(vtkObject *node, unsigned long eventId)> &callback)
 
void SetUpdateCallback (const std::function< void(vtkObject *node, unsigned long eventId, void *callData)> &callback)
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkMRMLLayerDMObjectEventObserver * New ()
 
static vtkMRMLLayerDMObjectEventObserver * SafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkMRMLLayerDMObjectEventObserver ()
 
 ~vtkMRMLLayerDMObjectEventObserver () override
 

Detailed Description

VTK object observer with one callback endpoint when an event is triggered. Can observe multiple objects and multiple events per object.

Depending on the callback used, event id and call data can either be forwarded or ignored.

Definition at line 46 of file vtkMRMLLayerDMObjectEventObserver.h.

Member Typedef Documentation

◆ Superclass

Constructor & Destructor Documentation

◆ vtkMRMLLayerDMObjectEventObserver()

vtkMRMLLayerDMObjectEventObserver::vtkMRMLLayerDMObjectEventObserver ( )
protected

◆ ~vtkMRMLLayerDMObjectEventObserver()

vtkMRMLLayerDMObjectEventObserver::~vtkMRMLLayerDMObjectEventObserver ( )
overrideprotected

Member Function Documentation

◆ ClearCallback()

void vtkMRMLLayerDMObjectEventObserver::ClearCallback ( )

Forget the update callback.

◆ GetClassName()

virtual const char * vtkMRMLLayerDMObjectEventObserver::GetClassName ( )
virtual

◆ IsA()

virtual int vtkMRMLLayerDMObjectEventObserver::IsA ( const char * type)
virtual

◆ IsBlocked()

bool vtkMRMLLayerDMObjectEventObserver::IsBlocked ( ) const

◆ IsTypeOf()

static int vtkMRMLLayerDMObjectEventObserver::IsTypeOf ( const char * type)
static

◆ New()

static vtkMRMLLayerDMObjectEventObserver * vtkMRMLLayerDMObjectEventObserver::New ( )
static

◆ PrintSelf()

void vtkMRMLLayerDMObjectEventObserver::PrintSelf ( ostream & os,
vtkIndent indent )
override

◆ RemoveObservations()

void vtkMRMLLayerDMObjectEventObserver::RemoveObservations ( vtkObject * obj)

Remove observers attached to the input object. Use

See also
UpdateObservation to update the observed events for a new object (RemoveObservations is then called automatically).

◆ SafeDownCast()

static vtkMRMLLayerDMObjectEventObserver * vtkMRMLLayerDMObjectEventObserver::SafeDownCast ( vtkObject * o)
static

◆ SetBlocked()

bool vtkMRMLLayerDMObjectEventObserver::SetBlocked ( bool isBlocked)

Set update callback blocked.

Returns
previous blocked state.

◆ SetUpdateCallback() [1/3]

void vtkMRMLLayerDMObjectEventObserver::SetUpdateCallback ( const std::function< void(vtkObject *node)> & callback)

Set the callback triggered when one of the observed objects and event is invoked.

◆ SetUpdateCallback() [2/3]

void vtkMRMLLayerDMObjectEventObserver::SetUpdateCallback ( const std::function< void(vtkObject *node, unsigned long eventId)> & callback)

◆ SetUpdateCallback() [3/3]

void vtkMRMLLayerDMObjectEventObserver::SetUpdateCallback ( const std::function< void(vtkObject *node, unsigned long eventId, void *callData)> & callback)

◆ UpdateObservation() [1/2]

bool vtkMRMLLayerDMObjectEventObserver::UpdateObservation ( vtkObject * prevObj,
vtkObject * obj,
const std::vector< unsigned long > & events )

◆ UpdateObservation() [2/2]

bool vtkMRMLLayerDMObjectEventObserver::UpdateObservation ( vtkObject * prevObj,
vtkObject * obj,
unsigned long event = vtkCommand::ModifiedEvent )

Remove previous monitored events from

Parameters
prevObjand observe events from the
objIf both obj are the same, does nothing. On event triggered, calls the update set by
See also
SetUpdateCallback.
Warning
prevObj is not mutated by this call. To update the pointer, a manual set is required after update.

The documentation for this class was generated from the following file: