summaryrefslogtreecommitdiff
path: root/libunwindstack/include/unwindstack/Memory.h
diff options
context:
space:
mode:
Diffstat (limited to 'libunwindstack/include/unwindstack/Memory.h')
-rw-r--r--libunwindstack/include/unwindstack/Memory.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/libunwindstack/include/unwindstack/Memory.h b/libunwindstack/include/unwindstack/Memory.h
index 3d81878..4b33ddb 100644
--- a/libunwindstack/include/unwindstack/Memory.h
+++ b/libunwindstack/include/unwindstack/Memory.h
@@ -35,13 +35,15 @@ class Memory {
static std::shared_ptr<Memory> CreateProcessMemoryCached(pid_t pid);
static std::shared_ptr<Memory> CreateOfflineMemory(const uint8_t* data, uint64_t start,
uint64_t end);
- static std::unique_ptr<Memory> CreateFileMemory(const std::string& path, uint64_t offset);
+ static std::unique_ptr<Memory> CreateFileMemory(const std::string& path, uint64_t offset,
+ uint64_t size = UINT64_MAX);
virtual bool ReadString(uint64_t addr, std::string* dst, size_t max_read);
virtual void Clear() {}
- virtual bool IsLocal() const { return false; }
+ // Get pointer to directly access the data for buffers that support it.
+ virtual uint8_t* GetPtr(size_t /*addr*/ = 0) { return nullptr; }
virtual size_t Read(uint64_t addr, void* dst, size_t size) = 0;
virtual long ReadTag(uint64_t) { return -1; }