class Breakpoint
Defined at line 23 of file ../../src/developer/debug/zxdb/client/breakpoint.h
Public Methods
void Breakpoint (Session * session)
Defined at line 189 of file ../../src/developer/debug/zxdb/client/breakpoint.cc
void ~Breakpoint ()
Defined at line 191 of file ../../src/developer/debug/zxdb/client/breakpoint.cc
fxl::WeakPtr<Breakpoint> GetWeakPtr ()
Defined at line 193 of file ../../src/developer/debug/zxdb/client/breakpoint.cc
BreakpointSettings GetSettings ()
All of the settings, including the location, are stored in the BreakpointSettings object. This
API is designed so all settings changes happen atomically.
The backend can fail to set the breakpoint for a variety of reasons (memory write failure, IPC
failure, out of hardware breakpoints, etc.). The callback to SetSettings() (if provided)
will indicate success or failure of this operation. This callback will called with an error if
the breakpoint is deleted before completion.
If an async failure happens and there is no callback provided,
BreakpointObserver::OnBreakpointUpdateFailure() will be called. These backend errors can occur
at any time, not just when setting new settings, because new processes or dynamically loaded
shared libraries can always be added that this breakpoint could apply to.
void SetSettings (const BreakpointSettings & settings)
Defined at line 45 of file ../../src/developer/debug/zxdb/client/breakpoint.h
void SetSettings (const BreakpointSettings & settings, SetCallback cb)
bool IsInternal ()
Returns true if this is an internal breakpoint. Internal breakpoints are used to implement
other operations and are never exposed to the user.
std::vector<const BreakpointLocation *> GetLocations ()
Returns the locations associated with this breakpoint. These are the actual addresses set. The
symbols of these may not match the one in the settings (for example, the line number might be
different due to optimization for each location).
The returned pointers are owned by the Breakpoint and will be changed if the settings or any
process or module changes take place. Don't cache.
This function has a non-const variant so callers can enable or disable individual locations
using the resulting pointers.
std::vector<BreakpointLocation *> GetLocations ()
debug_ipc::BreakpointStats GetStats ()
Returns the stats for the breakpoint, e.g. hit_count.
SettingStore & settings ()
Defined at line 67 of file ../../src/developer/debug/zxdb/client/breakpoint.h
fxl::RefPtr<SettingSchema> GetSchema ()
static
Defined at line 196 of file ../../src/developer/debug/zxdb/client/breakpoint.cc
Friends
class Settings