xref: /openbsd-src/gnu/llvm/lldb/bindings/interface/SBQueue.i (revision 1a8dbaac879b9f3335ad7fb25429ce63ac1d6bac)
1 //===-- SWIG Interface for SBQueue.h -----------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 namespace lldb {
10 
11 class SBQueue
12 {
13 public:
14     SBQueue ();
15 
16     SBQueue (const lldb::QueueSP& queue_sp);
17 
18    ~SBQueue();
19 
20     bool
21     IsValid() const;
22 
23     explicit operator bool() const;
24 
25     void
26     Clear ();
27 
28     lldb::SBProcess
29     GetProcess ();
30 
31     %feature("autodoc", "
32     Returns an lldb::queue_id_t type unique identifier number for this
33     queue that will not be used by any other queue during this process'
34     execution.  These ID numbers often start at 1 with the first
35     system-created queues and increment from there.")
36     GetQueueID;
37 
38     lldb::queue_id_t
39     GetQueueID () const;
40 
41     const char *
42     GetName () const;
43 
44     %feature("autodoc", "
45     Returns an lldb::QueueKind enumerated value (e.g. eQueueKindUnknown,
46     eQueueKindSerial, eQueueKindConcurrent) describing the type of this
47     queue.")
48     GetKind();
49 
50     lldb::QueueKind
51     GetKind();
52 
53     uint32_t
54     GetIndexID () const;
55 
56     uint32_t
57     GetNumThreads ();
58 
59     lldb::SBThread
60     GetThreadAtIndex (uint32_t);
61 
62     uint32_t
63     GetNumPendingItems ();
64 
65     lldb::SBQueueItem
66     GetPendingItemAtIndex (uint32_t);
67 
68     uint32_t
69     GetNumRunningItems ();
70 
71 };
72 
73 } // namespace lldb
74 
75