Ogre::StdAlignedAllocPolicy< Alignment > Class Template Reference
Core » Memory

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:

- OgreMemoryStdAlloc.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.