SBWatchpoint.h revision 1fa6b3d6c83955fe06c63d3a4025f2c0ec431d68
1//===-- SBWatchpoint.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_SBWatchpoint_h_ 11#define LLDB_SBWatchpoint_h_ 12 13#include "lldb/API/SBDefines.h" 14 15namespace lldb { 16 17class SBWatchpoint 18{ 19public: 20 21 SBWatchpoint (); 22 23 SBWatchpoint (const lldb::SBWatchpoint &rhs); 24 25 ~SBWatchpoint (); 26 27#ifndef SWIG 28 const lldb::SBWatchpoint & 29 operator = (const lldb::SBWatchpoint &rhs); 30#endif 31 32 lldb::SBError 33 GetError (); 34 35 watch_id_t 36 GetID (); 37 38 bool 39 IsValid() const; 40 41 /// With -1 representing an invalid hardware index. 42 int32_t 43 GetHardwareIndex (); 44 45 lldb::addr_t 46 GetWatchAddress (); 47 48 size_t 49 GetWatchSize(); 50 51 void 52 SetEnabled(bool enabled); 53 54 bool 55 IsEnabled (); 56 57 uint32_t 58 GetHitCount (); 59 60 uint32_t 61 GetIgnoreCount (); 62 63 void 64 SetIgnoreCount (uint32_t n); 65 66 bool 67 GetDescription (lldb::SBStream &description, DescriptionLevel level); 68 69#ifndef SWIG 70 SBWatchpoint (const lldb::WatchpointLocationSP &watch_loc_sp); 71#endif 72 73private: 74 friend class SBTarget; 75 76#ifndef SWIG 77 78 lldb_private::WatchpointLocation * 79 operator->(); 80 81 lldb_private::WatchpointLocation * 82 get(); 83 84 lldb::WatchpointLocationSP & 85 operator *(); 86 87#endif 88 89 lldb::WatchpointLocationSP m_opaque_sp; 90 91}; 92 93} // namespace lldb 94 95#endif // LLDB_SBWatchpoint_h_ 96