Pothos  0.4.3-gabce2ce6
The Pothos dataflow programming software suite
Module.hpp
Go to the documentation of this file.
1 
11 #pragma once
12 #include <Pothos/Config.hpp>
13 #include <memory>
14 #include <vector>
15 #include <string>
16 
17 namespace Pothos {
18 
19 class Plugin;
20 
25 {
26 public:
28  static const PluginModule &null(void);
29 
33  PluginModule(void);
34 
41  PluginModule(const std::string &path);
42 
44  ~PluginModule(void);
45 
54  static PluginModule safeLoad(const std::string &path);
55 
60  std::string getFilePath(void) const;
61 
66  const std::vector<std::string> &getPluginPaths(void) const;
67 
68 private:
69  struct Impl;
70  std::shared_ptr<Impl> _impl;
71  friend Plugin;
72 };
73 
74 } //namespace Pothos
Definition: Module.hpp:24
#define POTHOS_API
Definition: Config.hpp:41
Definition: CallInterface.hpp:15
Definition: Plugin.hpp:23