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
mitkDiffSliceOperation.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 mitkDiffSliceOperation_h_Included
18 #define mitkDiffSliceOperation_h_Included
19 
22 #include <mitkOperation.h>
23 
24 #include <vtkSmartPointer.h>
25 
26 namespace mitk
27 {
28  class Image;
29 
43  {
44  public:
46 
47  // itkFactorylessNewMacro(Self)
48  // itkCloneMacro(Self)
49 
50  // mitkNewMacro4Param(DiffSliceOperation,mitk::Image,mitk::Image,unsigned int, mitk::PlaneGeometry);
51 
56 
58  DiffSliceOperation(mitk::Image *imageVolume,
59  mitk::Image *slice,
60  SlicedGeometry3D *sliceGeometry,
61  unsigned int timestep,
62  BaseGeometry *currentWorldGeometry);
63 
65  bool IsValid();
66 
68  void SetImage(mitk::Image *image) { this->m_Image = image; }
70  mitk::Image *GetImage() { return this->m_Image; }
72  void SetImage(vtkImageData *slice) { this->m_Slice = slice; }
74  Image::Pointer GetSlice();
75 
77  void SetTimeStep(unsigned int timestep) { this->m_TimeStep = timestep; }
79  unsigned int GetTimeStep() { return this->m_TimeStep; }
81  void SetSliceGeometry(SlicedGeometry3D *sliceGeometry) { this->m_SliceGeometry = sliceGeometry; }
83  SlicedGeometry3D *GetSliceGeometry() { return this->m_SliceGeometry; }
85  void SetCurrentWorldGeometry(BaseGeometry *worldGeometry) { this->m_WorldGeometry = worldGeometry; }
87  BaseGeometry *GetWorldGeometry() { return this->m_WorldGeometry; }
88  protected:
89  virtual ~DiffSliceOperation();
90 
92  void OnImageDeleted();
93 
95 
97 
98  vtkSmartPointer<vtkImageData> m_Slice;
99 
101 
102  unsigned int m_TimeStep;
103 
105 
107 
108  unsigned long m_DeleteObserverTag;
109 
111  };
112 }
113 #endif
itk::SmartPointer< Self > Pointer
BaseGeometry * GetWorldGeometry()
Get the axis where the slice has to be applied in the volume.
void SetTimeStep(unsigned int timestep)
Get timeStep.
Base class of all Operation-classes.
Definition: mitkOperation.h:33
#define MITKSEGMENTATION_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
vtkSmartPointer< vtkImageData > m_Slice
An Operation for applying an edited slice to the volume.
abstract class, that can be used by Undo to undo an operation.
SlicedGeometry3D::Pointer m_SliceGeometry
class ITK_EXPORT Image
void SetSliceGeometry(SlicedGeometry3D *sliceGeometry)
Set the axis where the slice has to be applied in the volume.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44
BaseGeometry::Pointer m_WorldGeometry
mitk::BaseGeometry::ConstPointer m_GuardReferenceGeometry
Image class for storing images.
Definition: mitkImage.h:76
void SetImage(mitk::Image *image)
Set the image volume.
Describes the geometry of a data object consisting of slices.
void SetImage(vtkImageData *slice)
Set thee slice to be applied.
SlicedGeometry3D * GetSliceGeometry()
Get the axis where the slice has to be applied in the volume.
unsigned int GetTimeStep()
Set timeStep.
CompressedImageContainer::Pointer m_zlibSliceContainer
BaseGeometry Describes the geometry of a data object.
mitk::Image * GetImage()
Get th image volume.
void SetCurrentWorldGeometry(BaseGeometry *worldGeometry)
Set the axis where the slice has to be applied in the volume.