LLDB mainline
|
#include <Process.h>
Public Member Functions | |
ProcessEventData () | |
ProcessEventData (const lldb::ProcessSP &process, lldb::StateType state) | |
~ProcessEventData () override | |
llvm::StringRef | GetFlavor () const override |
lldb::ProcessSP | GetProcessSP () const |
lldb::StateType | GetState () const |
bool | GetRestarted () const |
size_t | GetNumRestartedReasons () |
const char * | GetRestartedReasonAtIndex (size_t idx) |
bool | GetInterrupted () const |
void | Dump (Stream *s) const override |
virtual bool | ShouldStop (Event *event_ptr, bool &found_valid_stopinfo) |
void | DoOnRemoval (Event *event_ptr) override |
Public Member Functions inherited from lldb_private::EventData | |
EventData () | |
virtual | ~EventData () |
virtual llvm::StringRef | GetFlavor () const =0 |
virtual Log * | GetLogChannel () |
virtual void | Dump (Stream *s) const |
Static Public Member Functions | |
static llvm::StringRef | GetFlavorString () |
static const Process::ProcessEventData * | GetEventDataFromEvent (const Event *event_ptr) |
static lldb::ProcessSP | GetProcessFromEvent (const Event *event_ptr) |
static lldb::StateType | GetStateFromEvent (const Event *event_ptr) |
static bool | GetRestartedFromEvent (const Event *event_ptr) |
static size_t | GetNumRestartedReasons (const Event *event_ptr) |
static const char * | GetRestartedReasonAtIndex (const Event *event_ptr, size_t idx) |
static void | AddRestartedReason (Event *event_ptr, const char *reason) |
static void | SetRestartedInEvent (Event *event_ptr, bool new_value) |
static bool | GetInterruptedFromEvent (const Event *event_ptr) |
static void | SetInterruptedInEvent (Event *event_ptr, bool new_value) |
static bool | SetUpdateStateOnRemoval (Event *event_ptr) |
Private Member Functions | |
bool | ForwardEventToPendingListeners (Event *event_ptr) override |
This will be queried for a Broadcaster with a primary and some secondary listeners after the primary listener pulled the event from the event queue and ran its DoOnRemoval, right before the event is delivered. | |
void | SetUpdateStateOnRemoval () |
void | SetRestarted (bool new_value) |
void | SetInterrupted (bool new_value) |
void | AddRestartedReason (const char *reason) |
ProcessEventData (const ProcessEventData &)=delete | |
const ProcessEventData & | operator= (const ProcessEventData &)=delete |
Private Attributes | |
lldb::ProcessWP | m_process_wp |
lldb::StateType | m_state = lldb::eStateInvalid |
std::vector< std::string > | m_restarted_reasons |
bool | m_restarted = false |
int | m_update_state = 0 |
bool | m_interrupted = false |
Friends | |
class | Process |
Process::ProcessEventData::ProcessEventData | ( | ) |
Definition at line 4169 of file Process.cpp.
Process::ProcessEventData::ProcessEventData | ( | const lldb::ProcessSP & | process, |
lldb::StateType | state | ||
) |
Definition at line 4171 of file Process.cpp.
References m_process_wp.
|
overridedefault |
|
privatedelete |
|
inlineprivate |
Definition at line 478 of file Process.h.
References m_restarted_reasons.
|
static |
Definition at line 4444 of file Process.cpp.
References AddRestartedReason().
Referenced by AddRestartedReason(), and lldb_private::StopInfoUnixSignal::DoShouldNotify().
|
overridevirtual |
Reimplemented from lldb_private::EventData.
Definition at line 4295 of file Process.cpp.
References lldb_private::Process::eBroadcastBitStateChanged, lldb::eStateStopped, GetRestartedFromEvent(), and lldb_private::Event::GetType().
|
overridevirtual |
Reimplemented from lldb_private::EventData.
Definition at line 4367 of file Process.cpp.
References lldb_private::Process::GetState(), lldb_private::Stream::Printf(), lldb_private::Stream::PutCString(), and lldb_private::StateAsCString().
|
overrideprivatevirtual |
This will be queried for a Broadcaster with a primary and some secondary listeners after the primary listener pulled the event from the event queue and ran its DoOnRemoval, right before the event is delivered.
If it returns true, the event will also be forwarded to the secondary listeners, and if false, event propagation stops at the primary listener. Some broadcasters (particularly the Process broadcaster) fetch events on a private Listener, and then forward the event to the Public Listeners after some processing. The Process broadcaster does not want to forward to the secondary listeners at the private processing stage.
Reimplemented from lldb_private::EventData.
Definition at line 4284 of file Process.cpp.
References lldb_private::Process::eBroadcastBitStateChanged, and lldb_private::Event::GetType().
|
static |
Definition at line 4380 of file Process.cpp.
References lldb_private::Event::GetData(), lldb_private::EventData::GetFlavor(), and GetFlavorString().
Referenced by lldb::SBProcess::EventIsProcessEvent(), and lldb_private::Process::RunThreadPlan().
|
overridevirtual |
Implements lldb_private::EventData.
Definition at line 4184 of file Process.cpp.
References GetFlavorString().
|
static |
Definition at line 4180 of file Process.cpp.
Referenced by GetEventDataFromEvent(), and GetFlavor().
|
inline |
Definition at line 437 of file Process.h.
References m_interrupted.
Referenced by GetInterruptedFromEvent().
|
static |
Definition at line 4452 of file Process.cpp.
References GetInterrupted().
Referenced by lldb_private::ThreadPlanCallFunction::DoPlanExplainsStop(), lldb::SBProcess::GetInterruptedFromEvent(), HandleStoppedEvent(), lldb_private::Process::RunThreadPlan(), lldb_private::Process::ShouldBroadcastEvent(), and lldb_private::ThreadList::ShouldStop().
|
inline |
Definition at line 429 of file Process.h.
References m_restarted_reasons.
Referenced by GetNumRestartedReasons(), lldb::SBProcess::GetNumRestartedReasonsFromEvent(), and lldb_private::Process::HandleProcessStateChangedEvent().
|
static |
Definition at line 4424 of file Process.cpp.
References GetNumRestartedReasons().
Definition at line 4391 of file Process.cpp.
References GetProcessSP().
Referenced by lldb::SBProcess::GetProcessFromEvent(), lldb_private::Debugger::HandleProcessEvent(), and lldb_private::Process::HandleProcessStateChangedEvent().
|
inline |
Definition at line 424 of file Process.h.
References m_process_wp.
Referenced by GetProcessFromEvent(), and lldb_private::Process::RunThreadPlan().
|
inline |
Definition at line 427 of file Process.h.
References m_restarted.
Referenced by GetRestartedFromEvent().
|
static |
Definition at line 4407 of file Process.cpp.
References GetRestarted().
Referenced by DoOnRemoval(), lldb::SBProcess::GetRestartedFromEvent(), lldb_private::ThreadPlanSingleThreadTimeout::HandleEvent(), lldb_private::Process::HandlePrivateEvent(), lldb_private::Process::HandleProcessStateChangedEvent(), lldb_private::Process::RunThreadPlan(), lldb_private::Process::ShouldBroadcastEvent(), lldb_private::Thread::ShouldStop(), and lldb_private::Process::WaitForProcessToStop().
|
static |
Definition at line 4434 of file Process.cpp.
References GetRestartedReasonAtIndex().
|
inline |
Definition at line 431 of file Process.h.
References m_restarted_reasons.
Referenced by GetRestartedReasonAtIndex(), lldb::SBProcess::GetRestartedReasonAtIndexFromEvent(), and lldb_private::Process::HandleProcessStateChangedEvent().
|
inline |
Definition at line 4399 of file Process.cpp.
References lldb::eStateInvalid, and GetState().
Referenced by lldb_private::Process::GetNextEvent(), lldb_private::Process::GetStateChangedEvents(), lldb_private::Process::GetStateChangedEventsPrivate(), lldb::SBProcess::GetStateFromEvent(), lldb_private::Process::HandlePrivateEvent(), lldb_private::Debugger::HandleProcessEvent(), lldb_private::Process::HandleProcessStateChangedEvent(), lldb_private::ThreadPlanSingleThreadTimeout::IsTimeoutAsyncInterrupt(), lldb_private::Process::PeekAtStateChangedEvents(), lldb_private::Process::AttachCompletionHandler::PerformAction(), lldb_private::Process::RunPrivateStateThread(), lldb_private::Process::RunThreadPlan(), and lldb_private::Process::ShouldBroadcastEvent().
|
privatedelete |
|
inlineprivate |
Definition at line 476 of file Process.h.
References m_interrupted.
Referenced by SetInterruptedInEvent().
|
static |
Definition at line 4461 of file Process.cpp.
References SetInterrupted().
Referenced by lldb_private::Process::RunPrivateStateThread().
|
inlineprivate |
Definition at line 474 of file Process.h.
References m_restarted.
Referenced by SetRestartedInEvent().
|
static |
Definition at line 4415 of file Process.cpp.
References SetRestarted().
Referenced by lldb_private::Process::ShouldBroadcastEvent().
|
inlineprivate |
Definition at line 472 of file Process.h.
References m_update_state.
Referenced by lldb_private::Process::HandlePrivateEvent().
|
static |
Definition at line 4469 of file Process.cpp.
References SetUpdateStateOnRemoval().
Referenced by SetUpdateStateOnRemoval().
|
virtual |
Definition at line 4188 of file Process.cpp.
References lldb::eStateSuspended, lldb_private::GetLog(), lldb_private::ThreadList::GetSize(), lldb_private::ThreadList::GetThreadAtIndex(), LLDB_LOG, LLDB_LOGF, lldb_private::Process, and lldb_private::Step.
|
private |
Definition at line 488 of file Process.h.
Referenced by GetInterrupted(), and SetInterrupted().
|
private |
Definition at line 482 of file Process.h.
Referenced by GetProcessSP(), and ProcessEventData().
|
private |
Definition at line 485 of file Process.h.
Referenced by GetRestarted(), and SetRestarted().
|
private |
Definition at line 484 of file Process.h.
Referenced by AddRestartedReason(), GetNumRestartedReasons(), and GetRestartedReasonAtIndex().
|
private |
Definition at line 483 of file Process.h.
Referenced by GetState().
|
private |
Definition at line 487 of file Process.h.
Referenced by SetUpdateStateOnRemoval().