29#ifndef __SIM_SYSCALL_EMUL_BUF_HH__
30#define __SIM_SYSCALL_EMUL_BUF_HH__
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,...
const uint64_t size
buffer size
BaseBufferArg(Addr _addr, uint64_t _size)
Allocate a buffer of size 'size' representing the memory at target address 'addr'.
bool copyIn(const PortProxy &memproxy)
copy data into simulator space (read from target memory)
const Addr addr
address of buffer in target address space
uint8_t *const bufPtr
pointer to buffer in simulator space
bool copyOut(const PortProxy &memproxy)
copy data out of simulator space (write to target memory)
BufferArg(Addr _addr, uint64_t _size)
Allocate a buffer of size 'size' representing the memory at target address 'addr'.
void * bufferPtr()
Return a pointer to the internal simulator-space buffer.
This object is a proxy for a port or other object which implements the functional response protocol,...
void readBlob(Addr addr, void *p, uint64_t size) const
Higher level interfaces based on the above.
void writeBlob(Addr addr, const void *p, uint64_t size) const
Same as tryWriteBlob, but insists on success.
T & operator*()
Convert TypedBufferArg<T> to a reference to T that references the internal buffer value.
T * operator->()
Enable the use of '->' to reference fields where T is a struct type.
T & operator[](int i)
Enable the use of '[]' to reference fields where T is an array type.
TypedBufferArg(Addr _addr, uint64_t _size=sizeof(T))
Allocate a buffer of type T representing the memory at target address 'addr'.
Copyright (c) 2024 Arm Limited All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.