Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r63695 - in sandbox/SOC/2010/bit_masks/lib/integer/doc/html: bits_mask/bit_masks bits_mask/bit_masks/bit_masks boost_integer_bits_masks_extension boost_integer_bits_masks_extension/bit_masks boost_integer_bits_masks_extension/bit_masks/bit_masks boost_integer_bits_masks_extension/bit_masks/overview boost_integer_bits_masks_extension/masks high_bits_mask/bit_masks high_bits_mask/bit_masks/bit_masks high_bits_mask/masks integral_mask/bit_masks integral_mask/bit_masks/bit_masks low_bits_mask/bit_masks low_bits_mask/bit_masks/bit_masks low_bits_mask/masks
From: bbartmanboost_at_[hidden]
Date: 2010-07-06 10:24:25


Author: bbartman
Date: 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
New Revision: 63695
URL: http://svn.boost.org/trac/boost/changeset/63695

Log:
adding the additional html files created from me working on reorganizing my documentation
Added:
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bit_masks/bits_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bits_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/overview.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/description.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/overview.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/rationale.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks/bit_mask_purpose.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/high_bits_maskbits.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/masks/high_bits_maskbits.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/bit_masks/integral_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/integral_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/bit_masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/bit_masks/low_bits_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/low_bits_mask.html (contents, props changed)
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/masks/
   sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/masks/low_bits_mask.html (contents, props changed)

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bit_masks/bits_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bit_masks/bits_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,424 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>bits_mask</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html" title="low_bits_mask">
+<link rel="next" href="../../../bitfield_tuple/bitfield_tuple.html" title="bitfield_tuple">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../bitfield_tuple/bitfield_tuple.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="bits_mask.bit_masks.bit_masks.bits_mask"></a><a class="link" href="bits_mask.html" title="bits_mask"> bits_mask</a>
+</h4></div></div></div>
+<a name="bits_mask.bit_masks.bit_masks.bits_mask.description"></a><h4>
+<a name="id3095222"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bit_masks.bits_mask.description">Description</a>
+ </h4>
+<p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code> template
+ provides an extention to the <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ template, by incorporating an <code class="computeroutput"><span class="identifier">Offset</span></code>
+ with the template. The <code class="computeroutput"><span class="identifier">offest</span></code>
+ is always relative to the right most bit, or bit 0. For a basic view of
+ how <code class="computeroutput"><span class="identifier">bits_mask</span></code> works consider
+ the following examples:
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask::value has the following binary value
+</span><span class="comment">// 0000 0000 0000 0000 0001 1100 0000 0000
+</span></pre>
+<p>
+ For simplicity there is a defualt parameter for <code class="computeroutput"><span class="identifier">Width</span></code>
+ giving it a value of <code class="computeroutput"><span class="number">1</span></code>. This
+ makes writing of normally left or right shift masks simple and staticly
+ checkable. For example,
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="comment">// If one would need to create a mask for checking the 11th bit within an
+</span><span class="comment">// integer it can be done simple with the following mask
+</span><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">11</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// this creates a mask at the 11th bit within an integer.
+</span></pre>
+<p>
+ </p>
+<p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code> template
+ is located in the &lt;boost/integer/bits_mask.hpp&gt; header file.
+ </p>
+<a name="bits_mask.bit_masks.bit_masks.bits_mask.template_signature"></a><h4>
+<a name="id3095463"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bit_masks.bits_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Offset</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span> <span class="special">=</span> <span class="number">1</span> <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Offset</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the number of bits which is used for a left shift of
+ the <code class="computeroutput"><span class="identifier">width</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bit_masks.bits_mask.interface"></a><h4>
+<a name="id3095714"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bit_masks.bits_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">TYPENAME</span></code> Compile time interface.
+ Assume that N is of type <code class="computeroutput"><span class="identifier">N</span> <span class="identifier">TYPE</span></code> the type supplied here is only for
+ example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code> template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">offset</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">Offset</span></code> template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bit_masks.bits_mask.preconditions"></a><h4>
+<a name="id3096081"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bit_masks.bits_mask.preconditions">Preconditions</a>
+ </h4>
+<p>
+ Preconditions associated with the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template. There are two types of precondtions ones which are only documented
+ and ones which are both enforced and documented. Preconditions will specify
+ which are which within the documentation. All of the preconditions will
+ document how they are enforced when they are enforced.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Precondition
+ </p>
+ </th>
+<th>
+ <p>
+ Reasoning
+ </p>
+ </th>
+<th>
+ <p>
+ Enforcement
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="special">(</span><span class="identifier">Offset</span>
+ <span class="special">+</span> <span class="identifier">Width</span><span class="special">)</span> <span class="special">&lt;</span>
+ <span class="special">(</span> <span class="identifier">bit_width</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
+ <span class="special">-</span> <span class="number">1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ It will cause overflow if the width plus the offset is greater
+ then total width of the type in bits.
+ </p>
+ </td>
+<td>
+ <p>
+ Enforced by <code class="computeroutput"><span class="identifier">BOOST_STATIC_ASSERT</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span> <span class="special">&gt;</span>
+ <span class="number">0</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This would create an empty mask, which won't do anything.
+ </p>
+ </td>
+<td>
+ <p>
+ Enfoced by the domain of the <code class="computeroutput"><span class="identifier">Width</span></code>
+ template parameter which is an <code class="computeroutput"><span class="keyword">unsigned</span>
+ <span class="keyword">int</span></code>, which prevents the
+ value from being negative, and by <code class="computeroutput"><span class="identifier">BOOST_STATIC_ASSERT</span></code>,
+ which prevents the value from being zero.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code> must satisfy
+ the <code class="computeroutput"><span class="identifier">is_integral</span></code>
+ type trait.
+ </p>
+ </td>
+<td>
+ <p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template has only been tested with integral types.
+ </p>
+ </td>
+<td>
+ <p>
+ This is only a documented precondition.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bit_masks.bits_mask.examples"></a><h4>
+<a name="id3096404"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bit_masks.bits_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+ </p>
+<p>
+ Single bit mask using the default parameter for width.
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span> <span class="keyword">int</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask in this case has the following value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 0001
+</span>
+<span class="keyword">int</span> <span class="identifier">some_bit_value</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+
+<span class="comment">// now testing to see if the zero bit is set in some_bit_value
+</span><span class="keyword">if</span><span class="special">(</span><span class="identifier">some_bit_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">()</span> <span class="special">)</span> <span class="special">{</span>
+ <span class="special">...</span>
+ <span class="keyword">true</span> <span class="keyword">case</span>
+ <span class="special">...</span>
+<span class="special">}</span> <span class="keyword">else</span> <span class="special">{</span>
+ <span class="special">...</span>
+ <span class="keyword">false</span> <span class="keyword">case</span>
+ <span class="special">...</span>
+<span class="special">}</span>
+</pre>
+<p>
+ </p>
+<p>
+ Here is another case where the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template is used used similar to a bit field. The goal in this case would
+ be to extract a single value from within an integral storage type, which
+ may be storing one or more values.
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">10</span><span class="special">,</span><span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// binary value of mask
+</span><span class="comment">// 0000 0000 0000 0000 0001 1111 1111 1000
+</span>
+<span class="comment">// this will then be used to retrieve a value within an integer.
+</span><span class="keyword">int</span> <span class="identifier">some_bit_value</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+<span class="comment">// binary value of some_bit_value
+</span><span class="comment">// 1101 1110 1010 1011 1011 1110 1110 1111
+</span>
+<span class="comment">// now to extract the value from within some_bit_value
+</span><span class="keyword">int</span> <span class="identifier">new_int_value</span> <span class="special">=</span> <span class="special">(</span> <span class="identifier">some_bit_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">()</span> <span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">mask</span><span class="special">::</span><span class="identifier">offset</span><span class="special">;</span>
+
+<span class="comment">// basic operations taking place.
+</span><span class="comment">// 1101 1110 1010 1011 1011 1110 1110 1111 &lt;- some_bit_value
+</span><span class="comment">// 0000 0000 0000 0000 0001 1111 1111 1000 &lt;- mask::value
+</span>
+<span class="comment">// preforming bitwise and operator.
+</span>
+<span class="comment">// 0000 0000 0000 0000 0001 1110 1110 1000 &lt;- result of bitwise and operator
+</span><span class="comment">// preform right shift operation.
+</span><span class="comment">// 0000 0000 0000 0000 0000 0011 1101 1101 &lt;- value of new_int_value.
+</span></pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In
+ the above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code> could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code> to achieve the same result. The
+ same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../bitfield_tuple/bitfield_tuple.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bits_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/bits_mask/bit_masks/bits_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,427 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>bits_mask</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../low_bits_mask/bit_masks/low_bits_mask.html" title="low_bits_mask">
+<link rel="next" href="../../bitfield_tuple/bitfield_tuple.html" title="bitfield_tuple">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../low_bits_mask/bit_masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bitfield_tuple/bitfield_tuple.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="bits_mask.bit_masks.bits_mask"></a><a class="link" href="bits_mask.html" title="bits_mask"> bits_mask</a>
+</h3></div></div></div>
+<a name="bits_mask.bit_masks.bits_mask.description"></a><h4>
+<a name="id2942167"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bits_mask.description">Description</a>
+ </h4>
+<p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code> template provides
+ an extention to the <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ template, by incorporating an <code class="computeroutput"><span class="identifier">Offset</span></code>
+ with the template. The <code class="computeroutput"><span class="identifier">offest</span></code>
+ is always relative to the right most bit, or bit 0. For a basic view of how
+ <code class="computeroutput"><span class="identifier">bits_mask</span></code> works consider
+ the following examples:
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask::value has the following binary value
+</span><span class="comment">// 0000 0000 0000 0000 0001 1100 0000 0000
+</span></pre>
+<p>
+ For simplicity there is a defualt parameter for <code class="computeroutput"><span class="identifier">Width</span></code>
+ giving it a value of <code class="computeroutput"><span class="number">1</span></code>. This
+ makes writing of normally left or right shift masks simple and staticly checkable.
+ For example,
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="comment">// If one would need to create a mask for checking the 11th bit within an
+</span><span class="comment">// integer it can be done simple with the following mask
+</span><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">11</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// this creates a mask at the 11th bit within an integer.
+</span></pre>
+<p>
+ </p>
+<p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code> template is
+ located in the &lt;boost/integer/bits_mask.hpp&gt; header file.
+ </p>
+<a name="bits_mask.bit_masks.bits_mask.template_signature"></a><h4>
+<a name="id2942409"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bits_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Offset</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span> <span class="special">=</span> <span class="number">1</span> <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Offset</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the number of bits which is used for a left shift of the
+ <code class="computeroutput"><span class="identifier">width</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bits_mask.interface"></a><h4>
+<a name="id2942657"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bits_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">TYPENAME</span></code> Compile time interface.
+ Assume that N is of type <code class="computeroutput"><span class="identifier">N</span> <span class="identifier">TYPE</span></code> the type supplied here is only for
+ example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">offset</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">Offset</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bits_mask.preconditions"></a><h4>
+<a name="id2943022"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bits_mask.preconditions">Preconditions</a>
+ </h4>
+<p>
+ Preconditions associated with the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template. There are two types of precondtions ones which are only documented
+ and ones which are both enforced and documented. Preconditions will specify
+ which are which within the documentation. All of the preconditions will document
+ how they are enforced when they are enforced.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Precondition
+ </p>
+ </th>
+<th>
+ <p>
+ Reasoning
+ </p>
+ </th>
+<th>
+ <p>
+ Enforcement
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="special">(</span><span class="identifier">Offset</span>
+ <span class="special">+</span> <span class="identifier">Width</span><span class="special">)</span> <span class="special">&lt;</span>
+ <span class="special">(</span> <span class="identifier">bit_width</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
+ <span class="special">-</span> <span class="number">1</span><span class="special">)</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ It will cause overflow if the width plus the offset is greater
+ then total width of the type in bits.
+ </p>
+ </td>
+<td>
+ <p>
+ Enforced by <code class="computeroutput"><span class="identifier">BOOST_STATIC_ASSERT</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span> <span class="special">&gt;</span>
+ <span class="number">0</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This would create an empty mask, which won't do anything.
+ </p>
+ </td>
+<td>
+ <p>
+ Enfoced by the domain of the <code class="computeroutput"><span class="identifier">Width</span></code>
+ template parameter which is an <code class="computeroutput"><span class="keyword">unsigned</span>
+ <span class="keyword">int</span></code>, which prevents the
+ value from being negative, and by <code class="computeroutput"><span class="identifier">BOOST_STATIC_ASSERT</span></code>,
+ which prevents the value from being zero.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code> must satisfy
+ the <code class="computeroutput"><span class="identifier">is_integral</span></code>
+ type trait.
+ </p>
+ </td>
+<td>
+ <p>
+ The <code class="computeroutput"><span class="identifier">bits_mask</span></code> template
+ has only been tested with integral types.
+ </p>
+ </td>
+<td>
+ <p>
+ This is only a documented precondition.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="bits_mask.bit_masks.bits_mask.examples"></a><h4>
+<a name="id2943343"></a>
+ <a class="link" href="bits_mask.html#bits_mask.bit_masks.bits_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+ </p>
+<p>
+ Single bit mask using the default parameter for width.
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span> <span class="keyword">int</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask in this case has the following value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 0001
+</span>
+<span class="keyword">int</span> <span class="identifier">some_bit_value</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+
+<span class="comment">// now testing to see if the zero bit is set in some_bit_value
+</span><span class="keyword">if</span><span class="special">(</span><span class="identifier">some_bit_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">()</span> <span class="special">)</span> <span class="special">{</span>
+ <span class="special">...</span>
+ <span class="keyword">true</span> <span class="keyword">case</span>
+ <span class="special">...</span>
+<span class="special">}</span> <span class="keyword">else</span> <span class="special">{</span>
+ <span class="special">...</span>
+ <span class="keyword">false</span> <span class="keyword">case</span>
+ <span class="special">...</span>
+<span class="special">}</span>
+</pre>
+<p>
+ </p>
+<p>
+ Here is another case where the <code class="computeroutput"><span class="identifier">bits_mask</span></code>
+ template is used used similar to a bit field. The goal in this case would
+ be to extract a single value from within an integral storage type, which
+ may be storing one or more values.
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">10</span><span class="special">,</span><span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// binary value of mask
+</span><span class="comment">// 0000 0000 0000 0000 0001 1111 1111 1000
+</span>
+<span class="comment">// this will then be used to retrieve a value within an integer.
+</span><span class="keyword">int</span> <span class="identifier">some_bit_value</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+<span class="comment">// binary value of some_bit_value
+</span><span class="comment">// 1101 1110 1010 1011 1011 1110 1110 1111
+</span>
+<span class="comment">// now to extract the value from within some_bit_value
+</span><span class="keyword">int</span> <span class="identifier">new_int_value</span> <span class="special">=</span> <span class="special">(</span> <span class="identifier">some_bit_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">()</span> <span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">mask</span><span class="special">::</span><span class="identifier">offset</span><span class="special">;</span>
+
+<span class="comment">// basic operations taking place.
+</span><span class="comment">// 1101 1110 1010 1011 1011 1110 1110 1111 &lt;- some_bit_value
+</span><span class="comment">// 0000 0000 0000 0000 0001 1111 1111 1000 &lt;- mask::value
+</span>
+<span class="comment">// preforming bitwise and operator.
+</span>
+<span class="comment">// 0000 0000 0000 0000 0001 1110 1110 1000 &lt;- result of bitwise and operator
+</span><span class="comment">// preform right shift operation.
+</span><span class="comment">// 0000 0000 0000 0000 0000 0011 1101 1101 &lt;- value of new_int_value.
+</span></pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../low_bits_mask/bit_masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bitfield_tuple/bitfield_tuple.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,60 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Bit Masks</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="prev" href="HeaderSummary.html" title="Header File Summary">
+<link rel="next" href="bit_masks/overview.html" title="Overview">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="HeaderSummary.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_masks/overview.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="boost_integer_bits_masks_extension.bit_masks"></a><a class="link" href="bit_masks.html" title="Bit Masks">Bit Masks</a>
+</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Overview</span></dt>
+<dd><dl>
+<dt><span class="section">Description</span></dt>
+<dt><span class="section">rationale</span></dt>
+</dl></dd>
+<dt><span class="section"><a href="bit_masks/bit_mask_purpose.html">
+ Purpose</a></span></dt>
+<dt><span class="section"><a href="../integral_mask/bit_masks/integral_mask.html"> integral_mask
+ type</a></span></dt>
+<dt><span class="section"> high_bits_mask</span></dt>
+<dt><span class="section"> low_bits_mask</span></dt>
+<dt><span class="section"> bits_mask</span></dt>
+</dl></div>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="HeaderSummary.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_masks/overview.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,35 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Purpose</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../bit_masks.html" title="Bit Masks">
+<link rel="prev" href="overview/rationale.html" title="rationale">
+<link rel="next" href="../../integral_mask/bit_masks/integral_mask.html" title="integral_mask type">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="overview/rationale.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../integral_mask/bit_masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section"><div class="titlepage"><div><div><h3 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.bit_mask_purpose"></a><a class="link" href="bit_mask_purpose.html" title="Purpose">
+ Purpose</a>
+</h3></div></div></div></div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="overview/rationale.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../integral_mask/bit_masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,58 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Bit Masks</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../bit_masks.html" title="Bit Masks">
+<link rel="next" href="bit_masks/overview.html" title="Overview">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_masks/overview.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.bit_masks"></a><a class="link" href="bit_masks.html" title="Bit Masks">Bit
+ Masks</a>
+</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Overview</span></dt>
+<dt><span class="section"><a href="bit_masks/bit_mask_purpose.html">
+ Purpose</a></span></dt>
+<dt><span class="section"><a href="../../integral_mask/bit_masks/bit_masks/integral_mask.html"> integral_mask
+ type</a></span></dt>
+<dt><span class="section"><a href="../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html">
+ high_bits_mask</a></span></dt>
+<dt><span class="section"> low_bits_mask</span></dt>
+<dt><span class="section"> bits_mask</span></dt>
+</dl></div>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_masks/overview.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,82 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Purpose</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../bit_masks.html" title="Bit Masks">
+<link rel="prev" href="overview.html" title="Overview">
+<link rel="next" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html" title="integral_mask type">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.bit_masks.bit_mask_purpose"></a><a class="link" href="bit_mask_purpose.html" title="Purpose">
+ Purpose</a>
+</h4></div></div></div>
+<p>
+ The purpose of this library extension to the boost.integer library is to
+ make the creation of simple and complex integral masks simple and easy
+ and constructable on compile time. The structure of the masks are extensions
+ of the type <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ provided by boost.type_traits library. All masks are able to be treated
+ as the <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ type. All masks provide the following three compile time accessible features.
+ They all provide <code class="computeroutput"><span class="special">::</span><span class="identifier">type</span></code>,<code class="computeroutput"><span class="special">::</span><span class="identifier">value_type</span></code>
+ and <code class="computeroutput"><span class="special">::</span><span class="identifier">value</span></code>
+ for compile time support. This also means that all masks can be used with
+ the boost.mpl bitwise operator meta-functions for creation of more complex
+ masks. Now because these values were intended to be used during the runtime
+ of a program all of the masking types which are provided by this library
+ provide an additional functionality for run time support. All of the mask
+ types in this library provide the implicit cast operator allowing for the
+ meta-function objects to be used as if they were the integral value they
+ were used to construct. For example,
+</p>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">integer</span><span class="special">/</span><span class="identifier">integral_mask</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
+
+
+<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
+ <span class="keyword">int</span> <span class="identifier">t</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask_type</span><span class="special">;</span>
+
+ <span class="keyword">int</span> <span class="identifier">unmasked_t</span> <span class="special">=</span> <span class="identifier">t</span> <span class="special">&amp;</span> <span class="identifier">mask_type</span><span class="special">();</span>
+ <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
+<span class="special">}</span>
+</pre>
+<p>
+ For the use of a mask all that one needs to do is to construct the mask
+ and simply treat it as though it were an integer.
+ </p>
+<div class="note"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td align="left" valign="top"><p>
+ All masks are trivially default constructible and destructible.
+ </p></td></tr>
+</table></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/overview.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/bit_masks/overview.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,34 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Overview</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../bit_masks.html" title="Bit Masks">
+<link rel="next" href="bit_mask_purpose.html" title="Purpose">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section"><div class="titlepage"><div><div><h4 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.bit_masks.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
+</h4></div></div></div></div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,40 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Overview</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../bit_masks.html" title="Bit Masks">
+<link rel="next" href="overview/description.html" title="Description">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overview/description.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
+</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Description</span></dt>
+<dt><span class="section">rationale</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="overview/description.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/description.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/description.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,85 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Description</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../overview.html" title="Overview">
+<link rel="prev" href="../overview.html" title="Overview">
+<link rel="next" href="rationale.html" title="rationale">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rationale.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.overview.description"></a><a class="link" href="description.html" title="Description">Description</a>
+</h4></div></div></div>
+<p>
+ The purpose of this library extension to the boost.integer library is to
+ make the creation of simple and complex integral masks simple and easy
+ and constructable on compile time. The structure of the masks are extensions
+ of the type <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ provided by boost.type_traits library. All masks are able to be treated
+ as the <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ type. All masks provide the following three compile time accessible features.
+ They all provide <code class="computeroutput"><span class="special">::</span><span class="identifier">type</span></code>,
+ <code class="computeroutput"><span class="special">::</span><span class="identifier">value_type</span></code>
+ and <code class="computeroutput"><span class="special">::</span><span class="identifier">value</span></code>
+ for compile time support. This also means that all masks can be used with
+ the boost.mpl bitwise operator meta-functions for creation of more complex
+ masks. Now, because these values were intended to be used during the runtime
+ of a program all of the masking types which are provided by this library
+ provide an additional functionality for run timesupport. All of the mask
+ types in this library provide the implicit cast operator allowing for the
+ meta-function objects to be used as if they were the integral value they
+ were used to construct. For example,
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">integer</span><span class="special">/</span><span class="identifier">integral_mask</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
+
+
+<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
+ <span class="keyword">int</span> <span class="identifier">t</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask_type</span><span class="special">;</span>
+
+ <span class="keyword">int</span> <span class="identifier">unmasked_t</span> <span class="special">=</span> <span class="identifier">t</span> <span class="special">&amp;</span> <span class="identifier">mask_type</span><span class="special">();</span>
+ <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
+<span class="special">}</span>
+</pre>
+<p>
+ For the use of a mask all that one needs to do is to construct the mask
+ and simply treat it as though it were an integer.
+ </p>
+<div class="note"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td align="left" valign="top"><p>
+ All masks are trivially default constructible and destructible.
+ </p></td></tr>
+</table></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rationale.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/overview.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/overview.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,34 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Overview</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../overview.html" title="Overview">
+<link rel="prev" href="../overview.html" title="Overview">
+<link rel="next" href="rationale.html" title="rationale">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rationale.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section"><div class="titlepage"><div><div><h4 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.overview.overview"></a><a class="link" href="overview.html" title="Overview">Overview</a>
+</h4></div></div></div></div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="rationale.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/rationale.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/bit_masks/overview/rationale.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,34 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>rationale</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../overview.html" title="Overview">
+<link rel="prev" href="description.html" title="Description">
+<link rel="next" href="../bit_mask_purpose.html" title="Purpose">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="description.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section"><div class="titlepage"><div><div><h4 class="title">
+<a name="boost_integer_bits_masks_extension.bit_masks.overview.rationale"></a><a class="link" href="rationale.html" title="rationale">rationale</a>
+</h4></div></div></div></div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="description.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../overview.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,54 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Masks</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="prev" href="HeaderSummary.html" title="Header File Summary">
+<link rel="next" href="masks/bit_mask_purpose.html" title="Purpose">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="HeaderSummary.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="masks/bit_mask_purpose.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="boost_integer_bits_masks_extension.masks"></a><a class="link" href="masks.html" title="Masks">Masks</a>
+</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="masks/bit_mask_purpose.html">
+ Purpose</a></span></dt>
+<dt><span class="section"> integral_mask type</span></dt>
+<dt><span class="section"> high_bits_mask</span></dt>
+<dt><span class="section"> low_bits_mask</span></dt>
+<dt><span class="section"> bits_mask</span></dt>
+</dl></div>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+<p>
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="HeaderSummary.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="masks/bit_mask_purpose.html"><img src="..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks/bit_mask_purpose.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/boost_integer_bits_masks_extension/masks/bit_mask_purpose.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,82 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Purpose</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../masks.html" title="Masks">
+<link rel="prev" href="../masks.html" title="Masks">
+<link rel="next" href="../../integral_mask/masks/integral_mask.html" title="integral_mask type">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../integral_mask/masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="boost_integer_bits_masks_extension.masks.bit_mask_purpose"></a><a class="link" href="bit_mask_purpose.html" title="Purpose">
+ Purpose</a>
+</h3></div></div></div>
+<p>
+ The purpose of this library extension to the boost.integer library is to
+ make the creation of simple and complex integral masks simple and easy and
+ constructable on compile time. The structure of the masks are extensions
+ of the type <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ provided by boost.type_traits library. All masks are able to be treated as
+ the <code class="computeroutput"><span class="identifier">integral_constant</span></code> type.
+ All masks provide the following three compile time accessible features. They
+ all provide <code class="computeroutput"><span class="special">::</span><span class="identifier">type</span></code>,<code class="computeroutput"><span class="special">::</span><span class="identifier">value_type</span></code>
+ and <code class="computeroutput"><span class="special">::</span><span class="identifier">value</span></code>
+ for compile time support. This also means that all masks can be used with
+ the boost.mpl bitwise operator meta-functions for creation of more complex
+ masks. Now because these values were intended to be used during the runtime
+ of a program all of the masking types which are provided by this library
+ provide an additional functionality for run time support. All of the mask
+ types in this library provide the implicit cast operator allowing for the
+ meta-function objects to be used as if they were the integral value they
+ were used to construct. For example,
+</p>
+<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">integer</span><span class="special">/</span><span class="identifier">integral_mask</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
+
+
+<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
+ <span class="keyword">int</span> <span class="identifier">t</span> <span class="special">=</span> <span class="number">0xdeadbeef</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">3</span><span class="special">&gt;</span> <span class="identifier">mask_type</span><span class="special">;</span>
+
+ <span class="keyword">int</span> <span class="identifier">unmasked_t</span> <span class="special">=</span> <span class="identifier">t</span> <span class="special">&amp;</span> <span class="identifier">mask_type</span><span class="special">();</span>
+ <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
+<span class="special">}</span>
+</pre>
+<p>
+ For the use of a mask all that one needs to do is to construct the mask and
+ simply treat it as though it were an integer.
+ </p>
+<div class="note"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../..//home/brian/gsoc/boost-trunk/doc/html/images/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td align="left" valign="top"><p>
+ All masks are trivially default constructible and destructible.
+ </p></td></tr>
+</table></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../integral_mask/masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,242 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>high_bits_mask</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html" title="integral_mask type">
+<link rel="next" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html" title="low_bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="high_bits_mask.bit_masks.bit_masks.high_bits_maskbits"></a><a class="link" href="high_bits_maskbits.html" title="high_bits_mask">
+ high_bits_mask</a>
+</h4></div></div></div>
+<a name="high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.description"></a><h4>
+<a name="id3093436"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.description">Description</a>
+ </h4>
+<p>
+ THe template <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ preforms bitwise operations on compile time then exposes the newly created
+ mask via <code class="computeroutput"><span class="identifier">value</span></code> and <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>. What <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ does is create a mask inside your integral type which sets all bits starting
+ from the left most bit reaching out width bits to the right. For example,
+
+</p>
+<pre class="programlisting"><span class="comment">// using high bits to create a mask starting from the left most bit with a width
+</span><span class="comment">// of 15
+</span><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">15</span><span class="special">&gt;</span> <span class="identifier">bits</span><span class="special">;</span>
+<span class="comment">// bits::value will have the following value in binary.
+</span><span class="comment">// 1111 1111 1111 1110 0000 0000 0000 0000
+</span></pre>
+<p>
+ </p>
+<a name="high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.template_signature"></a><h4>
+<a name="id3093576"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> has the
+ following template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">high_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.interface"></a><h4>
+<a name="id3093760"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> Compile
+ time interface. Assume that N is of type <code class="computeroutput"><span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code> template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.examples"></a><h4>
+<a name="id3094101"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.bit_masks.high_bits_maskbits.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 1111 0000 0000 0000 0000 0000 0000 0000
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 0000
+</span>
+</pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In
+ the above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code> could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code> to achieve the same result. The
+ same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../integral_mask/bit_masks/bit_masks/integral_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../low_bits_mask/bit_masks/bit_masks/low_bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/high_bits_maskbits.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/bit_masks/high_bits_maskbits.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,244 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>high_bits_mask</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../integral_mask/bit_masks/integral_mask.html" title="integral_mask type">
+<link rel="next" href="../../low_bits_mask/bit_masks/low_bits_mask.html" title="low_bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../integral_mask/bit_masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../low_bits_mask/bit_masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="high_bits_mask.bit_masks.high_bits_maskbits"></a><a class="link" href="high_bits_maskbits.html" title="high_bits_mask"> high_bits_mask</a>
+</h3></div></div></div>
+<a name="high_bits_mask.bit_masks.high_bits_maskbits.description"></a><h4>
+<a name="id2940393"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.high_bits_maskbits.description">Description</a>
+ </h4>
+<p>
+ THe template <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ preforms bitwise operations on compile time then exposes the newly created
+ mask via <code class="computeroutput"><span class="identifier">value</span></code> and <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>. What <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ does is create a mask inside your integral type which sets all bits starting
+ from the left most bit reaching out width bits to the right. For example,
+
+</p>
+<pre class="programlisting"><span class="comment">// using high bits to create a mask starting from the left most bit with a width
+</span><span class="comment">// of 15
+</span><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">15</span><span class="special">&gt;</span> <span class="identifier">bits</span><span class="special">;</span>
+<span class="comment">// bits::value will have the following value in binary.
+</span><span class="comment">// 1111 1111 1111 1110 0000 0000 0000 0000
+</span></pre>
+<p>
+ </p>
+<a name="high_bits_mask.bit_masks.high_bits_maskbits.template_signature"></a><h4>
+<a name="id2940533"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.high_bits_maskbits.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">high_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.bit_masks.high_bits_maskbits.interface"></a><h4>
+<a name="id2940716"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.high_bits_maskbits.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> Compile time
+ interface. Assume that N is of type <code class="computeroutput"><span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span>
+ <span class="number">10</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.bit_masks.high_bits_maskbits.examples"></a><h4>
+<a name="id2941053"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.bit_masks.high_bits_maskbits.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 1111 0000 0000 0000 0000 0000 0000 0000
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 0000
+</span>
+</pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../integral_mask/bit_masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../low_bits_mask/bit_masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/masks/high_bits_maskbits.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/high_bits_mask/masks/high_bits_maskbits.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,244 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>high_bits_mask</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/masks.html" title="Masks">
+<link rel="prev" href="../../integral_mask/masks/integral_mask.html" title="integral_mask type">
+<link rel="next" href="../../low_bits_mask/masks/low_bits_mask.html" title="low_bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../integral_mask/masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../low_bits_mask/masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="high_bits_mask.masks.high_bits_maskbits"></a><a class="link" href="high_bits_maskbits.html" title="high_bits_mask"> high_bits_mask</a>
+</h3></div></div></div>
+<a name="high_bits_mask.masks.high_bits_maskbits.description"></a><h4>
+<a name="id2853845"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.masks.high_bits_maskbits.description">Description</a>
+ </h4>
+<p>
+ THe template <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ preforms bitwise operations on compile time then exposes the newly created
+ mask via <code class="computeroutput"><span class="identifier">value</span></code> and <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>. What <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ does is create a mask inside your integral type which sets all bits starting
+ from the left most bit reaching out width bits to the right. For example,
+
+</p>
+<pre class="programlisting"><span class="comment">// using high bits to create a mask starting from the left most bit with a width
+</span><span class="comment">// of 15
+</span><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">15</span><span class="special">&gt;</span> <span class="identifier">bits</span><span class="special">;</span>
+<span class="comment">// bits::value will have the following value in binary.
+</span><span class="comment">// 1111 1111 1111 1110 0000 0000 0000 0000
+</span></pre>
+<p>
+ </p>
+<a name="high_bits_mask.masks.high_bits_maskbits.template_signature"></a><h4>
+<a name="id2853982"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.masks.high_bits_maskbits.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">high_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.masks.high_bits_maskbits.interface"></a><h4>
+<a name="id2854165"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.masks.high_bits_maskbits.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> Compile time
+ interface. Assume that N is of type <code class="computeroutput"><span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span>
+ <span class="number">10</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="high_bits_mask.masks.high_bits_maskbits.examples"></a><h4>
+<a name="id2854503"></a>
+ <a class="link" href="high_bits_maskbits.html#high_bits_mask.masks.high_bits_maskbits.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">high_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 1111 0000 0000 0000 0000 0000 0000 0000
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 0000
+</span>
+</pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../integral_mask/masks/integral_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../low_bits_mask/masks/low_bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/bit_masks/integral_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/bit_masks/integral_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,226 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>integral_mask type</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html" title="Purpose">
+<link rel="next" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html" title="high_bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="integral_mask.bit_masks.bit_masks.integral_mask"></a><a class="link" href="integral_mask.html" title="integral_mask type"> integral_mask
+ type</a>
+</h4></div></div></div>
+<a name="integral_mask.bit_masks.bit_masks.integral_mask.description"></a><h4>
+<a name="id3042071"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.bit_masks.integral_mask.description">Description</a>
+ </h4>
+<p>
+ The <code class="computeroutput"><span class="identifier">integral_mask</span></code> type
+ is the most basic mask type. It is used to abstract all masks back to a
+ simple integral type. This type is used similar to an <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ type from the boost.type_traits library. The <code class="computeroutput"><span class="identifier">integral_mask</span></code>
+ template is located in the following header file: &lt;boost/integer/integral_mask.hpp&gt;.
+ </p>
+<a name="integral_mask.bit_masks.bit_masks.integral_mask.template_signature"></a><h4>
+<a name="id3092668"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.bit_masks.integral_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">integral_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">Value</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">integral_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This Parameters specifies the integral type to be associated
+ with the value.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The integral value which is used to represent a mask.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="integral_mask.bit_masks.bit_masks.integral_mask.interface"></a><h4>
+<a name="id3092850"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.bit_masks.integral_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">Integral_mask</span></code> Compile time
+ interface. Assume that N is of type <code class="computeroutput"><span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">16</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>
+ (in the current case that is 16).
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code> (in
+ the current case that is int).
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type (using N as an example, <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code> is equivalent to <code class="computeroutput"><span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">16</span><span class="special">&gt;</span></code>
+ )
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="integral_mask.bit_masks.bit_masks.integral_mask.examples"></a><h4>
+<a name="id3093193"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.bit_masks.integral_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">integral_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">bits</span> <span class="special">=</span> <span class="number">255</span><span class="special">;</span>
+
+<span class="keyword">typedef</span> <span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">16</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask has the folling binary value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0001 0110
+</span>
+<span class="comment">// bits has binary value of:
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0010 0101
+</span>
+<span class="comment">// the following is a bitwise and operation
+</span><span class="comment">// which is done to bits using the integral_mask type
+</span><span class="keyword">int</span> <span class="identifier">new_bits</span> <span class="special">=</span> <span class="identifier">bits</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+
+<span class="comment">// Resulting value of new_bits:
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 0100
+</span>
+
+</pre>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In
+ the above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code> could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code> to achieve the same result. The
+ same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks/bit_mask_purpose.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/integral_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/integral_mask/bit_masks/integral_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,228 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>integral_mask type</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html" title="Purpose">
+<link rel="next" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html" title="high_bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="integral_mask.bit_masks.integral_mask"></a><a class="link" href="integral_mask.html" title="integral_mask type"> integral_mask
+ type</a>
+</h3></div></div></div>
+<a name="integral_mask.bit_masks.integral_mask.description"></a><h4>
+<a name="id2889041"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.integral_mask.description">Description</a>
+ </h4>
+<p>
+ The <code class="computeroutput"><span class="identifier">integral_mask</span></code> type is
+ the most basic mask type. It is used to abstract all masks back to a simple
+ integral type. This type is used similar to an <code class="computeroutput"><span class="identifier">integral_constant</span></code>
+ type from the boost.type_traits library. The <code class="computeroutput"><span class="identifier">integral_mask</span></code>
+ template is located in the following header file: &lt;boost/integer/integral_mask.hpp&gt;.
+ </p>
+<a name="integral_mask.bit_masks.integral_mask.template_signature"></a><h4>
+<a name="id2939631"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.integral_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">integral_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">Value</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">integral_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This Parameters specifies the integral type to be associated with
+ the value.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The integral value which is used to represent a mask.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="integral_mask.bit_masks.integral_mask.interface"></a><h4>
+<a name="id2939813"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.integral_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">Integral_mask</span></code> Compile time
+ interface. Assume that N is of type <code class="computeroutput"><span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span>
+ <span class="number">16</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>
+ (in the current case that is 16).
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code> (in the
+ current case that is int).
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type (using N as an example, <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code> is equivalent to <code class="computeroutput"><span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">16</span><span class="special">&gt;</span></code>
+ )
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="integral_mask.bit_masks.integral_mask.examples"></a><h4>
+<a name="id2940154"></a>
+ <a class="link" href="integral_mask.html#integral_mask.bit_masks.integral_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">integral_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">int</span> <span class="identifier">bits</span> <span class="special">=</span> <span class="number">255</span><span class="special">;</span>
+
+<span class="keyword">typedef</span> <span class="identifier">integral_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">16</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask has the folling binary value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0001 0110
+</span>
+<span class="comment">// bits has binary value of:
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0010 0101
+</span>
+<span class="comment">// the following is a bitwise and operation
+</span><span class="comment">// which is done to bits using the integral_mask type
+</span><span class="keyword">int</span> <span class="identifier">new_bits</span> <span class="special">=</span> <span class="identifier">bits</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+
+<span class="comment">// Resulting value of new_bits:
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 0100
+</span>
+
+</pre>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../boost_integer_bits_masks_extension/bit_masks/bit_mask_purpose.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/bit_masks/low_bits_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/bit_masks/low_bits_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,245 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>low_bits_mask</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html" title="high_bits_mask">
+<link rel="next" href="../../../bits_mask/bit_masks/bit_masks/bits_mask.html" title="bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../bits_mask/bit_masks/bit_masks/bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="low_bits_mask.bit_masks.bit_masks.low_bits_mask"></a><a class="link" href="low_bits_mask.html" title="low_bits_mask"> low_bits_mask</a>
+</h4></div></div></div>
+<a name="low_bits_mask.bit_masks.bit_masks.low_bits_mask.description"></a><h4>
+<a name="id3094329"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.bit_masks.low_bits_mask.description">Description</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> creates a
+ mask of bits starting from the right most bit and extending out to the
+ left. The <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ is similar to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code>
+ just starts on the right most bit instead of the left most bit. The way
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> behaves in
+ the following example:
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask::value has the following binary value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0011 1111 1111
+</span></pre>
+<p>
+ The <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> template
+ is located in the &lt;boost/integer/low_bits_mask.hpp&gt; header file.
+ </p>
+<a name="low_bits_mask.bit_masks.bit_masks.low_bits_mask.template_signature"></a><h4>
+<a name="id3094465"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.bit_masks.low_bits_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">low_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.bit_masks.bit_masks.low_bits_mask.interface"></a><h4>
+<a name="id3094648"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.bit_masks.low_bits_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> Compile time
+ interface. Assume that <code class="computeroutput"><span class="identifier">N</span></code>
+ is of type <code class="computeroutput"><span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">10</span><span class="special">&gt;</span></code>
+ the type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code> template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.bit_masks.bit_masks.low_bits_mask.examples"></a><h4>
+<a name="id3094995"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.bit_masks.low_bits_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1111
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1100
+</span></pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In
+ the above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code> could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code> to achieve the same result. The
+ same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../../high_bits_mask/bit_masks/bit_masks/high_bits_maskbits.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../boost_integer_bits_masks_extension/bit_masks/bit_masks.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../bits_mask/bit_masks/bit_masks/bits_mask.html"><img src="../../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/low_bits_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/bit_masks/low_bits_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,246 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>low_bits_mask</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/bit_masks.html" title="Bit Masks">
+<link rel="prev" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html" title="high_bits_mask">
+<link rel="next" href="../../bits_mask/bit_masks/bits_mask.html" title="bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bits_mask/bit_masks/bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="low_bits_mask.bit_masks.low_bits_mask"></a><a class="link" href="low_bits_mask.html" title="low_bits_mask"> low_bits_mask</a>
+</h3></div></div></div>
+<a name="low_bits_mask.bit_masks.low_bits_mask.description"></a><h4>
+<a name="id2941281"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.low_bits_mask.description">Description</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> creates a mask
+ of bits starting from the right most bit and extending out to the left. The
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> is similar
+ to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> just
+ starts on the right most bit instead of the left most bit. The way <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> behaves in the following
+ example:
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask::value has the following binary value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0011 1111 1111
+</span></pre>
+<p>
+ The <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> template
+ is located in the &lt;boost/integer/low_bits_mask.hpp&gt; header file.
+ </p>
+<a name="low_bits_mask.bit_masks.low_bits_mask.template_signature"></a><h4>
+<a name="id2941414"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.low_bits_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">low_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.bit_masks.low_bits_mask.interface"></a><h4>
+<a name="id2941597"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.low_bits_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> Compile time
+ interface. Assume that <code class="computeroutput"><span class="identifier">N</span></code>
+ is of type <code class="computeroutput"><span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">10</span><span class="special">&gt;</span></code> the
+ type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.bit_masks.low_bits_mask.examples"></a><h4>
+<a name="id2941942"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.bit_masks.low_bits_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1111
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1100
+</span></pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../high_bits_mask/bit_masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/bit_masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bits_mask/bit_masks/bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/masks/low_bits_mask.html
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/bit_masks/lib/integer/doc/html/low_bits_mask/masks/low_bits_mask.html 2010-07-06 10:24:22 EDT (Tue, 06 Jul 2010)
@@ -0,0 +1,246 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>low_bits_mask</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Integer Bits Masks Extension">
+<link rel="up" href="../../boost_integer_bits_masks_extension/masks.html" title="Masks">
+<link rel="prev" href="../../high_bits_mask/masks/high_bits_maskbits.html" title="high_bits_mask">
+<link rel="next" href="../../bits_mask/masks/bits_mask.html" title="bits_mask">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../high_bits_mask/masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bits_mask/masks/bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="low_bits_mask.masks.low_bits_mask"></a><a class="link" href="low_bits_mask.html" title="low_bits_mask"> low_bits_mask</a>
+</h3></div></div></div>
+<a name="low_bits_mask.masks.low_bits_mask.description"></a><h4>
+<a name="id2854730"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.masks.low_bits_mask.description">Description</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> creates a mask
+ of bits starting from the right most bit and extending out to the left. The
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> is similar
+ to the <code class="computeroutput"><span class="identifier">high_bits_mask</span></code> just
+ starts on the right most bit instead of the left most bit. The way <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> behaves in the following
+ example:
+ </p>
+<p>
+
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">10</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+<span class="comment">// mask::value has the following binary value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0011 1111 1111
+</span></pre>
+<p>
+ The <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> template
+ is located in the &lt;boost/integer/low_bits_mask.hpp&gt; header file.
+ </p>
+<a name="low_bits_mask.masks.low_bits_mask.template_signature"></a><h4>
+<a name="id2854862"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.masks.low_bits_mask.template_signature">Template
+ Signature</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> has the following
+ template signature:
+</p>
+<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">Width</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">low_bits_mask</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Is an integral type which the mask is to be created over.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is the width of the mask in bits.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.masks.low_bits_mask.interface"></a><h4>
+<a name="id2855044"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.masks.low_bits_mask.interface">Interface</a>
+ </h4>
+<p>
+ <code class="computeroutput"><span class="identifier">low_bits_mask</span></code> Compile time
+ interface. Assume that <code class="computeroutput"><span class="identifier">N</span></code>
+ is of type <code class="computeroutput"><span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">10</span><span class="special">&gt;</span></code> the
+ type supplied here is only for example.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Operation
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the <code class="computeroutput"><span class="identifier">value</span></code>
+ associated with <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">value_type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns <code class="computeroutput"><span class="identifier">T</span></code> which
+ is the type associated with <code class="computeroutput"><span class="identifier">value</span></code>
+ inside <code class="computeroutput"><span class="identifier">N</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the current types type.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">N</span><span class="special">::</span><span class="identifier">width</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Returns the integral value associated with the <code class="computeroutput"><span class="identifier">width</span></code>
+ template parameter.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">operator</span> <span class="identifier">T</span><span class="special">()</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Run time support function. All this function does is return the
+ value associated with the type. With the c++0x feature <code class="computeroutput"><span class="identifier">constexper</span></code> this function will
+ be made fasters and more effieient.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="low_bits_mask.masks.low_bits_mask.examples"></a><h4>
+<a name="id2855389"></a>
+ <a class="link" href="low_bits_mask.html#low_bits_mask.masks.low_bits_mask.examples">Examples</a>
+ </h4>
+<p>
+ Examples and use cases related to the <code class="computeroutput"><span class="identifier">low_bits_mask</span></code>
+ template.
+ </p>
+<p>
+ Example:
+</p>
+<pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">low_bits_mask</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">4</span><span class="special">&gt;</span> <span class="identifier">mask</span><span class="special">;</span>
+
+<span class="comment">// binary for mask::value
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1111
+</span>
+<span class="keyword">int</span> <span class="identifier">integral_value</span> <span class="special">=</span> <span class="number">0xc000000c</span><span class="special">;</span>
+
+<span class="comment">// integral_value's binary value
+</span><span class="comment">// 1100 0000 0000 0000 0000 0000 0000 1100
+</span>
+<span class="keyword">int</span> <span class="identifier">result</span> <span class="special">=</span> <span class="identifier">integral_value</span> <span class="special">&amp;</span> <span class="identifier">mask</span><span class="special">();</span>
+<span class="comment">// binary value of result
+</span><span class="comment">// 0000 0000 0000 0000 0000 0000 0000 1100
+</span></pre>
+<p>
+ </p>
+<p>
+ The implicit cast operator allows for simplicity, clairity of code. In the
+ above example <code class="computeroutput"><span class="identifier">mask</span><span class="special">()</span></code>
+ could be replaced with <code class="computeroutput"><span class="identifier">mask</span><span class="special">::</span><span class="identifier">value</span></code>
+ to achieve the same result. The same applies to all other bitwise operators.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2010 Brian Bartman<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../../high_bits_mask/masks/high_bits_maskbits.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_integer_bits_masks_extension/masks.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../bits_mask/masks/bits_mask.html"><img src="../..//home/brian/gsoc/boost-trunk/doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk