fw4spl
IXMLParser.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2017.
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 __FWSERVICES_IXMLPARSER_HPP__
8 #define __FWSERVICES_IXMLPARSER_HPP__
9 
10 #include "fwServices/IService.hpp"
11 
12 #include <fwRuntime/ConfigurationElement.hpp>
13 
14 #include <fwTools/Object.hpp>
15 
16 namespace fwServices
17 {
18 
36 class FWSERVICES_CLASS_API IXMLParser : public ::fwServices::IService
37 {
38 public:
39 
41 
42 public:
43 
44  FWSERVICES_API void setObjectConfig( ::fwRuntime::ConfigurationElement::csptr _cfgElem );
45 
46  FWSERVICES_API virtual void createConfig( ::fwTools::Object::sptr _obj );
47 
48  FWSERVICES_API virtual void startConfig();
49 
50  FWSERVICES_API virtual void updateConfig();
51 
52  FWSERVICES_API virtual void stopConfig();
53 
54  FWSERVICES_API virtual void destroyConfig();
55 
56  ::fwRuntime::ConfigurationElement::csptr m_cfg;
57 
58 protected:
59 
63  FWSERVICES_API IXMLParser( );
64 
68  FWSERVICES_API virtual ~IXMLParser();
69 
73  FWSERVICES_API virtual void starting() override;
74 
78  FWSERVICES_API virtual void stopping() override;
79 
83  FWSERVICES_API virtual void configuring() override;
84 
90  FWSERVICES_API virtual void updating() override;
91 };
92 
93 }
94 
95 #endif /* __FWSERVICES_IXMLPARSER_HPP__ */
Base class for all services.
Definition: IService.hpp:61
Namespace fwServices is dedicated to (mimic) the dynamic affectation of methods to (pure data) object...
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
Service type for the construction of an object and associated services from an XML-based description...
Definition: IXMLParser.hpp:36