NullSwizzle< T, mapLength > Class Template Reference

#include <swizzle.h>

Inheritance diagram for NullSwizzle< T, mapLength >:

Inheritance graph
[legend]
List of all members.


template<class T, dsize_t mapLength> class NullSwizzle< T, mapLength >


Public Member Functions

 NullSwizzle (const dsize_t *map=NULL)
virtual void InPlace (void *memory, const dsize_t size) const
 This method will, in the general case, use the ToBuffer method to swizzle the memory specified into a temporary buffer, allocated by FrameTemp, and then copy the temporary memory into the source memory.
virtual void ToBuffer (void *destination, const void *source, const dsize_t size) const
 This method copies the data from source to destination while applying the re-ordering.

Constructor & Destructor Documentation

template<class T, dsize_t mapLength>
NullSwizzle< T, mapLength >::NullSwizzle ( const dsize_t map = NULL  )  [inline]


Member Function Documentation

template<class T, dsize_t mapLength>
virtual void NullSwizzle< T, mapLength >::InPlace ( void memory,
const dsize_t  size 
) const [inline, virtual]

This method will, in the general case, use the ToBuffer method to swizzle the memory specified into a temporary buffer, allocated by FrameTemp, and then copy the temporary memory into the source memory.

Parameters:
memory Pointer to the start of the buffer to swizzle
size Size of the buffer

Reimplemented from Swizzle< T, mapLength >.

template<class T, dsize_t mapLength>
virtual void NullSwizzle< T, mapLength >::ToBuffer ( void destination,
const void source,
const dsize_t  size 
) const [inline, virtual]

This method copies the data from source to destination while applying the re-ordering.

This method is, in the non-specalized case, O(N^2) where N is sizeof( T ) / size; the number of instances of type 'T' in the buffer

Parameters:
destination The destination of the swizzled data
source The source data to be swizzled
size Size of the source and destination buffers.

Reimplemented from Swizzle< T, mapLength >.