CMS 3D CMS Logo

lat::BitOpsMortonInterleave< B > Struct Template Reference

Spread bits of n to be one bit apart from their neighbour to the even bit positions in T; the odd bits will be left zero. More...

#include <Iguana/Utilities/classlib/utils/BitOps.h>


Classes

struct  Op


Detailed Description

template<unsigned int B>
struct lat::BitOpsMortonInterleave< B >

Spread bits of n to be one bit apart from their neighbour to the even bit positions in T; the odd bits will be left zero.

To construct a Morton sequence number of two numbers x and y, do mortonInterleave(x) | (mortonInterleave(y) << 1).

Each operation splits the bits in n into chunks of B bits, and moves the chunks B bits away from its neighbours, and fills the spaces with zeroes---like this (`o' denotes bit that is zero, `0' the least significant bit):

Definition at line 330 of file BitOps.h.


The documentation for this struct was generated from the following file:
Generated on Tue Jun 9 18:48:22 2009 for CMSSW by  doxygen 1.5.4