LLDB mainline
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
lldb_private::Event Class Reference

#include <Event.h>

Inheritance diagram for lldb_private::Event:
Inheritance graph
[legend]

Public Member Functions

 Event (Broadcaster *broadcaster, uint32_t event_type, EventData *data=nullptr)
 
 Event (Broadcaster *broadcaster, uint32_t event_type, const lldb::EventDataSP &event_data_sp)
 
 Event (uint32_t event_type, EventData *data=nullptr)
 
 Event (uint32_t event_type, const lldb::EventDataSP &event_data_sp)
 
 ~Event ()
 
void Dump (Stream *s) const
 
EventDataGetData ()
 
const EventDataGetData () const
 
void SetData (EventData *new_data)
 
uint32_t GetType () const
 
void SetType (uint32_t new_type)
 
BroadcasterGetBroadcaster () const
 
bool BroadcasterIs (Broadcaster *broadcaster)
 
void Clear ()
 
void AddPendingListener (lldb::ListenerSP pending_listener_sp)
 This is used by Broadcasters with Primary Listeners to store the other Listeners till after the Event's DoOnRemoval has completed.
 

Private Member Functions

void DoOnRemoval ()
 
void SetBroadcaster (Broadcaster *broadcaster)
 
 Event (const Event &)=delete
 
const Eventoperator= (const Event &)=delete
 
 Event ()=delete
 

Private Attributes

Broadcaster::BroadcasterImplWP m_broadcaster_wp
 
uint32_t m_type
 
lldb::EventDataSP m_data_sp
 
std::vector< lldb::ListenerSPm_pending_listeners
 
std::mutex m_listeners_mutex
 

Friends

class Listener
 
class EventData
 
class Broadcaster::BroadcasterImpl
 

Detailed Description

Definition at line 180 of file Event.h.

Constructor & Destructor Documentation

◆ Event() [1/6]

Event::Event ( Broadcaster broadcaster,
uint32_t  event_type,
EventData data = nullptr 
)

Definition at line 33 of file Event.cpp.

◆ Event() [2/6]

Event::Event ( Broadcaster broadcaster,
uint32_t  event_type,
const lldb::EventDataSP event_data_sp 
)

Definition at line 37 of file Event.cpp.

◆ Event() [3/6]

Event::Event ( uint32_t  event_type,
EventData data = nullptr 
)

Definition at line 42 of file Event.cpp.

◆ Event() [4/6]

Event::Event ( uint32_t  event_type,
const lldb::EventDataSP event_data_sp 
)

Definition at line 45 of file Event.cpp.

◆ ~Event()

Event::~Event ( )
default

◆ Event() [5/6]

lldb_private::Event::Event ( const Event )
privatedelete

◆ Event() [6/6]

lldb_private::Event::Event ( )
privatedelete

Member Function Documentation

◆ AddPendingListener()

void lldb_private::Event::AddPendingListener ( lldb::ListenerSP  pending_listener_sp)
inline

This is used by Broadcasters with Primary Listeners to store the other Listeners till after the Event's DoOnRemoval has completed.

Definition at line 232 of file Event.h.

References m_pending_listeners.

◆ BroadcasterIs()

bool lldb_private::Event::BroadcasterIs ( Broadcaster broadcaster)
inline

Definition at line 219 of file Event.h.

References m_broadcaster_wp.

Referenced by lldb::SBEvent::BroadcasterMatchesRef().

◆ Clear()

void lldb_private::Event::Clear ( )
inline

Definition at line 228 of file Event.h.

References m_data_sp.

Referenced by lldb::SBEvent::Clear().

◆ DoOnRemoval()

void Event::DoOnRemoval ( )
private

Definition at line 83 of file Event.cpp.

References m_data_sp, m_listeners_mutex, and m_pending_listeners.

◆ Dump()

void Event::Dump ( Stream s) const

◆ GetBroadcaster()

Broadcaster * lldb_private::Event::GetBroadcaster ( ) const
inline

Definition at line 210 of file Event.h.

References m_broadcaster_wp.

Referenced by lldb::SBEvent::GetBroadcaster(), and lldb::SBEvent::GetBroadcasterClass().

◆ GetData() [1/2]

EventData * lldb_private::Event::GetData ( )
inline

◆ GetData() [2/2]

const EventData * lldb_private::Event::GetData ( ) const
inline

Definition at line 202 of file Event.h.

References m_data_sp.

◆ GetType()

uint32_t lldb_private::Event::GetType ( ) const
inline

◆ operator=()

const Event & lldb_private::Event::operator= ( const Event )
privatedelete

◆ SetBroadcaster()

void lldb_private::Event::SetBroadcaster ( Broadcaster broadcaster)
inlineprivate

Definition at line 246 of file Event.h.

References lldb_private::Broadcaster::GetBroadcasterImpl(), and m_broadcaster_wp.

◆ SetData()

void lldb_private::Event::SetData ( EventData new_data)
inline

Definition at line 204 of file Event.h.

References m_data_sp.

◆ SetType()

void lldb_private::Event::SetType ( uint32_t  new_type)
inline

Definition at line 208 of file Event.h.

References m_type.

Friends And Related Function Documentation

◆ Broadcaster::BroadcasterImpl

friend class Broadcaster::BroadcasterImpl
friend

Definition at line 183 of file Event.h.

◆ EventData

friend class EventData
friend

Definition at line 182 of file Event.h.

◆ Listener

friend class Listener
friend

Definition at line 181 of file Event.h.

Member Data Documentation

◆ m_broadcaster_wp

Broadcaster::BroadcasterImplWP lldb_private::Event::m_broadcaster_wp
private

Definition at line 251 of file Event.h.

Referenced by BroadcasterIs(), Dump(), GetBroadcaster(), and SetBroadcaster().

◆ m_data_sp

lldb::EventDataSP lldb_private::Event::m_data_sp
private

Definition at line 253 of file Event.h.

Referenced by Clear(), DoOnRemoval(), Dump(), GetData(), and SetData().

◆ m_listeners_mutex

std::mutex lldb_private::Event::m_listeners_mutex
private

Definition at line 255 of file Event.h.

Referenced by DoOnRemoval().

◆ m_pending_listeners

std::vector<lldb::ListenerSP> lldb_private::Event::m_pending_listeners
private

Definition at line 254 of file Event.h.

Referenced by AddPendingListener(), and DoOnRemoval().

◆ m_type

uint32_t lldb_private::Event::m_type
private

Definition at line 252 of file Event.h.

Referenced by Dump(), GetType(), and SetType().


The documentation for this class was generated from the following files: