ifw-fcf  2.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
iDeviceMaker.hpp
Go to the documentation of this file.
1 
9 #ifndef FCF_DEVMGR_COMMON_IDEVICEMAKER_HPP
10 #define FCF_DEVMGR_COMMON_IDEVICEMAKER_HPP
11 
12 // Third party headers
13 #include <yaml-cpp/yaml.h>
14 
15 namespace fcf {
16  namespace devmgr {
17  namespace common {
18 
19  class DataContext;
20  class IDevice;
21 
27  {
28  public:
29 
30 
39  virtual std::shared_ptr<IDevice> Create(const std::string& filename,
40  const std::string& name,
41  DataContext& data_ctx) const = 0;
42 
46  virtual ~IDeviceMaker() {}
47 
48  };
49  }
50  }
51 }
52 
53 
54 #endif // FCF_DEVMGR_COMMON_IDEVICEMAKER_HPP
virtual std::shared_ptr< IDevice > Create(const std::string &filename, const std::string &name, DataContext &data_ctx) const =0
Abstract method to create a new device.
Definition: dataContext.hpp:81
Definition: iDeviceMaker.hpp:26
virtual ~IDeviceMaker()
Default destructor.
Definition: iDeviceMaker.hpp:46