quic/qbox
Loading...
Searching...
No Matches
qemu-components
common
include
libqemu-cxx
loader.h
1
/*
2
* This file is part of libqemu-cxx
3
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
4
* Author: GreenSocs 2021
5
*
6
* SPDX-License-Identifier: BSD-3-Clause
7
*/
8
9
#pragma once
10
11
#include <memory>
12
#include <string>
13
14
namespace
qemu {
15
class
LibraryIface
16
{
17
public
:
18
virtual
bool
symbol_exists(
const
char
*
symbol
) = 0;
19
virtual
void
* get_symbol(
const
char
*
symbol
) = 0;
20
};
21
22
class
LibraryLoaderIface
23
{
24
public
:
25
using
LibraryIfacePtr = std::shared_ptr<LibraryIface>;
26
27
virtual
LibraryIfacePtr load_library(
const
std::string&
lib_name
,
bool
load_as_separate_instance
=
false
) = 0;
28
29
virtual
const
char
* get_lib_ext() = 0;
30
virtual
const
char
* get_last_error() = 0;
31
32
virtual
~LibraryLoaderIface
() =
default
;
33
};
34
35
LibraryLoaderIface
& get_default_lib_loader();
36
37
}
// namespace qemu
QemuTargetSocket
Definition
target.h:160
qemu::LibraryIface
Definition
loader.h:16
qemu::LibraryLoaderIface
Definition
loader.h:23
Generated by
1.9.8