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