fw4spl
Bundles/core/dataReg/include/dataReg/parser/Composite.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 __DATAREG_PARSER_COMPOSITE_HPP__
8 #define __DATAREG_PARSER_COMPOSITE_HPP__
9 
10 #include "dataReg/config.hpp"
11 
12 #include <fwRuntime/ConfigurationElement.hpp>
13 
14 #include <fwServices/IAppConfigManager.hpp>
15 #include <fwServices/IXMLParser.hpp>
16 
17 #include <fwTools/Failed.hpp>
18 #include <fwTools/Object.hpp>
19 
20 namespace dataReg
21 {
22 namespace parser
23 {
29 class DATAREG_CLASS_API Composite : public ::fwServices::IXMLParser
30 {
31 public:
32 
34 
39  {
40  }
41 
45  virtual ~Composite()
46  {
47  }
48 
49  DATAREG_API void createConfig( ::fwTools::Object::sptr _obj ) override;
50 
51  DATAREG_API void startConfig() override;
52 
53  DATAREG_API void updateConfig() override;
54 
55  DATAREG_API void stopConfig() override;
56 
57  DATAREG_API void destroyConfig() override;
58 
59 protected:
60 
66  DATAREG_API virtual void updating( ) override;
67 
68 private:
69 
71  bool refObjectValidator( ::fwRuntime::ConfigurationElement::sptr _cfgElement );
72 
73  std::vector< ::fwServices::IAppConfigManager::sptr > m_ctmContainer;
74 };
75 
76 } //namespace parser
77 } //namespace dataReg
78 
79 #endif /* __DATAREG_PARSER_COMPOSITE_HPP__ */
Specific service for the construction of a Composite and its associated services from an XML-based de...
The namespace dataReg (data registration) contains classes which allow to parse the xml configuration...
#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