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
mitkDicomDiffusionImageHeaderReader.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 
18 #ifndef __mitkDicomDiffusionImageHeaderReader_h__
19 #define __mitkDicomDiffusionImageHeaderReader_h__
20 
22 
23 #include <mitkFileReader.h>
24 #include "itkImageSeriesReader.h"
25 #include "itkImageFileReader.h"
26 #include "itkImage.h"
27 #include "itkGDCMImageIO.h"
29 
30 namespace mitk
31 {
37  {
38  public:
39 
41  itkFactorylessNewMacro(Self)
42  itkCloneMacro(Self)
43 
44 
50  SV_UNKNOWN_VENDOR
51  };
52 
53  typedef std::vector< std::string > FileNamesContainer;
54 
55  typedef short PixelValueType;
56  typedef itk::Image< PixelValueType, 2 > SliceType;
57  typedef itk::Image< PixelValueType, 3 > VolumeType;
58  typedef itk::ImageSeriesReader< VolumeType > VolumeReaderType;
59  typedef itk::ImageFileReader< SliceType > SliceReaderType;
60  typedef itk::GDCMImageIO ImageIOType;
61 
63  void SetSeriesDicomFilenames(FileNamesContainer dicomFilenames)
64  { this->m_DicomFilenames = dicomFilenames; }
65 
67  { this->m_GdcmIO = gdcmIO; }
68 
71  { this->m_VolumeReader = volumeReader; }
72 
75  { this->m_Output = output; }
76 
78  virtual void Update();
79 
82 
84  SupportedVendors GetVendorID();
85 
86  protected:
89 
92 
93  void ReadPublicTags();
94  void ReadPublicTags2();
95  void TransformGradients();
96 
97  FileNamesContainer m_DicomFilenames;
99 
102 
105  int m_nSlice;
106  std::vector<float> m_sliceLocations;
107 
108  };
109 
110 }
111 
112 #endif
113 
114 
115 
itk::SmartPointer< Self > Pointer
DiffusionImageHeaderInformation::Pointer m_Output
static void Update(vtkPolyData *)
Definition: mitkSurface.cpp:35
DataCollection - Class to facilitate loading/accessing structured data.
#define MITKDIFFUSIONCORE_EXPORT
Reads the header information from a DICOM series and stores it into an output object of type Diffusio...
void SetOutputPointer(DiffusionImageHeaderInformation::Pointer output)
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:53
void SetSeriesDicomFilenames(FileNamesContainer dicomFilenames)
void SetVolumeReader(VolumeReaderType::Pointer volumeReader)
itk::ImageSeriesReader< VolumeType > VolumeReaderType