libintrovirt v0.57.4
IntroVirt introspection library
Loading...
Searching...
No Matches
guest_ptr.hh File Reference

Type-safe guest virtual address pointer and guest_ptr template. More...

Include dependency graph for guest_ptr.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  introvirt::basic_guest_ptr_members_page_dir< _Physical >
 
class  introvirt::basic_guest_ptr_members_page_dir< true >
 
class  introvirt::basic_guest_ptr_members_length< _Array >
 
class  introvirt::basic_guest_ptr_members_length< true >
 
class  introvirt::basic_guest_ptr_members< _Tp, _Physical, _Array, _Enable >
 
class  introvirt::basic_guest_ptr_members< _Tp, _Physical, false, std::enable_if_t< is_guest_size_v< _Tp > > >
 
class  introvirt::basic_guest_ptr_members< _Tp, _Physical, true, std::enable_if_t< is_guest_size_v< _Tp > > >
 
class  introvirt::basic_guest_ptr< _Tp, _PtrType, _Physical, _Enabled >
 

Namespaces

namespace  introvirt
 Core IntroVirt classes.
 

Functions

template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
void introvirt::_ptr_cast_impl (const basic_guest_ptr< _InTp, _PtrType, _Physical > &in, basic_guest_ptr< _OutTp, _OutPtrType, _Physical > &out)
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::const_ptr_cast (const basic_guest_ptr< _InTp, _PtrType, _Physical > &in)
 Copy casting functions.
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::static_ptr_cast (const basic_guest_ptr< _InTp, _PtrType, _Physical > &in)
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::reinterpret_ptr_cast (const basic_guest_ptr< _InTp, _PtrType, _Physical > &in)
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::const_ptr_cast (basic_guest_ptr< _InTp, _PtrType, _Physical > &&in)
 Move casting functions.
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::static_ptr_cast (basic_guest_ptr< _InTp, _PtrType, _Physical > &&in)
 
template<typename _OutTp , typename _OutPtrType = void, typename _InTp , typename _PtrType , bool _Physical>
basic_guest_ptr< _OutTp, _OutPtrType, _Physical > introvirt::reinterpret_ptr_cast (basic_guest_ptr< _InTp, _PtrType, _Physical > &&in)
 
template<typename _CharType , typename _OutPtrType = void, typename _Tp , typename _PtrType , bool _Physical>
auto introvirt::_map_guest_str (const basic_guest_ptr< _Tp, _PtrType, _Physical > &ptr, size_t max_length=0xFFFF)
 Null terminated array helpers.
 
template<typename _Tp , typename _PtrType , bool _Physical>
basic_guest_ptr< char[], void, _Physical > introvirt::map_guest_cstring (const basic_guest_ptr< _Tp, _PtrType, _Physical > &ptr, size_t max_length=0xFFFF)
 Helper function for map_guest_str<char>
 
template<typename _Tp , typename _PtrType , bool _Physical>
basic_guest_ptr< char16_t[], void, _Physical > introvirt::map_guest_wstring (const basic_guest_ptr< _Tp, _PtrType, _Physical > &ptr, size_t max_length=0xFFFF)
 Helper function for map_guest_str<char16_t>
 
template<typename _Tp , typename _PtrType , bool _Physical>
std::string introvirt::to_string (const basic_guest_ptr< _Tp, _PtrType, _Physical > &ptr)
 String and ostream helpers.
 
template<typename _Tp , typename _PtrType , bool _Physical>
std::ostream & introvirt::operator<< (std::ostream &os, const basic_guest_ptr< _Tp, _PtrType, _Physical > &ptr)
 

Detailed Description

Type-safe guest virtual address pointer and guest_ptr template.