LLDB
mainline
llvm-project
lldb
include
lldb
API
SBEvent.h
Go to the documentation of this file.
1
//===-- SBEvent.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_API_SBEVENT_H
10
#define LLDB_API_SBEVENT_H
11
12
#include "
lldb/API/SBDefines.h
"
13
14
#include <cstdio>
15
#include <vector>
16
17
namespace
lldb_private
{
18
namespace
python {
19
class
SWIGBridge;
20
}
21
}
// namespace lldb_private
22
23
namespace
lldb
{
24
25
class
SBBroadcaster
;
26
27
class
LLDB_API
SBEvent
{
28
public
:
29
SBEvent
();
30
31
SBEvent
(
const
lldb::SBEvent
&rhs);
32
33
// Make an event that contains a C string.
34
SBEvent
(uint32_t event,
const
char
*cstr, uint32_t cstr_len);
35
36
~SBEvent
();
37
38
const
SBEvent
&operator=(
const
lldb::SBEvent
&rhs);
39
40
explicit
operator
bool()
const
;
41
42
bool
IsValid()
const
;
43
44
const
char
*GetDataFlavor();
45
46
uint32_t GetType()
const
;
47
48
lldb::SBBroadcaster
GetBroadcaster()
const
;
49
50
const
char
*GetBroadcasterClass()
const
;
51
52
#ifndef SWIG
53
bool
BroadcasterMatchesPtr(
const
lldb::SBBroadcaster
*broadcaster);
54
#endif
55
56
bool
BroadcasterMatchesRef(
const
lldb::SBBroadcaster
&broadcaster);
57
58
void
Clear();
59
60
static
const
char
*GetCStringFromEvent(
const
lldb::SBEvent
&event);
61
62
bool
GetDescription(
lldb::SBStream
&description);
63
64
bool
GetDescription(
lldb::SBStream
&description)
const
;
65
66
protected
:
67
friend
class
SBListener
;
68
friend
class
SBBroadcaster
;
69
friend
class
SBBreakpoint
;
70
friend
class
SBDebugger
;
71
friend
class
SBProcess
;
72
friend
class
SBTarget
;
73
friend
class
SBThread
;
74
friend
class
SBWatchpoint
;
75
76
friend
class
lldb_private::python::SWIGBridge;
77
78
SBEvent
(
lldb::EventSP
&event_sp);
79
80
SBEvent
(
lldb_private::Event
*event_sp);
81
82
lldb::EventSP
&GetSP()
const
;
83
84
void
reset(
lldb::EventSP
&event_sp);
85
86
void
reset(
lldb_private::Event
*event);
87
88
lldb_private::Event
*get()
const
;
89
90
private
:
91
mutable
lldb::EventSP
m_event_sp
;
92
mutable
lldb_private::Event
*m_opaque_ptr =
nullptr
;
93
};
94
95
}
// namespace lldb
96
97
#endif
// LLDB_API_SBEVENT_H
SBDefines.h
LLDB_API
#define LLDB_API
Definition:
SBDefines.h:28
lldb::SBBreakpoint
Definition:
SBBreakpoint.h:25
lldb::SBBroadcaster
Definition:
SBBroadcaster.h:16
lldb::SBDebugger
Definition:
SBDebugger.h:43
lldb::SBEvent
Definition:
SBEvent.h:27
lldb::SBEvent::m_event_sp
lldb::EventSP m_event_sp
Definition:
SBEvent.h:91
lldb::SBEvent::~SBEvent
~SBEvent()
lldb::SBListener
Definition:
SBListener.h:16
lldb::SBProcess
Definition:
SBProcess.h:29
lldb::SBStream
Definition:
SBStream.h:18
lldb::SBTarget
Definition:
SBTarget.h:36
lldb::SBThread
Definition:
SBThread.h:26
lldb::SBWatchpoint
Definition:
SBWatchpoint.h:26
lldb_private::Event
Definition:
Event.h:179
lldb_private
A class that represents a running process on the host machine.
Definition:
SBAttachInfo.h:14
lldb
Definition:
SBAddress.h:15
lldb::SBBroadcaster
class LLDB_API SBBroadcaster
Definition:
SBDefines.h:53
lldb::EventSP
std::shared_ptr< lldb_private::Event > EventSP
Definition:
lldb-forward.h:333
Generated on Tue Dec 5 2023 06:04:51 for LLDB by
1.9.6