Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
mitkBaseController.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 (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkBaseController_h
14 #define mitkBaseController_h
15 
16 #include "mitkEventStateMachine.h"
17 #include "mitkOperationActor.h"
18 #include "mitkStepper.h"
19 #include <MitkCoreExports.h>
20 #include <itkObjectFactory.h>
21 
22 namespace mitk
23 {
24  class BaseRenderer;
25 
26  //##Documentation
27  //## @brief Baseclass for renderer slice-/camera-control
28  //##
29  //## Tells the render (subclass of BaseRenderer) which slice (subclass
30  //## SliceNavigationController) or from which direction (subclass
31  //## CameraController) it has to render. Contains two Stepper for stepping
32  //## through the slices or through different camera views (e.g., for the
33  //## creation of a movie around the data), respectively, and through time, if
34  //## there is 3D+t data.
35  //## @note not yet implemented
36  //## @ingroup NavigationControl
37  class MITKCORE_EXPORT BaseController : public OperationActor, public itk::Object
38  {
39  public:
42  itkFactorylessNewMacro(Self);
43 
44  //##Documentation
45  //## @brief Get the Stepper through the slices
46  Stepper *GetSlice();
47  const Stepper* GetSlice() const;
48 
49  //##Documentation
50  //## @brief Get the Stepper through the time
51  Stepper *GetTime();
52  const Stepper* GetTime() const;
53 
54  protected:
59 
63  ~BaseController() override;
64 
65  void ExecuteOperation(Operation *) override;
66 
67  //## @brief Stepper through the time
69  //## @brief Stepper through the slices
71 
72  unsigned long m_LastUpdateTime;
73  };
74 
75 } // namespace mitk
76 
77 #endif
mitk::BaseController::m_LastUpdateTime
unsigned long m_LastUpdateTime
Definition: mitkBaseController.h:72
mitk::OperationActor
abstract class, that can be used by Undo to undo an operation.
Definition: mitkOperationActor.h:41
mitk::Operation
Base class of all Operation-classes.
Definition: mitkOperation.h:29
mitkOperationActor.h
mitk::BaseController::m_Slice
Stepper::Pointer m_Slice
Definition: mitkBaseController.h:70
itk::SmartPointer< Self >
mitk::BaseController
Baseclass for renderer slice-/camera-control.
Definition: mitkBaseController.h:37
mitkClassMacroItkParent
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:45
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
MitkCoreExports.h
mitk::Stepper
Helper class to step through a list.
Definition: mitkStepper.h:47
mitk::BaseController::m_Time
Stepper::Pointer m_Time
Definition: mitkBaseController.h:68
mitkStepper.h
mitkEventStateMachine.h
MITKCORE_EXPORT
#define MITKCORE_EXPORT
Definition: MitkCoreExports.h:15