Path: blob/main/contrib/llvm-project/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
39642 views
//===-- DynamicLoaderStatic.h -----------------------------------*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#ifndef LLDB_SOURCE_PLUGINS_DYNAMICLOADER_STATIC_DYNAMICLOADERSTATIC_H9#define LLDB_SOURCE_PLUGINS_DYNAMICLOADER_STATIC_DYNAMICLOADERSTATIC_H1011#include "lldb/Target/DynamicLoader.h"12#include "lldb/Target/Process.h"13#include "lldb/Utility/FileSpec.h"14#include "lldb/Utility/UUID.h"1516class DynamicLoaderStatic : public lldb_private::DynamicLoader {17public:18DynamicLoaderStatic(lldb_private::Process *process);1920// Static Functions21static void Initialize();2223static void Terminate();2425static llvm::StringRef GetPluginNameStatic() { return "static"; }2627static llvm::StringRef GetPluginDescriptionStatic();2829static lldb_private::DynamicLoader *30CreateInstance(lldb_private::Process *process, bool force);3132/// Called after attaching a process.33///34/// Allow DynamicLoader plug-ins to execute some code after35/// attaching to a process.36void DidAttach() override;3738void DidLaunch() override;3940lldb::ThreadPlanSP GetStepThroughTrampolinePlan(lldb_private::Thread &thread,41bool stop_others) override;4243lldb_private::Status CanLoadImage() override;4445// PluginInterface protocol46llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }4748private:49void LoadAllImagesAtFileAddresses();50};5152#endif // LLDB_SOURCE_PLUGINS_DYNAMICLOADER_STATIC_DYNAMICLOADERSTATIC_H535455