Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkSimulationInteractor.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef mitkSimulationInteractor_h
18 #define mitkSimulationInteractor_h
19 
20 #include <mitkDataInteractor.h>
21 #include <MitkSimulationExports.h>
22 
23 namespace mitk
24 {
25  class InteractionPositionEvent;
26 
27  class MITKSIMULATION_EXPORT SimulationInteractor : public DataInteractor
28  {
29  public:
31  itkFactorylessNewMacro(Self);
32  itkCloneMacro(Self);
33 
34  protected:
35  void ConnectActionsAndFunctions() override;
36  void DataNodeChanged() override;
37 
38  private:
41 
42  void StartInteraction(const std::string& type, InteractionPositionEvent* event);
43  void StartPrimaryInteraction(StateMachineAction* action, InteractionEvent* event);
44  void StartSecondaryInteraction(StateMachineAction* action, InteractionEvent* event);
45  void ExecuteInteraction(StateMachineAction* action, InteractionEvent* event);
46  void StopInteraction(StateMachineAction* action, InteractionEvent* event);
47  bool IsInteractionPerformerNotNull(const InteractionEvent* event);
48 
49  class Impl;
50  std::unique_ptr<Impl> m_Impl;
51  };
52 }
53 
54 #endif
Super class for all position events.
virtual void DataNodeChanged() override
Called when a DataNode has been set/changed.
DataCollection - Class to facilitate loading/accessing structured data.
Base class from with interactors that handle DataNodes are to be derived.
Represents an action, that is executed after a certain event (in statemachine-mechanism) TODO: implem...
virtual void ConnectActionsAndFunctions() override
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44