1 //===-- SystemRuntime.cpp ---------------------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #include "lldb/lldb-private.h" 11 #include "lldb/Target/SystemRuntime.h" 12 #include "lldb/Target/Process.h" 13 #include "lldb/Core/PluginManager.h" 14 15 using namespace lldb; 16 using namespace lldb_private; 17 18 SystemRuntime* 19 SystemRuntime::FindPlugin (Process *process) 20 { 21 SystemRuntimeCreateInstance create_callback = NULL; 22 for (uint32_t idx = 0; (create_callback = PluginManager::GetSystemRuntimeCreateCallbackAtIndex(idx)) != NULL; ++idx) 23 { 24 std::unique_ptr<SystemRuntime> instance_ap(create_callback(process)); 25 if (instance_ap.get()) 26 return instance_ap.release(); 27 } 28 return NULL; 29 } 30 31 32 //---------------------------------------------------------------------- 33 // SystemRuntime constructor 34 //---------------------------------------------------------------------- 35 SystemRuntime::SystemRuntime(Process *process) : 36 m_process (process) 37 { 38 } 39 40 //---------------------------------------------------------------------- 41 // Destructor 42 //---------------------------------------------------------------------- 43 SystemRuntime::~SystemRuntime() 44 { 45 } 46 47 void 48 SystemRuntime::DidAttach () 49 { 50 } 51 52 void 53 SystemRuntime::DidLaunch() 54 { 55 } 56 57 void 58 SystemRuntime::ModulesDidLoad (ModuleList &module_list) 59 { 60 } 61 62 std::vector<ConstString> 63 SystemRuntime::GetThreadOriginExtendedBacktraceTypes () 64 { 65 std::vector<ConstString> types; 66 return types; 67 } 68