35 #ifndef ARM_TRC_MEM_ACC_BASE_H_INCLUDED 36 #define ARM_TRC_MEM_ACC_BASE_H_INCLUDED 38 #include "opencsd/ocsd_if_types.h" 79 void setRange(ocsd_vaddr_t startAddr, ocsd_vaddr_t endAddr);
88 virtual const bool addrInRange(
const ocsd_vaddr_t s_address)
const;
110 virtual const uint32_t
bytesInRange(
const ocsd_vaddr_t s_address,
const uint32_t reqBytes)
const;
131 virtual const uint32_t
readBytes(
const ocsd_vaddr_t s_address,
const ocsd_mem_space_acc_t memSpace,
const uint32_t reqBytes, uint8_t *byteBuffer) = 0;
146 const bool inMemSpace(
const ocsd_mem_space_acc_t mem_space)
const {
return (
bool)(((uint8_t)
m_mem_space & (uint8_t)mem_space) != 0); };
198 if(bytesInRange > reqBytes)
199 bytesInRange = reqBytes;
231 static ocsd_err_t CreateBufferAccessor(
TrcMemAccessorBase **pAccessor,
const ocsd_vaddr_t s_address,
const uint8_t *p_buffer,
const uint32_t size);
232 static ocsd_err_t CreateFileAccessor(
TrcMemAccessorBase **pAccessor,
const std::string &pathToFile, ocsd_vaddr_t startAddr,
size_t offset = 0,
size_t size = 0);
233 static ocsd_err_t CreateCBAccessor(
TrcMemAccessorBase **pAccessor,
const ocsd_vaddr_t s_address,
const ocsd_vaddr_t e_address,
const ocsd_mem_space_acc_t mem_space);
242 #endif // ARM_TRC_MEM_ACC_BASE_H_INCLUDED
ocsd_mem_space_acc_t m_mem_space
enum MemAccTypes getType() const
const bool inMemSpace(const ocsd_mem_space_acc_t mem_space) const
virtual const bool addrInRange(const ocsd_vaddr_t s_address) const
virtual const uint32_t readBytes(const ocsd_vaddr_t s_address, const ocsd_mem_space_acc_t memSpace, const uint32_t reqBytes, uint8_t *byteBuffer)=0
void setMemSpace(ocsd_mem_space_acc_t memSpace)
virtual void getMemAccString(std::string &accStr) const
virtual const uint32_t bytesInRange(const ocsd_vaddr_t s_address, const uint32_t reqBytes) const
const ocsd_mem_space_acc_t getMemSpace() const
ocsd_vaddr_t m_startAddress
virtual const bool validateRange()
Memory range to access by trace decoder.
void setRange(ocsd_vaddr_t startAddr, ocsd_vaddr_t endAddr)
virtual ~TrcMemAccessorBase()
ocsd_vaddr_t m_endAddress
TrcMemAccessorBase(MemAccTypes type)
virtual const bool addrStartOfRange(const ocsd_vaddr_t s_address) const
virtual const bool overLapRange(const TrcMemAccessorBase *p_test_acc) const