Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkLogoOverlay.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 LOGOOVERLAY_H
18 #define LOGOOVERLAY_H
19 
20 #include "MitkOverlaysExports.h"
22 #include <mitkVtkOverlay.h>
23 #include <vtkSmartPointer.h>
24 
26 class vtkImageData;
27 class vtkImageReader2Factory;
28 class vtkImageImport;
29 
30 namespace mitk
31 {
34  {
35  public:
37  {
38  public:
40  vtkSmartPointer<vtkImageData> m_LogoImage;
41  vtkSmartPointer<mitkVtkLogoRepresentation> m_LogoRep;
42 
44  itk::TimeStamp m_LastUpdateTime;
45 
47  LocalStorage();
49  ~LocalStorage();
50  };
51 
53  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
54 
55  vtkSmartPointer<vtkImageReader2Factory> m_readerFactory;
56 
57  void SetLogoImagePath(std::string text);
58  std::string GetLogoImagePath() const;
59 
61  void SetOffsetVector(const Point2D &OffsetVector, BaseRenderer *renderer = NULL);
62  Point2D GetOffsetVector(mitk::BaseRenderer *renderer = NULL) const;
63 
70  void SetCornerPosition(const int &corner, BaseRenderer *renderer = NULL);
71  int GetCornerPosition(mitk::BaseRenderer *renderer = NULL) const;
72 
73  void SetRelativeSize(const float &size, BaseRenderer *renderer = NULL);
74  float GetRelativeSize(mitk::BaseRenderer *renderer = NULL) const;
75 
76  protected:
79 
80  virtual vtkProp *GetVtkProp(BaseRenderer *renderer) const override;
81  void UpdateVtkOverlay(mitk::BaseRenderer *renderer) override;
82 
83  vtkImageData *CreateMbiLogo();
84 
86  explicit LogoOverlay();
87 
89  virtual ~LogoOverlay();
90 
91  private:
92  vtkSmartPointer<vtkImageImport> m_VtkImageImport;
93 
95  LogoOverlay(const LogoOverlay &);
96 
98  LogoOverlay &operator=(const LogoOverlay &);
99  };
100 
101 } // namespace mitk
102 #endif // LOGOOVERLAY_H
vtkSmartPointer< mitkVtkLogoRepresentation > m_LogoRep
The VtkOverlay class is the base for all Overlays which are using the VTK framework to render the ele...
Templated class for management of LocalStorage implementations in Mappers.
Organizes the rendering process.
STL namespace.
DataCollection - Class to facilitate loading/accessing structured data.
Displays a logo on the renderwindow.
itk::TimeStamp m_LastUpdateTime
Timestamp of last update of stored data.
vtkSmartPointer< vtkImageData > m_LogoImage
Actor of a 2D render window.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
Base class for mapper specific rendering ressources.
Definition: mitkOverlay.h:50
#define MITKOVERLAYS_EXPORT
Base class for all overlays.
Definition: mitkOverlay.h:34