plugify 1.0.0.0
Loading...
Searching...
No Matches
plugin_descriptor.hpp
1#pragma once
2
3#include <span>
4#include <string>
5
6#include "handle.hpp"
7#include "method.hpp"
8#include "version.hpp"
9
10#include <plugify_export.h>
11
12namespace plugify {
13 struct PluginDescriptor;
14 class PluginReferenceDescriptorHandle;
15 class MethodHandle;
16
21 class PLUGIFY_API PluginDescriptorHandle : public Handle<const PluginDescriptor> {
22 using Handle::Handle;
23 public:
29 int32_t GetFileVersion() const noexcept;
30
36 plg::version GetVersion() const noexcept;
37
43 std::string_view GetVersionName() const noexcept;
44
50 std::string_view GetFriendlyName() const noexcept;
51
57 std::string_view GetDescription() const noexcept;
58
64 std::string_view GetCreatedBy() const noexcept;
65
71 std::string_view GetCreatedByURL() const noexcept;
72
78 std::string_view GetDocsURL() const noexcept;
79
85 std::string_view GetDownloadURL() const noexcept;
86
92 std::string_view GetUpdateURL() const noexcept;
93
99 std::span<const std::string_view> GetSupportedPlatforms() const noexcept;
100
106 std::span<const std::string_view> GetResourceDirectories() const noexcept;
107
113 std::string_view GetEntryPoint() const noexcept;
114
120 std::string_view GetLanguageModule() const noexcept;
121
127 std::span<const PluginReferenceDescriptorHandle> GetDependencies() const noexcept;
128
134 std::span<const MethodHandle> GetExportedMethods() const noexcept;
135 };
136} // namespace plugify
A generic handle class that manages a pointer to an object of type T.
Definition handle.hpp:18
A handle class for the Method structure.
Definition method.hpp:105
A handle class for the PluginDescriptor structure.
int32_t GetFileVersion() const noexcept
Retrieves the file version of the plugin.
A handle class for the PluginReferenceDescriptor structure.