fw4spl
DicomSeriesAnonymizer.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2017.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #ifndef __FWGDCMIO_HELPER_DICOMSERIESANONYMIZER_HPP__
8 #define __FWGDCMIO_HELPER_DICOMSERIESANONYMIZER_HPP__
9 
10 #include "fwGdcmIO/config.hpp"
11 #include "fwGdcmIO/helper/DicomAnonymizer.hpp"
12 #include "fwGdcmIO/helper/DicomSeriesWriter.hpp"
13 #include "fwGdcmIO/reader/SeriesDB.hpp"
14 
15 #include <fwMedData/DicomSeries.hpp>
16 
17 namespace fwJobs
18 {
19 class IJob;
20 class Aggregator;
21 }
22 
23 namespace fwGdcmIO
24 {
25 namespace helper
26 {
27 
31 class FWGDCMIO_CLASS_API DicomSeriesAnonymizer
32 {
33 public:
34 
36 
38  FWGDCMIO_API DicomSeriesAnonymizer();
39 
41  FWGDCMIO_API virtual ~DicomSeriesAnonymizer();
42 
44  FWGDCMIO_API void anonymize(const ::fwMedData::DicomSeries::sptr& source);
45 
47  FWGDCMIO_API void anonymize(const ::fwMedData::DicomSeries::sptr& source,
48  const ::fwMedData::DicomSeries::sptr& destination);
49 
51  FWGDCMIO_API SPTR(::fwJobs::Aggregator) getJob() const;
52 
53 protected:
54 
56  ::fwGdcmIO::helper::DicomSeriesWriter::sptr m_writer;
57 
60 
62  ::fwGdcmIO::reader::SeriesDB::sptr m_reader;
63 
66 
67 };
68 
69 } // namespace helper
70 } // namespace fwGdcmIO
71 
72 #endif /*__FWGDCMIO_HELPER_DICOMSERIESANONYMIZER_HPP__*/
#define SPTR(_cls_)
::fwGdcmIO::helper::DicomSeriesWriter::sptr m_writer
Dicom writer.
The namespace fwGdcmIO contains reader, writer and helper for dicom data.
This class contains helpers to anonymize dicom files on filesystem. Anonymization is performed accord...
::fwGdcmIO::helper::DicomAnonymizer m_anonymizer
Dicom anonymizer.
This class manages an aggregation of IJob.
Definition: Aggregator.hpp:32
This namespace fwJobs provides jobs management.
This class contains helpers to anonymize DicomSeries.
::fwGdcmIO::reader::SeriesDB::sptr m_reader
Dicom Reader.
#define fwCoreClassFactoryMacro(_classinfo_, _parameters_, _factory_)
Generate methods for classes with one factory.