plugify 1.0.0.0
Loading...
Searching...
No Matches
plugin_descriptor.hpp
1#pragma once
2
3#include <plugify/method.hpp>
4#include <plugify/reference_wrapper.hpp>
5#include <plugify_export.h>
6#include <span>
7#include <string>
8
9namespace plugify {
10 struct PluginDescriptor;
11 class PluginReferenceDescriptorRef;
12 class MethodRef;
13
22 class PLUGIFY_API PluginDescriptorRef : public Ref<const PluginDescriptor> {
23 using Ref::Ref;
24 public:
30 int32_t GetFileVersion() const noexcept;
31
37 int32_t GetVersion() const noexcept;
38
44 std::string_view GetVersionName() const noexcept;
45
51 std::string_view GetFriendlyName() const noexcept;
52
58 std::string_view GetDescription() const noexcept;
59
65 std::string_view GetCreatedBy() const noexcept;
66
72 std::string_view GetCreatedByURL() const noexcept;
73
79 std::string_view GetDocsURL() const noexcept;
80
86 std::string_view GetDownloadURL() const noexcept;
87
93 std::string_view GetUpdateURL() const noexcept;
94
100 std::span<std::string_view> GetSupportedPlatforms() const noexcept;
101
107 std::span<std::string_view> GetResourceDirectories() const noexcept;
108
114 std::string_view GetEntryPoint() const noexcept;
115
121 std::string_view GetLanguageModule() const noexcept;
122
128 std::span<const PluginReferenceDescriptorRef> GetDependencies() const noexcept;
129
135 std::span<const MethodRef> GetExportedMethods() const noexcept;
136 };
137 static_assert(is_ref_v<PluginDescriptorRef>);
138} // namespace plugify
A reference class for the Method structure.
Definition method.hpp:118
A reference class for the PluginDescriptor structure.
int32_t GetFileVersion() const noexcept
< Inherit constructors from Ref<const PluginDescriptor>.
A reference class for the PluginReferenceDescriptor structure.
A lightweight reference wrapper for objects of type T.