9#ifndef LLDB_HOST_COMMON_NATIVETHREADPROTOCOL_H
10#define LLDB_HOST_COMMON_NATIVETHREADPROTOCOL_H
20#include "llvm/Support/Error.h"
21#include "llvm/Support/MemoryBuffer.h"
38 std::string &description) = 0;
46 uint32_t watch_flags,
bool hardware) = 0;
55 virtual llvm::Expected<std::unique_ptr<llvm::MemoryBuffer>>
57 return llvm::make_error<UnimplementedError>();
virtual Status SetHardwareBreakpoint(lldb::addr_t addr, size_t size)=0
virtual bool GetStopReason(ThreadStopInfo &stop_info, std::string &description)=0
NativeProcessProtocol & GetProcess()
virtual lldb::StateType GetState()=0
virtual Status SetWatchpoint(lldb::addr_t addr, size_t size, uint32_t watch_flags, bool hardware)=0
NativeProcessProtocol & m_process
virtual Status RemoveHardwareBreakpoint(lldb::addr_t addr)=0
virtual ~NativeThreadProtocol()=default
virtual llvm::Expected< std::unique_ptr< llvm::MemoryBuffer > > GetSiginfo() const
std::string m_stop_description
virtual Status RemoveWatchpoint(lldb::addr_t addr)=0
NativeThreadProtocol(NativeProcessProtocol &process, lldb::tid_t tid)
ThreadStopInfo m_stop_info
virtual std::string GetName()=0
virtual NativeRegisterContext & GetRegisterContext()=0
lldb::tid_t GetID() const
A class that represents a running process on the host machine.
StateType
Process and Thread States.