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
mitkManufacturerLogo.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 _vtk_Logo_Rendering_h_
18 #define _vtk_Logo_Rendering_h_
19 
20 #include <mitkBaseData.h>
21 
22 class vtkRenderer;
23 class vtkRenderWindow;
24 class vtkMapper;
25 class vtkCamera;
26 class vtkImageActor;
27 class vtkImageMapper;
28 class vtkLookupTable;
29 class vtkPolyData;
30 class vtkPNGReader;
31 class vtkImageImport;
32 
33 namespace mitk
34 {
35  class RenderWindow;
42  {
43  public:
45 
46  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
47 
48  enum LogoPosition {
53  Middle
54  };
55 
61  virtual void SetRenderWindow(vtkRenderWindow *renderWindow);
62 
66  virtual void SetLogoSource(const char *filename);
70  virtual void SetOpacity(double opacity);
75  virtual void SetZoomFactor(double factor);
76 
81  virtual void Enable();
82 
87  virtual void Disable();
88 
93  virtual bool IsEnabled();
94 
99  virtual void SetRequestedRegionToLargestPossibleRegion() override;
100 
105  virtual bool RequestedRegionIsOutsideOfTheBufferedRegion() override;
106 
111  virtual bool VerifyRequestedRegion() override;
112 
117  virtual void SetRequestedRegion(const itk::DataObject *) override;
118 
123  virtual vtkRenderWindow *GetRenderWindow();
124 
130  virtual vtkRenderer *GetVtkRenderer();
131 
135  virtual vtkImageActor *GetActor();
136 
140  virtual vtkImageMapper *GetMapper();
141 
146  virtual void ForceMBILogoVisible(bool visible);
147 
148  protected:
149  void SetupCamera();
150  void SetupPosition();
151 
156 
160  ~ManufacturerLogo();
161 
162  vtkRenderWindow *m_RenderWindow;
163  vtkRenderer *m_Renderer;
164  vtkImageActor *m_Actor;
165  vtkImageMapper *m_Mapper;
166  vtkPNGReader *m_PngReader;
167  vtkCamera *m_Camera;
168  vtkImageImport *m_VtkImageImport;
169 
170  std::string m_FileName;
171 
174 
176  double m_ZoomFactor;
177  double m_Opacity;
178 
179  char *m_ImageData;
180  };
181 
182 } // end of namespace mitk
183 #endif
#define MITKCORE_EXPORT
Base of all data objects.
Definition: mitkBaseData.h:39
DataCollection - Class to facilitate loading/accessing structured data.
static const std::string filename
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
vtkImageImport * m_VtkImageImport
vtkRenderWindow * m_RenderWindow