1 //===-- SBBreakpointLocation.h ----------------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef LLDB_SBBreakpointLocation_h_ 11 #define LLDB_SBBreakpointLocation_h_ 12 13 #include "lldb/API/SBBreakpoint.h" 14 #include "lldb/API/SBDefines.h" 15 16 namespace lldb { 17 18 class LLDB_API SBBreakpointLocation { 19 public: 20 SBBreakpointLocation(); 21 22 SBBreakpointLocation(const lldb::SBBreakpointLocation &rhs); 23 24 ~SBBreakpointLocation(); 25 26 const lldb::SBBreakpointLocation & 27 operator=(const lldb::SBBreakpointLocation &rhs); 28 29 break_id_t GetID(); 30 31 bool IsValid() const; 32 33 lldb::SBAddress GetAddress(); 34 35 lldb::addr_t GetLoadAddress(); 36 37 void SetEnabled(bool enabled); 38 39 bool IsEnabled(); 40 41 uint32_t GetHitCount(); 42 43 uint32_t GetIgnoreCount(); 44 45 void SetIgnoreCount(uint32_t n); 46 47 void SetCondition(const char *condition); 48 49 const char *GetCondition(); 50 51 void SetAutoContinue(bool auto_continue); 52 53 bool GetAutoContinue(); 54 55 void SetScriptCallbackFunction(const char *callback_function_name); 56 57 SBError SetScriptCallbackBody(const char *script_body_text); 58 59 void SetCommandLineCommands(SBStringList &commands); 60 61 bool GetCommandLineCommands(SBStringList &commands); 62 63 void SetThreadID(lldb::tid_t sb_thread_id); 64 65 lldb::tid_t GetThreadID(); 66 67 void SetThreadIndex(uint32_t index); 68 69 uint32_t GetThreadIndex() const; 70 71 void SetThreadName(const char *thread_name); 72 73 const char *GetThreadName() const; 74 75 void SetQueueName(const char *queue_name); 76 77 const char *GetQueueName() const; 78 79 bool IsResolved(); 80 81 bool GetDescription(lldb::SBStream &description, DescriptionLevel level); 82 83 SBBreakpoint GetBreakpoint(); 84 85 SBBreakpointLocation(const lldb::BreakpointLocationSP &break_loc_sp); 86 87 private: 88 friend class SBBreakpoint; 89 friend class SBBreakpointCallbackBaton; 90 91 void SetLocation(const lldb::BreakpointLocationSP &break_loc_sp); 92 BreakpointLocationSP GetSP() const; 93 94 lldb::BreakpointLocationWP m_opaque_wp; 95 }; 96 97 } // namespace lldb 98 99 #endif // LLDB_SBBreakpointLocation_h_ 100