1//===-- MemoryHistory.cpp -------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "lldb/Target/MemoryHistory.h"
10#include "lldb/Core/PluginManager.h"
11
12using namespace lldb;
13using namespace lldb_private;
14
15lldb::MemoryHistorySP MemoryHistory::FindPlugin(const ProcessSP process) {
16 MemoryHistoryCreateInstance create_callback = nullptr;
17
18 for (uint32_t idx = 0;
19 (create_callback = PluginManager::GetMemoryHistoryCreateCallbackAtIndex(
20 idx)) != nullptr;
21 ++idx) {
22 MemoryHistorySP memory_history_sp(create_callback(process));
23 if (memory_history_sp)
24 return memory_history_sp;
25 }
26
27 return MemoryHistorySP();
28}
29

source code of lldb/source/Target/MemoryHistory.cpp