fw4spl
SExportWithSeriesDB.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 "uiIO/config.hpp"
10 
11 #include <fwCom/Signal.hpp>
12 #include <fwCom/Slot.hpp>
13 
14 #include <fwGui/IActionSrv.hpp>
15 
16 namespace fwJobs
17 {
18 class IJob;
19 }
20 
21 namespace uiIO
22 {
23 namespace action
24 {
25 
71 class UIIO_CLASS_API SExportWithSeriesDB : public ::fwGui::IActionSrv
72 {
73 public:
75 
80  typedef ::fwCom::Signal< void ( SPTR(::fwJobs::IJob) ) > JobCreatedSignalType;
81  typedef ::fwCom::Slot< void ( SPTR(::fwJobs::IJob) ) > ForwardJobSlotType;
83 
84  UIIO_API SExportWithSeriesDB() noexcept;
85 
86  UIIO_API virtual ~SExportWithSeriesDB() noexcept;
87 
88 protected:
89 
93  void configuring() override;
94 
96  void starting() override;
97 
99  void updating() override;
100 
102  void stopping() override;
103 
104  void info(std::ostream& _sstream ) override;
105 
106 private:
107 
109  void forwardJob(SPTR(::fwJobs::IJob) iJob);
110 
111  std::string m_ioSelectorSrvConfig;
112 
113  SPTR(JobCreatedSignalType) m_sigJobCreated;
114  SPTR(ForwardJobSlotType) m_slotForwardJob;
115 
116 };
117 
118 } // namespace action
119 } // namespace uiIO
#define SPTR(_cls_)
STL namespace.
This action allows to export the current series using a temporary seriesDB.
Defines the service interface managing the menu items.
Definition: IActionSrv.hpp:24
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
This namespace fwJobs provides jobs management.
The namespace uiIO contains a simple service to manipulate IO with IHM..