InfoComponents.hpp 1.21 KB
Newer Older
1
2
3
4
5
#ifndef INFO_COMPONENTS_HPP
#define INFO_COMPONENTS_HPP
#include <interfaces/IInfoComponent.hpp>
namespace XPlug {

6
7
8
9
/**
 * @brief  currently only implementation of the IInfoComponent. Stores infos in
 * variables and satisfies the Interface.
 */
10
11
12
13
14
15
16
17
18
class StaticInfoComponent : public IInfoComponent
{
public:
  std::string pluginName;
  std::string pluginUri;
  std::string pluginDescription;
  std::string pluginCopyright;
  std::string creatorName;
  std::string creatorURL;
19
  int64_t id;
20
21
22
23
24
25
  StaticInfoComponent();
  StaticInfoComponent(std::string pluginName,
                      std::string pluginUri,
                      std::string pluginDescription,
                      std::string pluginCopyright,
                      std::string creatorName,
26
27
                      std::string creatorURL,
                      int64_t _id);
28
29
30
31
32
33
34

  virtual std::string_view getPluginName() override;
  virtual std::string_view getPluginURI() override;
  virtual std::string_view getPluginDescription() override;
  virtual std::string_view getPluginCopyright() override;
  virtual std::string_view getCreatorName() override;
  virtual std::string_view getCreatorURL() override;
35
  virtual int64_t getID() override;
36
};
37
38
}
#endif //! INFO_COMPONENTS_HPP