1 //===-- SBUnixSignals.h -----------------------------------------------*- C++
4 // The LLVM Compiler Infrastructure
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
9 //===----------------------------------------------------------------------===//
11 #ifndef LLDB_SBUnixSignals_h_
12 #define LLDB_SBUnixSignals_h_
14 #include "lldb/API/SBDefines.h"
18 class LLDB_API SBUnixSignals {
22 SBUnixSignals(const lldb::SBUnixSignals &rhs);
26 const SBUnixSignals &operator=(const lldb::SBUnixSignals &rhs);
32 const char *GetSignalAsCString(int32_t signo) const;
34 int32_t GetSignalNumberFromName(const char *name) const;
36 bool GetShouldSuppress(int32_t signo) const;
38 bool SetShouldSuppress(int32_t signo, bool value);
40 bool GetShouldStop(int32_t signo) const;
42 bool SetShouldStop(int32_t signo, bool value);
44 bool GetShouldNotify(int32_t signo) const;
46 bool SetShouldNotify(int32_t signo, bool value);
48 int32_t GetNumSignals() const;
50 int32_t GetSignalAtIndex(int32_t index) const;
53 friend class SBProcess;
54 friend class SBPlatform;
56 SBUnixSignals(lldb::ProcessSP &process_sp);
58 SBUnixSignals(lldb::PlatformSP &platform_sp);
60 lldb::UnixSignalsSP GetSP() const;
62 void SetSP(const lldb::UnixSignalsSP &signals_sp);
65 lldb::UnixSignalsWP m_opaque_wp;
70 #endif // LLDB_SBUnixSignals_h_