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/SBDefines.h" 14 #include "lldb/API/SBBreakpoint.h" 15 16 namespace lldb { 17 18 class SBBreakpointLocation 19 { 20 public: 21 22 SBBreakpointLocation (); 23 24 SBBreakpointLocation (const lldb::SBBreakpointLocation &rhs); 25 26 ~SBBreakpointLocation (); 27 28 const lldb::SBBreakpointLocation & 29 operator = (const lldb::SBBreakpointLocation &rhs); 30 31 break_id_t 32 GetID (); 33 34 bool 35 IsValid() const; 36 37 lldb::SBAddress 38 GetAddress (); 39 40 lldb::addr_t 41 GetLoadAddress (); 42 43 void 44 SetEnabled(bool enabled); 45 46 bool 47 IsEnabled (); 48 49 uint32_t 50 GetIgnoreCount (); 51 52 void 53 SetIgnoreCount (uint32_t n); 54 55 void 56 SetCondition (const char *condition); 57 58 const char * 59 GetCondition (); 60 61 void 62 SetThreadID (lldb::tid_t sb_thread_id); 63 64 lldb::tid_t 65 GetThreadID (); 66 67 void 68 SetThreadIndex (uint32_t index); 69 70 uint32_t 71 GetThreadIndex() const; 72 73 void 74 SetThreadName (const char *thread_name); 75 76 const char * 77 GetThreadName () const; 78 79 void 80 SetQueueName (const char *queue_name); 81 82 const char * 83 GetQueueName () const; 84 85 bool 86 IsResolved (); 87 88 bool 89 GetDescription (lldb::SBStream &description, DescriptionLevel level); 90 91 SBBreakpoint 92 GetBreakpoint (); 93 94 SBBreakpointLocation (const lldb::BreakpointLocationSP &break_loc_sp); 95 96 private: 97 friend class SBBreakpoint; 98 #ifndef LLDB_DISABLE_PYTHON 99 friend class lldb_private::ScriptInterpreterPython; 100 #endif 101 void 102 SetLocation (const lldb::BreakpointLocationSP &break_loc_sp); 103 104 lldb::BreakpointLocationSP m_opaque_sp; 105 106 }; 107 108 } // namespace lldb 109 110 #endif // LLDB_SBBreakpointLocation_h_ 111