xref: /NextBSD/contrib/llvm/tools/lldb/include/lldb/API/SBQueueItem.h (revision 84d351007654069f9643c8e4b4802a7f5f08ee42)
1 //===-- SBQueueItem.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_SBQueueItem_h_
11 #define LLDB_SBQueueItem_h_
12 
13 #include "lldb/API/SBDefines.h"
14 #include "lldb/API/SBAddress.h"
15 
16 namespace lldb {
17 
18 class LLDB_API SBQueueItem
19 {
20 public:
21     SBQueueItem ();
22 
23     SBQueueItem (const lldb::QueueItemSP& queue_item_sp);
24 
25    ~SBQueueItem();
26 
27     bool
28     IsValid() const;
29 
30     void
31     Clear ();
32 
33     lldb::QueueItemKind
34     GetKind () const;
35 
36     void
37     SetKind (lldb::QueueItemKind kind);
38 
39     lldb::SBAddress
40     GetAddress () const;
41 
42     void
43     SetAddress (lldb::SBAddress addr);
44 
45     void
46     SetQueueItem (const lldb::QueueItemSP& queue_item_sp);
47 
48     SBThread
49     GetExtendedBacktraceThread (const char *type);
50 
51 private:
52     lldb::QueueItemSP           m_queue_item_sp;
53 };
54 
55 } // namespace lldb
56 
57 #endif  // LLDB_SBQueueItem_h_
58