LLDB API Documentation

- Main Page
- Namespaces
- Classes
- Files

- File List

SBEvent.h
Go to the documentation of this file.
1 //===-- SBEvent.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_SBEvent_h_
11 #define LLDB_SBEvent_h_
12
13 #include "lldb/API/SBDefines.h"
14
15 #include <stdio.h>
16 #include <vector>
17
18 namespace lldb {
19
20 class SBBroadcaster;
21
22 class LLDB_API SBEvent {
23 public:
24 SBEvent();
25
26 SBEvent(const lldb::SBEvent &rhs);
27
28 // Make an event that contains a C string.
29 SBEvent(uint32_t event, const char *cstr, uint32_t cstr_len);
30
31 SBEvent(lldb::EventSP &event_sp);
32
33 SBEvent(lldb_private::Event *event_sp);
34
35 ~SBEvent();
36
37 const SBEvent &operator=(const lldb::SBEvent &rhs);
38
39 bool IsValid() const;
40
41 const char *GetDataFlavor();
42
43 uint32_t GetType() const;
44
45 lldb::SBBroadcaster GetBroadcaster() const;
46
47 const char *GetBroadcasterClass() const;
48
49 bool BroadcasterMatchesPtr(const lldb::SBBroadcaster *broadcaster);
50
51 bool BroadcasterMatchesRef(const lldb::SBBroadcaster &broadcaster);
52
53 void Clear();
54
55 static const char *GetCStringFromEvent(const lldb::SBEvent &event);
56
57 bool GetDescription(lldb::SBStream &description);
58
59 bool GetDescription(lldb::SBStream &description) const;
60
61 protected:
62 friend class SBListener;
63 friend class SBBroadcaster;
64 friend class SBBreakpoint;
65 friend class SBDebugger;
66 friend class SBProcess;
67 friend class SBTarget;
68 friend class SBThread;
69 friend class SBWatchpoint;
70
71 lldb::EventSP &GetSP() const;
72
73 void reset(lldb::EventSP &event_sp);
74
75 void reset(lldb_private::Event *event);
76
77 lldb_private::Event *get() const;
78
79 private:
80 mutable lldb::EventSP m_event_sp;
81 mutable lldb_private::Event *m_opaque_ptr;
82 };
83
84 } // namespace lldb
85
86 #endif // LLDB_SBEvent_h_
lldb::SBBroadcaster
Definition: SBBroadcaster.h:17
lldb::SBThread
Definition: SBThread.h:21
lldb::SBBreakpoint
Definition: SBBreakpoint.h:17
SBDefines.h
lldb::SBEvent
class LLDB_API SBEvent
Definition: SBDefines.h:47
lldb::SBDebugger
Definition: SBDebugger.h:35
lldb::SBListener
Definition: SBListener.h:17
lldb::SBProcess
Definition: SBProcess.h:23
lldb::SBEvent
Definition: SBEvent.h:22
lldb::SBStream
Definition: SBStream.h:19
lldb::SBBroadcaster
class LLDB_API SBBroadcaster
Definition: SBDefines.h:35
lldb::SBTarget
Definition: SBTarget.h:34
lldb::SBWatchpoint
Definition: SBWatchpoint.h:17