Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkOverlay2DLayouter.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 MITKOVERLAY2DLAYOUTER_H
18 #define MITKOVERLAY2DLAYOUTER_H
19 
20 #include <MitkOverlaysExports.h>
22 
23 namespace mitk
24 {
28  {
29  public:
30  enum Alignment
31  {
33  Top,
37  BottomRight
38  };
40  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
41 
42  static std::string STANDARD_2D_TOPLEFT();
43  static std::string STANDARD_2D_TOP();
44  static std::string STANDARD_2D_TOPRIGHT();
45  static std::string STANDARD_2D_BOTTOMLEFT();
46  static std::string STANDARD_2D_BOTTOM();
47  static std::string STANDARD_2D_BOTTOMRIGHT();
48 
51  static Overlay2DLayouter::Pointer CreateLayouter(Alignment alignment, BaseRenderer *renderer);
52 
55  static Overlay2DLayouter::Pointer CreateLayouter(const std::string &identifier, BaseRenderer *renderer);
56 
57  void PrepareLayout() override;
58 
59  protected:
61  explicit Overlay2DLayouter();
62 
64  virtual ~Overlay2DLayouter();
65 
66  Alignment m_Alignment;
67 
68  double m_Margin;
69 
70  private:
72  Overlay2DLayouter(const Overlay2DLayouter &);
73 
75  Overlay2DLayouter &operator=(const Overlay2DLayouter &);
76  };
77 
78 } // namespace mitk
79 #endif // MITKOVERLAY2DLAYOUTER_H
Organizes the rendering process.
STL namespace.
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
Baseclass of Overlay layouters.
#define MITKOVERLAYS_EXPORT
A simple implementation of a layouter for 2D Overlays.