Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkMultiStepper.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 mitkMultiStepper_h
14 #define mitkMultiStepper_h
15 
17 #include <mitkCommon.h>
18 #include <mitkStepper.h>
19 #include <mitkVector.h>
20 #include <itkObject.h>
21 #include <itkObjectFactory.h>
22 #include <set>
23 
24 namespace mitk
25 {
39  {
40  public:
42  itkFactorylessNewMacro(Self);
43  itkCloneMacro(Self)
44 
45 
54  void AddStepper(Stepper::Pointer stepper, unsigned int repeat = 1);
55 
62  void RemoveStepper(Stepper::Pointer stepper, unsigned int repeat = 1);
63 
71  void SetPos(unsigned int pos) override;
72 
80  void SetSteps(const unsigned int steps) override;
81 
82  protected:
84  ~MultiStepper() override;
85  typedef std::set<Stepper::Pointer> StepperSet;
86  typedef std::map<Stepper::Pointer, unsigned int> ScaleFactorMap;
87  StepperSet m_SubSteppers;
88  ScaleFactorMap m_ScaleFactors;
89  Stepper::Pointer m_LargestRangeStepper;
90  void UpdateStepCount();
91  };
92 
93 } // namespace mitk
94 
95 #endif
#define MITKDATATYPESEXT_EXPORT
Coordinates multiple Stepper instances to step through in parallel.
std::map< Stepper::Pointer, unsigned int > ScaleFactorMap
std::set< Stepper::Pointer > StepperSet
mitkClassMacro(MultiStepper, Stepper)
Helper class to step through a list.
Definition: mitkStepper.h:48
Find image slices visible on a given plane.