blob: 4a196f0d7a7c1604bb40732a8cfa71be53099ffc [file] [log] [blame]
Michael Sartain9f822cd2013-07-31 23:27:46 +00001//===-- LinuxThread.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 liblldb_LinuxThread_H_
11#define liblldb_LinuxThread_H_
12
13// Other libraries and framework includes
Todd Fialacacde7d2014-09-27 16:54:22 +000014#include "Plugins/Process/POSIX/POSIXThread.h"
Michael Sartain9f822cd2013-07-31 23:27:46 +000015
Tamas Berghammerdb264a62015-03-31 09:52:22 +000016namespace lldb_private {
17namespace process_linux {
18
Michael Sartain9f822cd2013-07-31 23:27:46 +000019//------------------------------------------------------------------------------
20// @class LinuxThread
21// @brief Abstraction of a Linux thread.
Tamas Berghammerdb264a62015-03-31 09:52:22 +000022class LinuxThread : public POSIXThread
Michael Sartain9f822cd2013-07-31 23:27:46 +000023{
24public:
25
26 //------------------------------------------------------------------
27 // Constructors and destructors
28 //------------------------------------------------------------------
Tamas Berghammerdb264a62015-03-31 09:52:22 +000029 LinuxThread(Process &process, lldb::tid_t tid);
Michael Sartain9f822cd2013-07-31 23:27:46 +000030
31 virtual ~LinuxThread();
32
33 //--------------------------------------------------------------------------
34 // LinuxThread internal API.
35
Ed Maste30df85e2013-12-11 20:43:27 +000036 // POSIXThread override
Tamas Berghammerd542efd2015-03-25 15:37:56 +000037 void
38 RefreshStateAfterStop() override;
Michael Sartain9f822cd2013-07-31 23:27:46 +000039};
40
Tamas Berghammerdb264a62015-03-31 09:52:22 +000041} // namespace process_linux
42} // namespace lldb_private
43
Michael Sartain9f822cd2013-07-31 23:27:46 +000044#endif // #ifndef liblldb_LinuxThread_H_