CommonLibSSE NG
RE::BSScript::IMemoryPagePolicy Struct Referenceabstract

#include <IMemoryPagePolicy.h>

Inheritance diagram for RE::BSScript::IMemoryPagePolicy:
RE::BSScript::SimpleAllocMemoryPagePolicy

Public Types

enum class  AllocationStatus { kSuccess , kFailed , kOutOfMemory }
 
enum class  NewPageStrategy { kNormal , kIgnoreMemoryLimit }
 

Public Member Functions

virtual ~IMemoryPagePolicy ()
 
virtual std::uint32_t MaximumPageSize ()=0
 
virtual AllocationStatus AllocatePage (std::uint32_t a_pageSize, NewPageStrategy a_stategy, BSTAutoPointer< MemoryPage > &a_newPage)=0
 
virtual AllocationStatus GetLargestAvailablePage (BSTAutoPointer< MemoryPage > &a_newPage)=0
 
virtual void DisposePage (BSTAutoPointer< MemoryPage > &a_oldPage)=0
 

Static Public Attributes

static constexpr auto RTTI = RTTI_BSScript__IMemoryPagePolicy
 

Member Enumeration Documentation

◆ AllocationStatus

Enumerator
kSuccess 
kFailed 
kOutOfMemory 

◆ NewPageStrategy

Enumerator
kNormal 
kIgnoreMemoryLimit 

Constructor & Destructor Documentation

◆ ~IMemoryPagePolicy()

virtual RE::BSScript::IMemoryPagePolicy::~IMemoryPagePolicy ( )
virtual

Member Function Documentation

◆ AllocatePage()

virtual AllocationStatus RE::BSScript::IMemoryPagePolicy::AllocatePage ( std::uint32_t  a_pageSize,
NewPageStrategy  a_stategy,
BSTAutoPointer< MemoryPage > &  a_newPage 
)
pure virtual

◆ DisposePage()

virtual void RE::BSScript::IMemoryPagePolicy::DisposePage ( BSTAutoPointer< MemoryPage > &  a_oldPage)
pure virtual

◆ GetLargestAvailablePage()

virtual AllocationStatus RE::BSScript::IMemoryPagePolicy::GetLargestAvailablePage ( BSTAutoPointer< MemoryPage > &  a_newPage)
pure virtual

◆ MaximumPageSize()

virtual std::uint32_t RE::BSScript::IMemoryPagePolicy::MaximumPageSize ( )
pure virtual

Member Data Documentation

◆ RTTI

constexpr auto RE::BSScript::IMemoryPagePolicy::RTTI = RTTI_BSScript__IMemoryPagePolicy
inlinestaticconstexpr

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