Medical Imaging Interaction Toolkit  2018.4.99-b585543d
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 BASECONTROLLER_H_HEADER_INCLUDED_C1E745A3
14 #define BASECONTROLLER_H_HEADER_INCLUDED_C1E745A3
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 mitk::OperationActor, public itk::Object
38  {
39  public:
42  itkFactorylessNewMacro(Self);
43 
45  // mitkNewMacro(Self);
46 
47  //##Documentation
48  //## @brief Get the Stepper through the slices
49  mitk::Stepper *GetSlice();
50 
51  //##Documentation
52  //## @brief Get the Stepper through the time
53  mitk::Stepper *GetTime();
54 
55  protected:
60 
64  ~BaseController() override;
65 
66  void ExecuteOperation(Operation *) override;
67 
68  //## @brief Stepper through the time
70  //## @brief Stepper through the slices
72 
73  unsigned long m_LastUpdateTime;
74  };
75 
76 } // namespace mitk
77 
78 #endif /* BASECONTROLLER_H_HEADER_INCLUDED_C1E745A3 */
#define MITKCORE_EXPORT
Baseclass for renderer slice-/camera-control.
Base class of all Operation-classes.
Definition: mitkOperation.h:29
DataCollection - Class to facilitate loading/accessing structured data.
unsigned long m_LastUpdateTime
abstract class, that can be used by Undo to undo an operation.
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:49
Stepper::Pointer m_Slice
Helper class to step through a list.
Definition: mitkStepper.h:47
Stepper::Pointer m_Time