quic/qbox
Loading...
Searching...
No Matches
qemu-components
common
include
tlm-extensions
qemu-mr-hint.h
1
/*
2
* This file is part of libqbox
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
#ifndef _LIBQBOX_TLM_EXTENSIONS_QEMU_MR_HINT_H
10
#define _LIBQBOX_TLM_EXTENSIONS_QEMU_MR_HINT_H
11
12
#include <tlm>
13
14
#include <libqemu-cxx/libqemu-cxx.h>
15
16
class
QemuMrHintTlmExtension
:
public
tlm::tlm_extension<QemuMrHintTlmExtension>
17
{
18
private
:
19
qemu::MemoryRegion
m_mr;
20
uint64_t
m_offset;
21
22
public
:
23
QemuMrHintTlmExtension
() =
default
;
24
QemuMrHintTlmExtension
(
const
QemuMrHintTlmExtension
&) =
default
;
25
26
QemuMrHintTlmExtension
(
qemu::MemoryRegion
mr
,
uint64_t
offset): m_mr(
mr
), m_offset(offset) {}
27
28
virtual
tlm_extension_base
* clone()
const override
{
return
new
QemuMrHintTlmExtension
(*
this
); }
29
30
virtual
void
copy_from(
tlm_extension_base
const
&
ext
)
override
31
{
32
m_mr =
static_cast<
const
QemuMrHintTlmExtension
&
>
(
ext
).m_mr;
33
m_offset =
static_cast<
const
QemuMrHintTlmExtension
&
>
(
ext
).m_offset;
34
}
35
36
qemu::MemoryRegion
get_mr()
const
{
return
m_mr; }
37
uint64_t
get_offset()
const
{
return
m_offset; }
38
};
39
40
#endif
QemuMrHintTlmExtension
Definition
qemu-mr-hint.h:17
QemuTargetSocket
Definition
target.h:160
qemu::MemoryRegion
Definition
libqemu-cxx.h:362
Generated by
1.9.8