Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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