plugify  1.0.0.0
plugin_reference_descriptor.hpp
1 #pragma once
2 
3 #include <optional>
4 #include <plugify/reference_wrapper.hpp>
5 #include <plugify_export.h>
6 #include <span>
7 #include <string>
8 
9 namespace plugify {
10  struct PluginReferenceDescriptor;
11 
20  class PLUGIFY_API PluginReferenceDescriptorRef : public Ref<const PluginReferenceDescriptor> {
21  using Ref::Ref;
22  public:
28  std::string_view GetName() const noexcept;
29 
35  bool IsOptional() const noexcept;
36 
42  std::span<std::string_view> GetSupportedPlatforms() const noexcept;
43 
49  std::optional<int32_t> GetRequestedVersion() const noexcept;
50  };
51  static_assert(is_ref_v<PluginReferenceDescriptorRef>);
52 } // namespace plugify
A reference class for the PluginReferenceDescriptor structure.
std::string_view GetName() const noexcept
< Inherit constructors from Ref<const PluginReferenceDescriptor>.
A lightweight reference wrapper for objects of type T.