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 %feature("docstring",
12 "Represents a libdispatch queue in the process."
13 ) SBQueue;
14 class SBQueue
15 {
16 public:
17     SBQueue ();
18 
19     SBQueue (const lldb::QueueSP& queue_sp);
20 
21    ~SBQueue();
22 
23     bool
24     IsValid() const;
25 
26     explicit operator bool() const;
27 
28     void
29     Clear ();
30 
31     lldb::SBProcess
32     GetProcess ();
33 
34     %feature("autodoc", "
35     Returns an lldb::queue_id_t type unique identifier number for this
36     queue that will not be used by any other queue during this process'
37     execution.  These ID numbers often start at 1 with the first
38     system-created queues and increment from there.")
39     GetQueueID;
40 
41     lldb::queue_id_t
42     GetQueueID () const;
43 
44     const char *
45     GetName () const;
46 
47     %feature("autodoc", "
48     Returns an lldb::QueueKind enumerated value (e.g. eQueueKindUnknown,
49     eQueueKindSerial, eQueueKindConcurrent) describing the type of this
50     queue.")
51     GetKind();
52 
53     lldb::QueueKind
54     GetKind();
55 
56     uint32_t
57     GetIndexID () const;
58 
59     uint32_t
60     GetNumThreads ();
61 
62     lldb::SBThread
63     GetThreadAtIndex (uint32_t);
64 
65     uint32_t
66     GetNumPendingItems ();
67 
68     lldb::SBQueueItem
69     GetPendingItemAtIndex (uint32_t);
70 
71     uint32_t
72     GetNumRunningItems ();
73 
74 };
75 
76 } // namespace lldb
77 
78