quic/qbox
Loading...
Searching...
No Matches
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
14namespace qemu {
16{
17public:
18 virtual bool symbol_exists(const char* symbol) = 0;
19 virtual void* get_symbol(const char* symbol) = 0;
20};
21
23{
24public:
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
35LibraryLoaderIface& get_default_lib_loader();
36
37} // namespace qemu
Definition target.h:160
Definition loader.h:16
Definition loader.h:23