LLDB  mainline
ProcessGDBRemoteLog.h
Go to the documentation of this file.
1 //===-- ProcessGDBRemoteLog.h -----------------------------------*- C++ -*-===//
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 #ifndef LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
10 #define LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
11 
12 #include "lldb/Utility/Log.h"
13 #include "llvm/ADT/BitmaskEnum.h"
14 
15 namespace lldb_private {
16 namespace process_gdb_remote {
17 
18 enum class GDBRLog : Log::MaskType {
19  Async = Log::ChannelFlag<0>,
20  Breakpoints = Log::ChannelFlag<1>,
21  Comm = Log::ChannelFlag<2>,
22  Memory = Log::ChannelFlag<3>, // Log memory reads/writes calls
23  MemoryDataLong = Log::ChannelFlag<4>, // Log all memory reads/writes bytes
24  MemoryDataShort = Log::ChannelFlag<5>, // Log short memory reads/writes bytes
25  Packets = Log::ChannelFlag<6>,
26  Process = Log::ChannelFlag<7>,
27  Step = Log::ChannelFlag<8>,
28  Thread = Log::ChannelFlag<9>,
29  Watchpoints = Log::ChannelFlag<10>,
31 };
33 
35 public:
36  static void Initialize();
37 };
38 
39 } // namespace process_gdb_remote
40 
41 template <> Log::Channel &LogChannelFor<process_gdb_remote::GDBRLog>();
42 
43 } // namespace lldb_private
44 
45 #endif // LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
lldb_private::process_gdb_remote::ProcessGDBRemoteLog::Initialize
static void Initialize()
Definition: ProcessGDBRemoteLog.cpp:42
lldb_private::process_gdb_remote::GDBRLog::Breakpoints
@ Breakpoints
lldb_private::Process
Definition: Process.h:338
lldb_private::process_gdb_remote::GDBRLog::Watchpoints
@ Watchpoints
lldb_private::process_gdb_remote::GDBRLog::MemoryDataShort
@ MemoryDataShort
lldb_private::process_gdb_remote::GDBRLog::Step
@ Step
Log.h
lldb_private::process_gdb_remote::GDBRLog::Memory
@ Memory
lldb_private::Thread
Definition: Thread.h:61
lldb_private::process_gdb_remote::GDBRLog
GDBRLog
Definition: ProcessGDBRemoteLog.h:18
lldb_private::process_gdb_remote::GDBRLog::Async
@ Async
lldb_private::LLDBLog::LLVM_MARK_AS_BITMASK_ENUM
@ LLVM_MARK_AS_BITMASK_ENUM
lldb_private::Log::MaskType
uint64_t MaskType
The underlying type of all log channel enums.
Definition: Log.h:124
lldb_private::process_gdb_remote::LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE
LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE()
lldb_private::Log::Channel
Definition: Log.h:146
lldb_private::process_gdb_remote::ProcessGDBRemoteLog
Definition: ProcessGDBRemoteLog.h:34
lldb_private::process_gdb_remote::GDBRLog::Packets
@ Packets
lldb_private::process_gdb_remote::GDBRLog::Comm
@ Comm
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::process_gdb_remote::GDBRLog::MemoryDataLong
@ MemoryDataLong