LeviLamina
Loading...
Searching...
No Matches
DynamicLibrary.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/Result.h"
7
8namespace Bedrock {
9
10class DynamicLibrary : public ::std::enable_shared_from_this<::Bedrock::DynamicLibrary> {
11public:
12 // DynamicLibrary inner types declare
13 // clang-format off
14 class Impl;
15 // clang-format on
16
17 // DynamicLibrary inner types define
18 class Impl {
19 public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual ~Impl() = default;
23
24 virtual ::Bedrock::Result<void*> loadLibrary(::std::string const&) = 0;
25
26 virtual ::Bedrock::Result<void*> loadFunction(void*, char const*) = 0;
27
28 virtual ::Bedrock::Result<void> freeLibrary(void*) = 0;
29 // NOLINTEND
30
31 public:
32 // virtual function thunks
33 // NOLINTBEGIN
34
35 // NOLINTEND
36 };
37
38public:
39 // member variables
40 // NOLINTBEGIN
44 // NOLINTEND
45
46public:
47 // prevent constructor by default
48 DynamicLibrary& operator=(DynamicLibrary const&);
49 DynamicLibrary(DynamicLibrary const&);
50 DynamicLibrary();
51};
52
53} // namespace Bedrock
Definition DynamicLibrary.h:18
Definition Alias.h:14