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 void * allocateBytes (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. More...
 

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 112 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:

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Mon Jan 2 2017 11:48:49