MITK-IGT
IGT Extension of MITK
Loading...
Searching...
No Matches
QmitkUSNavigationStepTumourSelection Class Reference

Navigation step for marking the tumor position and extent. The user can mark the position by interacting with the render windows. The tumor size can be changed afterwards and the tumor can be removed. More...

#include <QmitkUSNavigationStepTumourSelection.h>

Inheritance diagram for QmitkUSNavigationStepTumourSelection:
QmitkUSAbstractNavigationStep

Public Member Functions

 QmitkUSNavigationStepTumourSelection (QWidget *parent=nullptr)
 
 ~QmitkUSNavigationStepTumourSelection () override
 
void SetTargetSelectionOptional (bool t)
 
bool OnStartStep () override
 Initializes tumour and target surface.
 
bool OnStopStep () override
 Removes target surface and tumour node from the data storage. Additionally an unfreeze is done and the node displacement filter is reset.
 
bool OnRestartStep () override
 Reinitializes buttons and sliders in addition of calling the default implementation.
 
bool OnFinishStep () override
 (Re)creates the target surface.
 
bool OnActivateStep () override
 Initializes (but not activates) the interactor for tumour selection.
 
bool OnDeactivateStep () override
 Deactivates the interactor for tumour selection and removes data of the tumour node if selection wasn't finished yet.
 
void OnUpdate () override
 Updates tracking validity status and checks tumour node for the end of tumour creation.
 
void OnSettingsChanged (const itk::SmartPointer< mitk::DataNode > settingsNode) override
 
QString GetTitle () override
 Getter for the title of the navigation step. This title should be human readable and can be used to display the available steps and the currently active step to the user. The method has to be implemented by a concrete subclass.
 
FilterVector GetFilter () override
 
void SetTumorColor (mitk::Color c)
 
itk::SmartPointer< mitk::NodeDisplacementFilterGetTumourNodeDisplacementFilter ()
 
- Public Member Functions inherited from QmitkUSAbstractNavigationStep
 QmitkUSAbstractNavigationStep (QWidget *parent=nullptr)
 
 ~QmitkUSAbstractNavigationStep () override
 
virtual bool GetIsRestartable ()
 Indicates if it makes sense to be able to restart the step. This method must be implemented by concrete subclasses if it should not be possible to restart them.
 
void SetDataStorage (itk::SmartPointer< mitk::DataStorage > dataStorage)
 Sets the data storage for the exchange of results between navigation steps.
 
void SetCombinedModality (itk::SmartPointer< mitk::AbstractUltrasoundTrackerDevice > combinedModality)
 Sets the combined modality for the navigation step. OnSetCombinedModality() is called internal.
 
bool StartStep ()
 Should be called to start the navigation step.
 
bool StopStep ()
 Should be called to stop the navigation step.
 
bool RestartStep ()
 Should be called to restart the navigation step.
 
bool FinishStep ()
 Should be called to finish the navigation step. The state has to be 'active' before and is 'started' afterwards.
 
bool ActivateStep ()
 Should be called to activate the navigation step. The step gets started before if it was stopped.
 
bool DeactivateStep ()
 Should be called to deactivate the navigation step.
 
void Update ()
 Should be called periodically while the navigation step is active. Internal, the method OnUpdate() is called.
 
NavigationStepState GetNavigationStepState ()
 Get the current state of the navigation step.
 

Protected Slots

void OnFreeze (bool freezed)
 Activates or deactivates the ineractor for tumour creation.
 
void OnTumourSizeChanged (int)
 Updates the surface of the tumor node according to the new size.
 
void OnDeleteButtonClicked ()
 Just restarts the navigation step for deleting the tumour.
 

Protected Member Functions

void OnSetCombinedModality () override
 Called every time SetCombinedModality() was called. This method may be implemented by a concrete subclass to handle this event. The default implementation does nothing.
 
void TumourNodeChanged (const mitk::DataNode *)
 
itk::SmartPointer< mitk::Surface > CreateTargetSurface ()
 
void UpdateReferenceSensorName ()
 
- Protected Member Functions inherited from QmitkUSAbstractNavigationStep
itk::SmartPointer< mitk::DataStorage > GetDataStorage (bool throwNull=true)
 Returns the data storage set for the navigation step.
 
itk::SmartPointer< mitk::AbstractUltrasoundTrackerDeviceGetCombinedModality (bool throwNull=true)
 Returns the combined modality set for the navigation step.
 
itk::SmartPointer< mitk::DataNode > GetNamedDerivedNode (const char *name, const char *sourceName)
 Returns node with the given name and the given source node (parent) from the data storage.
 
itk::SmartPointer< mitk::DataNode > GetNamedDerivedNodeAndCreate (const char *name, const char *sourceName)
 Returns node with the given name and the given source node (parent) from the data storage. The node is created if no matching node was found.
 

Protected Attributes

itk::SmartPointer< mitk::NavigationDataSourcem_NavigationDataSource
 
bool m_targetSelectionOptional
 
float m_SecurityDistance
 
itk::SmartPointer< mitk::USZonesInteractorm_Interactor
 
itk::SmartPointer< mitk::DataNode > m_TumourNode
 
itk::SmartPointer< mitk::DataNode > m_TargetSurfaceNode
 
itk::SmartPointer< mitk::NodeDisplacementFilterm_NodeDisplacementFilter
 
std::string m_StateMachineFilename
 
std::string m_ReferenceSensorName
 
unsigned int m_ReferenceSensorIndex
 
mitk::Color m_SphereColor
 

Additional Inherited Members

- Public Types inherited from QmitkUSAbstractNavigationStep
enum  NavigationStepState { State_Stopped , State_Started , State_Active }
 
typedef std::vector< itk::SmartPointer< mitk::NavigationDataToNavigationDataFilter > > FilterVector
 
- Signals inherited from QmitkUSAbstractNavigationStep
void SignalReadyForNextStep ()
 Signals that all necessary actions where done. The user can proceed with the next stept after this was signaled.
 
void SignalNoLongerReadyForNextStep ()
 Signals that it is no longer possible to proceed with following steps. This signal is emitted when the result data of the step was removed or changed, so that the old results are invalid for following steps.
 
void SignalCombinedModalityChanged (itk::SmartPointer< mitk::AbstractUltrasoundTrackerDevice >)
 Signals that the combined modality was changed by this step. This signal is mainly for steps which creates the combined modality. The new combined modality is given as a parameter.
 
void SignalIntermediateResult (const itk::SmartPointer< mitk::DataNode >)
 Signals that an intermediate result was produced. The properties of the given data node must contain the results. This signal can be used to log the intermediate results of an experiment, for example by using the mitk::USNavigationExperimentLogging.
 
void SignalSettingsNodeChanged (itk::SmartPointer< mitk::DataNode >)
 Signals that the settings node was changed. This signal must not be emitted in an OnSettingsChanged() method.
 
- Static Public Attributes inherited from QmitkUSAbstractNavigationStep
static const char * DATANAME_SETTINGS = "Settings"
 
static const char * DATANAME_IMAGESTREAM = "US Image Stream"
 
static const char * DATANAME_BASENODE = QmitkUSAbstractNavigationStep::DATANAME_IMAGESTREAM
 

Detailed Description

Navigation step for marking the tumor position and extent. The user can mark the position by interacting with the render windows. The tumor size can be changed afterwards and the tumor can be removed.

Definition at line 43 of file QmitkUSNavigationStepTumourSelection.h.

Constructor & Destructor Documentation

◆ QmitkUSNavigationStepTumourSelection()

QmitkUSNavigationStepTumourSelection::QmitkUSNavigationStepTumourSelection ( QWidget * parent = nullptr)
explicit

Definition at line 34 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ ~QmitkUSNavigationStepTumourSelection()

QmitkUSNavigationStepTumourSelection::~QmitkUSNavigationStepTumourSelection ( )
override

Definition at line 67 of file QmitkUSNavigationStepTumourSelection.cpp.

Member Function Documentation

◆ CreateTargetSurface()

mitk::Surface::Pointer QmitkUSNavigationStepTumourSelection::CreateTargetSurface ( )
protected

Definition at line 355 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ GetFilter()

QmitkUSAbstractNavigationStep::FilterVector QmitkUSNavigationStepTumourSelection::GetFilter ( )
overridevirtual
Returns
a node displacement filter for tumour and target surfaces

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 241 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ GetTitle()

QString QmitkUSNavigationStepTumourSelection::GetTitle ( )
overridevirtual

Getter for the title of the navigation step. This title should be human readable and can be used to display the available steps and the currently active step to the user. The method has to be implemented by a concrete subclass.

Implements QmitkUSAbstractNavigationStep.

Definition at line 236 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ GetTumourNodeDisplacementFilter()

itk::SmartPointer< mitk::NodeDisplacementFilter > QmitkUSNavigationStepTumourSelection::GetTumourNodeDisplacementFilter ( )
Returns
Returns the current NodeDisplacementFilter which is used for updating the targets pose.

Definition at line 397 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnActivateStep()

bool QmitkUSNavigationStepTumourSelection::OnActivateStep ( )
overridevirtual

Initializes (but not activates) the interactor for tumour selection.

Returns
always true

Implements QmitkUSAbstractNavigationStep.

Definition at line 148 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnDeactivateStep()

bool QmitkUSNavigationStepTumourSelection::OnDeactivateStep ( )
overridevirtual

Deactivates the interactor for tumour selection and removes data of the tumour node if selection wasn't finished yet.

Returns
always true

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 163 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnDeleteButtonClicked

void QmitkUSNavigationStepTumourSelection::OnDeleteButtonClicked ( )
protectedslot

Just restarts the navigation step for deleting the tumour.

Definition at line 305 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnFinishStep()

bool QmitkUSNavigationStepTumourSelection::OnFinishStep ( )
overridevirtual

(Re)creates the target surface.

Returns
always true

Implements QmitkUSAbstractNavigationStep.

Definition at line 139 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnFreeze

void QmitkUSNavigationStepTumourSelection::OnFreeze ( bool freezed)
protectedslot

Activates or deactivates the ineractor for tumour creation.

Definition at line 246 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnRestartStep()

bool QmitkUSNavigationStepTumourSelection::OnRestartStep ( )
overridevirtual

Reinitializes buttons and sliders in addition of calling the default implementation.

Returns
result of the superclass implementation

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 124 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnSetCombinedModality()

void QmitkUSNavigationStepTumourSelection::OnSetCombinedModality ( )
overrideprotectedvirtual

Called every time SetCombinedModality() was called. This method may be implemented by a concrete subclass to handle this event. The default implementation does nothing.

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 279 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnSettingsChanged()

void QmitkUSNavigationStepTumourSelection::OnSettingsChanged ( const itk::SmartPointer< mitk::DataNode > settingsNode)
overridevirtual

The properties "settings.security-distance" and "settings.interaction-concept" are used.

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 210 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnStartStep()

bool QmitkUSNavigationStepTumourSelection::OnStartStep ( )
overridevirtual

Initializes tumour and target surface.

Returns
always true

Implements QmitkUSAbstractNavigationStep.

Definition at line 72 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnStopStep()

bool QmitkUSNavigationStepTumourSelection::OnStopStep ( )
overridevirtual

Removes target surface and tumour node from the data storage. Additionally an unfreeze is done and the node displacement filter is reset.

Returns
always true

Reimplemented from QmitkUSAbstractNavigationStep.

Definition at line 100 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnTumourSizeChanged

void QmitkUSNavigationStepTumourSelection::OnTumourSizeChanged ( int size)
protectedslot

Updates the surface of the tumor node according to the new size.

Definition at line 296 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ OnUpdate()

void QmitkUSNavigationStepTumourSelection::OnUpdate ( )
overridevirtual

Updates tracking validity status and checks tumour node for the end of tumour creation.

Implements QmitkUSAbstractNavigationStep.

Definition at line 179 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ SetTargetSelectionOptional()

void QmitkUSNavigationStepTumourSelection::SetTargetSelectionOptional ( bool t)

Definition at line 62 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ SetTumorColor()

void QmitkUSNavigationStepTumourSelection::SetTumorColor ( mitk::Color c)

Definition at line 57 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ TumourNodeChanged()

void QmitkUSNavigationStepTumourSelection::TumourNodeChanged ( const mitk::DataNode * dataNode)
protected

Definition at line 310 of file QmitkUSNavigationStepTumourSelection.cpp.

◆ UpdateReferenceSensorName()

void QmitkUSNavigationStepTumourSelection::UpdateReferenceSensorName ( )
protected

Definition at line 402 of file QmitkUSNavigationStepTumourSelection.cpp.

Member Data Documentation

◆ m_Interactor

itk::SmartPointer<mitk::USZonesInteractor> QmitkUSNavigationStepTumourSelection::m_Interactor
protected

Definition at line 146 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_NavigationDataSource

itk::SmartPointer<mitk::NavigationDataSource> QmitkUSNavigationStepTumourSelection::m_NavigationDataSource
protected

Definition at line 140 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_NodeDisplacementFilter

itk::SmartPointer<mitk::NodeDisplacementFilter> QmitkUSNavigationStepTumourSelection::m_NodeDisplacementFilter
protected

Definition at line 150 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_ReferenceSensorIndex

unsigned int QmitkUSNavigationStepTumourSelection::m_ReferenceSensorIndex
protected

Definition at line 154 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_ReferenceSensorName

std::string QmitkUSNavigationStepTumourSelection::m_ReferenceSensorName
protected

Definition at line 153 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_SecurityDistance

float QmitkUSNavigationStepTumourSelection::m_SecurityDistance
protected

Definition at line 144 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_SphereColor

mitk::Color QmitkUSNavigationStepTumourSelection::m_SphereColor
protected

Definition at line 156 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_StateMachineFilename

std::string QmitkUSNavigationStepTumourSelection::m_StateMachineFilename
protected

Definition at line 152 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_targetSelectionOptional

bool QmitkUSNavigationStepTumourSelection::m_targetSelectionOptional
protected

Definition at line 142 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_TargetSurfaceNode

itk::SmartPointer<mitk::DataNode> QmitkUSNavigationStepTumourSelection::m_TargetSurfaceNode
protected

Definition at line 148 of file QmitkUSNavigationStepTumourSelection.h.

◆ m_TumourNode

itk::SmartPointer<mitk::DataNode> QmitkUSNavigationStepTumourSelection::m_TumourNode
protected

Definition at line 147 of file QmitkUSNavigationStepTumourSelection.h.


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