fw4spl
SSurfaceSegmentationWriter.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2017-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 <fwData/Object.hpp>
12 
13 #include <fwGdcmIO/writer/Series.hpp>
14 
15 #include <fwIO/IWriter.hpp>
16 
17 #include <fwMedData/DicomSeries.hpp>
18 #include <fwMedData/ModelSeries.hpp>
19 #include <fwMedData/Series.hpp>
20 
21 #include <boost/filesystem/path.hpp>
22 
23 namespace fwMedData
24 {
25 class SeriesDB;
26 }
27 
28 namespace ioGdcm
29 {
30 
45 class IOGDCM_CLASS_API SSurfaceSegmentationWriter : public ::fwIO::IWriter
46 {
47 
48 public:
50 
54  IOGDCM_API SSurfaceSegmentationWriter() noexcept;
55 
59  IOGDCM_API virtual ~SSurfaceSegmentationWriter() noexcept override;
60 
62  IOGDCM_API virtual void configureWithIHM() override;
63 
64 protected:
65 
67  IOGDCM_API virtual void starting() override;
68 
70  IOGDCM_API virtual void stopping() override;
71 
73  IOGDCM_API virtual void configuring() override;
74 
76  IOGDCM_API void updating() override;
77 
79  IOGDCM_API ::fwIO::IOPathType getIOPathType() const override;
80 
81 private:
82 
88  void saveSurfaceSegmentation( const ::boost::filesystem::path filename,
89  const ::fwMedData::ModelSeries::csptr& model);
90 };
91 
92 } // namespace ioGdcm
Namespace containing medical data.
Services to write in DICOM 3D format from ModelSeries.
#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