diff options
Diffstat (limited to 'include/lldb/API/SBThreadCollection.h')
-rw-r--r-- | include/lldb/API/SBThreadCollection.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/include/lldb/API/SBThreadCollection.h b/include/lldb/API/SBThreadCollection.h new file mode 100644 index 000000000000..b13cbd938e28 --- /dev/null +++ b/include/lldb/API/SBThreadCollection.h @@ -0,0 +1,68 @@ +//===-- SBThreadCollection.h ------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef LLDB_SBThreadCollection_h_ +#define LLDB_SBThreadCollection_h_ + +#include "lldb/API/SBDefines.h" + +namespace lldb { + +class SBThreadCollection +{ +public: + + SBThreadCollection (); + + SBThreadCollection (const SBThreadCollection &rhs); + + const SBThreadCollection & + operator = (const SBThreadCollection &rhs); + + ~SBThreadCollection (); + + bool + IsValid () const; + + size_t + GetSize (); + + lldb::SBThread + GetThreadAtIndex (size_t idx); + +protected: + + // Mimic shared pointer... + lldb_private::ThreadCollection * + get() const; + + lldb_private::ThreadCollection * + operator->() const; + + lldb::ThreadCollectionSP & + operator*(); + + const lldb::ThreadCollectionSP & + operator*() const; + + SBThreadCollection (const lldb::ThreadCollectionSP &threads); + + void + SetOpaque (const lldb::ThreadCollectionSP &threads); + +private: + friend class SBProcess; + + lldb::ThreadCollectionSP m_opaque_sp; +}; + + +} // namespace lldb + +#endif // LLDB_SBThreadCollection_h_ |