/
GitCaptain
/
llvm-project
Обзор
Документация
Войти
/
GitCaptain
/
llvm-project
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
fix-tests
lldb/source/Commands/CommandObjectTrace.h
51 строка
2 KB
Walter Erquinigo
[trace][intel-pt] Implement trace start and trace stop
31 мар 2021, 03:31
31 мар 2021, 03:31
0b69756
Код
Авторство
О чём код?
//===-- CommandObjectTrace.h ------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LLDB_SOURCE_COMMANDS_COMMANDOBJECTTRACE_H #define LLDB_SOURCE_COMMANDS_COMMANDOBJECTTRACE_H #include "CommandObjectThreadUtil.h" namespace lldb_private { class CommandObjectTrace : public CommandObjectMultiword { public: CommandObjectTrace(CommandInterpreter &interpreter); ~CommandObjectTrace() override; }; /// This class works by delegating the logic to the actual trace plug-in that /// can support the current process. class CommandObjectTraceProxy : public CommandObjectProxy { public: CommandObjectTraceProxy(bool live_debug_session_only, CommandInterpreter &interpreter, const char *name, const char *help = nullptr, const char *syntax = nullptr, uint32_t flags = 0) : CommandObjectProxy(interpreter, name, help, syntax, flags), m_live_debug_session_only(live_debug_session_only) {} protected: virtual lldb::CommandObjectSP GetDelegateCommand(Trace &trace) = 0; llvm::Expected<lldb::CommandObjectSP> DoGetProxyCommandObject(); CommandObject *GetProxyCommandObject() override; private: llvm::StringRef GetUnsupportedError() override { return m_delegate_error; } bool m_live_debug_session_only; lldb::CommandObjectSP m_delegate_sp; std::string m_delegate_error; }; } // namespace lldb_private #endif // LLDB_SOURCE_COMMANDS_COMMANDOBJECTTRACE_H