LLDB
mainline
llvm-project
lldb
include
lldb
API
SBBroadcaster.h
Go to the documentation of this file.
1
//===-- SBBroadcaster.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_SBBROADCASTER_H
10
#define LLDB_API_SBBROADCASTER_H
11
12
#include "
lldb/API/SBDefines.h
"
13
14
namespace
lldb
{
15
16
class
LLDB_API
SBBroadcaster
{
17
public
:
18
SBBroadcaster
();
19
20
SBBroadcaster
(
const
char
*name);
21
22
SBBroadcaster
(
const
SBBroadcaster
&rhs);
23
24
const
SBBroadcaster
&operator=(
const
SBBroadcaster
&rhs);
25
26
~SBBroadcaster
();
27
28
explicit
operator
bool()
const
;
29
30
bool
IsValid()
const
;
31
32
void
Clear();
33
34
void
BroadcastEventByType(uint32_t event_type,
bool
unique =
false
);
35
36
void
BroadcastEvent(
const
lldb::SBEvent
&event,
bool
unique =
false
);
37
38
void
AddInitialEventsToListener(
const
lldb::SBListener
&listener,
39
uint32_t requested_events);
40
41
uint32_t AddListener(
const
lldb::SBListener
&listener, uint32_t event_mask);
42
43
const
char
*
GetName
()
const
;
44
45
bool
EventTypeHasListeners(uint32_t event_type);
46
47
bool
RemoveListener(
const
lldb::SBListener
&listener,
48
uint32_t event_mask =
UINT32_MAX
);
49
50
// This comparison is checking if the internal opaque pointer value is equal
51
// to that in "rhs".
52
bool
operator==
(
const
lldb::SBBroadcaster
&rhs)
const
;
53
54
// This comparison is checking if the internal opaque pointer value is not
55
// equal to that in "rhs".
56
bool
operator!=(
const
lldb::SBBroadcaster
&rhs)
const
;
57
58
// This comparison is checking if the internal opaque pointer value is less
59
// than that in "rhs" so SBBroadcaster objects can be contained in ordered
60
// containers.
61
bool
operator<(
const
lldb::SBBroadcaster
&rhs)
const
;
62
63
protected
:
64
friend
class
SBCommandInterpreter
;
65
friend
class
SBCommunication
;
66
friend
class
SBDebugger
;
67
friend
class
SBEvent
;
68
friend
class
SBListener
;
69
friend
class
SBProcess
;
70
friend
class
SBTarget
;
71
72
SBBroadcaster
(
lldb_private::Broadcaster
*broadcaster,
bool
owns);
73
74
lldb_private::Broadcaster
*get()
const
;
75
76
void
reset(
lldb_private::Broadcaster
*broadcaster,
bool
owns);
77
78
private
:
79
lldb::BroadcasterSP
m_opaque_sp
;
80
lldb_private::Broadcaster
*m_opaque_ptr =
nullptr
;
81
};
82
83
}
// namespace lldb
84
85
#endif
// LLDB_API_SBBROADCASTER_H
GetName
static const char * GetName(DWARFDeclContext::Entry entry)
Returns the name of entry if it has one, or the appropriate "anonymous {namespace,...
Definition:
DWARFDeclContext.cpp:17
SBDefines.h
LLDB_API
#define LLDB_API
Definition:
SBDefines.h:28
lldb::SBBroadcaster
Definition:
SBBroadcaster.h:16
lldb::SBBroadcaster::m_opaque_sp
lldb::BroadcasterSP m_opaque_sp
Definition:
SBBroadcaster.h:79
lldb::SBCommandInterpreter
Definition:
SBCommandInterpreter.h:24
lldb::SBCommunication
Definition:
SBCommunication.h:17
lldb::SBDebugger
Definition:
SBDebugger.h:43
lldb::SBEvent
Definition:
SBEvent.h:27
lldb::SBListener
Definition:
SBListener.h:16
lldb::SBProcess
Definition:
SBProcess.h:29
lldb::SBTarget
Definition:
SBTarget.h:37
lldb_private::Broadcaster
An event broadcasting class.
Definition:
Broadcaster.h:145
UINT32_MAX
#define UINT32_MAX
Definition:
lldb-defines.h:19
lldb
Definition:
SBAddress.h:15
lldb::BroadcasterSP
std::shared_ptr< lldb_private::Broadcaster > BroadcasterSP
Definition:
lldb-forward.h:321
lldb::operator==
bool LLDB_API operator==(const SBAddress &lhs, const SBAddress &rhs)
Definition:
SBAddress.cpp:60
Generated on Thu Mar 28 2024 16:46:36 for LLDB by
1.9.6