fw4spl
Executable.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2015.
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 #ifndef __FWRUNTIME_EXECUTABLE_HPP__
8 #define __FWRUNTIME_EXECUTABLE_HPP__
9 
10 
11 #include "fwRuntime/config.hpp"
12 #include "fwRuntime/IExecutable.hpp"
13 
14 
15 
16 namespace fwRuntime
17 {
18 
19 
20 
32 struct FWRUNTIME_CLASS_API Executable : public IExecutable
33 {
34 
41  FWRUNTIME_API const std::shared_ptr< ConfigurationElement > getInitializationData() const noexcept;
42 
43 
47 
49  FWRUNTIME_API virtual std::shared_ptr<Bundle> getBundle() const noexcept;
50 
51  FWRUNTIME_API virtual void setInitializationData( const std::shared_ptr< ConfigurationElement > configuration )
52  noexcept;
53 
55 
56 
57  protected:
58 
59  // Overrides
60  FWRUNTIME_API virtual void setBundle( std::shared_ptr< Bundle > bundle );
61 
62 
63  private:
64 
68  std::shared_ptr< Bundle > m_bundle;
69 
73  std::shared_ptr< ConfigurationElement > m_initializationData;
74 
75 };
76 
77 
78 
79 } // namespace fwRuntime
80 
81 
82 
83 #endif //__FWRUNTIME_EXECUTABLE_HPP__
Defines the base executable interface.An executable object is an instance created by an extension poi...
Definition: IExecutable.hpp:41
The namespace fwRuntime contains classes to manage bundle, configuration element, extension point in ...
Provides a default fwRuntime::IExecutable interface implementation.This class provides a default impl...
Definition: Executable.hpp:32