fw4spl
SSeriesDBWriter.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 "ioGdcm/config.hpp"
10 
11 #include <fwGdcmIO/writer/Series.hpp>
12 
13 #include <fwIO/IWriter.hpp>
14 
15 #include <boost/filesystem/path.hpp>
16 
17 #include <string>
18 
19 namespace fwMedData
20 {
21 class SeriesDB;
22 }
23 
24 namespace ioGdcm
25 {
26 
41 class IOGDCM_CLASS_API SSeriesDBWriter : public ::fwIO::IWriter
42 {
43 
44 public:
46 
50  IOGDCM_API SSeriesDBWriter() noexcept;
51 
55  IOGDCM_API virtual ~SSeriesDBWriter() noexcept override;
56 
58  IOGDCM_API virtual void configureWithIHM() override;
59 
60 protected:
61 
63  IOGDCM_API virtual void starting() override;
64 
66  IOGDCM_API virtual void stopping() override;
67 
69  IOGDCM_API virtual void configuring() override;
70 
72  IOGDCM_API void updating() override;
73 
75  IOGDCM_API ::fwIO::IOPathType getIOPathType() const override;
76 
77 private:
78 
84  void saveSeriesDB( const ::boost::filesystem::path folder, SPTR(::fwMedData::SeriesDB) seriesDB );
85 
87  bool selectFiducialsExportMode();
88 
90  ::fwGdcmIO::writer::Series::FiducialsExportMode m_fiducialsExportMode;
91 
92 };
93 
94 } // namespace ioGdcm
#define SPTR(_cls_)
Namespace containing medical data.
The namespace fwGdcmIO contains reader, writer and helper for dicom data.
Services to write several series (ImageSeries or ModelSeries) in DICOM format.
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
ioGdcm contains services use to deal with DICOM using the GDCM library.
Writer service API. It manages extension points definition and extension configuration.
Definition: IWriter.hpp:33
The namespace fwIO contains the base interface for reader and writer services.
Definition: ioTypes.hpp:16