creaImageIO_lib
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
creaImageIODicomImageReader2.h
Go to the documentation of this file.
1
/*
2
# ---------------------------------------------------------------------
3
#
4
# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
5
# pour la Santé)
6
# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
7
# Previous Authors : Laurent Guigues, Jean-Pierre Roux
8
# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9
#
10
# This software is governed by the CeCILL-B license under French law and
11
# abiding by the rules of distribution of free software. You can use,
12
# modify and/ or redistribute the software under the terms of the CeCILL-B
13
# license as circulated by CEA, CNRS and INRIA at the following URL
14
# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
15
# or in the file LICENSE.txt.
16
#
17
# As a counterpart to the access to the source code and rights to copy,
18
# modify and redistribute granted by the license, users are provided only
19
# with a limited warranty and the software's author, the holder of the
20
# economic rights, and the successive licensors have only limited
21
# liability.
22
#
23
# The fact that you are presently reading this means that you have had
24
# knowledge of the CeCILL-B license and that you accept its terms.
25
# ------------------------------------------------------------------------
26
*/
27
28
29
#ifndef __creaImageIODicomImageReader_h_INCLUDED__
30
#define __creaImageIODicomImageReader_h_INCLUDED__
31
32
33
#include <
creaImageIOAbstractImageReader.h
>
34
#if defined(USE_GDCM2)
35
#include <gdcmReader.h>
36
#include <vtkGDCMImageReader.h>
37
#include <gdcmScanner.h>
38
#include <gdcmAttribute.h>
39
#endif
40
41
class
vtkGDCMImageReader;
42
43
namespace
creaImageIO
44
{
45
46
51
//=====================================================================
53
class
DicomImageReader :
virtual
public
AbstractImageReader
54
{
55
public
:
56
DicomImageReader
();
57
virtual
~DicomImageReader
();
58
60
virtual
void
PushBackExtensions
(std::vector<std::string>&);
62
virtual
bool
CanRead
(
const
std::string& filename);
64
virtual
vtkImageData*
ReadImage
(
const
std::string& filename);
66
virtual
void
ReadAttributes
(
const
std::string& filename,
67
tree::AttributeMapType
& attr);
68
void
ReadAttributes2
(
const
std::string& filename,
69
tree::AttributeMapType
& attr);
70
72
void
getAttributes
(
const
std::string filename, std::map <std::string , std::string> &infos, std::vector<std::string> i_attr);
73
private
:
74
const
std::string
GetStringValueFromTag
(
const
gdcm::DataElement& ds);
75
vtkGDCMImageReader *
mReader
;
76
gdcm::Scanner
mscan
;
77
bool
b_loaded
;
78
struct
deleter
79
{
80
void
operator()
(gdcm::File* p)
81
{
82
delete
p;
83
}
84
};
85
friend
struct
deleter
;
86
};
87
//=====================================================================
88
89
90
91
}
// namespace creaImageIO
92
93
94
95
#endif // #ifndef __creaImageIODicomImageReader_h_INCLUDED__
creatools_source
creaImageIO
src
creaImageIODicomImageReader2.h
Generated by
1.8.3.1