This is the documentation for Enlighten.

class Geo GeoVirtualPageAllocator

class Geo::GeoVirtualPageAllocator

    └>Geo::MemoryAllocator

Implementation of the MemoryAllocator class (on Windows) that uses VirtualAlloc and VirtualProtect to provide similar memory overwrite detection as the Application Verifier.

Functions

Name Description
~MemoryAllocator()

Force a virtual destructor. This is not called by GeoMemory.

Allocate(size_t, size_t, const char *, Geo::s32, const char *)

Allocate a block of memory with the given size.

Allocate(size_t, size_t, const char *, Geo::s32, const char *)

Allocate a block of memory with the given size.

Free(void *, bool, const char *, Geo::s32, const char *)

Free a block of memory, possibly aligned.

Free(void *, bool, const char *, Geo::s32, const char *)

Free a block of memory, possibly aligned.

GetTotalMemoryAllocated()

The total amount of memory we've allocated to date (not subtracting deallocations).

GetTotalMemoryAllocationCalls()

The number of times we've allocated memory through GeoMemory.

GetTotalMemoryDeallocated()

The total amount of memory we've deallocated so far.

GetTotalMemoryInUse()

The total amount of memory currently allocated (allocations minus deallocations)

IsTotalMemorySummarySupported()

Returns true if the memory summary functionality is supported with this allocator.

Realloc(void *, size_t, size_t, const char *, Geo::s32, const char *)

Reallocate a block of memory, preserving as much data as will fit in the new block size.

Realloc(void *, size_t, size_t, const char *, s32, const char *)

Reallocate a block of memory, preserving as much data as will fit in the new block size.


virtual Geo::MemoryAllocator::~MemoryAllocator


public: virtual ~MemoryAllocator()


Force a virtual destructor. This is not called by GeoMemory.


virtual void* Geo::GeoVirtualPageAllocator::Allocate


public: virtual void * Allocate
(
    size_t size,
    size_t align,
    const char * filename,
    Geo::s32 lineNumber,
    const char * message
)


Allocate a block of memory with the given size.

If alignment is 0, use unaligned allocation. Otherwise, alignment must be a power of two.


virtual void* Geo::MemoryAllocator::Allocate


public: void * Allocate
(
    size_t size,
    size_t align,
    const char * filename,
    Geo::s32 lineNumber,
    const char * message
)


Allocate a block of memory with the given size.

If alignment is 0, use unaligned allocation. Otherwise, alignment must be a power of two.


virtual void Geo::GeoVirtualPageAllocator::Free


public: virtual void Free
(
    void * mem,
    bool aligned,
    const char * filename,
    Geo::s32 lineNumber,
    const char * message
)


Free a block of memory, possibly aligned.


virtual void Geo::MemoryAllocator::Free


public: void Free
(
    void * mem,
    bool aligned,
    const char * filename,
    Geo::s32 lineNumber,
    const char * message
)


Free a block of memory, possibly aligned.


virtual Geo::s64 Geo::MemoryAllocator::GetTotalMemoryAllocated


public: virtual Geo::s64 GetTotalMemoryAllocated()


The total amount of memory we've allocated to date (not subtracting deallocations).


virtual Geo::s64 Geo::MemoryAllocator::GetTotalMemoryAllocationCalls


public: virtual Geo::s64 GetTotalMemoryAllocationCalls()


The number of times we've allocated memory through GeoMemory.


virtual Geo::s64 Geo::MemoryAllocator::GetTotalMemoryDeallocated


public: virtual Geo::s64 GetTotalMemoryDeallocated()


The total amount of memory we've deallocated so far.


virtual Geo::s64 Geo::MemoryAllocator::GetTotalMemoryInUse


public: virtual Geo::s64 GetTotalMemoryInUse()


The total amount of memory currently allocated (allocations minus deallocations)


virtual bool Geo::MemoryAllocator::IsTotalMemorySummarySupported


public: virtual bool IsTotalMemorySummarySupported()


Returns true if the memory summary functionality is supported with this allocator.


virtual void* Geo::GeoVirtualPageAllocator::Realloc


public: virtual void * Realloc
(
    void * mem,
    size_t size,
    size_t align,
    const char * filename,
    Geo::s32 lineNumber,
    const char * message
)


Reallocate a block of memory, preserving as much data as will fit in the new block size.

Requires the same alignment as in the original allocation.


virtual void* Geo::MemoryAllocator::Realloc


public: void * Realloc
(
    void * mem,
    size_t size,
    size_t align,
    const char * filename,
    s32 lineNumber,
    const char * message
)


Reallocate a block of memory, preserving as much data as will fit in the new block size.

Requires the same alignment as in the original allocation.