Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
FreedBlock Class Reference

Public Member Functions

 FreedBlock ()
 
 FreedBlock (uintptr_t id, size_t size)
 
 ~FreedBlock ()
 
size_t Size () const
 
bool IsFreedBlock (uintptr_t id) const
 
void Validate (uintptr_t id) const
 warn if any invariant doesn't hold. More...
 

Private Attributes

u64 m_magic
 
FreedBlockprev
 
FreedBlocknext
 
size_t m_size
 
uintptr_t m_id
 

Static Private Attributes

static const u64 s_magic = 0xFF55AA00BBCCDDEEull
 

Friends

class RangeList
 

Detailed Description

Definition at line 47 of file headerless.cpp.

Constructor & Destructor Documentation

FreedBlock::FreedBlock ( )
inline

Definition at line 53 of file headerless.cpp.

FreedBlock::FreedBlock ( uintptr_t  id,
size_t  size 
)
inline

Definition at line 57 of file headerless.cpp.

FreedBlock::~FreedBlock ( )
inline

Definition at line 62 of file headerless.cpp.

Member Function Documentation

bool FreedBlock::IsFreedBlock ( uintptr_t  id) const
inline
Returns
whether this appears to be a FreedBlock instance with the desired ID. for additional safety, also call Validate().

Definition at line 80 of file headerless.cpp.

size_t FreedBlock::Size ( ) const
inline

Definition at line 71 of file headerless.cpp.

void FreedBlock::Validate ( uintptr_t  id) const
inline

warn if any invariant doesn't hold.

Definition at line 92 of file headerless.cpp.

Friends And Related Function Documentation

friend class RangeList
friend

Definition at line 49 of file headerless.cpp.

Member Data Documentation

uintptr_t FreedBlock::m_id
private

Definition at line 119 of file headerless.cpp.

u64 FreedBlock::m_magic
private

Definition at line 110 of file headerless.cpp.

size_t FreedBlock::m_size
private

Definition at line 116 of file headerless.cpp.

FreedBlock* FreedBlock::next
private

Definition at line 113 of file headerless.cpp.

FreedBlock* FreedBlock::prev
private

Definition at line 112 of file headerless.cpp.

const u64 FreedBlock::s_magic = 0xFF55AA00BBCCDDEEull
staticprivate

Definition at line 109 of file headerless.cpp.


The documentation for this class was generated from the following file: