1 //===-- MemoryHistory.h ---------------------------------------------------*- 2 //C++ -*-===// 3 // 4 // The LLVM Compiler Infrastructure 5 // 6 // This file is distributed under the University of Illinois Open Source 7 // License. See LICENSE.TXT for details. 8 // 9 //===----------------------------------------------------------------------===// 10 11 #ifndef liblldb_MemoryHistory_h_ 12 #define liblldb_MemoryHistory_h_ 13 14 #include <vector> 15 16 #include "lldb/Core/PluginInterface.h" 17 #include "lldb/lldb-private.h" 18 #include "lldb/lldb-types.h" 19 20 namespace lldb_private { 21 22 typedef std::vector<lldb::ThreadSP> HistoryThreads; 23 24 class MemoryHistory : public std::enable_shared_from_this<MemoryHistory>, 25 public PluginInterface { 26 public: 27 static lldb::MemoryHistorySP FindPlugin(const lldb::ProcessSP process); 28 29 virtual HistoryThreads GetHistoryThreads(lldb::addr_t address) = 0; 30 }; 31 32 } // namespace lldb_private 33 34 #endif // liblldb_MemoryHistory_h_ 35