fw4spl
io/fwGdcmIO/include/fwGdcmIO/writer/ie/Image.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2018.
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 #pragma once
8 
9 #include "fwGdcmIO/writer/ie/InformationEntity.hpp"
10 
11 #include <fwData/Image.hpp>
12 
13 namespace fwGdcmIO
14 {
15 namespace writer
16 {
17 namespace ie
18 {
19 
23 class FWGDCMIO_CLASS_API Image : public ::fwGdcmIO::writer::ie::InformationEntity< ::fwData::Image >
24 {
25 
26 public:
36  FWGDCMIO_API Image(const SPTR(::gdcm::Writer)& writer,
37  const SPTR(::fwGdcmIO::container::DicomInstance)& instance,
38  const ::fwData::Image::csptr& image,
39  const ::fwLog::Logger::sptr& logger = nullptr,
40  ProgressCallback progress = nullptr,
41  CancelRequestedCallback cancel = nullptr);
42 
44  FWGDCMIO_API virtual ~Image();
45 
50  FWGDCMIO_API virtual void writeGeneralImageModule();
51 
57  FWGDCMIO_API virtual void writeGeneralImageModuleSpecificTags(unsigned int instanceNumber);
58 
63  FWGDCMIO_API virtual void writeImagePlaneModule();
64 
70  FWGDCMIO_API virtual void writeImagePlaneModuleSpecificTags(unsigned int instanceNumber);
71 
76  FWGDCMIO_API virtual void writeImagePixelModule();
77 
83  FWGDCMIO_API virtual void writeImagePixelModuleSpecificTags(unsigned int instanceNumber);
84 
89  FWGDCMIO_API virtual void writeVOILUTModule();
90 
95  FWGDCMIO_API virtual void writeSOPCommonModule();
96 
102  FWGDCMIO_API virtual void writeSOPCommonModuleSpecificTags(unsigned int instanceNumber);
103 
108  FWGDCMIO_API virtual void writeCTImageModule();
109 
114  FWGDCMIO_API virtual void writeMRImageModule();
115 
116 };
117 
118 } // namespace ie
119 } // namespace writer
120 } // namespace fwGdcmIO
#define SPTR(_cls_)
InformationEntity base class used to write modules.
This class defines a DICOM SOP instance. It is useful during the whole writing process. This class allows to share data between module writers.
The namespace fwGdcmIO contains reader, writer and helper for dicom data.