31 #ifndef __SIM_SYSCALL_EMUL_BUF_HH__
32 #define __SIM_SYSCALL_EMUL_BUF_HH__
168 #endif // __SIM_SYSCALL_EMUL_BUF_HH__
BufferArg(Addr _addr, int _size)
Allocate a buffer of size 'size' representing the memory at target address 'addr'.
BaseBufferArg(Addr _addr, int _size)
Allocate a buffer of size 'size' representing the memory at target address 'addr'.
T & operator*()
Convert TypedBufferArg<T> to a reference to T that references the internal buffer value...
uint8_t *const bufPtr
pointer to buffer in simulator space
bool copyIn(SETranslatingPortProxy &memproxy)
copy data into simulator space (read from target memory)
virtual void readBlob(Addr addr, uint8_t *p, int size) const
Read size bytes memory at address and store in p.
TypedBufferArg is a class template; instances of this template represent typed buffers in target user...
const int size
buffer size
T & operator[](int i)
Enable the use of '[]' to reference fields where T is an array type.
bool copyOut(SETranslatingPortProxy &memproxy)
copy data out of simulator space (write to target memory)
const Addr addr
address of buffer in target address space
void * bufferPtr()
Return a pointer to the internal simulator-space buffer.
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,16,32,64}_t.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Base class for BufferArg and TypedBufferArg, Not intended to be used directly.
TranslatingPortProxy Object Declaration for SE.
T * operator->()
Enable the use of '->' to reference fields where T is a struct type.
BufferArg represents an untyped buffer in target user space that is passed by reference to an (emulat...
TypedBufferArg(Addr _addr, int _size=sizeof(T))
Allocate a buffer of type T representing the memory at target address 'addr'.
virtual void writeBlob(Addr addr, const uint8_t *p, int size) const
Write size bytes from p to address.