CommonLibVR
RE::BSScript::SimpleAllocMemoryPagePolicy Class Reference

#include <SimpleAllocMemoryPagePolicy.h>

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

Public Member Functions

 ~SimpleAllocMemoryPagePolicy () override
 
std::uint32_t MaximumPageSize () override
 
AllocationStatus AllocatePage (std::uint32_t a_pageSize, NewPageStrategy a_stategy, BSTAutoPointer< MemoryPage > &a_newPage) override
 
AllocationStatus GetLargestAvailablePage (BSTAutoPointer< MemoryPage > &a_newPage) override
 
void DisposePage (BSTAutoPointer< MemoryPage > &a_newPage) override
 
- Public Member Functions inherited from RE::BSScript::IMemoryPagePolicy
virtual ~IMemoryPagePolicy ()
 

Public Attributes

const std::uint32_t minPageSize { 0 }
 
const std::uint32_t maxPageSize { 0 }
 
const std::uint32_t maxAllocatedMemory { 0 }
 
const bool ignoreMemoryLimit { 0 }
 
BSSpinLock dataLock
 
std::uint32_t currentMemorySize
 
std::uint32_t maxAdditionalAllocations
 

Static Public Attributes

static constexpr auto RTTI = RTTI_BSScript__SimpleAllocMemoryPagePolicy
 
static constexpr auto VTABLE = VTABLE_BSScript__SimpleAllocMemoryPagePolicy
 
- Static Public Attributes inherited from RE::BSScript::IMemoryPagePolicy
static constexpr auto RTTI = RTTI_BSScript__IMemoryPagePolicy
 
static constexpr auto VTABLE = VTABLE_BSScript__IMemoryPagePolicy
 

Additional Inherited Members

- Public Types inherited from RE::BSScript::IMemoryPagePolicy
enum class  AllocationStatus { kSuccess , kFailed , kOutOfMemory }
 
enum class  NewPageStrategy { kNormal , kIgnoreMemoryLimit }
 

Constructor & Destructor Documentation

◆ ~SimpleAllocMemoryPagePolicy()

RE::BSScript::SimpleAllocMemoryPagePolicy::~SimpleAllocMemoryPagePolicy ( )
override

Member Function Documentation

◆ AllocatePage()

AllocationStatus RE::BSScript::SimpleAllocMemoryPagePolicy::AllocatePage ( std::uint32_t  a_pageSize,
NewPageStrategy  a_stategy,
BSTAutoPointer< MemoryPage > &  a_newPage 
)
overridevirtual

◆ DisposePage()

void RE::BSScript::SimpleAllocMemoryPagePolicy::DisposePage ( BSTAutoPointer< MemoryPage > &  a_newPage)
overridevirtual

◆ GetLargestAvailablePage()

AllocationStatus RE::BSScript::SimpleAllocMemoryPagePolicy::GetLargestAvailablePage ( BSTAutoPointer< MemoryPage > &  a_newPage)
overridevirtual

◆ MaximumPageSize()

std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::MaximumPageSize ( )
overridevirtual

Member Data Documentation

◆ currentMemorySize

std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::currentMemorySize

◆ dataLock

BSSpinLock RE::BSScript::SimpleAllocMemoryPagePolicy::dataLock

◆ ignoreMemoryLimit

const bool RE::BSScript::SimpleAllocMemoryPagePolicy::ignoreMemoryLimit { 0 }

◆ maxAdditionalAllocations

std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::maxAdditionalAllocations

◆ maxAllocatedMemory

const std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::maxAllocatedMemory { 0 }

◆ maxPageSize

const std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::maxPageSize { 0 }

◆ minPageSize

const std::uint32_t RE::BSScript::SimpleAllocMemoryPagePolicy::minPageSize { 0 }

◆ RTTI

constexpr auto RE::BSScript::SimpleAllocMemoryPagePolicy::RTTI = RTTI_BSScript__SimpleAllocMemoryPagePolicy
inlinestaticconstexpr

◆ VTABLE

constexpr auto RE::BSScript::SimpleAllocMemoryPagePolicy::VTABLE = VTABLE_BSScript__SimpleAllocMemoryPagePolicy
inlinestaticconstexpr

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