diff options
| author | Ed Maste <emaste@FreeBSD.org> | 2015-02-09 01:44:09 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2015-02-09 01:44:09 +0000 |
| commit | 12bd4897ff0678fa663e09d78ebc22dd255ceb86 (patch) | |
| tree | a8f4b3abea3e6937e60728991c736e6e3d322fc1 /include/lldb/Host/common/NativeRegisterContextRegisterInfo.h | |
| parent | 205afe679855a4ce8149cdaa94d3f0868ce796dc (diff) | |
Notes
Diffstat (limited to 'include/lldb/Host/common/NativeRegisterContextRegisterInfo.h')
| -rw-r--r-- | include/lldb/Host/common/NativeRegisterContextRegisterInfo.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/include/lldb/Host/common/NativeRegisterContextRegisterInfo.h b/include/lldb/Host/common/NativeRegisterContextRegisterInfo.h new file mode 100644 index 0000000000000..b2a29de4e5a4c --- /dev/null +++ b/include/lldb/Host/common/NativeRegisterContextRegisterInfo.h @@ -0,0 +1,47 @@ +//===-- NativeRegisterContextRegisterInfo.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_NativeRegisterContextRegisterInfo_h +#define lldb_NativeRegisterContextRegisterInfo_h + +#include <memory> + +#include "NativeRegisterContext.h" +#include "Plugins/Process/Utility/RegisterInfoInterface.h" + +namespace lldb_private +{ + class NativeRegisterContextRegisterInfo: public NativeRegisterContext + { + public: + /// + /// Construct a NativeRegisterContextRegisterInfo, taking ownership + /// of the register_info_interface pointer. + /// + NativeRegisterContextRegisterInfo (NativeThreadProtocol &thread, + uint32_t concrete_frame_idx, + RegisterInfoInterface *register_info_interface); + + uint32_t + GetRegisterCount () const override; + + uint32_t + GetUserRegisterCount () const override; + + const RegisterInfo * + GetRegisterInfoAtIndex (uint32_t reg_index) const override; + + const RegisterInfoInterface& + GetRegisterInfoInterface () const; + + private: + std::unique_ptr<RegisterInfoInterface> m_register_info_interface_up; + }; +} +#endif |
