SBBreakpointLocation.h revision 303975
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 LLDB_API SBBreakpointLocation
19{
20public:
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    SetScriptCallbackFunction (const char *callback_function_name);
63
64    SBError
65    SetScriptCallbackBody (const char *script_body_text);
66
67    void
68    SetThreadID (lldb::tid_t sb_thread_id);
69
70    lldb::tid_t
71    GetThreadID ();
72
73    void
74    SetThreadIndex (uint32_t index);
75
76    uint32_t
77    GetThreadIndex() const;
78
79    void
80    SetThreadName (const char *thread_name);
81
82    const char *
83    GetThreadName () const;
84
85    void
86    SetQueueName (const char *queue_name);
87
88    const char *
89    GetQueueName () const;
90
91    bool
92    IsResolved ();
93
94    bool
95    GetDescription (lldb::SBStream &description, DescriptionLevel level);
96
97    SBBreakpoint
98    GetBreakpoint ();
99
100    SBBreakpointLocation (const lldb::BreakpointLocationSP &break_loc_sp);
101
102private:
103    friend class SBBreakpoint;
104
105    void
106    SetLocation (const lldb::BreakpointLocationSP &break_loc_sp);
107
108    lldb::BreakpointLocationSP m_opaque_sp;
109
110};
111
112} // namespace lldb
113
114#endif  // LLDB_SBBreakpointLocation_h_
115