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