OGRE  1.9.0
Public Types | Static Public Member Functions | Private Member Functions | List of all members
Ogre::StdAlignedAllocPolicy< Alignment > Class Template Reference

A "standard" allocation policy for use with AllocatedObject and STLAllocator, which aligns memory at a given boundary (which should be a power of 2). More...

#include <OgreMemoryStdAlloc.h>

Public Types

typedef int IsValidAlignment[Alignment<=128 &&((Alignment &(Alignment-1))==0) ?+1 :-1]
 

Static Public Member Functions

static voidallocateBytes (size_t count, const char *=0, int=0, const char *=0)
 
static void deallocateBytes (void *ptr)
 
static size_t getMaxAllocationSize ()
 Get the maximum size of a single allocation.
 

Private Member Functions

 StdAlignedAllocPolicy ()
 

Detailed Description

template<size_t Alignment = 0>
class Ogre::StdAlignedAllocPolicy< Alignment >

A "standard" allocation policy for use with AllocatedObject and STLAllocator, which aligns memory at a given boundary (which should be a power of 2).

This is the class that actually does the allocation and deallocation of physical memory, and is what you will want to provide a custom version of if you wish to change how memory is allocated.

This class just delegates to the global malloc/free, via AlignedMemory.
Note
template parameter Alignment equal to zero means use default platform dependent alignment.

Definition at line 107 of file OgreMemoryStdAlloc.h.

Member Typedef Documentation

◆ IsValidAlignment

template<size_t Alignment = 0>
typedef int Ogre::StdAlignedAllocPolicy< Alignment >::IsValidAlignment[Alignment<=128 &&((Alignment &(Alignment-1))==0) ?+1 :-1]

Definition at line 111 of file OgreMemoryStdAlloc.h.

Constructor & Destructor Documentation

◆ StdAlignedAllocPolicy()

template<size_t Alignment = 0>
Ogre::StdAlignedAllocPolicy< Alignment >::StdAlignedAllocPolicy ( )
private

Definition at line 146 of file OgreMemoryStdAlloc.h.

Member Function Documentation

◆ allocateBytes()

template<size_t Alignment = 0>
static void * Ogre::StdAlignedAllocPolicy< Alignment >::allocateBytes ( size_t  count,
const char = 0,
int  = 0,
const char = 0 
)
static

Definition at line 114 of file OgreMemoryStdAlloc.h.

References Ogre::AlignedMemory::allocate().

◆ deallocateBytes()

template<size_t Alignment = 0>
static void Ogre::StdAlignedAllocPolicy< Alignment >::deallocateBytes ( void ptr)
static

Definition at line 131 of file OgreMemoryStdAlloc.h.

References Ogre::AlignedMemory::deallocate().

◆ getMaxAllocationSize()

template<size_t Alignment = 0>
static size_t Ogre::StdAlignedAllocPolicy< Alignment >::getMaxAllocationSize ( )
static

Get the maximum size of a single allocation.

Definition at line 140 of file OgreMemoryStdAlloc.h.


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