fw4spl
ioVTK/include/ioVTK/SImageSeriesWriter.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 "ioVTK/config.hpp"
10 
11 #include <fwIO/IWriter.hpp>
12 
13 #include <boost/filesystem/path.hpp>
14 
15 #include <string>
16 
17 namespace fwData
18 {
19 class Image;
20 }
21 
22 namespace fwJobs
23 {
24 class IJob;
25 }
26 
27 namespace ioVTK
28 {
29 
53 class IOVTK_CLASS_API SImageSeriesWriter : public ::fwIO::IWriter
54 {
55 
56 public:
57 
58  typedef ::fwCom::Signal< void ( SPTR(::fwJobs::IJob) ) > JobCreatedSignalType;
59 
63  IOVTK_API SImageSeriesWriter() noexcept;
64 
65  ~SImageSeriesWriter() noexcept
66  {
67  }
68 
70 
74  IOVTK_API virtual void configureWithIHM() override;
75 
76 protected:
77 
78  IOVTK_API virtual ::fwIO::IOPathType getIOPathType() const override;
79 
85  IOVTK_API virtual void starting() override;
86 
92  IOVTK_API virtual void stopping() override;
93 
99  IOVTK_API virtual void configuring() override;
100 
107  IOVTK_API void updating() override;
108 
114  IOVTK_API void info(std::ostream& _sstream ) override;
115 
116 private:
117 
122  bool m_bServiceIsConfigured;
123 
127  ::boost::filesystem::path m_fsImgPath;
128 
129  SPTR(JobCreatedSignalType) m_sigJobCreated;
130 
131 };
132 
133 } // namespace ioVTK
#define SPTR(_cls_)
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
Writer service API. It manages extension points definition and extension configuration.
Definition: IWriter.hpp:33
Contains the representation of the data objects used in the framework.
This namespace fwJobs provides jobs management.
The namespace ioVTK contains reader, writer and helper using the fwVtkIO lib for output and input act...