This commit is contained in:
Hans Dembinski
2017-10-13 18:10:10 +02:00
parent c2e295be57
commit 4c09b07dbc
40 changed files with 3693 additions and 736 deletions

View File

@@ -1,25 +1,22 @@
<?xml version="1.0" standalone="yes"?>
<library-reference><header name="boost/histogram.hpp">
<para>Includes all standard headers of the Boost.histogram library. </para><para>The library consists of two histogram implementations, a static and a dynamic one. If you need to configure histograms at runtime, choose the dynamic one, otherwise use the static one. The static one is faster, and a little more convenient, since some errors can be caught at compile time and you don't need to worry about type conversions.</para><para>You can freely mix the implementations in your code, they are convertible into each other, and there is a common interface for both. To the extend of what is technically possible, the library has been designed to allow you to write code that is agnostic of the implementation variant. </para></header>
<header name="boost/histogram/histogram.hpp">
</header>
<header name="boost/histogram/axis.hpp">
<library-reference><header name="boost/histogram/axis.hpp">
<namespace name="boost">
<namespace name="histogram">
<namespace name="axis">
<class name="axis_base"><template>
<template-nontype-parameter name="UOFlow"><type>bool</type></template-nontype-parameter>
</template><purpose>Common base class for axes. </purpose></class><class-specialization name="axis_base"><template>
</template><specialization><template-arg>false</template-arg></specialization><method-group name="public member functions">
</template><purpose>Common base class for all axes. </purpose></class><class-specialization name="axis_base"><template>
</template><specialization><template-arg>false</template-arg></specialization><purpose>Specialization without overflow/underflow bins. </purpose><method-group name="public member functions">
<method name="bins" cv="const"><type>int</type><purpose>Returns the number of bins, excluding overflow/underflow. </purpose></method>
<method name="shape" cv="const"><type>int</type><purpose>Returns the number of bins, including overflow/underflow. </purpose></method>
<method name="uoflow" cv="const"><type>bool</type><purpose>Returns whether axis has extra overflow and underflow bins. </purpose></method>
<method name="label" cv="const"><type>const std::string &amp;</type><purpose>Returns the axis label, which is a name or description. </purpose></method>
<method name="label"><type>void</type><parameter name="label"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Change the label of an axis. </purpose></method>
<method name="label" cv="const"><type>string_view</type><purpose>Returns the axis label, which is a name or description. </purpose></method>
<method name="label"><type>void</type><parameter name="label"><paramtype>string_view</paramtype></parameter><purpose>Change the label of an axis. </purpose></method>
</method-group>
<method-group name="protected member functions">
<method name="operator==" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="n"><paramtype>unsigned</paramtype></parameter><parameter name="label"><paramtype>std::string</paramtype></parameter></constructor>
<constructor><parameter name="n"><paramtype>unsigned</paramtype></parameter><parameter name="label"><paramtype>string_view</paramtype></parameter></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>axis_base</classname> &amp;</type><parameter name=""><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></copy-assignment>
@@ -31,17 +28,17 @@
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class-specialization><class-specialization name="axis_base"><template>
</template><specialization><template-arg>true</template-arg></specialization><method-group name="public member functions">
</template><specialization><template-arg>true</template-arg></specialization><purpose>Specialization with overflow/underflow bins. </purpose><method-group name="public member functions">
<method name="bins" cv="const"><type>int</type><purpose>Returns the number of bins, excluding overflow/underflow. </purpose></method>
<method name="shape" cv="const"><type>int</type><purpose>Returns the number of bins, including overflow/underflow. </purpose></method>
<method name="uoflow" cv="const"><type>bool</type><purpose>Returns whether axis has extra overflow and underflow bins. </purpose></method>
<method name="label" cv="const"><type>const std::string &amp;</type><purpose>Returns the axis label, which is a name or description. </purpose></method>
<method name="label"><type>void</type><parameter name="label"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Change the label of an axis. </purpose></method>
<method name="label" cv="const"><type>string_view</type><purpose>Returns the axis label, which is a name or description. </purpose></method>
<method name="label"><type>void</type><parameter name="label"><paramtype>string_view</paramtype></parameter><purpose>Change the label of an axis. </purpose></method>
</method-group>
<method-group name="protected member functions">
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="n"><paramtype>unsigned</paramtype></parameter><parameter name="label"><paramtype>std::string</paramtype></parameter><parameter name="uoflow"><paramtype>bool</paramtype></parameter></constructor>
<constructor><parameter name="n"><paramtype>unsigned</paramtype></parameter><parameter name="label"><paramtype>string_view</paramtype></parameter><parameter name="uoflow"><paramtype>bool</paramtype></parameter></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>axis_base</classname> &amp;</type><parameter name=""><paramtype>const <classname>axis_base</classname> &amp;</paramtype></parameter></copy-assignment>
@@ -75,71 +72,71 @@
<template-type-parameter name="Value"/>
</template><data-member name="idx"><type>int</type></data-member>
<data-member name="value"><type>Value</type></data-member>
</struct><class name="category_axis"><inherit access="public">boost::histogram::axis_base&lt; false &gt;</inherit><inherit access="private">boost::operators&lt; category_axis &gt;</inherit><purpose>An axis for enumerated categories. </purpose><description><para>The axis stores the category labels, and expects that they are addressed using an integer from <computeroutput>0</computeroutput> to <computeroutput>n-1</computeroutput>. There are no underflow/overflow bins for this axis. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>BOOST_HISTOGRAM_STRING_VIEW</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>category_axis</classname> &gt;</type></typedef>
</struct><class name="category"><inherit access="public">boost::histogram::axis::axis_base&lt; false &gt;</inherit><inherit access="private">boost::operators&lt; category &gt;</inherit><purpose>An axis for enumerated categories. </purpose><description><para>The axis stores the category labels, and expects that they are addressed using an integer from <computeroutput>0</computeroutput> to <computeroutput>n-1</computeroutput>. There are no underflow/overflow bins for this axis. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>string_view</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>category</classname> &gt;</type></typedef>
<method-group name="public member functions">
<method name="index" cv="const noexcept"><type>int</type><parameter name="x"><paramtype>int</paramtype></parameter><purpose>Returns the bin index for the passed argument. </purpose><description><para>Performs a range check. </para></description></method>
<method name="operator[]" cv="const"><type>value_type</type><parameter name="idx"><paramtype>int</paramtype></parameter><purpose>Returns the category for the bin index. </purpose></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>category_axis</classname> &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>category</classname> &amp;</paramtype></parameter></method>
<method name="begin" cv="const"><type>const_iterator</type></method>
<method name="end" cv="const"><type>const_iterator</type></method>
</method-group>
<constructor><template>
<template-type-parameter name="Iterator"/>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default></parameter></constructor>
<constructor><parameter name="categories"><paramtype>const std::initializer_list&lt; std::string &gt; &amp;</paramtype><description><para>sequence of labeled categories. </para></description></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default></parameter><purpose>Construct from a list of strings. </purpose><description><para>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default></parameter></constructor>
<constructor><parameter name="categories"><paramtype>const std::initializer_list&lt; std::string &gt; &amp;</paramtype><description><para>sequence of labeled categories. </para></description></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default></parameter><purpose>Construct from a list of strings. </purpose><description><para>
</para></description></constructor>
<constructor cv="= default"/>
<constructor><parameter name="other"><paramtype>const <classname>category_axis</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>category_axis</classname> &amp;</type><parameter name="other"><paramtype>const <classname>category_axis</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="other"><paramtype><classname>category_axis</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>category_axis</classname> &amp;</type><parameter name="other"><paramtype><classname>category_axis</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="other"><paramtype>const <classname>category</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>category</classname> &amp;</type><parameter name="other"><paramtype>const <classname>category</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="other"><paramtype><classname>category</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>category</classname> &amp;</type><parameter name="other"><paramtype><classname>category</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class><class name="circular_axis"><template>
</class><class name="circular"><template>
<template-type-parameter name="RealType"><default>double</default></template-type-parameter>
</template><inherit access="public">boost::histogram::axis_base&lt; false &gt;</inherit><inherit access="private">boost::operators&lt; regular_axis&lt; RealType &gt; &gt;</inherit><purpose>Axis for real-valued angles. </purpose><description><para>The axis is circular and wraps around reaching the perimeter value. Therefore, there are no overflow/underflow bins for this axis. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>circular_axis</classname> &gt;</type></typedef>
</template><inherit access="public">boost::histogram::axis::axis_base&lt; false &gt;</inherit><inherit access="private">boost::operators&lt; regular&lt; RealType &gt; &gt;</inherit><purpose>Axis for real-valued angles. </purpose><description><para>The axis is circular and wraps around reaching the perimeter value. Therefore, there are no overflow/underflow bins for this axis. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>circular</classname> &gt;</type></typedef>
<method-group name="public member functions">
<method name="index" cv="const noexcept"><type>int</type><parameter name="x"><paramtype>value_type</paramtype></parameter><purpose>Returns the bin index for the passed argument. </purpose></method>
<method name="operator[]" cv="const"><type>value_type</type><parameter name="idx"><paramtype>int</paramtype></parameter><purpose>Returns the starting edge of the bin. </purpose></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>circular_axis</classname> &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>circular</classname> &amp;</paramtype></parameter></method>
<method name="perimeter" cv="const"><type>value_type</type></method>
<method name="phase" cv="const"><type>value_type</type></method>
<method name="begin" cv="const"><type>const_iterator</type></method>
<method name="end" cv="const"><type>const_iterator</type></method>
</method-group>
<constructor specifiers="explicit"><parameter name="n"><paramtype>unsigned</paramtype><description><para>number of bins. </para></description></parameter><parameter name="phase"><paramtype>value_type</paramtype><default>0.0</default><description><para>starting phase. </para></description></parameter><parameter name="perimeter"><paramtype>value_type</paramtype><default>math::double_constants::two_pi</default><description><para>range after which value wraps around. </para></description></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default><description><para>description of the axis. </para></description></parameter><purpose>Constructor for n bins with an optional offset. </purpose><description><para>
<constructor specifiers="explicit"><parameter name="n"><paramtype>unsigned</paramtype><description><para>number of bins. </para></description></parameter><parameter name="phase"><paramtype>value_type</paramtype><default>0.0</default><description><para>starting phase. </para></description></parameter><parameter name="perimeter"><paramtype>value_type</paramtype><default>math::double_constants::two_pi</default><description><para>range after which value wraps around. </para></description></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default><description><para>description of the axis. </para></description></parameter><purpose>Constructor for n bins with an optional offset. </purpose><description><para>
</para></description></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>circular_axis</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>circular_axis</classname> &amp;</type><parameter name=""><paramtype>const <classname>circular_axis</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>circular_axis</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>circular_axis</classname> &amp;</type><parameter name=""><paramtype><classname>circular_axis</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>circular</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>circular</classname> &amp;</type><parameter name=""><paramtype>const <classname>circular</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>circular</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>circular</classname> &amp;</type><parameter name=""><paramtype><classname>circular</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class><class name="integer_axis"><inherit access="public">boost::histogram::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; integer_axis &gt;</inherit><purpose>An axis for a contiguous range of integers. </purpose><description><para>Binning is a O(1) operation. This axis operates faster than a <classname alt="boost::histogram::regular_axis">regular_axis</classname>. </para></description><typedef name="value_type"><type>int</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>integer_axis</classname> &gt;</type></typedef>
</class><class name="integer"><inherit access="public">boost::histogram::axis::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; integer &gt;</inherit><purpose>An axis for a contiguous range of integers. </purpose><description><para>Binning is a O(1) operation. This axis operates faster than a regular. </para></description><typedef name="value_type"><type>int</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>integer</classname> &gt;</type></typedef>
<method-group name="public member functions">
<method name="index" cv="const noexcept"><type>int</type><parameter name="x"><paramtype>value_type</paramtype></parameter><purpose>Returns the bin index for the passed argument. </purpose></method>
<method name="operator[]" cv="const"><type>value_type</type><parameter name="idx"><paramtype>int</paramtype></parameter><purpose>Returns the integer that is mapped to the bin index. </purpose></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>integer_axis</classname> &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>integer</classname> &amp;</paramtype></parameter></method>
<method name="begin" cv="const"><type>const_iterator</type></method>
<method name="end" cv="const"><type>const_iterator</type></method>
</method-group>
<constructor><parameter name="min"><paramtype>value_type</paramtype><description><para>smallest integer of the covered range. </para></description></parameter><parameter name="max"><paramtype>value_type</paramtype><description><para>largest integer of the covered range. </para></description></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default></parameter><purpose>Construct axis over integer range [min, max]. </purpose><description><para>
<constructor><parameter name="min"><paramtype>value_type</paramtype><description><para>smallest integer of the covered range. </para></description></parameter><parameter name="max"><paramtype>value_type</paramtype><description><para>largest integer of the covered range. </para></description></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default></parameter><purpose>Construct axis over integer range [min, max]. </purpose><description><para>
</para></description></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>integer_axis</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>integer_axis</classname> &amp;</type><parameter name=""><paramtype>const <classname>integer_axis</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>integer_axis</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>integer_axis</classname> &amp;</type><parameter name=""><paramtype><classname>integer_axis</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>integer</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>integer</classname> &amp;</type><parameter name=""><paramtype>const <classname>integer</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>integer</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>integer</classname> &amp;</type><parameter name=""><paramtype><classname>integer</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
@@ -150,51 +147,51 @@
</template><data-member name="idx"><type>int</type></data-member>
<data-member name="left"><type>Value</type></data-member>
<data-member name="right"><type>Value</type></data-member>
</struct><class name="regular_axis"><template>
</struct><class name="regular"><template>
<template-type-parameter name="RealType"><default>double</default></template-type-parameter>
<template-nontype-parameter name="Transform"><type>template&lt; class &gt; class</type><default>transform::identity</default></template-nontype-parameter>
</template><inherit access="public">boost::histogram::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; regular_axis&lt; RealType, Transform &gt; &gt;</inherit><purpose>Axis for binning real-valued data into equidistant bins. </purpose><description><para>The simplest and common binning strategy. Very fast. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>regular_axis</classname> &gt;</type></typedef>
</template><inherit access="public">boost::histogram::axis::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; regular&lt; RealType, Transform &gt; &gt;</inherit><purpose>Axis for binning real-valued data into equidistant bins. </purpose><description><para>The simplest and common binning strategy. Very fast. Binning is a O(1) operation. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>regular</classname> &gt;</type></typedef>
<method-group name="public member functions">
<method name="index" cv="const noexcept"><type>int</type><parameter name="x"><paramtype>value_type</paramtype></parameter><purpose>Returns the bin index for the passed argument. </purpose></method>
<method name="operator[]" cv="const"><type>value_type</type><parameter name="idx"><paramtype>int</paramtype></parameter><purpose>Returns the starting edge of the bin. </purpose></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>regular_axis</classname> &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>regular</classname> &amp;</paramtype></parameter></method>
<method name="begin" cv="const"><type>const_iterator</type></method>
<method name="end" cv="const"><type>const_iterator</type></method>
</method-group>
<constructor><parameter name="n"><paramtype>unsigned</paramtype><description><para>number of bins. </para></description></parameter><parameter name="min"><paramtype>value_type</paramtype><description><para>low edge of first bin. </para></description></parameter><parameter name="max"><paramtype>value_type</paramtype><description><para>high edge of last bin. </para></description></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default><description><para>description of the axis. </para></description></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default><description><para>whether to add under-/overflow bins. </para></description></parameter><purpose>Construct axis with n bins over range [min, max). </purpose><description><para>
<constructor><parameter name="n"><paramtype>unsigned</paramtype><description><para>number of bins. </para></description></parameter><parameter name="min"><paramtype>value_type</paramtype><description><para>low edge of first bin. </para></description></parameter><parameter name="max"><paramtype>value_type</paramtype><description><para>high edge of last bin. </para></description></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default><description><para>description of the axis. </para></description></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default><description><para>whether to add under-/overflow bins. </para></description></parameter><purpose>Construct axis with n bins over range [min, max). </purpose><description><para>
</para></description></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>regular_axis</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>regular_axis</classname> &amp;</type><parameter name=""><paramtype>const <classname>regular_axis</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>regular_axis</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>regular_axis</classname> &amp;</type><parameter name=""><paramtype><classname>regular_axis</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>const <classname>regular</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>regular</classname> &amp;</type><parameter name=""><paramtype>const <classname>regular</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>regular</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>regular</classname> &amp;</type><parameter name=""><paramtype><classname>regular</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class><class name="variable_axis"><template>
</class><class name="variable"><template>
<template-type-parameter name="RealType"><default>double</default></template-type-parameter>
</template><inherit access="public">boost::histogram::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; variable_axis&lt; RealType &gt; &gt;</inherit><purpose>An axis for real-valued data and bins of varying width. </purpose><description><para>Binning is a O(log(N)) operation. If speed matters and the problem domain allows it, prefer a <classname alt="boost::histogram::regular_axis">regular_axis</classname>. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>variable_axis</classname> &gt;</type></typedef>
</template><inherit access="public">boost::histogram::axis::axis_base&lt; true &gt;</inherit><inherit access="private">boost::operators&lt; variable&lt; RealType &gt; &gt;</inherit><purpose>An axis for real-valued data and bins of varying width. </purpose><description><para>Binning is a O(log(N)) operation. If speed matters and the problem domain allows it, prefer a regular. </para></description><typedef name="value_type"><type>RealType</type></typedef>
<typedef name="const_iterator"><type>axis_iterator&lt; <classname>variable</classname> &gt;</type></typedef>
<method-group name="public member functions">
<method name="index" cv="const noexcept"><type>int</type><parameter name="x"><paramtype>value_type</paramtype></parameter><purpose>Returns the bin index for the passed argument. </purpose></method>
<method name="operator[]" cv="const"><type>value_type</type><parameter name="idx"><paramtype>int</paramtype></parameter><purpose>Returns the starting edge of the bin. </purpose></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>variable_axis</classname> &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="o"><paramtype>const <classname>variable</classname> &amp;</paramtype></parameter></method>
<method name="begin" cv="const"><type>const_iterator</type></method>
<method name="end" cv="const"><type>const_iterator</type></method>
</method-group>
<constructor><parameter name="x"><paramtype>const std::initializer_list&lt; value_type &gt; &amp;</paramtype><description><para>sequence of bin edges. </para></description></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default><description><para>description of the axis. </para></description></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default><description><para>whether to add under-/overflow bins. </para></description></parameter><purpose>Construct an axis from bin edges. </purpose><description><para>
<constructor><parameter name="x"><paramtype>const std::initializer_list&lt; value_type &gt; &amp;</paramtype><description><para>sequence of bin edges. </para></description></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default><description><para>description of the axis. </para></description></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default><description><para>whether to add under-/overflow bins. </para></description></parameter><purpose>Construct an axis from bin edges. </purpose><description><para>
</para></description></constructor>
<constructor><template>
<template-type-parameter name="Iterator"/>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter><parameter name="label"><paramtype>const std::string &amp;</paramtype><default>std::string()</default></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default></parameter></constructor>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter><parameter name="label"><paramtype>string_view</paramtype><default>string_view()</default></parameter><parameter name="uoflow"><paramtype>bool</paramtype><default>true</default></parameter></constructor>
<constructor cv="= default"/>
<constructor><parameter name="o"><paramtype>const <classname>variable_axis</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>variable_axis</classname> &amp;</type><parameter name="o"><paramtype>const <classname>variable_axis</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>variable_axis</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>variable_axis</classname> &amp;</type><parameter name=""><paramtype><classname>variable_axis</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="o"><paramtype>const <classname>variable</classname> &amp;</paramtype></parameter></constructor>
<copy-assignment><type><classname>variable</classname> &amp;</type><parameter name="o"><paramtype>const <classname>variable</classname> &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype><classname>variable</classname> &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type><classname>variable</classname> &amp;</type><parameter name=""><paramtype><classname>variable</classname> &amp;&amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
@@ -221,12 +218,16 @@
</method-group>
</struct></namespace>
<typedef name="axis_bin"><type>typename std::conditional&lt; std::is_floating_point&lt; Value &gt;::value, real_bin&lt; Value &gt;, bin&lt; Value &gt; &gt;::type</type></typedef>
<typedef name="builtin_axes"><type>mpl::vector&lt; <classname>regular_axis</classname>&lt; double &gt;, <classname>regular_axis</classname>&lt; float &gt;, <classname>circular_axis</classname>&lt; double &gt;, <classname>circular_axis</classname>&lt; float &gt;, <classname>variable_axis</classname>&lt; double &gt;, <classname>variable_axis</classname>&lt; float &gt;, <classname>integer_axis</classname>, <classname>category_axis</classname> &gt;::type</type></typedef>
</namespace>
<typedef name="builtin_axes"><type>mpl::vector&lt; <classname>axis::regular</classname>&lt; double &gt;, <classname>axis::circular</classname>&lt; double &gt;, <classname>axis::variable</classname>&lt; double &gt;, <classname>axis::integer</classname>, <classname>axis::category</classname> &gt;</type></typedef>
@@ -250,22 +251,26 @@
<namespace name="serialization">
</namespace>
</namespace>
<macro name="BOOST_HISTOGRAM_STRING_VIEW"/>
</header>
<header name="boost/histogram/axis_ostream_operators.hpp">
<namespace name="boost">
<namespace name="histogram">
<namespace name="axis">
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><template>
<template-type-parameter name="RealType"/>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>regular_axis</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>regular</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><template>
<template-type-parameter name="RealType"/>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>circular_axis</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>circular</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><template>
<template-type-parameter name="RealType"/>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>variable_axis</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>integer_axis</classname> &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>category_axis</classname> &amp;</paramtype></parameter></function>
</template><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>variable</classname>&lt; RealType &gt; &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>integer</classname> &amp;</paramtype></parameter></function>
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="a"><paramtype>const <classname>category</classname> &amp;</paramtype></parameter></function>
</namespace>
@@ -288,10 +293,48 @@
</namespace>
</namespace>
</header>
<header name="boost/histogram/histogram.hpp">
</header>
<header name="boost/histogram/histogram_fwd.hpp">
<namespace name="boost">
<namespace name="histogram">
<class name="histogram"><template>
<class name="adaptive_storage"><template>
<template-nontype-parameter name="Allocator"><type>template&lt; class &gt; class</type></template-nontype-parameter>
</template><method-group name="public member functions">
<method name="size" cv="const"><type>std::size_t</type></method>
<method name="increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="increase"><type>void</type><template>
<template-type-parameter name="Value"/>
</template><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="n"><paramtype>const Value &amp;</paramtype></parameter></method>
<method name="weighted_increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="weight"><paramtype>value_type</paramtype></parameter></method>
<method name="add"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="val"><paramtype>const value_type &amp;</paramtype></parameter><parameter name="var"><paramtype>const value_type &amp;</paramtype></parameter></method>
<method name="value" cv="const"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="variance" cv="const"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const adaptive_storage &amp;</paramtype></parameter></method>
</method-group>
<constructor specifiers="explicit"><parameter name="s"><paramtype>std::size_t</paramtype></parameter></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const adaptive_storage &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>adaptive_storage &amp;</type><parameter name=""><paramtype>const adaptive_storage &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>adaptive_storage &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>adaptive_storage &amp;</type><parameter name=""><paramtype>adaptive_storage &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor specifiers="explicit"><template>
<template-type-parameter name="S"/>
<template-type-parameter name=""><default>detail::is_storage&lt;S&gt;</default></template-type-parameter>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></constructor>
<copy-assignment><type>adaptive_storage &amp;</type><template>
<template-type-parameter name="S"/>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class><class name="count"><method-group name="public member functions">
<method name="conversion-operator" cv="const" specifiers="explicit"><type>unsigned</type></method>
</method-group>
<constructor specifiers="explicit"><parameter name="v"><paramtype>unsigned</paramtype></parameter></constructor>
</class><class name="histogram"><template>
<template-type-parameter name="Variant"/>
<template-type-parameter name="Axes"/>
<template-type-parameter name="Storage"><default>adaptive_storage&lt;&gt;</default></template-type-parameter>
@@ -301,10 +344,13 @@
<constructor specifiers="explicit"><parameter name="v"><paramtype>double</paramtype></parameter></constructor>
</class><typedef name="Static"><type>std::integral_constant&lt; int, 0 &gt;</type></typedef>
<typedef name="Dynamic"><type>std::integral_constant&lt; int, 1 &gt;</type></typedef>
<function name="keep"><type>auto</type><template>
<template-nontype-parameter name="Ns"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>Ns...</paramtype></parameter></function>
<function name="keep"><type><emphasis>unspecified</emphasis></type><template>
<template-type-parameter name="Iterator"/>
<template-type-parameter name=""><default>detail::is_iterator&lt;Iterator&gt;</default></template-type-parameter>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter></function>
@@ -371,6 +417,10 @@
<template-type-parameter name="Iterator"/>
<template-type-parameter name=""><default>detail::is_iterator&lt;Iterator&gt;</default></template-type-parameter>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter></method>
<method name="fill" cv="noexcept"><type>void</type><template>
<template-type-parameter name="Iterator"/>
<template-type-parameter name=""><default>detail::is_iterator&lt;Iterator&gt;</default></template-type-parameter>
</template><parameter name="begin"><paramtype>Iterator</paramtype></parameter><parameter name="end"><paramtype>Iterator</paramtype></parameter><parameter name="n"><paramtype>const count &amp;</paramtype></parameter></method>
<method name="fill" cv="noexcept"><type>void</type><template>
<template-type-parameter name="Iterator"/>
<template-type-parameter name=""><default>detail::is_iterator&lt;Iterator&gt;</default></template-type-parameter>
@@ -399,10 +449,10 @@
</template><parameter name="unary"><paramtype>Unary &amp;</paramtype></parameter><purpose>Apply unary functor/function to each axis. </purpose></method>
</method-group>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name="rhs"><paramtype>const histogram &amp;</paramtype></parameter></constructor>
<constructor cv="= default"><parameter name="rhs"><paramtype>histogram &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name="rhs"><paramtype>const histogram &amp;</paramtype></parameter></copy-assignment>
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name="rhs"><paramtype>histogram &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>const histogram &amp;</paramtype></parameter></constructor>
<constructor cv="= default"><parameter name=""><paramtype>histogram &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name=""><paramtype>const histogram &amp;</paramtype></parameter></copy-assignment>
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name=""><paramtype>histogram &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor specifiers="explicit"><template>
<template-nontype-parameter name="Axes1"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axes"><paramtype>const Axes1 &amp;...</paramtype></parameter></constructor>
@@ -430,49 +480,60 @@
<method name="field_count" cv="const"><type>std::size_t</type></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::true_</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
</template><parameter name=""><paramtype>mpl::int_&lt; 0 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::false_</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
</template><parameter name=""><paramtype>mpl::int_&lt; 1 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::int_&lt; 2 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="First"/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>std::enable_if&lt;!(std::is_same&lt; First, weight &gt;::value)&gt;::type</type><template>
<template-type-parameter name="X"/>
</template><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>X &amp;</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>std::enable_if&lt;!(std::is_same&lt; First, weight &gt;::value||std::is_same&lt; First, count &gt;::value)&gt;::type</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="X"/>
<template-type-parameter name="First"/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter><parameter name="x"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>void</type><template>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="X"/>
<template-type-parameter name=""/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter><parameter name="x"><paramtype>const weight &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>void</type><template>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const weight &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter></method>
<template-type-parameter name="X"/>
<template-type-parameter name=""/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const count &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_iter" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-type-parameter name="Iterator"/>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="iter"><paramtype>Iterator</paramtype></parameter></method>
<method name="reduce_impl" cv="const"><type>histogram</type><parameter name="b"><paramtype>const std::vector&lt; bool &gt; &amp;</paramtype></parameter></method>
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class-specialization>
<function name="make_dynamic_histogram"><type><emphasis>unspecified</emphasis></type><template>
<template-nontype-parameter name="Axes"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axes"><paramtype>Axes &amp;&amp;...</paramtype></parameter></function>
@@ -497,6 +558,7 @@
</namespace>
<namespace name="python">
</namespace>
@@ -510,7 +572,15 @@
<class-specialization name="histogram"><template>
<template-type-parameter name="Axes"/>
<template-type-parameter name="Storage"/>
</template><specialization><template-arg>Static</template-arg><template-arg>Axes</template-arg><template-arg>Storage</template-arg></specialization><typedef name="value_type"><type>typename Storage::value_type</type></typedef>
</template><specialization><template-arg>Static</template-arg><template-arg>Axes</template-arg><template-arg>Storage</template-arg></specialization><struct name="shape_assign_helper"><data-member name="ni" specifiers="mutable"><type>std::vector&lt; unsigned &gt;::iterator</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>void</type><template>
<template-type-parameter name="Axis"/>
</template><parameter name="a"><paramtype>const Axis &amp;</paramtype></parameter></method>
</method-group>
</struct><typedef name="axes_size"><type>typename fusion::result_of::size&lt; Axes &gt;::type</type></typedef>
<typedef name="axes_type"><type>typename fusion::result_of::as_vector&lt; Axes &gt;::type</type></typedef>
<typedef name="value_type"><type>typename Storage::value_type</type></typedef>
<method-group name="public member functions">
<method name="operator==" cv="const"><type>bool</type><template>
<template-type-parameter name="D"/>
@@ -541,8 +611,8 @@
<method name="sum" cv="const"><type>double</type><purpose>Sum of all counts in the histogram. </purpose></method>
<method name="reset"><type>void</type><purpose>Reset bin counters to zero. </purpose></method>
<method name="axis" cv="const"><type>constexpr std::add_const&lt; typename fusion::result_of::value_at_c&lt; axes_type, N &gt;::type &gt;::type &amp;</type><template>
<template-nontype-parameter name="N"><type>unsigned</type></template-nontype-parameter>
</template><parameter name=""><paramtype>std::integral_constant&lt; unsigned, N &gt;</paramtype></parameter><purpose>Get N-th axis. </purpose></method>
<template-nontype-parameter name="N"><type>int</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::int_&lt; N &gt;</paramtype></parameter><purpose>Get N-th axis. </purpose></method>
<method name="axis" cv="const"><type>constexpr std::add_const&lt; typename fusion::result_of::value_at_c&lt; axes_type, 0 &gt;::type &gt;::type &amp;</type></method>
<method name="for_each_axis" cv="const"><type>void</type><template>
<template-type-parameter name="Unary"/>
@@ -554,8 +624,9 @@
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name="rhs"><paramtype>const histogram &amp;</paramtype></parameter></copy-assignment>
<copy-assignment cv="= default"><type>histogram &amp;</type><parameter name="rhs"><paramtype>histogram &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor specifiers="explicit"><template>
<template-nontype-parameter name="Axes1"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axes"><paramtype>const Axes1 &amp;...</paramtype></parameter></constructor>
<template-nontype-parameter name="Axis"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axis"><paramtype>const Axis &amp;...</paramtype></parameter></constructor>
<constructor specifiers="explicit"><parameter name="axes"><paramtype>axes_type &amp;&amp;</paramtype></parameter></constructor>
<constructor specifiers="explicit"><template>
<template-type-parameter name="D"/>
<template-type-parameter name="A"/>
@@ -570,36 +641,52 @@
<method name="field_count" cv="const"><type>std::size_t</type></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::false_</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
</template><parameter name=""><paramtype>mpl::int_&lt; 0 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::true_</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
</template><parameter name=""><paramtype>mpl::int_&lt; 1 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="fill_impl"><type>void</type><template>
<template-nontype-parameter name="Args"><type>typename...</type></template-nontype-parameter>
</template><parameter name=""><paramtype>mpl::int_&lt; 2 &gt;</paramtype></parameter><parameter name="args"><paramtype>const Args &amp;...</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="First"/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin" cv="const"><type>void</type><template>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>std::enable_if&lt;!(std::is_same&lt; First, weight &gt;::value)&gt;::type</type><template>
<template-type-parameter name="X"/>
</template><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>std::size_t &amp;</paramtype></parameter><parameter name=""><paramtype>X &amp;</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>std::enable_if&lt;!(std::is_same&lt; First, weight &gt;::value||std::is_same&lt; First, count &gt;::value)&gt;::type</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="X"/>
<template-type-parameter name="First"/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter><parameter name="x"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>void</type><template>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const First &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
<template-type-parameter name="X"/>
<template-type-parameter name=""/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter><parameter name="x"><paramtype>const weight &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_w" cv="const"><type>void</type><template>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const weight &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="apply_lin_x" cv="const"><type>void</type><template>
<template-nontype-parameter name="Lin"><type>template&lt; class, class &gt; class</type></template-nontype-parameter>
<template-nontype-parameter name="D"><type>unsigned</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="w"><paramtype>double &amp;</paramtype></parameter></method>
<template-type-parameter name="X"/>
<template-type-parameter name=""/>
<template-nontype-parameter name="Rest"><type>typename...</type></template-nontype-parameter>
</template><parameter name="idx"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="stride"><paramtype>std::size_t &amp;</paramtype></parameter><parameter name="x"><paramtype>X &amp;</paramtype></parameter><parameter name="first"><paramtype>const count &amp;</paramtype></parameter><parameter name="rest"><paramtype>const Rest &amp;...</paramtype></parameter></method>
<method name="reduce_impl" cv="const"><type>void</type><template>
<template-type-parameter name="H"/>
</template><parameter name="h"><paramtype>H &amp;</paramtype></parameter><parameter name="b"><paramtype>const std::vector&lt; bool &gt; &amp;</paramtype></parameter></method>
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
@@ -608,16 +695,14 @@
<function name="make_static_histogram"><type>histogram&lt; Static, mpl::vector&lt; Axes... &gt; &gt;</type><template>
<template-nontype-parameter name="Axes"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axes"><paramtype>Axes &amp;&amp;...</paramtype></parameter><purpose>default static type factory </purpose></function>
<function name="make_static_histogram_with"><type>histogram&lt; Static, mpl::vector&lt; Axes... &gt;, Storage &gt;</type><template>
<function name="make_static_histogram"><type>histogram&lt; Static, mpl::vector&lt; Axis... &gt; &gt;</type><template>
<template-nontype-parameter name="Axis"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axis"><paramtype>Axis &amp;&amp;...</paramtype></parameter><purpose>default static type factory </purpose></function>
<function name="make_static_histogram_with"><type>histogram&lt; Static, mpl::vector&lt; Axis... &gt;, Storage &gt;</type><template>
<template-type-parameter name="Storage"/>
<template-nontype-parameter name="Axes"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axes"><paramtype>Axes &amp;&amp;...</paramtype></parameter><purpose>static type factory with variable storage type </purpose></function>
<template-nontype-parameter name="Axis"><type>typename...</type></template-nontype-parameter>
</template><parameter name="axis"><paramtype>Axis &amp;&amp;...</paramtype></parameter><purpose>static type factory with variable storage type </purpose></function>
@@ -647,9 +732,6 @@
<function name="operator&lt;&lt;"><type>std::ostream &amp;</type><template>
<template-type-parameter name="D"/>
<template-type-parameter name="A"/>
@@ -669,6 +751,7 @@
</namespace>
</namespace>
</header>
@@ -699,8 +782,6 @@
@@ -710,11 +791,15 @@
<header name="boost/histogram/serialization.hpp">
<para>Defines the serialization functions, to use with boost.serialize. </para><namespace name="boost">
<namespace name="histogram">
<namespace name="axis">
</namespace>
@@ -723,7 +808,8 @@
<function name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
<template-type-parameter name="Container"/>
</template><parameter name="ar"><paramtype>Archive &amp;</paramtype></parameter><parameter name="store"><paramtype>container_storage&lt; Container &gt; &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></function>
</template><parameter name="ar"><paramtype>Archive &amp;</paramtype></parameter><parameter name="store"><paramtype>array_storage&lt; Container &gt; &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></function>
@@ -743,135 +829,67 @@
<header name="boost/histogram/storage/adaptive_storage.hpp">
<namespace name="boost">
<namespace name="histogram">
<class name="adaptive_storage"><template>
<template-nontype-parameter name="Allocator"><type>template&lt; class &gt; class</type><default>std::allocator</default></template-nontype-parameter>
</template><struct name="add_visitor"><template>
<template-type-parameter name="Value"/>
</template><inherit access="public">static_visitor&lt; void &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<data-member name="value"><type>const Value &amp;</type></data-member>
<data-member name="buffer"><type>buffer_type &amp;</type></data-member>
</namespace>
<namespace name="python">
</namespace>
<namespace name="serialization">
</namespace>
</namespace>
</header>
<header name="boost/histogram/storage/array_storage.hpp">
<namespace name="boost">
<namespace name="histogram">
<class name="array_storage"><template>
<template-type-parameter name="T"/>
</template><typedef name="value_type"><type>T</type></typedef>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>void</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; mp_int &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter><parameter name="v"><paramtype>const Value &amp;</paramtype></parameter><parameter name="b"><paramtype>buffer_type &amp;</paramtype></parameter></constructor>
</struct><struct name="assign_visitor"><template>
<template-type-parameter name="Value"/>
</template><inherit access="public">static_visitor&lt; void &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<data-member name="value"><type>const Value &amp;</type></data-member>
<data-member name="buffer"><type>buffer_type &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>void</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; mp_int &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter><parameter name="v"><paramtype>const Value &amp;</paramtype></parameter><parameter name="b"><paramtype>buffer_type &amp;</paramtype></parameter></constructor>
</struct><struct name="bicmp_visitor"><inherit access="public">static_visitor&lt; bool &gt;</inherit><method-group name="public member functions">
<method name="operator()" cv="const"><type>bool</type><template>
<template-type-parameter name="Array1"/>
<template-type-parameter name="Array2"/>
</template><parameter name="b1"><paramtype>const Array1 &amp;</paramtype></parameter><parameter name="b2"><paramtype>const Array2 &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b1"><paramtype>const Array &amp;</paramtype></parameter><parameter name="b2"><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b1"><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter><parameter name="b2"><paramtype>const Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><parameter name="b1"><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter><parameter name="b2"><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter></method>
</method-group>
</struct><struct name="cmp_visitor"><template>
<template-type-parameter name="S"/>
</template><inherit access="public">static_visitor&lt; bool &gt;</inherit><data-member name="os"><type>const S &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>bool</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>const Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><parameter name="b"><paramtype>const array&lt; mp_int &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><parameter name="b"><paramtype>const array&lt; weight &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>bool</type><parameter name="b"><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="o"><paramtype>const S &amp;</paramtype></parameter></constructor>
</struct><struct name="increase_visitor"><inherit access="public">static_visitor&lt; void &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<data-member name="buffer"><type>buffer_type &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>void</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; mp_int &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter><parameter name="b"><paramtype>buffer_type &amp;</paramtype></parameter></constructor>
</struct><struct name="size_visitor"><inherit access="public">static_visitor&lt; std::size_t &gt;</inherit><method-group name="public member functions">
<method name="operator()" cv="const"><type>std::size_t</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>const Array &amp;</paramtype></parameter></method>
</method-group>
</struct><struct name="value_visitor"><inherit access="public">static_visitor&lt; value_type &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>value_type</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>const Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>value_type</type><parameter name=""><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>value_type</type><parameter name="b"><paramtype>const array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter></constructor>
</struct><struct name="variance_visitor"><inherit access="public">static_visitor&lt; value_type &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>value_type</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>const Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>value_type</type><parameter name=""><paramtype>const array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>value_type</type><parameter name="b"><paramtype>const array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter></constructor>
</struct><struct name="wincrease_visitor"><inherit access="public">static_visitor&lt; void &gt;</inherit><data-member name="idx"><type>const std::size_t &amp;</type></data-member>
<data-member name="w"><type>const value_type &amp;</type></data-member>
<data-member name="buffer"><type>buffer_type &amp;</type></data-member>
<method-group name="public member functions">
<method name="operator()" cv="const"><type>void</type><template>
<template-type-parameter name="Array"/>
</template><parameter name="b"><paramtype>Array &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; void &gt; &amp;</paramtype></parameter></method>
<method name="operator()" cv="const"><type>void</type><parameter name="b"><paramtype>array&lt; weight &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor><parameter name="i"><paramtype>const std::size_t &amp;</paramtype></parameter><parameter name="v"><paramtype>const value_type &amp;</paramtype></parameter><parameter name="b"><paramtype>buffer_type &amp;</paramtype></parameter></constructor>
</struct><typedef name="value_type"><type>double</type></typedef>
<method-group name="public member functions">
<method name="size" cv="const"><type>std::size_t</type></method>
<method name="increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="w"><paramtype>value_type</paramtype></parameter></method>
<method name="value" cv="const"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="variance" cv="const"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="operator+="><type>adaptive_storage &amp;</type><template>
<template-type-parameter name="S"/>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const adaptive_storage &amp;</paramtype></parameter></method>
<method name="operator==" cv="const"><type>bool</type><template>
<template-type-parameter name="S"/>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></method>
<method name="size" cv="const noexcept"><type>std::size_t</type></method>
<method name="increase" cv="noexcept"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="increase" cv="noexcept"><type>void</type><template>
<template-type-parameter name="Value"/>
</template><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="n"><paramtype>const Value &amp;</paramtype></parameter></method>
<method name="add" cv="noexcept"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="val"><paramtype>const value_type &amp;</paramtype></parameter><parameter name=""><paramtype>const value_type &amp;</paramtype></parameter></method>
<method name="value" cv="const noexcept"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="variance" cv="const noexcept"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
</method-group>
<constructor specifiers="explicit"><parameter name="s"><paramtype>std::size_t</paramtype></parameter></constructor>
<constructor cv="= default"/>
<constructor cv="= default"><parameter name=""><paramtype>const adaptive_storage &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>adaptive_storage &amp;</type><parameter name=""><paramtype>const adaptive_storage &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>adaptive_storage &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>adaptive_storage &amp;</type><parameter name=""><paramtype>adaptive_storage &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="other"><paramtype>const array_storage &amp;</paramtype></parameter></constructor>
<copy-assignment><type>array_storage &amp;</type><parameter name="other"><paramtype>const array_storage &amp;</paramtype></parameter></copy-assignment>
<constructor><parameter name="other"><paramtype>array_storage &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment><type>array_storage &amp;</type><parameter name="other"><paramtype>array_storage &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor specifiers="explicit"><template>
<template-type-parameter name="S"/>
<template-type-parameter name=""><default>detail::is_storage&lt;S&gt;</default></template-type-parameter>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></constructor>
<copy-assignment><type>adaptive_storage &amp;</type><template>
</template><parameter name="other"><paramtype>const S &amp;</paramtype></parameter></constructor>
<copy-assignment><type>array_storage &amp;</type><template>
<template-type-parameter name="S"/>
</template><parameter name="rhs"><paramtype>const S &amp;</paramtype></parameter></copy-assignment>
</template><parameter name="other"><paramtype>const S &amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="reset"><type>void</type><parameter name="size"><paramtype>std::size_t</paramtype></parameter></method>
<method name="init"><type>void</type><parameter name="size"><paramtype>std::size_t</paramtype></parameter></method>
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
@@ -897,81 +915,47 @@
</namespace>
<namespace name="serialization">
</namespace>
</namespace>
</header>
<header name="boost/histogram/storage/operators.hpp">
<namespace name="boost">
<namespace name="histogram">
<function name="operator=="><type>bool</type><template>
<template-nontype-parameter name="Allocator"><type>template&lt; class &gt; class</type></template-nontype-parameter>
<template-type-parameter name="S"/>
</template><parameter name="a"><paramtype>const S &amp;</paramtype></parameter><parameter name="b"><paramtype>const adaptive_storage&lt; Allocator &gt; &amp;</paramtype></parameter></function>
</namespace>
<namespace name="python">
</namespace>
<namespace name="serialization">
</namespace>
</namespace>
</header>
<header name="boost/histogram/storage/container_storage.hpp">
<namespace name="boost">
<namespace name="histogram">
<class name="container_storage"><template>
<template-type-parameter name="Container"/>
</template><typedef name="value_type"><type>typename Container::value_type</type></typedef>
<method-group name="public member functions">
<method name="size" cv="const"><type>std::size_t</type></method>
<method name="increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="increase"><type>void</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter><parameter name="w"><paramtype>value_type</paramtype></parameter></method>
<method name="value" cv="const"><type>value_type</type><parameter name="i"><paramtype>std::size_t</paramtype></parameter></method>
<method name="operator+="><type>void</type><template>
<template-type-parameter name="OtherStorage"/>
</template><parameter name="other"><paramtype>const OtherStorage &amp;</paramtype></parameter></method>
<method name="operator=="><type>bool</type><template>
<template-type-parameter name="C"/>
</template><parameter name="rhs"><paramtype>const container_storage&lt; C &gt; &amp;</paramtype></parameter></method>
</method-group>
<constructor specifiers="explicit"><parameter name="s"><paramtype>std::size_t</paramtype></parameter></constructor>
<constructor/>
<constructor cv="= default"><parameter name=""><paramtype>const container_storage &amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>container_storage &amp;</type><parameter name=""><paramtype>const container_storage &amp;</paramtype></parameter></copy-assignment>
<constructor cv="= default"><parameter name=""><paramtype>container_storage &amp;&amp;</paramtype></parameter></constructor>
<copy-assignment cv="= default"><type>container_storage &amp;</type><parameter name=""><paramtype>container_storage &amp;&amp;</paramtype></parameter></copy-assignment>
<constructor specifiers="explicit"><template>
<template-type-parameter name="OtherStorage"/>
<template-type-parameter name=""><default>detail::is_storage&lt;OtherStorage&gt;</default></template-type-parameter>
</template><parameter name="other"><paramtype>const OtherStorage &amp;</paramtype></parameter></constructor>
<copy-assignment><type>container_storage &amp;</type><template>
<template-type-parameter name="OtherStorage"/>
</template><parameter name="other"><paramtype>const OtherStorage &amp;</paramtype></parameter></copy-assignment>
<method-group name="private member functions">
<method name="serialize"><type>void</type><template>
<template-type-parameter name="Archive"/>
</template><parameter name=""><paramtype>Archive &amp;</paramtype></parameter><parameter name=""><paramtype>unsigned</paramtype></parameter></method>
</method-group>
</class>
</namespace>
<namespace name="serialization">
<template-type-parameter name="S1"/>
<template-type-parameter name="S2"/>
<template-type-parameter name=""><default>detail::is_storage&lt;S1&gt;</default></template-type-parameter>
<template-type-parameter name=""><default>detail::is_storage&lt;S2&gt;</default></template-type-parameter>
</template><parameter name="s1"><paramtype>const S1 &amp;</paramtype></parameter><parameter name="s2"><paramtype>const S2 &amp;</paramtype></parameter></function>
<function name="operator!="><type>bool</type><template>
<template-type-parameter name="S1"/>
<template-type-parameter name="S2"/>
<template-type-parameter name=""><default>detail::is_storage&lt;S1&gt;</default></template-type-parameter>
<template-type-parameter name=""><default>detail::is_storage&lt;S2&gt;</default></template-type-parameter>
</template><parameter name="s1"><paramtype>const S1 &amp;</paramtype></parameter><parameter name="s2"><paramtype>const S2 &amp;</paramtype></parameter></function>
</namespace>
</namespace>
</header>
@@ -986,9 +970,6 @@
<function name="bins"><type>int</type><template>
<template-type-parameter name="A"/>
</template><parameter name="a"><paramtype>const A &amp;</paramtype></parameter></function>
@@ -1021,13 +1002,14 @@
<function name="right"><type>double</type><template>
<template-nontype-parameter name="Axes"><type>typename...</type></template-nontype-parameter>
</template><parameter name="a"><paramtype>const boost::variant&lt; Axes... &gt; &amp;</paramtype></parameter><parameter name="i"><paramtype>const int</paramtype></parameter></function>
<function name="center"><type>A::value_type</type><template>
<function name="center"><type>double</type><template>
<template-type-parameter name="A"/>
</template><parameter name="a"><paramtype>const A &amp;</paramtype></parameter><parameter name="i"><paramtype>const int</paramtype></parameter></function>
<function name="center"><type>double</type><template>
<template-nontype-parameter name="Axes"><type>typename...</type></template-nontype-parameter>
</template><parameter name="a"><paramtype>const boost::variant&lt; Axes... &gt; &amp;</paramtype></parameter><parameter name="i"><paramtype>const int</paramtype></parameter></function>
</namespace>
</namespace>
</header>

View File

@@ -27,7 +27,7 @@ For full support of all library features, the `axis_type` should also be:
The latter two are not needed, if the histogram that uses the custom axis type is never serialized or ostreamed.
It is recommended to take a look at [classref boost::histogram::axis_base], which provides part of the aforementioned infrastructure for axis types.
It is recommended to take a look at [classref boost::histogram::axis::axis_base], which provides part of the aforementioned infrastructure for axis types.
[endsect]

View File

@@ -5,9 +5,9 @@
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.storage.adaptive_storage_hpp" title="Header &lt;boost/histogram/storage/adaptive_storage.hpp&gt;">
<link rel="prev" href="histogram__idm405170379312.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">
<link rel="next" href="adaptive_storage/add_visitor.html" title="Struct template add_visitor">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">
<link rel="prev" href="axis/variable.html" title="Class template variable">
<link rel="next" href="count.html" title="Class count">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram__idm405170379312.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.storage.adaptive_storage_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptive_storage/add_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="axis/variable.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.adaptive_storage"></a><div class="titlepage"></div>
@@ -29,197 +29,72 @@
<p>boost::histogram::adaptive_storage</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.storage.adaptive_storage_hpp" title="Header &lt;boost/histogram/storage/adaptive_storage.hpp&gt;">boost/histogram/storage/adaptive_storage.hpp</a>&gt;
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">boost/histogram/histogram_fwd.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Allocator <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">allocator</span><span class="special">&gt;</span>
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Allocator<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="adaptive_storage.html" title="Class template adaptive_storage">adaptive_storage</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">double</span> <a name="boost.histogram.adaptive_storage.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// member classes/structs/unions</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/add_visitor.html" title="Struct template add_visitor">add_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/add_visitor.html#boost.histogram.adaptive_storage.add_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/add_visitor.html#idm405170250112-bb"><span class="identifier">add_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">buffer_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/add_visitor.html#idm405170258256-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage/add_visitor.html#idm405170257728-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/add_visitor.html#idm405170255280-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/add_visitor.html#idm405170253616-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">mp_int</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/add_visitor.html#idm405170251936-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">value</span><span class="special">;</span>
<span class="identifier">buffer_type</span> <span class="special">&amp;</span> <span class="identifier">buffer</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/assign_visitor.html" title="Struct template assign_visitor">assign_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/assign_visitor.html#boost.histogram.adaptive_storage.assign_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/assign_visitor.html#idm405170235712-bb"><span class="identifier">assign_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">buffer_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/assign_visitor.html#idm405170243856-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage/assign_visitor.html#idm405170243328-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/assign_visitor.html#idm405170240880-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/assign_visitor.html#idm405170239216-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">mp_int</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/assign_visitor.html#idm405170237536-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">value</span><span class="special">;</span>
<span class="identifier">buffer_type</span> <span class="special">&amp;</span> <span class="identifier">buffer</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/bicmp_visitor.html" title="Struct bicmp_visitor">bicmp_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/bicmp_visitor.html#idm405170232608-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array1<span class="special">,</span> <span class="keyword">typename</span> Array2<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/bicmp_visitor.html#idm405170232080-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array1</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Array2</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/bicmp_visitor.html#idm405170228480-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/bicmp_visitor.html#idm405170225376-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/bicmp_visitor.html#idm405170222272-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/cmp_visitor.html" title="Struct template cmp_visitor">cmp_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/cmp_visitor.html#boost.histogram.adaptive_storage.cmp_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/cmp_visitor.html#idm405170209168-bb"><span class="identifier">cmp_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/cmp_visitor.html#idm405170217328-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="adaptive_storage/cmp_visitor.html#idm405170216800-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/cmp_visitor.html#idm405170214352-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">mp_int</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/cmp_visitor.html#idm405170212672-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage/cmp_visitor.html#idm405170210992-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> <span class="identifier">os</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/increase_visitor.html" title="Struct increase_visitor">increase_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/increase_visitor.html#boost.histogram.adaptive_storage.increase_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/increase_visitor.html#idm405170197616-bb"><span class="identifier">increase_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">buffer_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/increase_visitor.html#idm405170205760-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage/increase_visitor.html#idm405170205232-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/increase_visitor.html#idm405170202784-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/increase_visitor.html#idm405170201120-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">mp_int</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/increase_visitor.html#idm405170199440-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">buffer_type</span> <span class="special">&amp;</span> <span class="identifier">buffer</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/size_visitor.html" title="Struct size_visitor">size_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/size_visitor.html#idm405170195152-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="adaptive_storage/size_visitor.html#idm405170194624-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/value_visitor.html" title="Struct value_visitor">value_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/value_visitor.html#boost.histogram.adaptive_storage.value_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/value_visitor.html#idm405170183856-bb"><span class="identifier">value_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/value_visitor.html#idm405170190336-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="adaptive_storage/value_visitor.html#idm405170189808-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage/value_visitor.html#idm405170187360-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage/value_visitor.html#idm405170185680-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/variance_visitor.html" title="Struct variance_visitor">variance_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/variance_visitor.html#boost.histogram.adaptive_storage.variance_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/variance_visitor.html#idm405170174736-bb"><span class="identifier">variance_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/variance_visitor.html#idm405170181216-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="adaptive_storage/variance_visitor.html#idm405170180688-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage/variance_visitor.html#idm405170178240-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage/variance_visitor.html#idm405170176560-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="adaptive_storage/wincrease_visitor.html" title="Struct wincrease_visitor">wincrease_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="adaptive_storage/wincrease_visitor.html#boost.histogram.adaptive_storage.wincrease_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="adaptive_storage/wincrease_visitor.html#idm405170164048-bb"><span class="identifier">wincrease_visitor</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">buffer_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage/wincrease_visitor.html#idm405170170512-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Array<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage/wincrease_visitor.html#idm405170169984-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">Array</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/wincrease_visitor.html#idm405170167536-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage/wincrease_visitor.html#idm405170165872-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="identifier">array</span><span class="special">&lt;</span> <span class="identifier">weight</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span> <span class="identifier">w</span><span class="special">;</span>
<span class="identifier">buffer_type</span> <span class="special">&amp;</span> <span class="identifier">buffer</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage.html#boost.histogram.adaptive_storageconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="adaptive_storage.html#idm405170146176-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm405170145024-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm405170144512-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm405170141888-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">explicit</span> <a class="link" href="adaptive_storage.html#idm27629984000-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm27629982912-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm27629982432-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="adaptive_storage.html#idm27629980000-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="adaptive_storage.html#idm405170139264-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm405170143344-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm405170140720-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm405170136528-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">explicit</span> <a class="link" href="adaptive_storage.html#idm27629977568-bb"><span class="identifier">adaptive_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm27629981344-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm27629978912-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm27629975008-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage.html#idm405170161040-bb">public member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="adaptive_storage.html#idm405170160512-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm405170159488-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm405170158064-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage.html#idm405170156000-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage.html#idm405170154336-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a class="link" href="adaptive_storage.html#idm405170152672-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage.html#idm405170150448-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="adaptive_storage.html#idm405170148768-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage.html#idm27629998816-bb">public member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="adaptive_storage.html#idm27629998336-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm27629997376-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm27629996032-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm27629993344-bb"><span class="identifier">weighted_increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm27629991392-bb"><span class="identifier">add</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage.html#idm27629988832-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="adaptive_storage.html#idm27629987264-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="adaptive_storage.html#idm27629985696-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage.html#idm405170134544-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm405170134016-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="adaptive_storage.html#idm27629973152-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="adaptive_storage.html#idm27629972672-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm382810351264"></a><h2>Description</h2>
<a name="idm70452809920"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm382810350864"></a><h3>
<a name="idm70452816736"></a><h3>
<a name="boost.histogram.adaptive_storageconstruct-copy-destruct"></a><code class="computeroutput">adaptive_storage</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm405170146176-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> s<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm405170145024-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm405170144512-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm405170141888-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629984000-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> s<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629982912-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629982432-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629980000-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm405170139264-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm405170143344-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm405170140720-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm405170136528-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<span class="keyword">explicit</span> <a name="idm27629977568-bb"></a><span class="identifier">adaptive_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm27629981344-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm27629978912-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">adaptive_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm27629975008-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm382810287712"></a><h3>
<a name="idm405170161040-bb"></a><code class="computeroutput">adaptive_storage</code> public member functions</h3>
<a name="idm70490932144"></a><h3>
<a name="idm27629998816-bb"></a><code class="computeroutput">adaptive_storage</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm405170160512-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm405170159488-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm405170158064-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="identifier">value_type</span> w<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm405170156000-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm405170154336-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> <a name="idm405170152672-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm405170150448-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">bool</span> <a name="idm405170148768-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629998336-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629997376-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629996032-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> n<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629993344-bb"></a><span class="identifier">weighted_increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="identifier">value_type</span> weight<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629991392-bb"></a><span class="identifier">add</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span> val<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span> var<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27629988832-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27629987264-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27629985696-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">adaptive_storage</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm382810229232"></a><h3>
<a name="idm405170134544-bb"></a><code class="computeroutput">adaptive_storage</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm405170134016-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></div>
<a name="idm70452447696"></a><h3>
<a name="idm27629973152-bb"></a><code class="computeroutput">adaptive_storage</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629972672-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
</div>
</div>
@@ -233,7 +108,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram__idm405170379312.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.storage.adaptive_storage_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="adaptive_storage/add_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="axis/variable.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template array_storage</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.storage.array_storage_hpp" title="Header &lt;boost/histogram/storage/array_storage.hpp&gt;">
<link rel="prev" href="histogram_S_idm27629806656/shape_assign_helper.html" title="Struct shape_assign_helper">
<link rel="next" href="../../histogram/changelog.html" title="Changelog">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram_S_idm27629806656/shape_assign_helper.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.storage.array_storage_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../../histogram/changelog.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.array_storage"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template array_storage</span></h2>
<p>boost::histogram::array_storage</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.storage.array_storage_hpp" title="Header &lt;boost/histogram/storage/array_storage.hpp&gt;">boost/histogram/storage/array_storage.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="array_storage.html" title="Class template array_storage">array_storage</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="identifier">T</span> <a name="boost.histogram.array_storage.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// <a class="link" href="array_storage.html#boost.histogram.array_storageconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="array_storage.html#idm27629659760-bb"><span class="identifier">array_storage</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="array_storage.html#idm27629658672-bb"><span class="identifier">array_storage</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="array_storage.html#idm27629658192-bb"><span class="identifier">array_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="array_storage.html#idm27629656208-bb"><span class="identifier">array_storage</span></a><span class="special">(</span><span class="identifier">array_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="array_storage.html#idm27629654224-bb"><span class="identifier">array_storage</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">array_storage</span> <span class="special">&amp;</span> <a class="link" href="array_storage.html#idm27629657328-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">array_storage</span> <span class="special">&amp;</span> <a class="link" href="array_storage.html#idm27629655344-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">array_storage</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span> <a class="link" href="array_storage.html#idm27629651664-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="array_storage.html#idm27629671728-bb">public member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="array_storage.html#idm27629671248-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629670288-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629668720-bb"><span class="identifier">increase</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629665808-bb"><span class="identifier">add</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="array_storage.html#idm27629663024-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="array_storage.html#idm27629661456-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="comment">// <a class="link" href="array_storage.html#idm27629649808-bb">private member functions</a></span>
<span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629649328-bb"><span class="identifier">reset</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629647984-bb"><span class="identifier">init</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="array_storage.html#idm27629646640-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70408368848"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70408368448"></a><h3>
<a name="boost.histogram.array_storageconstruct-copy-destruct"></a><code class="computeroutput">array_storage</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629659760-bb"></a><span class="identifier">array_storage</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> s<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629658672-bb"></a><span class="identifier">array_storage</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629658192-bb"></a><span class="identifier">array_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629656208-bb"></a><span class="identifier">array_storage</span><span class="special">(</span><span class="identifier">array_storage</span> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm27629654224-bb"></a><span class="identifier">array_storage</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">array_storage</span> <span class="special">&amp;</span> <a name="idm27629657328-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">array_storage</span> <span class="special">&amp;</span> <a name="idm27629655344-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">array_storage</span> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">array_storage</span> <span class="special">&amp;</span> <a name="idm27629651664-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70408309936"></a><h3>
<a name="idm27629671728-bb"></a><code class="computeroutput">array_storage</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629671248-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629670288-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629668720-bb"></a><span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> n<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629665808-bb"></a><span class="identifier">add</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span> val<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27629663024-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27629661456-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> i<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70408259056"></a><h3>
<a name="idm27629649808-bb"></a><code class="computeroutput">array_storage</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629649328-bb"></a><span class="identifier">reset</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> size<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27629647984-bb"></a><span class="identifier">init</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> size<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629646640-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="histogram_S_idm27629806656/shape_assign_helper.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.storage.array_storage_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../../histogram/changelog.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,61 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template axis_base</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="transform/sqrt.html" title="Struct template sqrt">
<link rel="next" href="axis_base_f_idm27630255200.html" title="Class axis_base&lt;false&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="transform/sqrt.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base_f_idm27630255200.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_base"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template axis_base</span></h2>
<p>boost::histogram::axis::axis_base &#8212; Common base class for all axes. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">bool</span> UOFlow<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">{</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412616624"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412616240"></a><h3>Specializations</h3>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p><a class="link" href="axis_base_f_idm27630255200.html" title="Class axis_base&lt;false&gt;">Class axis_base&lt;false&gt;</a></p></li>
<li class="listitem"><p><a class="link" href="axis_base_t_idm27630232864.html" title="Class axis_base&lt;true&gt;">Class axis_base&lt;true&gt;</a></p></li>
</ul></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; 2016, 2017 Hans Dembinski<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="transform/sqrt.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base_f_idm27630255200.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,115 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class axis_base&lt;true&gt;</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_base__idm272931684640.html" title="Class axis_base&lt;false&gt;">
<link rel="next" href="axis_iterator.html" title="Class template axis_iterator">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_base__idm272931684640.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_iterator.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_base__idm272931662048"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class axis_base&lt;true&gt;</span></h2>
<p>boost::histogram::axis::axis_base&lt;true&gt; &#8212; Specialization with overflow/underflow bins. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="axis_base__idm272931662048.html" title="Class axis_base&lt;true&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">true</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="axis_base__idm272931662048.html#boost.histogram.axis.axis_base__idm272931662048construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="axis_base__idm272931662048.html#idm272931650912-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">string_view</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931662048.html#idm272931648832-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931662048.html#idm272931648352-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931662048.html#idm272931644896-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base__idm272931662048.html#idm272931646880-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base__idm272931662048.html#idm272931643776-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931662048.html#idm272931660800-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="axis_base__idm272931662048.html#idm272931660320-bb"><span class="identifier">bins</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">int</span> <a class="link" href="axis_base__idm272931662048.html#idm272931659040-bb"><span class="identifier">shape</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="axis_base__idm272931662048.html#idm272931657760-bb"><span class="identifier">uoflow</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">string_view</span> <a class="link" href="axis_base__idm272931662048.html#idm272931656480-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_base__idm272931662048.html#idm272931655200-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931662048.html#idm272931653472-bb">protected member functions</a></span>
<span class="keyword">bool</span> <a class="link" href="axis_base__idm272931662048.html#idm272931652992-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931662048.html#idm272931642144-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_base__idm272931662048.html#idm272931641664-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196652662480"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196652662080"></a><h3>
<a name="boost.histogram.axis.axis_base__idm272931662048construct-copy-destruct"></a><code class="computeroutput">axis_base</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm272931650912-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">string_view</span> label<span class="special">,</span> <span class="keyword">bool</span> uoflow<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931648832-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931648352-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931644896-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm272931646880-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm272931643776-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196652622512"></a><h3>
<a name="idm272931660800-bb"></a><code class="computeroutput">axis_base</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm272931660320-bb"></a><span class="identifier">bins</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, excluding overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm272931659040-bb"></a><span class="identifier">shape</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, including overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="idm272931657760-bb"></a><span class="identifier">uoflow</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns whether axis has extra overflow and underflow bins. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">string_view</span> <a name="idm272931656480-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the axis label, which is a name or description. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm272931655200-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre>Change the label of an axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196652596544"></a><h3>
<a name="idm272931653472-bb"></a><code class="computeroutput">axis_base</code> protected member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm272931652992-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm196652587264"></a><h3>
<a name="idm272931642144-bb"></a><code class="computeroutput">axis_base</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931641664-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="axis_base__idm272931684640.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_iterator.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,115 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class axis_base&lt;false&gt;</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_base.html" title="Class template axis_base">
<link rel="next" href="axis_base__idm272931662048.html" title="Class axis_base&lt;true&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_base.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base__idm272931662048.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_base__idm272931684640"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class axis_base&lt;false&gt;</span></h2>
<p>boost::histogram::axis::axis_base&lt;false&gt; &#8212; Specialization without overflow/underflow bins. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="axis_base__idm272931684640.html" title="Class axis_base&lt;false&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">false</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="axis_base__idm272931684640.html#boost.histogram.axis.axis_base__idm272931684640construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="axis_base__idm272931684640.html#idm272931673504-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931684640.html#idm272931672032-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931684640.html#idm272931671552-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base__idm272931684640.html#idm272931668096-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base__idm272931684640.html#idm272931670080-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base__idm272931684640.html#idm272931666976-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931684640.html#idm272931683392-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="axis_base__idm272931684640.html#idm272931682912-bb"><span class="identifier">bins</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">int</span> <a class="link" href="axis_base__idm272931684640.html#idm272931681632-bb"><span class="identifier">shape</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="axis_base__idm272931684640.html#idm272931680352-bb"><span class="identifier">uoflow</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">string_view</span> <a class="link" href="axis_base__idm272931684640.html#idm272931679072-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_base__idm272931684640.html#idm272931677792-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931684640.html#idm272931676064-bb">protected member functions</a></span>
<span class="keyword">bool</span> <a class="link" href="axis_base__idm272931684640.html#idm272931675584-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base__idm272931684640.html#idm272931665344-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_base__idm272931684640.html#idm272931664864-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196652824704"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196652824320"></a><h3>
<a name="boost.histogram.axis.axis_base__idm272931684640construct-copy-destruct"></a><code class="computeroutput">axis_base</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm272931673504-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931672032-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931671552-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931668096-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm272931670080-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm272931666976-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196652789056"></a><h3>
<a name="idm272931683392-bb"></a><code class="computeroutput">axis_base</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm272931682912-bb"></a><span class="identifier">bins</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, excluding overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm272931681632-bb"></a><span class="identifier">shape</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, including overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="idm272931680352-bb"></a><span class="identifier">uoflow</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns whether axis has extra overflow and underflow bins. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">string_view</span> <a name="idm272931679072-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the axis label, which is a name or description. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm272931677792-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre>Change the label of an axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196652764832"></a><h3>
<a name="idm272931676064-bb"></a><code class="computeroutput">axis_base</code> protected member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm272931675584-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm196652755728"></a><h3>
<a name="idm272931665344-bb"></a><code class="computeroutput">axis_base</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931664864-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="axis_base.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base__idm272931662048.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,115 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class axis_base&lt;false&gt;</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_base.html" title="Class template axis_base">
<link rel="next" href="axis_base_t_idm27630232864.html" title="Class axis_base&lt;true&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_base.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base_t_idm27630232864.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_base_f_idm27630255200"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class axis_base&lt;false&gt;</span></h2>
<p>boost::histogram::axis::axis_base&lt;false&gt; &#8212; Specialization without overflow/underflow bins. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="axis_base_f_idm27630255200.html" title="Class axis_base&lt;false&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">false</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="axis_base_f_idm27630255200.html#boost.histogram.axis.axis_base_f_idm27630255200construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="axis_base_f_idm27630255200.html#idm27630244320-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base_f_idm27630255200.html#idm27630242848-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base_f_idm27630255200.html#idm27630242368-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base_f_idm27630255200.html#idm27630238912-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630240896-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630237792-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_f_idm27630255200.html#idm27630253952-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630253472-bb"><span class="identifier">bins</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">int</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630252256-bb"><span class="identifier">shape</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630251040-bb"><span class="identifier">uoflow</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">string_view</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630249824-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630248608-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_f_idm27630255200.html#idm27630246880-bb">protected member functions</a></span>
<span class="keyword">bool</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630246400-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_f_idm27630255200.html#idm27630236160-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_base_f_idm27630255200.html#idm27630235680-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412541200"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412540816"></a><h3>
<a name="boost.histogram.axis.axis_base_f_idm27630255200construct-copy-destruct"></a><code class="computeroutput">axis_base</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm27630244320-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630242848-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630242368-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630238912-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm27630240896-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm27630237792-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70412505552"></a><h3>
<a name="idm27630253952-bb"></a><code class="computeroutput">axis_base</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630253472-bb"></a><span class="identifier">bins</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, excluding overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630252256-bb"></a><span class="identifier">shape</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, including overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630251040-bb"></a><span class="identifier">uoflow</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns whether axis has extra overflow and underflow bins. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">string_view</span> <a name="idm27630249824-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the axis label, which is a name or description. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm27630248608-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre>Change the label of an axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70412480832"></a><h3>
<a name="idm27630246880-bb"></a><code class="computeroutput">axis_base</code> protected member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630246400-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm70412471632"></a><h3>
<a name="idm27630236160-bb"></a><code class="computeroutput">axis_base</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630235680-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="axis_base.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_base_t_idm27630232864.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,115 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class axis_base&lt;true&gt;</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_base_f_idm27630255200.html" title="Class axis_base&lt;false&gt;">
<link rel="next" href="axis_iterator.html" title="Class template axis_iterator">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_base_f_idm27630255200.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_iterator.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_base_t_idm27630232864"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class axis_base&lt;true&gt;</span></h2>
<p>boost::histogram::axis::axis_base&lt;true&gt; &#8212; Specialization with overflow/underflow bins. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="axis_base_t_idm27630232864.html" title="Class axis_base&lt;true&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">true</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="axis_base_t_idm27630232864.html#boost.histogram.axis.axis_base_t_idm27630232864construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="axis_base_t_idm27630232864.html#idm27630221728-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">string_view</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base_t_idm27630232864.html#idm27630219648-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base_t_idm27630232864.html#idm27630219168-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base_t_idm27630232864.html#idm27630215712-bb"><span class="identifier">axis_base</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630217696-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630214592-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_t_idm27630232864.html#idm27630231616-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630231136-bb"><span class="identifier">bins</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">int</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630229856-bb"><span class="identifier">shape</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630228576-bb"><span class="identifier">uoflow</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">string_view</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630227296-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630226016-bb"><span class="identifier">label</span></a><span class="special">(</span><span class="identifier">string_view</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_t_idm27630232864.html#idm27630224288-bb">protected member functions</a></span>
<span class="keyword">bool</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630223808-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_base_t_idm27630232864.html#idm27630212960-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_base_t_idm27630232864.html#idm27630212480-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412378416"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412378016"></a><h3>
<a name="boost.histogram.axis.axis_base_t_idm27630232864construct-copy-destruct"></a><code class="computeroutput">axis_base</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm27630221728-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">string_view</span> label<span class="special">,</span> <span class="keyword">bool</span> uoflow<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630219648-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630219168-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630215712-bb"></a><span class="identifier">axis_base</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm27630217696-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> <a name="idm27630214592-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70412338352"></a><h3>
<a name="idm27630231616-bb"></a><code class="computeroutput">axis_base</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630231136-bb"></a><span class="identifier">bins</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, excluding overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630229856-bb"></a><span class="identifier">shape</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of bins, including overflow/underflow. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630228576-bb"></a><span class="identifier">uoflow</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns whether axis has extra overflow and underflow bins. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">string_view</span> <a name="idm27630227296-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the axis label, which is a name or description. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm27630226016-bb"></a><span class="identifier">label</span><span class="special">(</span><span class="identifier">string_view</span> label<span class="special">)</span><span class="special">;</span></pre>Change the label of an axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70412312432"></a><h3>
<a name="idm27630224288-bb"></a><code class="computeroutput">axis_base</code> protected member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630223808-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="axis_base.html" title="Class template axis_base">axis_base</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm70412303200"></a><h3>
<a name="idm27630212960-bb"></a><code class="computeroutput">axis_base</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630212480-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="axis_base_f_idm27630255200.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="axis_iterator.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,89 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template axis_iterator</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_base_t_idm27630232864.html" title="Class axis_base&lt;true&gt;">
<link rel="next" href="bin.html" title="Struct template bin">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_base_t_idm27630232864.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bin.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.axis_iterator"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template axis_iterator</span></h2>
<p>boost::histogram::axis::axis_iterator</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="axis_iterator.html" title="Class template axis_iterator">axis_iterator</a> <span class="special">:</span> <span class="keyword">public</span> iterator_facade&lt; axis_iterator&lt; Axis &gt;, const axis_bin&lt; Axis::value_type &gt;, random_access_traversal_tag &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="axis_iterator.html#boost.histogram.axis.axis_iteratorconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="axis_iterator.html#idm27630207488-bb"><span class="identifier">axis_iterator</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">int</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="axis_iterator.html#idm27630205792-bb">private member functions</a></span>
<span class="keyword">void</span> <a class="link" href="axis_iterator.html#idm27630205312-bb"><span class="identifier">increment</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_iterator.html#idm27630204576-bb"><span class="identifier">decrement</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="axis_iterator.html#idm27630203840-bb"><span class="identifier">advance</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">int</span> <a class="link" href="axis_iterator.html#idm27630202496-bb"><span class="identifier">distance_to</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">axis_iterator</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="axis_iterator.html#idm27630200928-bb"><span class="identifier">equal</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">axis_iterator</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">bin_type</span> <span class="special">&amp;</span> <a class="link" href="axis_iterator.html#idm27630199360-bb"><span class="identifier">dereference</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> U<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_iterator.html#idm27630198400-bb"><span class="identifier">assign_impl</span></a><span class="special">(</span><span class="identifier">bin</span><span class="special">&lt;</span> <span class="identifier">U</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> U<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="axis_iterator.html#idm27630196096-bb"><span class="identifier">assign_impl</span></a><span class="special">(</span><span class="identifier">real_bin</span><span class="special">&lt;</span> <span class="identifier">U</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412209728"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412209328"></a><h3>
<a name="boost.histogram.axis.axis_iteratorconstruct-copy-destruct"></a><code class="computeroutput">axis_iterator</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27630207488-bb"></a><span class="identifier">axis_iterator</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span> axis<span class="special">,</span> <span class="keyword">int</span> idx<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm70412200080"></a><h3>
<a name="idm27630205792-bb"></a><code class="computeroutput">axis_iterator</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27630205312-bb"></a><span class="identifier">increment</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27630204576-bb"></a><span class="identifier">decrement</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <a name="idm27630203840-bb"></a><span class="identifier">advance</span><span class="special">(</span><span class="keyword">int</span> n<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">int</span> <a name="idm27630202496-bb"></a><span class="identifier">distance_to</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">axis_iterator</span> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630200928-bb"></a><span class="identifier">equal</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">axis_iterator</span> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">const</span> <span class="identifier">bin_type</span> <span class="special">&amp;</span> <a name="idm27630199360-bb"></a><span class="identifier">dereference</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> U<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630198400-bb"></a><span class="identifier">assign_impl</span><span class="special">(</span><span class="identifier">bin</span><span class="special">&lt;</span> <span class="identifier">U</span> <span class="special">&gt;</span> <span class="special">&amp;</span> v<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> U<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630196096-bb"></a><span class="identifier">assign_impl</span><span class="special">(</span><span class="identifier">real_bin</span><span class="special">&lt;</span> <span class="identifier">U</span> <span class="special">&gt;</span> <span class="special">&amp;</span> v<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="axis_base_t_idm27630232864.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bin.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,55 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template bin</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="axis_iterator.html" title="Class template axis_iterator">
<link rel="next" href="category.html" title="Class category">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="axis_iterator.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="category.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.bin"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template bin</span></h2>
<p>boost::histogram::axis::bin</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="bin.html" title="Struct template bin">bin</a> <span class="special">{</span>
<span class="comment">// public data members</span>
<span class="keyword">int</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">Value</span> <span class="identifier">value</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></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; 2016, 2017 Hans Dembinski<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="axis_iterator.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="category.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,140 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class category</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="bin.html" title="Struct template bin">
<link rel="next" href="circular.html" title="Class template circular">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="bin.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="circular.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.category"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class category</span></h2>
<p>boost::histogram::axis::category &#8212; An axis for enumerated categories. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">:</span> <span class="keyword">public</span> boost::histogram::axis::axis_base&lt; false &gt;,
<span class="keyword">private</span> boost::operators&lt; category &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="identifier">string_view</span> <a name="boost.histogram.axis.category.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">axis_iterator</span><span class="special">&lt;</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&gt;</span> <a name="boost.histogram.axis.category.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span>
<span class="comment">// <a class="link" href="category.html#boost.histogram.axis.categoryconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<a class="link" href="category.html#idm27630177824-bb"><span class="identifier">category</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="category.html#idm27630174752-bb"><span class="identifier">category</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="category.html#idm27630172000-bb"><span class="identifier">category</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="category.html#idm27630171520-bb"><span class="identifier">category</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="category.html#idm27630168512-bb"><span class="identifier">category</span></a><span class="special">(</span><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> <a class="link" href="category.html#idm27630170272-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> <a class="link" href="category.html#idm27630167392-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="category.html#idm27630186336-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="category.html#idm27630185856-bb"><span class="identifier">index</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="category.html#idm27630183648-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="category.html#idm27630181824-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="category.html#idm27630179872-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="category.html#idm27630178912-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="category.html#idm27630165760-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="category.html#idm27630165280-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412030720"></a><h2>Description</h2>
<p>The axis stores the category labels, and expects that they are addressed using an integer from <code class="computeroutput">0</code> to <code class="computeroutput">n-1</code>. There are no underflow/overflow bins for this axis. Binning is a O(1) operation. </p>
<div class="refsect2">
<a name="idm70412028608"></a><h3>
<a name="boost.histogram.axis.categoryconstruct-copy-destruct"></a><code class="computeroutput">category</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<a name="idm27630177824-bb"></a><span class="identifier">category</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><a name="idm27630174752-bb"></a><span class="identifier">category</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&gt;</span> <span class="special">&amp;</span> categories<span class="special">,</span>
<span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>Construct from a list of strings. <p>
</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term"><code class="computeroutput">categories</code></span></p></td>
<td><p>sequence of labeled categories. </p></td>
</tr></tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem"><pre class="literallayout"><a name="idm27630172000-bb"></a><span class="identifier">category</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630171520-bb"></a><span class="identifier">category</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630168512-bb"></a><span class="identifier">category</span><span class="special">(</span><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> <a name="idm27630170272-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> <a name="idm27630167392-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;&amp;</span> other<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411970912"></a><h3>
<a name="idm27630186336-bb"></a><code class="computeroutput">category</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630185856-bb"></a><span class="identifier">index</span><span class="special">(</span><span class="keyword">int</span> x<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Returns the bin index for the passed argument. <p>Performs a range check. </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630183648-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="keyword">int</span> idx<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the category for the bin index. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630181824-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="category.html" title="Class category">category</a> <span class="special">&amp;</span> other<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630179872-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630178912-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411939728"></a><h3>
<a name="idm27630165760-bb"></a><code class="computeroutput">category</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630165280-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="bin.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="circular.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,155 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template circular</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="category.html" title="Class category">
<link rel="next" href="integer.html" title="Class integer">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="category.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="integer.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.circular"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template circular</span></h2>
<p>boost::histogram::axis::circular &#8212; Axis for real-valued angles. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">:</span> <span class="keyword">public</span> boost::histogram::axis::axis_base&lt; false &gt;,
<span class="keyword">private</span> boost::operators&lt; regular&lt; RealType &gt; &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="identifier">RealType</span> <a name="boost.histogram.axis.circular.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">axis_iterator</span><span class="special">&lt;</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&gt;</span> <a name="boost.histogram.axis.circular.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span>
<span class="comment">// <a class="link" href="circular.html#boost.histogram.axis.circularconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="circular.html#idm27630147440-bb"><span class="identifier">circular</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">value_type</span> <span class="special">=</span> <span class="number">0</span><span class="special">.</span><span class="number">0</span><span class="special">,</span>
<span class="identifier">value_type</span> <span class="special">=</span> <span class="identifier">math</span><span class="special">::</span><span class="identifier">double_constants</span><span class="special">::</span><span class="identifier">two_pi</span><span class="special">,</span>
<span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="circular.html#idm27630141520-bb"><span class="identifier">circular</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="circular.html#idm27630141040-bb"><span class="identifier">circular</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="circular.html#idm27630137584-bb"><span class="identifier">circular</span></a><span class="special">(</span><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span> <a class="link" href="circular.html#idm27630139568-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span> <a class="link" href="circular.html#idm27630136240-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="comment">// <a class="link" href="circular.html#idm27630157488-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="circular.html#idm27630157008-bb"><span class="identifier">index</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="circular.html#idm27630155184-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="circular.html#idm27630153360-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="circular.html#idm27630151408-bb"><span class="identifier">perimeter</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="circular.html#idm27630150448-bb"><span class="identifier">phase</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="circular.html#idm27630149488-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="circular.html#idm27630148528-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="circular.html#idm27630134384-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="circular.html#idm27630133904-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70411816624"></a><h2>Description</h2>
<p>The axis is circular and wraps around reaching the perimeter value. Therefore, there are no overflow/underflow bins for this axis. Binning is a O(1) operation. </p>
<div class="refsect2">
<a name="idm70411815792"></a><h3>
<a name="boost.histogram.axis.circularconstruct-copy-destruct"></a><code class="computeroutput">circular</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27630147440-bb"></a><span class="identifier">circular</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">value_type</span> phase <span class="special">=</span> <span class="number">0</span><span class="special">.</span><span class="number">0</span><span class="special">,</span>
<span class="identifier">value_type</span> perimeter <span class="special">=</span> <span class="identifier">math</span><span class="special">::</span><span class="identifier">double_constants</span><span class="special">::</span><span class="identifier">two_pi</span><span class="special">,</span>
<span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>Constructor for n bins with an optional offset. <p>
</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">label</code></span></p></td>
<td><p>description of the axis. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
<td><p>number of bins. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">perimeter</code></span></p></td>
<td><p>range after which value wraps around. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">phase</code></span></p></td>
<td><p>starting phase. </p></td>
</tr>
</tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem"><pre class="literallayout"><a name="idm27630141520-bb"></a><span class="identifier">circular</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630141040-bb"></a><span class="identifier">circular</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630137584-bb"></a><span class="identifier">circular</span><span class="special">(</span><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span> <a name="idm27630139568-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span> <a name="idm27630136240-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411757840"></a><h3>
<a name="idm27630157488-bb"></a><code class="computeroutput">circular</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630157008-bb"></a><span class="identifier">index</span><span class="special">(</span><span class="identifier">value_type</span> x<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Returns the bin index for the passed argument. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630155184-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="keyword">int</span> idx<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the starting edge of the bin. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630153360-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="circular.html" title="Class template circular">circular</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630151408-bb"></a><span class="identifier">perimeter</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630150448-bb"></a><span class="identifier">phase</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630149488-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630148528-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411717568"></a><h3>
<a name="idm27630134384-bb"></a><code class="computeroutput">circular</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630133904-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="category.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="integer.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,140 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class integer</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="circular.html" title="Class template circular">
<link rel="next" href="real_bin.html" title="Struct template real_bin">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="circular.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="real_bin.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.integer"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class integer</span></h2>
<p>boost::histogram::axis::integer &#8212; An axis for a contiguous range of integers. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">:</span> <span class="keyword">public</span> boost::histogram::axis::axis_base&lt; true &gt;,
<span class="keyword">private</span> boost::operators&lt; integer &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">int</span> <a name="boost.histogram.axis.integer.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">axis_iterator</span><span class="special">&lt;</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&gt;</span> <a name="boost.histogram.axis.integer.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span>
<span class="comment">// <a class="link" href="integer.html#boost.histogram.axis.integerconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="integer.html#idm27630119008-bb"><span class="identifier">integer</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="integer.html#idm27630114400-bb"><span class="identifier">integer</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="integer.html#idm27630113920-bb"><span class="identifier">integer</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="integer.html#idm27630110464-bb"><span class="identifier">integer</span></a><span class="special">(</span><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> <a class="link" href="integer.html#idm27630112448-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> <a class="link" href="integer.html#idm27630109120-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="comment">// <a class="link" href="integer.html#idm27630127200-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="integer.html#idm27630126720-bb"><span class="identifier">index</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="integer.html#idm27630124896-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="integer.html#idm27630123008-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="integer.html#idm27630121056-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="integer.html#idm27630120096-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="integer.html#idm27630107264-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="integer.html#idm27630106784-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70411610832"></a><h2>Description</h2>
<p>Binning is a O(1) operation. This axis operates faster than a regular. </p>
<div class="refsect2">
<a name="idm70411610096"></a><h3>
<a name="boost.histogram.axis.integerconstruct-copy-destruct"></a><code class="computeroutput">integer</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="idm27630119008-bb"></a><span class="identifier">integer</span><span class="special">(</span><span class="identifier">value_type</span> min<span class="special">,</span> <span class="identifier">value_type</span> max<span class="special">,</span> <span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span>
<span class="keyword">bool</span> uoflow <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span></pre>Construct axis over integer range [min, max]. <p>
</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">max</code></span></p></td>
<td><p>largest integer of the covered range. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">min</code></span></p></td>
<td><p>smallest integer of the covered range. </p></td>
</tr>
</tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem"><pre class="literallayout"><a name="idm27630114400-bb"></a><span class="identifier">integer</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630113920-bb"></a><span class="identifier">integer</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630110464-bb"></a><span class="identifier">integer</span><span class="special">(</span><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> <a name="idm27630112448-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> <a name="idm27630109120-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411559136"></a><h3>
<a name="idm27630127200-bb"></a><code class="computeroutput">integer</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630126720-bb"></a><span class="identifier">index</span><span class="special">(</span><span class="identifier">value_type</span> x<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Returns the bin index for the passed argument. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630124896-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="keyword">int</span> idx<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the integer that is mapped to the bin index. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630123008-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630121056-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630120096-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411528208"></a><h3>
<a name="idm27630107264-bb"></a><code class="computeroutput">integer</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630106784-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="circular.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="real_bin.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,56 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template real_bin</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="integer.html" title="Class integer">
<link rel="next" href="regular.html" title="Class template regular">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="integer.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="regular.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.real_bin"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template real_bin</span></h2>
<p>boost::histogram::axis::real_bin</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="real_bin.html" title="Struct template real_bin">real_bin</a> <span class="special">{</span>
<span class="comment">// public data members</span>
<span class="keyword">int</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">Value</span> <span class="identifier">left</span><span class="special">;</span>
<span class="identifier">Value</span> <span class="identifier">right</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></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; 2016, 2017 Hans Dembinski<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="integer.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="regular.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,154 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template regular</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="real_bin.html" title="Struct template real_bin">
<link rel="next" href="variable.html" title="Class template variable">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="real_bin.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="variable.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.regular"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template regular</span></h2>
<p>boost::histogram::axis::regular &#8212; Axis for binning real-valued data into equidistant bins. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">,</span>
<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Transform <span class="special">=</span> <span class="identifier">transform</span><span class="special">::</span><span class="identifier">identity</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">:</span> <span class="keyword">public</span> boost::histogram::axis::axis_base&lt; true &gt;,
<span class="keyword">private</span> boost::operators&lt; regular&lt; RealType, Transform &gt; &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="identifier">RealType</span> <a name="boost.histogram.axis.regular.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">axis_iterator</span><span class="special">&lt;</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&gt;</span> <a name="boost.histogram.axis.regular.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span>
<span class="comment">// <a class="link" href="regular.html#boost.histogram.axis.regularconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="regular.html#idm27630086528-bb"><span class="identifier">regular</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">,</span> <span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span>
<span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="regular.html#idm27630080096-bb"><span class="identifier">regular</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="regular.html#idm27630079616-bb"><span class="identifier">regular</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="regular.html#idm27630076160-bb"><span class="identifier">regular</span></a><span class="special">(</span><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span> <a class="link" href="regular.html#idm27630078144-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span> <a class="link" href="regular.html#idm27630074816-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="comment">// <a class="link" href="regular.html#idm27630094656-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="regular.html#idm27630094176-bb"><span class="identifier">index</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="regular.html#idm27630092352-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="regular.html#idm27630090528-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="regular.html#idm27630088576-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="regular.html#idm27630087616-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="regular.html#idm27630072960-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="regular.html#idm27630072480-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70411395776"></a><h2>Description</h2>
<p>The simplest and common binning strategy. Very fast. Binning is a O(1) operation. </p>
<div class="refsect2">
<a name="idm70411395024"></a><h3>
<a name="boost.histogram.axis.regularconstruct-copy-destruct"></a><code class="computeroutput">regular</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="idm27630086528-bb"></a><span class="identifier">regular</span><span class="special">(</span><span class="keyword">unsigned</span> n<span class="special">,</span> <span class="identifier">value_type</span> min<span class="special">,</span> <span class="identifier">value_type</span> max<span class="special">,</span>
<span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="keyword">bool</span> uoflow <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span></pre>Construct axis with n bins over range [min, max). <p>
</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">label</code></span></p></td>
<td><p>description of the axis. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">max</code></span></p></td>
<td><p>high edge of last bin. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">min</code></span></p></td>
<td><p>low edge of first bin. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
<td><p>number of bins. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">uoflow</code></span></p></td>
<td><p>whether to add under-/overflow bins. </p></td>
</tr>
</tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem"><pre class="literallayout"><a name="idm27630080096-bb"></a><span class="identifier">regular</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630079616-bb"></a><span class="identifier">regular</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630076160-bb"></a><span class="identifier">regular</span><span class="special">(</span><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span> <a name="idm27630078144-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span> <a name="idm27630074816-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411339424"></a><h3>
<a name="idm27630094656-bb"></a><code class="computeroutput">regular</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630094176-bb"></a><span class="identifier">index</span><span class="special">(</span><span class="identifier">value_type</span> x<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Returns the bin index for the passed argument. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630092352-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="keyword">int</span> idx<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the starting edge of the bin. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630090528-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="regular.html" title="Class template regular">regular</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630088576-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630087616-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411308416"></a><h3>
<a name="idm27630072960-bb"></a><code class="computeroutput">regular</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630072480-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="real_bin.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="variable.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template identity</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="../../../../histogram/reference.html" title="Reference">
<link rel="next" href="log.html" title="Struct template log">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../../../../histogram/reference.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="log.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.transform.identity"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template identity</span></h2>
<p>boost::histogram::axis::transform::identity</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="identity.html" title="Struct template identity">identity</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="identity.html#idm27630036688-bb">public static functions</a></span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="identity.html#idm27630036208-bb"><span class="identifier">forward</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="identity.html#idm27630034640-bb"><span class="identifier">inverse</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412695504"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412695120"></a><h3>
<a name="idm27630036688-bb"></a><code class="computeroutput">identity</code> public static functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630036208-bb"></a><span class="identifier">forward</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630034640-bb"></a><span class="identifier">inverse</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="../../../../histogram/reference.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="log.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template log</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="identity.html" title="Struct template identity">
<link rel="next" href="sqrt.html" title="Struct template sqrt">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="identity.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sqrt.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.transform.log"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template log</span></h2>
<p>boost::histogram::axis::transform::log</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="log.html" title="Struct template log">log</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="log.html#idm27630031856-bb">public static functions</a></span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="log.html#idm27630031376-bb"><span class="identifier">forward</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="log.html#idm27630029808-bb"><span class="identifier">inverse</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412666160"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412665776"></a><h3>
<a name="idm27630031856-bb"></a><code class="computeroutput">log</code> public static functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630031376-bb"></a><span class="identifier">forward</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630029808-bb"></a><span class="identifier">inverse</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="identity.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="sqrt.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template sqrt</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="log.html" title="Struct template log">
<link rel="next" href="../axis_base.html" title="Class template axis_base">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="log.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../axis_base.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.transform.sqrt"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template sqrt</span></h2>
<p>boost::histogram::axis::transform::sqrt</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="sqrt.html" title="Struct template sqrt">sqrt</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="sqrt.html#idm27630027024-bb">public static functions</a></span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="sqrt.html#idm27630026544-bb"><span class="identifier">forward</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">static</span> <span class="identifier">Value</span> <a class="link" href="sqrt.html#idm27630024976-bb"><span class="identifier">inverse</span></a><span class="special">(</span><span class="identifier">Value</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70412636816"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70412636432"></a><h3>
<a name="idm27630027024-bb"></a><code class="computeroutput">sqrt</code> public static functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630026544-bb"></a><span class="identifier">forward</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">static</span> <span class="identifier">Value</span> <a name="idm27630024976-bb"></a><span class="identifier">inverse</span><span class="special">(</span><span class="identifier">Value</span> v<span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="log.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../axis_base.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,150 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template variable</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">
<link rel="prev" href="regular.html" title="Class template regular">
<link rel="next" href="../adaptive_storage.html" title="Class template adaptive_storage">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="regular.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../adaptive_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.axis.variable"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template variable</span></h2>
<p>boost::histogram::axis::variable &#8212; An axis for real-valued data and bins of varying width. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp" title="Header &lt;boost/histogram/axis.hpp&gt;">boost/histogram/axis.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">:</span> <span class="keyword">public</span> boost::histogram::axis::axis_base&lt; true &gt;,
<span class="keyword">private</span> boost::operators&lt; variable&lt; RealType &gt; &gt;
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="identifier">RealType</span> <a name="boost.histogram.axis.variable.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">axis_iterator</span><span class="special">&lt;</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&gt;</span> <a name="boost.histogram.axis.variable.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span>
<span class="comment">// <a class="link" href="variable.html#boost.histogram.axis.variableconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="variable.html#idm27630056560-bb"><span class="identifier">variable</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<a class="link" href="variable.html#idm27630052176-bb"><span class="identifier">variable</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">string_view</span> <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="variable.html#idm27630048240-bb"><span class="identifier">variable</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="variable.html#idm27630047760-bb"><span class="identifier">variable</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="variable.html#idm27630044752-bb"><span class="identifier">variable</span></a><span class="special">(</span><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> <a class="link" href="variable.html#idm27630046512-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> <a class="link" href="variable.html#idm27630043408-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="comment">// <a class="link" href="variable.html#idm27630064688-bb">public member functions</a></span>
<span class="keyword">int</span> <a class="link" href="variable.html#idm27630064208-bb"><span class="identifier">index</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">value_type</span> <a class="link" href="variable.html#idm27630062384-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">bool</span> <a class="link" href="variable.html#idm27630060560-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="variable.html#idm27630058608-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">const_iterator</span> <a class="link" href="variable.html#idm27630057648-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="variable.html#idm27630041552-bb">private member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="variable.html#idm27630041072-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70411168768"></a><h2>Description</h2>
<p>Binning is a O(log(N)) operation. If speed matters and the problem domain allows it, prefer a regular. </p>
<div class="refsect2">
<a name="idm70411168000"></a><h3>
<a name="boost.histogram.axis.variableconstruct-copy-destruct"></a><code class="computeroutput">variable</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="idm27630056560-bb"></a><span class="identifier">variable</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="keyword">bool</span> uoflow <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span></pre>Construct an axis from bin edges. <p>
</p>
<div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0" class="variablelist compact">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">label</code></span></p></td>
<td><p>description of the axis. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">uoflow</code></span></p></td>
<td><p>whether to add under-/overflow bins. </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">x</code></span></p></td>
<td><p>sequence of bin edges. </p></td>
</tr>
</tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<a name="idm27630052176-bb"></a><span class="identifier">variable</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="identifier">string_view</span> label <span class="special">=</span> <span class="identifier">string_view</span><span class="special">(</span><span class="special">)</span><span class="special">,</span>
<span class="keyword">bool</span> uoflow <span class="special">=</span> <span class="keyword">true</span><span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630048240-bb"></a><span class="identifier">variable</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630047760-bb"></a><span class="identifier">variable</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> o<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27630044752-bb"></a><span class="identifier">variable</span><span class="special">(</span><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> <a name="idm27630046512-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> o<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> <a name="idm27630043408-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411101856"></a><h3>
<a name="idm27630064688-bb"></a><code class="computeroutput">variable</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">int</span> <a name="idm27630064208-bb"></a><span class="identifier">index</span><span class="special">(</span><span class="identifier">value_type</span> x<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Returns the bin index for the passed argument. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">value_type</span> <a name="idm27630062384-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="keyword">int</span> idx<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the starting edge of the bin. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">bool</span> <a name="idm27630060560-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="variable.html" title="Class template variable">variable</a> <span class="special">&amp;</span> o<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630058608-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">const_iterator</span> <a name="idm27630057648-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70411070848"></a><h3>
<a name="idm27630041552-bb"></a><code class="computeroutput">variable</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27630041072-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="regular.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../../histogram/reference.html#header.boost.histogram.axis_hpp"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../adaptive_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,72 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class count</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">
<link rel="prev" href="adaptive_storage.html" title="Class template adaptive_storage">
<link rel="next" href="histogram.html" title="Class template histogram">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="adaptive_storage.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.count"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class count</span></h2>
<p>boost::histogram::count</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">boost/histogram/histogram_fwd.hpp</a>&gt;
</span>
<span class="keyword">class</span> <a class="link" href="count.html" title="Class count">count</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="count.html#boost.histogram.countconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="count.html#idm27629967712-bb"><span class="identifier">count</span></a><span class="special">(</span><span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="count.html#idm27629969504-bb">public member functions</a></span>
<span class="keyword">explicit</span> <a class="link" href="count.html#idm27629969024-bb"><span class="keyword">operator</span> <span class="keyword">unsigned</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70452054672"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70452061264"></a><h3>
<a name="boost.histogram.countconstruct-copy-destruct"></a><code class="computeroutput">count</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629967712-bb"></a><span class="identifier">count</span><span class="special">(</span><span class="keyword">unsigned</span> v<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm70452327264"></a><h3>
<a name="idm27629969504-bb"></a><code class="computeroutput">count</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629969024-bb"></a><span class="keyword">operator</span> <span class="keyword">unsigned</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="adaptive_storage.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">
<link rel="prev" href="../../BOOST_HISTOGRAM_STRING_VIEW.html" title="Macro BOOST_HISTOGRAM_STRING_VIEW">
<link rel="prev" href="count.html" title="Class count">
<link rel="next" href="weight.html" title="Class weight">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../../BOOST_HISTOGRAM_STRING_VIEW.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="weight.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="count.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="weight.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram"></a><div class="titlepage"></div>
@@ -46,7 +46,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../../BOOST_HISTOGRAM_STRING_VIEW.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="weight.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="count.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="weight.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,245 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template histogram&lt;Dynamic, Axes, Storage&gt;</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">
<link rel="prev" href="weight.html" title="Class weight">
<link rel="next" href="histogram_D_idm27629951904/lin_visitor.html" title="Struct template lin_visitor">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="weight.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_D_idm27629951904/lin_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram_D_idm27629951904"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template histogram&lt;Dynamic, Axes, Storage&gt;</span></h2>
<p>boost::histogram::histogram&lt;Dynamic, Axes, Storage&gt;</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">boost/histogram/histogram_impl_dynamic.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="histogram_D_idm27629951904.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">make_variant_over</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram_D_idm27629951904.axis_type"></a><span class="identifier">axis_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Storage</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.histogram_D_idm27629951904.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// member classes/structs/unions</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="histogram_D_idm27629951904/lin_visitor.html" title="Struct template lin_visitor">lin_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="histogram_D_idm27629951904/lin_visitor.html#boost.histogram.histogram_D_idm27629951904.lin_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram_D_idm27629951904/lin_visitor.html#idm27629942016-bb"><span class="identifier">lin_visitor</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_D_idm27629951904/lin_visitor.html#idm27629944928-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904/lin_visitor.html#idm27629944448-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">stride</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">val</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_D_idm27629951904.html#boost.histogram.histogram_D_idm27629951904construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram_D_idm27629951904.html#idm27629891408-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram_D_idm27629951904.html#idm27629890928-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram_D_idm27629951904.html#idm27629889840-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes1<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629886064-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axes1</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<a class="link" href="histogram_D_idm27629951904.html#idm27629883984-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629881040-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629875440-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629888752-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629887408-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629878256-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629873616-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_D_idm27629951904.html#idm27629938464-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629937984-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629934720-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629931456-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629928416-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Args</span><span class="special">...</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629925856-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629922208-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629917952-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629913696-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629911136-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629907488-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629904928-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">unsigned</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629901280-bb"><span class="identifier">dim</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629900064-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">double</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629898768-bb"><span class="identifier">sum</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629897552-bb"><span class="identifier">reset</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">axis_type</span> <span class="special">&amp;</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629896560-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="keyword">unsigned</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629894096-bb"><span class="identifier">for_each_axis</span></a><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_D_idm27629951904.html#idm27629871760-bb">private member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629871280-bb"><span class="identifier">field_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629870320-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629867376-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629864432-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629861488-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629857584-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629851248-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a class="link" href="histogram_D_idm27629951904.html#idm27629846256-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629838720-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629831296-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629823872-bb"><span class="identifier">apply_lin_iter</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">histogram</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629819616-bb"><span class="identifier">reduce_impl</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_D_idm27629951904.html#idm27629818048-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70451134960"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70451134576"></a><h3>
<a name="boost.histogram.histogram_D_idm27629951904construct-copy-destruct"></a><code class="computeroutput">histogram</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm27629891408-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629890928-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629889840-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes1<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm27629886064-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axes1</span> <span class="special">&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<a name="idm27629883984-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">Iterator</span> axes_begin<span class="special">,</span> <span class="identifier">Iterator</span> axes_end<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm27629881040-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm27629875440-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629888752-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629887408-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629878256-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629873616-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70410118720"></a><h3>
<a name="idm27629938464-bb"></a><code class="computeroutput">histogram</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm27629937984-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm27629934720-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629931456-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629928416-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Args</span><span class="special">...</span> args<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629925856-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629922208-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> n<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629917952-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> w<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a name="idm27629913696-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm27629911136-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a name="idm27629907488-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm27629904928-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">unsigned</span> <a name="idm27629901280-bb"></a><span class="identifier">dim</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Number of axes (dimensions) of histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629900064-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Total number of bins in the histogram (including underflow/overflow) </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">double</span> <a name="idm27629898768-bb"></a><span class="identifier">sum</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Sum of all counts in the histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm27629897552-bb"></a><span class="identifier">reset</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Reset bin counters to zero. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">const</span> <span class="identifier">axis_type</span> <span class="special">&amp;</span> <a name="idm27629896560-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="keyword">unsigned</span> i <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Return axis <span class="emphasis"><em>i</em></span>. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629894096-bb"></a><span class="identifier">for_each_axis</span><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span> unary<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Apply unary functor/function to each axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70409940032"></a><h3>
<a name="idm27629871760-bb"></a><code class="computeroutput">histogram</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629871280-bb"></a><span class="identifier">field_count</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629870320-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629867376-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629864432-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629861488-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629857584-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629851248-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a name="idm27629846256-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629838720-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629831296-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629823872-bb"></a><span class="identifier">apply_lin_iter</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">Iterator</span> iter<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <a name="idm27629819616-bb"></a><span class="identifier">reduce_impl</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629818048-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="weight.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_D_idm27629951904/lin_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,77 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template lin_visitor</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../histogram_D_idm27629951904.html#idm70451134960" title="Description">
<link rel="prev" href="../histogram_D_idm27629951904.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">
<link rel="next" href="../histogram_S_idm27629806656.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../histogram_D_idm27629951904.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram_D_idm27629951904.html#idm70451134960"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../histogram_S_idm27629806656.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram_D_idm27629951904.lin_visitor"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template lin_visitor</span></h2>
<p>boost::histogram::histogram&lt;Dynamic, Axes, Storage&gt;::lin_visitor</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">boost/histogram/histogram_impl_dynamic.hpp</a>&gt;
</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="lin_visitor.html" title="Struct template lin_visitor">lin_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="lin_visitor.html#boost.histogram.histogram_D_idm27629951904.lin_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="lin_visitor.html#idm27629942016-bb"><span class="identifier">lin_visitor</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="lin_visitor.html#idm27629944928-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="lin_visitor.html#idm27629944448-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">stride</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">val</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70409658960"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70409658576"></a><h3>
<a name="boost.histogram.histogram_D_idm27629951904.lin_visitorconstruct-copy-destruct"></a><code class="computeroutput">lin_visitor</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><a name="idm27629942016-bb"></a><span class="identifier">lin_visitor</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> i<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> s<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> v<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm70409646288"></a><h3>
<a name="idm27629944928-bb"></a><code class="computeroutput">lin_visitor</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629944448-bb"></a><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="../histogram_D_idm27629951904.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram_D_idm27629951904.html#idm70451134960"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../histogram_S_idm27629806656.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,223 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template histogram&lt;Static, Axes, Storage&gt;</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">
<link rel="prev" href="histogram_D_idm27629951904/lin_visitor.html" title="Struct template lin_visitor">
<link rel="next" href="histogram_S_idm27629806656/shape_assign_helper.html" title="Struct shape_assign_helper">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram_D_idm27629951904/lin_visitor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_S_idm27629806656/shape_assign_helper.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram_S_idm27629806656"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template histogram&lt;Static, Axes, Storage&gt;</span></h2>
<p>boost::histogram::histogram&lt;Static, Axes, Storage&gt;</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">boost/histogram/histogram_impl_static.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="histogram_S_idm27629806656.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Static</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram_S_idm27629806656.axes_size"></a><span class="identifier">axes_size</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram_S_idm27629806656.axes_type"></a><span class="identifier">axes_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Storage</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.histogram_S_idm27629806656.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// member classes/structs/unions</span>
<span class="keyword">struct</span> <a class="link" href="histogram_S_idm27629806656/shape_assign_helper.html" title="Struct shape_assign_helper">shape_assign_helper</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="histogram_S_idm27629806656/shape_assign_helper.html#idm27629802880-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656/shape_assign_helper.html#idm27629802400-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">mutable</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">ni</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_S_idm27629806656.html#boost.histogram.histogram_S_idm27629806656construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629768784-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629768304-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629767216-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629763440-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629761360-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">axes_type</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629760272-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629766128-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629764784-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629757488-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_S_idm27629806656.html#idm27629797696-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629797216-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629793952-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629790688-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629787648-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629785312-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629782752-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">constexpr</span> <span class="keyword">unsigned</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629780192-bb"><span class="identifier">dim</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629778976-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">double</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629777680-bb"><span class="identifier">sum</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629776464-bb"><span class="identifier">reset</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">&gt;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629775472-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629772544-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629771472-bb"><span class="identifier">for_each_axis</span></a><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram_S_idm27629806656.html#idm27629754672-bb">private member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629754192-bb"><span class="identifier">field_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629753232-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629750288-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629747344-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629744400-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629740496-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629734160-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a class="link" href="histogram_S_idm27629806656.html#idm27629729168-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629721632-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629714208-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> H<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629706784-bb"><span class="identifier">reduce_impl</span></a><span class="special">(</span><span class="identifier">H</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram_S_idm27629806656.html#idm27629703872-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70409078512"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70409078112"></a><h3>
<a name="boost.histogram.histogram_S_idm27629806656construct-copy-destruct"></a><code class="computeroutput">histogram</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm27629768784-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629768304-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm27629767216-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm27629763440-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">...</span> axis<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629761360-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">axes_type</span> <span class="special">&amp;&amp;</span> axes<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm27629760272-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629766128-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629764784-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629757488-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70408997664"></a><h3>
<a name="idm27629797696-bb"></a><code class="computeroutput">histogram</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm27629797216-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm27629793952-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm27629790688-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629787648-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm27629785312-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm27629782752-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">constexpr</span> <span class="keyword">unsigned</span> <a name="idm27629780192-bb"></a><span class="identifier">dim</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Number of axes (dimensions) of histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629778976-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Total number of bins in the histogram (including underflow/overflow) </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">double</span> <a name="idm27629777680-bb"></a><span class="identifier">sum</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Sum of all counts in the histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm27629776464-bb"></a><span class="identifier">reset</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Reset bin counters to zero. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">&gt;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a name="idm27629775472-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Get N-th axis. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a name="idm27629772544-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629771472-bb"></a><span class="identifier">for_each_axis</span><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span> unary<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Apply unary functor/function to each axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm70408851808"></a><h3>
<a name="idm27629754672-bb"></a><code class="computeroutput">histogram</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm27629754192-bb"></a><span class="identifier">field_count</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629753232-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629750288-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629747344-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629744400-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629740496-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629734160-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a name="idm27629729168-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629721632-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629714208-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> H<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm27629706784-bb"></a><span class="identifier">reduce_impl</span><span class="special">(</span><span class="identifier">H</span> <span class="special">&amp;</span> h<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629703872-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="histogram_D_idm27629951904/lin_visitor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_S_idm27629806656/shape_assign_helper.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct shape_assign_helper</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../histogram_S_idm27629806656.html#idm70409078512" title="Description">
<link rel="prev" href="../histogram_S_idm27629806656.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">
<link rel="next" href="../array_storage.html" title="Class template array_storage">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../histogram_S_idm27629806656.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram_S_idm27629806656.html#idm70409078512"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../array_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram_S_idm27629806656.shape_assign_helper"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct shape_assign_helper</span></h2>
<p>boost::histogram::histogram&lt;Static, Axes, Storage&gt;::shape_assign_helper</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">boost/histogram/histogram_impl_static.hpp</a>&gt;
</span>
<span class="keyword">struct</span> <a class="link" href="shape_assign_helper.html" title="Struct shape_assign_helper">shape_assign_helper</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="shape_assign_helper.html#idm27629802880-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="shape_assign_helper.html#idm27629802400-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">mutable</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">ni</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm70408594128"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm70408593728"></a><h3>
<a name="idm27629802880-bb"></a><code class="computeroutput">shape_assign_helper</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm27629802400-bb"></a><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span> a<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="../histogram_S_idm27629806656.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram_S_idm27629806656.html#idm70409078512"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../array_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,223 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template histogram&lt;Static, Axes, Storage&gt;</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">
<link rel="prev" href="histogram__idm272931380992/lin_visitor.html" title="Struct template lin_visitor">
<link rel="next" href="histogram__idm272931226048/shape_assign_helper.html" title="Struct shape_assign_helper">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram__idm272931380992/lin_visitor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm272931226048/shape_assign_helper.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram__idm272931226048"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template histogram&lt;Static, Axes, Storage&gt;</span></h2>
<p>boost::histogram::histogram&lt;Static, Axes, Storage&gt;</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">boost/histogram/histogram_impl_static.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="histogram__idm272931226048.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Static</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram__idm272931226048.axes_size"></a><span class="identifier">axes_size</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram__idm272931226048.axes_type"></a><span class="identifier">axes_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Storage</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.histogram__idm272931226048.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// member classes/structs/unions</span>
<span class="keyword">struct</span> <a class="link" href="histogram__idm272931226048/shape_assign_helper.html" title="Struct shape_assign_helper">shape_assign_helper</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="histogram__idm272931226048/shape_assign_helper.html#idm272931222000-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048/shape_assign_helper.html#idm272931221472-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">mutable</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">ni</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931226048.html#boost.histogram.histogram__idm272931226048construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram__idm272931226048.html#idm272931185520-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram__idm272931226048.html#idm272931185008-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram__idm272931226048.html#idm272931183840-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram__idm272931226048.html#idm272931179824-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram__idm272931226048.html#idm272931177616-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">axes_type</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram__idm272931226048.html#idm272931176464-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931226048.html#idm272931182688-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931226048.html#idm272931181248-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931226048.html#idm272931173488-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931226048.html#idm272931216432-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram__idm272931226048.html#idm272931215904-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram__idm272931226048.html#idm272931212416-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931226048.html#idm272931208928-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931205680-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram__idm272931226048.html#idm272931203200-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram__idm272931226048.html#idm272931200464-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">constexpr</span> <span class="keyword">unsigned</span> <a class="link" href="histogram__idm272931226048.html#idm272931197728-bb"><span class="identifier">dim</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram__idm272931226048.html#idm272931196384-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">double</span> <a class="link" href="histogram__idm272931226048.html#idm272931195024-bb"><span class="identifier">sum</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931193696-bb"><span class="identifier">reset</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">&gt;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a class="link" href="histogram__idm272931226048.html#idm272931192624-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a class="link" href="histogram__idm272931226048.html#idm272931189536-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931188416-bb"><span class="identifier">for_each_axis</span></a><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931226048.html#idm272931170480-bb">private member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram__idm272931226048.html#idm272931169952-bb"><span class="identifier">field_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931168928-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931165808-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931162688-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931159568-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931155408-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931148672-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a class="link" href="histogram__idm272931226048.html#idm272931143360-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931135376-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931127488-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> H<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931119600-bb"><span class="identifier">reduce_impl</span></a><span class="special">(</span><span class="identifier">H</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931226048.html#idm272931116496-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196649034224"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196649033824"></a><h3>
<a name="boost.histogram.histogram__idm272931226048construct-copy-destruct"></a><code class="computeroutput">histogram</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm272931185520-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931185008-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931183840-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm272931179824-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">...</span> axis<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm272931177616-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">axes_type</span> <span class="special">&amp;&amp;</span> axes<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm272931176464-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931182688-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931181248-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931173488-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196648953328"></a><h3>
<a name="idm272931216432-bb"></a><code class="computeroutput">histogram</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm272931215904-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm272931212416-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931208928-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931205680-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm272931203200-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm272931200464-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Indices</span> <span class="special">&amp;</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">constexpr</span> <span class="keyword">unsigned</span> <a name="idm272931197728-bb"></a><span class="identifier">dim</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Number of axes (dimensions) of histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm272931196384-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Total number of bins in the histogram (including underflow/overflow) </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">double</span> <a name="idm272931195024-bb"></a><span class="identifier">sum</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Sum of all counts in the histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm272931193696-bb"></a><span class="identifier">reset</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Reset bin counters to zero. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">&gt;</span>
<span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a name="idm272931192624-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="identifier">N</span> <span class="special">&gt;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Get N-th axis. </li>
<li class="listitem"><pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">add_const</span><span class="special">&lt;</span> <span class="keyword">typename</span> <span class="identifier">fusion</span><span class="special">::</span><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span> <span class="identifier">axes_type</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <span class="special">&amp;</span>
<a name="idm272931189536-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931188416-bb"></a><span class="identifier">for_each_axis</span><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span> unary<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Apply unary functor/function to each axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196648807616"></a><h3>
<a name="idm272931170480-bb"></a><code class="computeroutput">histogram</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm272931169952-bb"></a><span class="identifier">field_count</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931168928-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931165808-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931162688-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931159568-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931155408-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931148672-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a name="idm272931143360-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931135376-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931127488-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> H<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931119600-bb"></a><span class="identifier">reduce_impl</span><span class="special">(</span><span class="identifier">H</span> <span class="special">&amp;</span> h<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931116496-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="histogram__idm272931380992/lin_visitor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm272931226048/shape_assign_helper.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct shape_assign_helper</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../histogram__idm272931226048.html#idm196649034224" title="Description">
<link rel="prev" href="../histogram__idm272931226048.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">
<link rel="next" href="../array_storage.html" title="Class template array_storage">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../histogram__idm272931226048.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram__idm272931226048.html#idm196649034224"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../array_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram__idm272931226048.shape_assign_helper"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct shape_assign_helper</span></h2>
<p>boost::histogram::histogram&lt;Static, Axes, Storage&gt;::shape_assign_helper</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.histogram_impl_static_hpp" title="Header &lt;boost/histogram/histogram_impl_static.hpp&gt;">boost/histogram/histogram_impl_static.hpp</a>&gt;
</span>
<span class="keyword">struct</span> <a class="link" href="shape_assign_helper.html" title="Struct shape_assign_helper">shape_assign_helper</a> <span class="special">{</span>
<span class="comment">// <a class="link" href="shape_assign_helper.html#idm272931222000-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="shape_assign_helper.html#idm272931221472-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">mutable</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">unsigned</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">iterator</span> <span class="identifier">ni</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196648549664"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196648549264"></a><h3>
<a name="idm272931222000-bb"></a><code class="computeroutput">shape_assign_helper</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931221472-bb"></a><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axis</span> <span class="special">&amp;</span> a<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="../histogram__idm272931226048.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram__idm272931226048.html#idm196649034224"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../array_storage.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,245 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template histogram&lt;Dynamic, Axes, Storage&gt;</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">
<link rel="prev" href="weight.html" title="Class weight">
<link rel="next" href="histogram__idm272931380992/lin_visitor.html" title="Struct template lin_visitor">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="weight.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm272931380992/lin_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram__idm272931380992"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template histogram&lt;Dynamic, Axes, Storage&gt;</span></h2>
<p>boost::histogram::histogram&lt;Dynamic, Axes, Storage&gt;</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">boost/histogram/histogram_impl_dynamic.hpp</a>&gt;
</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="histogram__idm272931380992.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// types</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">make_variant_over</span><span class="special">&lt;</span> <span class="identifier">Axes</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.histogram__idm272931380992.axis_type"></a><span class="identifier">axis_type</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Storage</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.histogram__idm272931380992.value_type"></a><span class="identifier">value_type</span><span class="special">;</span>
<span class="comment">// member classes/structs/unions</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="histogram__idm272931380992/lin_visitor.html" title="Struct template lin_visitor">lin_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="histogram__idm272931380992/lin_visitor.html#boost.histogram.histogram__idm272931380992.lin_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram__idm272931380992/lin_visitor.html#idm272931370432-bb"><span class="identifier">lin_visitor</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931380992/lin_visitor.html#idm272931373552-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992/lin_visitor.html#idm272931373024-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">stride</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">val</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931380992.html#boost.histogram.histogram__idm272931380992construct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="histogram__idm272931380992.html#idm272931316368-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram__idm272931380992.html#idm272931315856-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<a class="link" href="histogram__idm272931380992.html#idm272931314688-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes1<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram__idm272931380992.html#idm272931310672-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axes1</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<a class="link" href="histogram__idm272931380992.html#idm272931308448-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a class="link" href="histogram__idm272931380992.html#idm272931305312-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="histogram__idm272931380992.html#idm272931299328-bb"><span class="identifier">histogram</span></a><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931313536-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931312096-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931302336-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931297360-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931380992.html#idm272931366624-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram__idm272931380992.html#idm272931366096-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a class="link" href="histogram__idm272931380992.html#idm272931362608-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931359120-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931355872-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Args</span><span class="special">...</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931353152-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931349264-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931344736-bb"><span class="identifier">fill</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram__idm272931380992.html#idm272931340208-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a class="link" href="histogram__idm272931380992.html#idm272931337488-bb"><span class="identifier">value</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a class="link" href="histogram__idm272931380992.html#idm272931333600-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a class="link" href="histogram__idm272931380992.html#idm272931330880-bb"><span class="identifier">variance</span></a><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">unsigned</span> <a class="link" href="histogram__idm272931380992.html#idm272931326992-bb"><span class="identifier">dim</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram__idm272931380992.html#idm272931325664-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">double</span> <a class="link" href="histogram__idm272931380992.html#idm272931324304-bb"><span class="identifier">sum</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931322976-bb"><span class="identifier">reset</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">axis_type</span> <span class="special">&amp;</span> <a class="link" href="histogram__idm272931380992.html#idm272931321904-bb"><span class="identifier">axis</span></a><span class="special">(</span><span class="keyword">unsigned</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931319264-bb"><span class="identifier">for_each_axis</span></a><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="histogram__idm272931380992.html#idm272931295360-bb">private member functions</a></span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a class="link" href="histogram__idm272931380992.html#idm272931294832-bb"><span class="identifier">field_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931293808-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931290688-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931287568-bb"><span class="identifier">fill_impl</span></a><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931284448-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931280288-bb"><span class="identifier">apply_lin</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931273552-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a class="link" href="histogram__idm272931380992.html#idm272931268240-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931260256-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931252368-bb"><span class="identifier">apply_lin_x</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931244480-bb"><span class="identifier">apply_lin_iter</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="identifier">histogram</span> <a class="link" href="histogram__idm272931380992.html#idm272931239952-bb"><span class="identifier">reduce_impl</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="histogram__idm272931380992.html#idm272931238272-bb"><span class="identifier">serialize</span></a><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196650216528"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196650216128"></a><h3>
<a name="boost.histogram.histogram__idm272931380992construct-copy-destruct"></a><code class="computeroutput">histogram</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><a name="idm272931316368-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931315856-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><a name="idm272931314688-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes1<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm272931310672-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Axes1</span> <span class="special">&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<a name="idm272931308448-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">Iterator</span> axes_begin<span class="special">,</span> <span class="identifier">Iterator</span> axes_end<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">explicit</span> <a name="idm272931305312-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span> <span class="keyword">explicit</span> <a name="idm272931299328-bb"></a><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931313536-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span> <span class="special">&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931312096-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="special">=</span> <span class="keyword">default</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931302336-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931297360-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196650104496"></a><h3>
<a name="idm272931366624-bb"></a><code class="computeroutput">histogram</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm272931366096-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="idm272931362608-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">histogram</span> <span class="special">&amp;</span> <a name="idm272931359120-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931355872-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Args</span><span class="special">...</span> args<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931353152-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931349264-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> n<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931344736-bb"></a><span class="identifier">fill</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> w<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a name="idm272931340208-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm272931337488-bb"></a><span class="identifier">value</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Indices<span class="special">&gt;</span> <span class="identifier">value_type</span> <a name="idm272931333600-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">Indices</span><span class="special">...</span> indices<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="identifier">value_type</span> <a name="idm272931330880-bb"></a><span class="identifier">variance</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">unsigned</span> <a name="idm272931326992-bb"></a><span class="identifier">dim</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Number of axes (dimensions) of histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm272931325664-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Total number of bins in the histogram (including underflow/overflow) </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">double</span> <a name="idm272931324304-bb"></a><span class="identifier">sum</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Sum of all counts in the histogram. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idm272931322976-bb"></a><span class="identifier">reset</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Reset bin counters to zero. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">const</span> <span class="identifier">axis_type</span> <span class="special">&amp;</span> <a name="idm272931321904-bb"></a><span class="identifier">axis</span><span class="special">(</span><span class="keyword">unsigned</span> i <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Return axis <span class="emphasis"><em>i</em></span>. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Unary<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931319264-bb"></a><span class="identifier">for_each_axis</span><span class="special">(</span><span class="identifier">Unary</span> <span class="special">&amp;</span> unary<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Apply unary functor/function to each axis. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="idm196649914416"></a><h3>
<a name="idm272931295360-bb"></a><code class="computeroutput">histogram</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <a name="idm272931294832-bb"></a><span class="identifier">field_count</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931293808-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931290688-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">1</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931287568-bb"></a><span class="identifier">fill_impl</span><span class="special">(</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span> <span class="number">2</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Args</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931284448-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> First<span class="special">,</span>
<span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931280288-bb"></a><span class="identifier">apply_lin</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931273552-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> First<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">enable_if</span><span class="special">&lt;</span><span class="special">!</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">weight</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">||</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">count</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span>
<a name="idm272931268240-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">First</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931260256-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">weight</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">unsigned</span> D<span class="special">,</span> <span class="keyword">typename</span> X<span class="special">,</span>
<span class="keyword">typename</span> <span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Rest<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931252368-bb"></a><span class="identifier">apply_lin_x</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">X</span> <span class="special">&amp;</span> x<span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">count</span> <span class="special">&amp;</span> first<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Rest</span> <span class="special">&amp;</span><span class="special">...</span> rest<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Iterator<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="idm272931244480-bb"></a><span class="identifier">apply_lin_iter</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> idx<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> stride<span class="special">,</span> <span class="identifier">Iterator</span> iter<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="identifier">histogram</span> <a name="idm272931239952-bb"></a><span class="identifier">reduce_impl</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">bool</span> <span class="special">&gt;</span> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931238272-bb"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span></pre></li>
</ol></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; 2016, 2017 Hans Dembinski<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="weight.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm272931380992/lin_visitor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -0,0 +1,77 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template lin_visitor</title>
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../histogram__idm272931380992.html#idm196650216528" title="Description">
<link rel="prev" href="../histogram__idm272931380992.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">
<link rel="next" href="../histogram__idm272931226048.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
<td align="center"><a href="../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../histogram__idm272931380992.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram__idm272931380992.html#idm196650216528"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../histogram__idm272931226048.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.histogram__idm272931380992.lin_visitor"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template lin_visitor</span></h2>
<p>boost::histogram::histogram&lt;Dynamic, Axes, Storage&gt;::lin_visitor</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../../histogram/reference.html#header.boost.histogram.histogram_impl_dynamic_hpp" title="Header &lt;boost/histogram/histogram_impl_dynamic.hpp&gt;">boost/histogram/histogram_impl_dynamic.hpp</a>&gt;
</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span><span class="special">,</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Lin<span class="special">,</span> <span class="keyword">typename</span> Value<span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="lin_visitor.html" title="Struct template lin_visitor">lin_visitor</a> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">static_visitor</span><span class="special">&lt;</span> <span class="keyword">void</span> <span class="special">&gt;</span> <span class="special">{</span>
<span class="comment">// <a class="link" href="lin_visitor.html#boost.histogram.histogram__idm272931380992.lin_visitorconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="lin_visitor.html#idm272931370432-bb"><span class="identifier">lin_visitor</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="lin_visitor.html#idm272931373552-bb">public member functions</a></span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="lin_visitor.html#idm272931373024-bb"><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">idx</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> <span class="identifier">stride</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> <span class="identifier">val</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm196649616736"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm196649616336"></a><h3>
<a name="boost.histogram.histogram__idm272931380992.lin_visitorconstruct-copy-destruct"></a><code class="computeroutput">lin_visitor</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><a name="idm272931370432-bb"></a><span class="identifier">lin_visitor</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> i<span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">&amp;</span> s<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Value</span> <span class="special">&amp;</span> v<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm196649603104"></a><h3>
<a name="idm272931373552-bb"></a><code class="computeroutput">lin_visitor</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">void</span> <a name="idm272931373024-bb"></a><span class="keyword">operator</span><span class="special">(</span><span class="special">)</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></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; 2016, 2017 Hans Dembinski<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="../histogram__idm272931380992.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../histogram__idm272931380992.html#idm196650216528"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../histogram__idm272931226048.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -7,7 +7,7 @@
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp" title="Header &lt;boost/histogram/histogram_fwd.hpp&gt;">
<link rel="prev" href="histogram.html" title="Class template histogram">
<link rel="next" href="histogram__idm405170515456.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">
<link rel="next" href="histogram_D_idm27629951904.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm405170515456.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="histogram.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_D_idm27629951904.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.histogram.weight"></a><div class="titlepage"></div>
@@ -35,24 +35,24 @@
<span class="keyword">class</span> <a class="link" href="weight.html" title="Class weight">weight</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="weight.html#boost.histogram.weightconstruct-copy-destruct">construct/copy/destruct</a></span>
<span class="keyword">explicit</span> <a class="link" href="weight.html#idm405170520256-bb"><span class="identifier">weight</span></a><span class="special">(</span><span class="keyword">double</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">explicit</span> <a class="link" href="weight.html#idm27629962176-bb"><span class="identifier">weight</span></a><span class="special">(</span><span class="keyword">double</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="weight.html#idm405170522208-bb">public member functions</a></span>
<span class="keyword">explicit</span> <a class="link" href="weight.html#idm405170521680-bb"><span class="keyword">operator</span> <span class="keyword">double</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="weight.html#idm27629963968-bb">public member functions</a></span>
<span class="keyword">explicit</span> <a class="link" href="weight.html#idm27629963488-bb"><span class="keyword">operator</span> <span class="keyword">double</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idm382813022608"></a><h2>Description</h2>
<a name="idm70452889552"></a><h2>Description</h2>
<div class="refsect2">
<a name="idm382813022208"></a><h3>
<a name="idm70452891824"></a><h3>
<a name="boost.histogram.weightconstruct-copy-destruct"></a><code class="computeroutput">weight</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm405170520256-bb"></a><span class="identifier">weight</span><span class="special">(</span><span class="keyword">double</span> v<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629962176-bb"></a><span class="identifier">weight</span><span class="special">(</span><span class="keyword">double</span> v<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="idm382813015456"></a><h3>
<a name="idm405170522208-bb"></a><code class="computeroutput">weight</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm405170521680-bb"></a><span class="keyword">operator</span> <span class="keyword">double</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
<a name="idm70452988240"></a><h3>
<a name="idm27629963968-bb"></a><code class="computeroutput">weight</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><span class="keyword">explicit</span> <a name="idm27629963488-bb"></a><span class="keyword">operator</span> <span class="keyword">double</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li></ol></div>
</div>
</div>
</div>
@@ -66,7 +66,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="histogram.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram__idm405170515456.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="histogram.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../histogram/reference.html#header.boost.histogram.histogram_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="histogram_D_idm27629951904.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -63,7 +63,7 @@
<dt><span class="term">hs_ss</span></dt>
<dd><p>
<code class="computeroutput"><a class="link" href="../boost/histogram/histogram.html" title="Class template histogram">boost::histogram::histogram&lt;Static,...&gt;</a></code>
with <code class="computeroutput"><a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">boost::histogram::container_storage&lt;std::vector&lt;int&gt;&gt;</a></code>
with <code class="computeroutput"><a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">boost::histogram::array_storage&lt;int&gt;</a></code>
</p></dd>
<dt><span class="term">hs_sd</span></dt>
<dd><p>
@@ -73,7 +73,7 @@
<dt><span class="term">hd_ss</span></dt>
<dd><p>
<code class="computeroutput"><a class="link" href="../boost/histogram/histogram.html" title="Class template histogram">boost::histogram::histogram&lt;Dynamic,...&gt;</a></code>
with <code class="computeroutput"><a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">boost::histogram::container_storage&lt;std::vector&lt;int&gt;&gt;</a></code>
with <code class="computeroutput"><a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">boost::histogram::array_storage&lt;int&gt;</a></code>
</p></dd>
<dt><span class="term">hd_sd</span></dt>
<dd><p>
@@ -87,11 +87,10 @@
is always faster than <code class="computeroutput"><a class="link" href="../boost/histogram/histogram.html" title="Class template histogram">boost::histogram::histogram&lt;Dynamic,...&gt;</a></code>
and safer to use, as more checks are done at compile time. It is recommended
when working in C++ only. <code class="computeroutput"><a class="link" href="../boost/histogram/adaptive_storage.html" title="Class template adaptive_storage">boost::histogram::adaptive_storage</a></code>
is faster than <code class="computeroutput"><a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">boost::histogram::container_storage</a></code>
is faster than <code class="computeroutput"><a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">boost::histogram::array_storage</a></code>
for histograms with many bins, because it uses the cache more effectively due
to its smaller memory consumption per bin. If the number of bins is small,
it is slower because of the instruction and allocation overhead of handling
memory in a dynamic way.
it is slower because of overhead of handling memory in a dynamic way.
</p>
<p>
The histograms in this library are mostly faster than the competition, in some

View File

@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="prev" href="../boost/histogram/container_storage.html" title="Class template container_storage">
<link rel="prev" href="../boost/histogram/array_storage.html" title="Class template array_storage">
<link rel="next" href="references.html" title="References">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost/histogram/container_storage.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="../boost/histogram/array_storage.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
@@ -42,8 +42,7 @@
Support custom allocators in storage classes.
</li>
<li class="listitem">
Replaced static_storage with container_storage, which may use any STL-compatible
container with random access iterators as a backend, including std::array.
Replaced static_storage with array_storage.
</li>
<li class="listitem">
Replaced dynamic_storage with adaptive_storage, which adds the capability
@@ -77,7 +76,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost/histogram/container_storage.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="../boost/histogram/array_storage.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -116,7 +116,7 @@
type is never serialized or ostreamed.
</p>
<p>
It is recommended to take a look at <code class="computeroutput"><a class="link" href="../boost/histogram/axis_base.html" title="Class template axis_base">boost::histogram::axis_base</a></code>,
It is recommended to take a look at <code class="computeroutput"><a class="link" href="../boost/histogram/axis/axis_base.html" title="Class template axis_base">boost::histogram::axis::axis_base</a></code>,
which provides part of the aforementioned infrastructure for axis types.
</p>
</div>
@@ -164,35 +164,41 @@
<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">,</span>
<span class="identifier">value_type</span> <span class="identifier">n</span><span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">add</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">,</span>
<span class="keyword">const</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span>
<span class="identifier">value_type</span><span class="special">&amp;</span>
<span class="identifier">var</span><span class="special">)</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">value_type</span> <span class="identifier">value</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">)</span>
<span class="keyword">const</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">storage_type</span><span class="special">&amp;</span>
<span class="keyword">operator</span><span class="special">+=(</span><span class="keyword">const</span> <span class="identifier">storage_type</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span></code>
<code class="computeroutput"><span class="identifier">value_type</span> <span class="identifier">variance</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">)</span>
<span class="keyword">const</span></code>
</li>
</ul></div>
</li>
</ul></div>
<p>
To support weighted fills, two additional methods are required:
To support weighted fills, an additional method is required:
</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="computeroutput"><span class="identifier">value_type</span> <span class="identifier">variance</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">)</span>
<span class="keyword">const</span></code>
</li>
<li class="listitem">
<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">weighted_increase</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span>
<span class="identifier">index</span><span class="special">,</span>
<span class="identifier">value_type</span> <span class="identifier">weight</span><span class="special">)</span></code>
</li>
</ul></div>
</li></ul></div>
<p>
<code class="computeroutput"><a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">boost::histogram::container_storage</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">boost::histogram::array_storage</a></code>
is a simple example of a storage type which does not support weighted fills.
</p>
</div>

View File

@@ -26,6 +26,20 @@
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="histogram.motivation"></a><a class="link" href="motivation.html" title="Motivation">Motivation</a>
</h2></div></div></div>
<p>
Histograms are a basic tool in statistical analysis. When analysing large data
sets, it is usually more convenient to work with a histogram of input values,
which may consume a lot of memory or disc space and may be slow to process.
Histograms can compactly represent a data set of one or several random variables
with acceptable loss of information. One can imagine histograms as a lossy
compression of statistical data.
</p>
<p>
Parameters of interest, like the center of a distribution, can be extracted
from the histogram instead of the original data set; statistical models can
be fitted to histograms to the same end. Finally, histograms help to visualize
complex data sets.
</p>
<p>
C++ lacks a widely-used, free histogram class. While it is easy to write a
one-dimensional histogram, writing a general multi-dimensional histogram poses
@@ -42,32 +56,32 @@
ROOT has implementations for one, two, three, and general n-dimensional histograms.
However, the interfaces are unnecessarily complex and inconsistent, and mix
many different responsibilities. They are also not well designed to prevent
user errors. For example, the design forces users to make an educated decision
on which data type to use that holds the counts, an aspect that the library
should encapsulate. The ROOT implementations are also slow and inefficient
due to heavy use of virtual inheritance. They are also not customizable.
user errors. For example, the ROOT design forces users to make an educated
decision on which data type for the counters, an aspect that the library should
encapsulate.
</p>
<p>
The two histogram classes in this project share an interface which we believe
to be as elegant as the GSL implementations. In addition, they are customizable
through exchangable policies and user-supplied binning algorithms. Thanks to
variadic templates, the interface is consistent for any number of dimensions.
The implementations are also very fast. They use of compile-time information
wherever possible and <a href="../../../libs/variant/index.html" target="_top">Boost.Variant</a>
rather than virtual inheritance to achieve faster run-time polymorphism.
The implementations are also very fast, using compile-time information wherever
possible and <a href="../../../libs/variant/index.html" target="_top">Boost.Variant</a>
rather than virtual inheritance to achieve more flexible polymorphism.
</p>
<p>
A central design goal was to completely encapsulate the counting details. The
internal counting mechanism is independent of the external histogram interface
and encapsulated in an exchangable storage policy. The standard policy implements
a smart counting approach which is very fast, memory-efficient, and safe, since
counts can neither overflow nor lose precision. In the standard configuration,
the histogram <span class="bold"><strong>just works</strong></span> under any circumstance.
A central design goal is to completely encapsulate details on the internal
counters. The internal counting mechanism is independent of the external histogram
interface and encapsulated in a storage policy, which can be replaced at compile
time.
</p>
<p>
Users with unusual requirements can implement their own custom storage policy
or use the alternative container-based storage policy. With the latter, for
example, and in conjunction with a <a href="../../../libs/array/index.html" target="_top">Boost.Array</a>,
The standard policy implements a smart counting approach which is very fast,
memory-efficient, and safe, since counts can neither overflow nor lose precision.
In the standard configuration, the histogram <span class="bold"><strong>just works</strong></span>
under any circumstance. Users with unusual requirements can implement their
own custom storage policy or use the alternative container-based storage policy.
With the latter, for example, and in conjunction with a <a href="../../../libs/array/index.html" target="_top">Boost.Array</a>,
it is possible to construct a histogram entirely on the stack.
</p>
</div>

View File

@@ -145,24 +145,24 @@
</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="computeroutput"><a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">boost::histogram::regular_axis</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">boost::histogram::axis::regular</a></code>
sorts real numbers into bins with equal width.
</li>
<li class="listitem">
<code class="computeroutput"><a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">boost::histogram::variable_axis</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/axis/variable.html" title="Class template variable">boost::histogram::axis::variable</a></code>
sorts real numbers into bins with varying width.
</li>
<li class="listitem">
<code class="computeroutput"><a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">boost::histogram::circular_axis</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">boost::histogram::axis::circular</a></code>
is a specialization of a regular axis for angles and other input that
wraps around.
</li>
<li class="listitem">
<code class="computeroutput"><a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">boost::histogram::integer_axis</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">boost::histogram::axis::integer</a></code>
is a specialization of a regular axis for a continuous range of integers.
</li>
<li class="listitem">
<code class="computeroutput"><a class="link" href="../boost/histogram/category_axis.html" title="Class category_axis">boost::histogram::category_axis</a></code>
<code class="computeroutput"><a class="link" href="../boost/histogram/axis/category.html" title="Class category">boost::histogram::axis::category</a></code>
is a specialization of an integer axis for categorical data, like "men"
and "women".
</li>
@@ -179,15 +179,15 @@
<p>
Dense (aka contiguous) storage in memory is needed for fast bin lookup, which
is of the random-access variety and may be happening in a tight loop. All
storage types therefore implement dense storage of bin counters. <code class="computeroutput"><a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">boost::histogram::container_storage</a></code>
implements a storage based on an STL-conforming container and that could
be the end of story, but there are several issues with this approach. For
one, it is not convenient, because the user has to decide what type to use
to hold the bin counts and it is not an obvious choice. The integer needs
to be large enough to avoid counter overflow, but if it is too large and
only a fraction of the bits are used, then it is a waste of memory. Using
floating point numbers is even more dangerous. They don't overflow, but cap
the bin count when the bits in the mantissa are used up.
storage types therefore implement dense storage of bin counters. <code class="computeroutput"><a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">boost::histogram::array_storage</a></code>
implements a storage based on a heap-allocated array. That could be the end
of story, but there are several issues with this approach. For one, it is
not convenient, because the user has to decide what type to use to hold the
bin counts and it is not an obvious choice. The integer needs to be large
enough to avoid counter overflow, but if it is too large and only a fraction
of the bits are used, then it is a waste of memory. Using floating point
numbers is even more dangerous. They don't overflow, but cap the bin count
when the bits in the mantissa are used up.
</p>
<p>
The standard storage used in the library is <code class="computeroutput"><a class="link" href="../boost/histogram/adaptive_storage.html" title="Class template adaptive_storage">boost::histogram::adaptive_storage</a></code>,

View File

@@ -7,7 +7,7 @@
<link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Boost.Histogram">
<link rel="prev" href="concepts.html" title="Concepts">
<link rel="next" href="../boost/histogram/transform/identity.html" title="Struct template identity">
<link rel="next" href="../boost/histogram/axis/transform/identity.html" title="Struct template identity">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,13 +20,12 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="concepts.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/histogram/transform/identity.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="concepts.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/histogram/axis/transform/identity.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="histogram.reference"></a>Reference</h2></div></div></div>
<div class="toc"><dl class="toc">
<dt><span class="section"><a href="reference.html#header.boost.histogram_hpp">Header &lt;boost/histogram.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.axis_hpp">Header &lt;boost/histogram/axis.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.axis_ostream_operators_hpp">Header &lt;boost/histogram/axis_ostream_operators.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.histogram_fwd_hpp">Header &lt;boost/histogram/histogram_fwd.hpp&gt;</a></span></dt>
@@ -36,50 +35,43 @@
<dt><span class="section"><a href="reference.html#header.boost.histogram.literals_hpp">Header &lt;boost/histogram/literals.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.serialization_hpp">Header &lt;boost/histogram/serialization.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.storage.adaptive_storage_hpp">Header &lt;boost/histogram/storage/adaptive_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.storage.container_storage_hpp">Header &lt;boost/histogram/storage/container_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.storage.array_storage_hpp">Header &lt;boost/histogram/storage/array_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.storage.operators_hpp">Header &lt;boost/histogram/storage/operators.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="reference.html#header.boost.histogram.utility_hpp">Header &lt;boost/histogram/utility.hpp&gt;</a></span></dt>
</dl></div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="header.boost.histogram_hpp"></a>Header &lt;<a href="../../../boost/histogram.hpp" target="_top">boost/histogram.hpp</a>&gt;</h3></div></div></div>
<p>Includes all standard headers of the Boost.histogram library. </p>
<p>The library consists of two histogram implementations, a static and a dynamic one. If you need to configure histograms at runtime, choose the dynamic one, otherwise use the static one. The static one is faster, and a little more convenient, since some errors can be caught at compile time and you don't need to worry about type conversions.</p>
<p>You can freely mix the implementations in your code, they are convertible into each other, and there is a common interface for both. To the extend of what is technically possible, the library has been designed to allow you to write code that is agnostic of the implementation variant. </p>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="header.boost.histogram.axis_hpp"></a>Header &lt;<a href="../../../boost/histogram/axis.hpp" target="_top">boost/histogram/axis.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis">
<a class="link" href="../BOOST_HISTOGRAM_STRING_VIEW.html" title="Macro BOOST_HISTOGRAM_STRING_VIEW">BOOST_HISTOGRAM_STRING_VIEW</a></pre>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">bool</span> UOFlow<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis_base.html" title="Class template axis_base">axis_base</a><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">axis::regular</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">axis::circular</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/axis/variable.html" title="Class template variable">axis::variable</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">axis::integer</a><span class="special">,</span> <a class="link" href="../boost/histogram/axis/category.html" title="Class category">axis::category</a> <span class="special">&gt;</span> <a name="boost.histogram.builtin_axes"></a><span class="identifier">builtin_axes</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">axis</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">bool</span> UOFlow<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/axis_base.html" title="Class template axis_base">axis_base</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis_base__idm405170792320.html" title="Class axis_base&lt;false&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">false</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis_base__idm405170770048.html" title="Class axis_base&lt;true&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">true</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/axis_base_f_idm27630255200.html" title="Class axis_base&lt;false&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">false</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/axis_base_t_idm27630232864.html" title="Class axis_base&lt;true&gt;">axis_base</a><span class="special">&lt;</span><span class="keyword">true</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis_iterator.html" title="Class template axis_iterator">axis_iterator</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axis<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/axis_iterator.html" title="Class template axis_iterator">axis_iterator</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/bin.html" title="Struct template bin">bin</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/axis/bin.html" title="Struct template bin">bin</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/category_axis.html" title="Class category_axis">category_axis</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/category.html" title="Class category">category</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">circular</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">integer</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/real_bin.html" title="Struct template real_bin">real_bin</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/axis/real_bin.html" title="Struct template real_bin">real_bin</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">,</span>
<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Transform <span class="special">=</span> <span class="identifier">transform</span><span class="special">::</span><span class="identifier">identity</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">variable_axis</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">,</span>
<span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Transform <span class="special">=</span> <span class="identifier">transform</span><span class="special">::</span><span class="identifier">identity</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">regular</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType <span class="special">=</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/axis/variable.html" title="Class template variable">variable</a><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">conditional</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">is_floating_point</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">,</span> <span class="identifier">real_bin</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span><span class="special">,</span> <span class="identifier">bin</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.axis_bin"></a><span class="identifier">axis_bin</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a><span class="special">&lt;</span> <span class="keyword">float</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a><span class="special">&lt;</span> <span class="keyword">float</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">variable_axis</a><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">variable_axis</a><span class="special">&lt;</span> <span class="keyword">float</span> <span class="special">&gt;</span><span class="special">,</span> <a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a><span class="special">,</span> <a class="link" href="../boost/histogram/category_axis.html" title="Class category_axis">category_axis</a> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.builtin_axes"></a><span class="identifier">builtin_axes</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">transform</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/transform/identity.html" title="Struct template identity">identity</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/transform/log.html" title="Struct template log">log</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/transform/sqrt.html" title="Struct template sqrt">sqrt</a><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">conditional</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">is_floating_point</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">,</span> <span class="identifier">real_bin</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span><span class="special">,</span> <span class="identifier">bin</span><span class="special">&lt;</span> <span class="identifier">Value</span> <span class="special">&gt;</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span> <a name="boost.histogram.axis.axis_bin"></a><span class="identifier">axis_bin</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">transform</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/axis/transform/identity.html" title="Struct template identity">identity</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/axis/transform/log.html" title="Struct template log">log</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/histogram/axis/transform/sqrt.html" title="Struct template sqrt">sqrt</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">serialization</span> <span class="special">{</span>
@@ -91,17 +83,19 @@
<a name="header.boost.histogram.axis_ostream_operators_hpp"></a>Header &lt;<a href="../../../boost/histogram/axis_ostream_operators.hpp" target="_top">boost/histogram/axis_ostream_operators.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.operator_idm405170541808"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.operator_idm405170538544"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.operator_idm405170535280"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">variable_axis</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> <a name="boost.histogram.operator_idm405170532016"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> <a name="boost.histogram.operator_idm405170529536"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/category_axis.html" title="Class category_axis">category_axis</a> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">axis</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.axis.operator_idm27630016608"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">regular</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.axis.operator_idm27630013536"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">circular</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RealType<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.axis.operator_idm27630010464"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/axis/variable.html" title="Class template variable">variable</a><span class="special">&lt;</span> <span class="identifier">RealType</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> <a name="boost.histogram.axis.operator_idm27630007392"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">integer</a> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> <a name="boost.histogram.axis.operator_idm27630005056"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/histogram/axis/category.html" title="Class category">category</a> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -110,6 +104,8 @@
<a name="header.boost.histogram.histogram_fwd_hpp"></a>Header &lt;<a href="../../../boost/histogram/histogram_fwd.hpp" target="_top">boost/histogram/histogram_fwd.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Allocator<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/adaptive_storage.html" title="Class template adaptive_storage">adaptive_storage</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/count.html" title="Class count">count</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Variant<span class="special">,</span> <span class="keyword">typename</span> Axes<span class="special">,</span>
<span class="keyword">typename</span> Storage <span class="special">=</span> <span class="identifier">adaptive_storage</span><span class="special">&lt;</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/histogram.html" title="Class template histogram">histogram</a><span class="special">;</span>
@@ -117,6 +113,9 @@
<span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">integral_constant</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> <a name="boost.histogram.Static"></a><span class="identifier">Static</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special">&lt;</span> <span class="keyword">int</span><span class="special">,</span> <span class="number">1</span> <span class="special">&gt;</span> <a name="boost.histogram.Dynamic"></a><span class="identifier">Dynamic</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Ns<span class="special">&gt;</span> <span class="keyword">auto</span> <a name="boost.histogram.keep_idm27629959616"></a><span class="identifier">keep</span><span class="special">(</span><span class="identifier">Ns</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Iterator<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_iterator</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a name="boost.histogram.keep_idm27629957280"></a><span class="identifier">keep</span><span class="special">(</span><span class="identifier">Iterator</span> begin<span class="special">,</span> <span class="identifier">Iterator</span> end<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -126,11 +125,11 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/histogram__idm405170515456.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/histogram_D_idm27629951904.html" title="Class template histogram&lt;Dynamic, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a name="boost.histogram.make_dynamic_histogram"></a><span class="identifier">make_dynamic_histogram</span><span class="special">(</span><span class="identifier">Axes</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Storage<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a name="boost.histogram.make_dynam_idm405170385776"></a><span class="identifier">make_dynamic_histogram_with</span><span class="special">(</span><span class="identifier">Axes</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span>
<span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a name="boost.histogram.make_dynami_idm27629812640"></a><span class="identifier">make_dynamic_histogram_with</span><span class="special">(</span><span class="identifier">Axes</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">python</span> <span class="special">{</span>
<span class="special">}</span>
@@ -144,17 +143,17 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Axes<span class="special">,</span> <span class="keyword">typename</span> Storage<span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/histogram__idm405170379312.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Static</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/histogram_S_idm27629806656.html" title="Class template histogram&lt;Static, Axes, Storage&gt;">histogram</a><span class="special">&lt;</span><span class="identifier">Static</span><span class="special">,</span> <span class="identifier">Axes</span><span class="special">,</span> <span class="identifier">Storage</span><span class="special">&gt;</span><span class="special">;</span>
<span class="comment">// default static type factory </span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Static</span><span class="special">,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&gt;</span>
<a name="boost.histogram.make_static_histogram"></a><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">Axes</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span>
<span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Static</span><span class="special">,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="identifier">Axis</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&gt;</span>
<a name="boost.histogram.make_static_histogram"></a><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">Axis</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axis<span class="special">)</span><span class="special">;</span>
<span class="comment">// static type factory with variable storage type </span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Storage<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Static</span><span class="special">,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span><span class="special">,</span> <span class="identifier">Storage</span> <span class="special">&gt;</span>
<a name="boost.histogram.make_static_histogram_with"></a><span class="identifier">make_static_histogram_with</span><span class="special">(</span><span class="identifier">Axes</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axes<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Storage<span class="special">,</span> <span class="keyword">typename</span><span class="special">...</span> Axis<span class="special">&gt;</span>
<span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">Static</span><span class="special">,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span> <span class="identifier">Axis</span><span class="special">...</span> <span class="special">&gt;</span><span class="special">,</span> <span class="identifier">Storage</span> <span class="special">&gt;</span>
<a name="boost.histogram.make_static_histogram_with"></a><span class="identifier">make_static_histogram_with</span><span class="special">(</span><span class="identifier">Axis</span> <span class="special">&amp;&amp;</span><span class="special">...</span> axis<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">serialization</span> <span class="special">{</span>
<span class="special">}</span>
@@ -167,7 +166,7 @@
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> D<span class="special">,</span> <span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span>
<a name="boost.histogram.operator_idm405170280784"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> h<span class="special">)</span><span class="special">;</span>
<a name="boost.histogram.operator_idm27629692768"></a><span class="keyword">operator</span><span class="special">&lt;&lt;</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&amp;</span> os<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">histogram</span><span class="special">&lt;</span> <span class="identifier">D</span><span class="special">,</span> <span class="identifier">A</span><span class="special">,</span> <span class="identifier">S</span> <span class="special">&gt;</span> <span class="special">&amp;</span> h<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -177,7 +176,7 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">literals</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">...</span> Digits<span class="special">&gt;</span> <span class="keyword">auto</span> <a name="boost.histogram.literals.operator_c_idm405170274400"></a><span class="keyword">operator</span><span class="string">""</span><span class="identifier">_c</span><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">...</span> Digits<span class="special">&gt;</span> <span class="keyword">auto</span> <a name="boost.histogram.literals.operator_c_idm27629686816"></a><span class="keyword">operator</span><span class="string">""</span><span class="identifier">_c</span><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="special">}</span></pre>
@@ -189,22 +188,21 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Archive<span class="special">,</span> <span class="keyword">typename</span> Container<span class="special">&gt;</span>
<span class="keyword">void</span> <a name="boost.histogram.serialize"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span> ar<span class="special">,</span> <span class="identifier">container_storage</span><span class="special">&lt;</span> <span class="identifier">Container</span> <span class="special">&gt;</span> <span class="special">&amp;</span> store<span class="special">,</span>
<span class="keyword">void</span> <a name="boost.histogram.serialize"></a><span class="identifier">serialize</span><span class="special">(</span><span class="identifier">Archive</span> <span class="special">&amp;</span> ar<span class="special">,</span> <span class="identifier">array_storage</span><span class="special">&lt;</span> <span class="identifier">Container</span> <span class="special">&gt;</span> <span class="special">&amp;</span> store<span class="special">,</span>
<span class="keyword">unsigned</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">axis</span> <span class="special">{</span>
<span class="special">}</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
<div class="section"><div class="titlepage"><div><div><h3 class="title">
<a name="header.boost.histogram.storage.adaptive_storage_hpp"></a>Header &lt;<a href="../../../boost/histogram/storage/adaptive_storage.hpp" target="_top">boost/histogram/storage/adaptive_storage.hpp</a>&gt;</h3></div></div></div></div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="header.boost.histogram.storage.adaptive_storage_hpp"></a>Header &lt;<a href="../../../boost/histogram/storage/adaptive_storage.hpp" target="_top">boost/histogram/storage/adaptive_storage.hpp</a>&gt;</h3></div></div></div>
<a name="header.boost.histogram.storage.array_storage_hpp"></a>Header &lt;<a href="../../../boost/histogram/storage/array_storage.hpp" target="_top">boost/histogram/storage/array_storage.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Allocator <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">allocator</span><span class="special">&gt;</span>
<span class="keyword">class</span> <a class="link" href="../boost/histogram/adaptive_storage.html" title="Class template adaptive_storage">adaptive_storage</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">template</span><span class="special">&lt;</span> <span class="keyword">class</span> <span class="special">&gt;</span> <span class="keyword">class</span> Allocator<span class="special">,</span> <span class="keyword">typename</span> S<span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="boost.histogram.operator=="></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">adaptive_storage</span><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span> <span class="special">&amp;</span> b<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">python</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/array_storage.html" title="Class template array_storage">array_storage</a><span class="special">;</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">serialization</span> <span class="special">{</span>
<span class="special">}</span>
@@ -212,12 +210,15 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="header.boost.histogram.storage.container_storage_hpp"></a>Header &lt;<a href="../../../boost/histogram/storage/container_storage.hpp" target="_top">boost/histogram/storage/container_storage.hpp</a>&gt;</h3></div></div></div>
<a name="header.boost.histogram.storage.operators_hpp"></a>Header &lt;<a href="../../../boost/histogram/storage/operators.hpp" target="_top">boost/histogram/storage/operators.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Container<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/histogram/container_storage.html" title="Class template container_storage">container_storage</a><span class="special">;</span>
<span class="special">}</span>
<span class="keyword">namespace</span> <span class="identifier">serialization</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S1<span class="special">,</span> <span class="keyword">typename</span> S2<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S1</span><span class="special">&gt;</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S2</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="boost.histogram.operator=="></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S1</span> <span class="special">&amp;</span> s1<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">S2</span> <span class="special">&amp;</span> s2<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> S1<span class="special">,</span> <span class="keyword">typename</span> S2<span class="special">,</span> <span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S1</span><span class="special">&gt;</span><span class="special">,</span>
<span class="keyword">typename</span> <span class="special">=</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">is_storage</span><span class="special">&lt;</span><span class="identifier">S2</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="keyword">bool</span> <a name="boost.histogram.operator!="></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">S1</span> <span class="special">&amp;</span> s1<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">S2</span> <span class="special">&amp;</span> s2<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -226,22 +227,22 @@
<a name="header.boost.histogram.utility_hpp"></a>Header &lt;<a href="../../../boost/histogram/utility.hpp" target="_top">boost/histogram/utility.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">histogram</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.bins_idm405170092848"></a><span class="identifier">bins</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.bins_idm405170090640"></a><span class="identifier">bins</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.shape_idm405170088128"></a><span class="identifier">shape</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.shape_idm405170085920"></a><span class="identifier">shape</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> V<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.index_idm405170083408"></a><span class="identifier">index</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">V</span> v<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.bins_idm27629630160"></a><span class="identifier">bins</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.bins_idm27629628080"></a><span class="identifier">bins</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.shape_idm27629625744"></a><span class="identifier">shape</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.shape_idm27629623664"></a><span class="identifier">shape</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">,</span> <span class="keyword">typename</span> V<span class="special">&gt;</span> <span class="keyword">int</span> <a name="boost.histogram.index_idm27629621328"></a><span class="identifier">index</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">V</span> v<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">,</span> <span class="keyword">typename</span> V<span class="special">&gt;</span>
<span class="keyword">int</span> <a name="boost.histogram.index_idm405170080048"></a><span class="identifier">index</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">V</span> v<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="identifier">A</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.left_idm405170076384"></a><span class="identifier">left</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">int</span> <a name="boost.histogram.index_idm27629618160"></a><span class="identifier">index</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">V</span> v<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="identifier">A</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.left_idm27629614736"></a><span class="identifier">left</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="keyword">double</span> <a name="boost.histogram.left_idm405170073536"></a><span class="identifier">left</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="identifier">A</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.right_idm405170070384"></a><span class="identifier">right</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">double</span> <a name="boost.histogram.left_idm27629612048"></a><span class="identifier">left</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="identifier">A</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.right_idm27629609104"></a><span class="identifier">right</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="keyword">double</span> <a name="boost.histogram.right_idm405170067536"></a><span class="identifier">right</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="identifier">A</span><span class="special">::</span><span class="identifier">value_type</span> <a name="boost.histogram.center_idm405170064384"></a><span class="identifier">center</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">double</span> <a name="boost.histogram.right_idm27629606416"></a><span class="identifier">right</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> A<span class="special">&gt;</span> <span class="keyword">double</span> <a name="boost.histogram.center_idm27629603472"></a><span class="identifier">center</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Axes<span class="special">&gt;</span>
<span class="keyword">double</span> <a name="boost.histogram.center_idm405170061536"></a><span class="identifier">center</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="keyword">double</span> <a name="boost.histogram.center_idm27629600784"></a><span class="identifier">center</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span> <span class="identifier">Axes</span><span class="special">...</span> <span class="special">&gt;</span> <span class="special">&amp;</span> a<span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span> i<span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -256,7 +257,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="concepts.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/histogram/transform/identity.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
<a accesskey="p" href="concepts.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/histogram/axis/transform/identity.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@@ -34,14 +34,11 @@
with a filled histogram</a></span></dt>
</dl></div>
<p>
Histograms are a basic tool in statistical analysis. They compactly represent
a data set of one or several random variables with acceptable loss of information.
It is often more convenient to work with a histogram of input values, rather
than with the input values directly, which may consume a lot of memory or disc
space and may be slow to process. Quantities of interest, like the mean, variance,
or mode may be extracted from the histogram instead of the original data set,
often with negligible loss in precision. You may think of a histogram as a
lossy compression of statistical data.
How to create and work with histograms is described here. This library is designed
to make simple things simple, yet complex things possible. For a quick start,
you don't need to read the complete user guide; have a look into the tutorial
and the examples instead. This guide covers the basic and more advanced usage
of the library.
</p>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
@@ -77,35 +74,39 @@
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
<span class="comment">// create a 1d-histogram in default configuration which</span>
<span class="comment">// covers the real line from -1 to 1 in 100 bins</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">));</span>
<span class="comment">// do something with h</span>
<span class="special">}</span>
</pre>
<p>
The function <code class="computeroutput"><span class="identifier">make_static_histogram</span><span class="special">(...)</span></code> takes a variable number of axis objects
as arguments. Axis objects define how input values are mapped to bins. If
as arguments. An axis object defines how input values are mapped to bins,
which means that it defines the mapping function and the number bins. If
you provide one axis, the histogram is one-dimensional. If you provide two,
it is two-dimensional, and so on.
</p>
<p>
Which axis class should you use? The <code class="computeroutput"><a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a></code>
should be your default choice, because it is easy to use and provides fast
mapping. If you have a continous range of integers, the <code class="computeroutput"><a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a></code>
is faster.
The library comes with a number of builtin axis classes (you can write your
own, too, see <a class="link" href="concepts.html#histogram.concepts.axis_type" title="Axis type">axis concept</a>).
Which one should you use? The <code class="computeroutput"><a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">regular
axis</a></code> should be your default choice, because it is easy to use
and fast. If you have a continous range of integers, the <code class="computeroutput"><a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">integer
axis</a></code> is faster.
</p>
<p>
Check the class descriptions of <code class="computeroutput"><a class="link" href="../boost/histogram/regular_axis.html" title="Class template regular_axis">regular_axis</a></code>,
<code class="computeroutput"><a class="link" href="../boost/histogram/variable_axis.html" title="Class template variable_axis">variable_axis</a></code>,
<code class="computeroutput"><a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a></code>,
<code class="computeroutput"><a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a></code>,
and <code class="computeroutput"><a class="link" href="../boost/histogram/category_axis.html" title="Class category_axis">category_axis</a></code>
for advice. See the <a class="link" href="rationale.html#histogram.rationale.axis_types" title="Axis types">rationale
Check the class descriptions of <code class="computeroutput"><a class="link" href="../boost/histogram/axis/regular.html" title="Class template regular">regular
axis</a></code>, <code class="computeroutput"><a class="link" href="../boost/histogram/axis/variable.html" title="Class template variable">variable
axis</a></code>, <code class="computeroutput"><a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">circular
axis</a></code>, <code class="computeroutput"><a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">integer
axis</a></code>, and <code class="computeroutput"><a class="link" href="../boost/histogram/axis/category.html" title="Class category">category
axis</a></code> for advice. See the <a class="link" href="rationale.html#histogram.rationale.axis_types" title="Axis types">rationale
about axis types</a> for more information.
</p>
<p>
You can attach a label to any axis, which helps to remember what the axis
is categorising. Example: you have census data and you want to investigate
how yearly income correlates with age, you could do:
In addition to the required parameters for an axis, you can provide an optional
label as a string to any axis, which helps to remember what the axis is categorising.
Example: you have census data and you want to investigate how yearly income
correlates with age, you could do:
</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">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
@@ -114,8 +115,8 @@
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
<span class="comment">// create a 2d-histogram in default configuration with an "age" axis</span>
<span class="comment">// and an "income" axis</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">20</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">100</span><span class="special">,</span> <span class="string">"age in years"</span><span class="special">),</span>
<span class="identifier">bh</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">20</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">100</span><span class="special">,</span> <span class="string">"yearly income in $1000"</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">20</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">100</span><span class="special">,</span> <span class="string">"age in years"</span><span class="special">),</span>
<span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">20</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">100</span><span class="special">,</span> <span class="string">"yearly income in $1000"</span><span class="special">));</span>
<span class="comment">// do something with h</span>
<span class="special">}</span>
</pre>
@@ -130,7 +131,7 @@
Therefore, if you create an axis with 20 bins, it will actually get 22 bins.
The two extra bins are very useful and in most cases you want to have them.
However, if you know for sure that the input is strictly covered by the axis,
you can disable the extra bins:
you can disable them and save memory:
</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">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
@@ -138,11 +139,12 @@
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
<span class="comment">// create a 1d-histogram for dice throws, eyes are always between 1 and 6</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">integer_axis</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">6</span><span class="special">,</span> <span class="string">"eyes"</span><span class="special">,</span> <span class="keyword">false</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">integer</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">6</span><span class="special">,</span> <span class="string">"eyes"</span><span class="special">,</span> <span class="keyword">false</span><span class="special">));</span>
<span class="comment">// do something with h</span>
<span class="special">}</span>
</pre>
<p>
Using a <code class="computeroutput"><a class="link" href="../boost/histogram/integer_axis.html" title="Class integer_axis">integer_axis</a></code>
Using a <code class="computeroutput"><a class="link" href="../boost/histogram/axis/integer.html" title="Class integer">integer axis</a></code>
in this example is convenient, because the input values are integers and
we want one bin for each eye value.
</p>
@@ -152,10 +154,10 @@
<th align="left">Note</th>
</tr>
<tr><td align="left" valign="top"><p>
The specialised <code class="computeroutput"><a class="link" href="../boost/histogram/circular_axis.html" title="Class template circular_axis">circular_axis</a></code>
never creates under- and overflow bins, because the axis is circular. The
highest bin wrapps around to the lowest bin and vice versa, so there is
no need for extra bins.
The specialised <code class="computeroutput"><a class="link" href="../boost/histogram/axis/circular.html" title="Class template circular">circular
axis</a></code> never creates under- and overflow bins, because the axis
is circular. The highest bin wrapps around to the lowest bin and vice versa,
so there is no need for extra bins.
</p></td></tr>
</table></div>
<p>
@@ -167,13 +169,14 @@
data. Hybrid programming in C++ and Python fits the bill. Here is a conceptual
example:
</p>
<pre class="programlisting"><span class="keyword">import</span> <span class="identifier">histogram</span> <span class="keyword">as</span> <span class="identifier">bh</span>
<span class="keyword">import</span> <span class="identifier">complex_cpp_module</span>
<pre class="programlisting"><span class="comment"># also see examples/create_python_fill_cpp.py and examples/module_cpp_filler.cpp</span>
<span class="keyword">import</span> <span class="identifier">histogram</span> <span class="keyword">as</span> <span class="identifier">bh</span>
<span class="keyword">import</span> <span class="identifier">cpp_filler</span>
<span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">.</span><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">.</span><span class="identifier">regular_axis</span><span class="special">(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">),</span>
<span class="identifier">bh</span><span class="special">.</span><span class="identifier">integer_axis</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">10</span><span class="special">))</span>
<span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">.</span><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">.</span><span class="identifier">axis</span><span class="special">.</span><span class="identifier">regular</span><span class="special">(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">),</span>
<span class="identifier">bh</span><span class="special">.</span><span class="identifier">axis</span><span class="special">.</span><span class="identifier">integer</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">10</span><span class="special">))</span>
<span class="identifier">complex_cpp_module</span><span class="special">.</span><span class="identifier">process</span><span class="special">(</span><span class="identifier">h</span><span class="special">)</span> <span class="comment"># histogram is filled with input values</span>
<span class="identifier">cpp_filler</span><span class="special">.</span><span class="identifier">process</span><span class="special">(</span><span class="identifier">h</span><span class="special">)</span> <span class="comment"># histogram is filled with input values</span>
<span class="comment"># continue with statistical analysis of h</span>
</pre>
@@ -188,17 +191,18 @@
you can also create a histogram from a run-time compiled collection of axis
objects:
</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">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<pre class="programlisting"><span class="comment">// also see examples/create_dynamic_histogram.cpp</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
<span class="keyword">namespace</span> <span class="identifier">bh</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">histogram</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">using</span> <span class="identifier">H</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">histogram</span><span class="special">&lt;</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">builtin_axes</span><span class="special">&gt;;</span>
<span class="keyword">auto</span> <span class="identifier">v</span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="identifier">H</span><span class="special">::</span><span class="identifier">axis_type</span><span class="special">&gt;();</span>
<span class="identifier">v</span><span class="special">.</span><span class="identifier">push_back</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">));</span>
<span class="identifier">v</span><span class="special">.</span><span class="identifier">push_back</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">integer_axis</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">6</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">H</span><span class="special">(</span><span class="identifier">v</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">v</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
<span class="keyword">using</span> <span class="identifier">hist_type</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">histogram</span><span class="special">&lt;</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">Dynamic</span><span class="special">,</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">builtin_axes</span><span class="special">&gt;;</span>
<span class="keyword">auto</span> <span class="identifier">v</span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="identifier">hist_type</span><span class="special">::</span><span class="identifier">axis_type</span><span class="special">&gt;();</span>
<span class="identifier">v</span><span class="special">.</span><span class="identifier">push_back</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">1</span><span class="special">,</span> <span class="number">1</span><span class="special">));</span>
<span class="identifier">v</span><span class="special">.</span><span class="identifier">push_back</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">integer</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">6</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">hist_type</span><span class="special">(</span><span class="identifier">v</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">v</span><span class="special">.</span><span class="identifier">end</span><span class="special">());</span>
<span class="comment">// do something with h</span>
<span class="special">}</span>
</pre>
@@ -212,7 +216,7 @@
the default policy <code class="computeroutput"><a class="link" href="../boost/histogram/adaptive_storage.html" title="Class template adaptive_storage">boost::histogram::adaptive_storage&lt;&gt;</a></code>
is used. Allocation is deferred to the first call to <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code>, which are described in the next section.
Therefore memory allocation exceptions are not thrown when the histogram
is created, but possibly later.
is created, but possibly later on the first fill.
</p></td></tr>
</table></div>
</div>
@@ -222,46 +226,57 @@
a histogram with data</a>
</h3></div></div></div>
<p>
The histogram (either type) supports two kinds of fills.
The histogram (either type) supports three kinds of fills.
</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code>
initiates a normal fill, which increments a bin counter by one when a
value is in the bin range
initiates a normal fill, which increments an internal counter by one.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span>
<span class="identifier">count</span><span class="special">(</span><span class="identifier">n</span><span class="special">))</span></code>
initiates a fill, which increments an internal counter by the integer
number <code class="computeroutput"><span class="identifier">n</span></code>.
</li>
<li class="listitem">
<code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span>
<span class="identifier">weight</span><span class="special">(</span><span class="identifier">x</span><span class="special">))</span></code>
initiates a weighted fill, which increment a bin counter by a weight
initiates a weighted fill, which increments an internal counter a weight
<code class="computeroutput"><span class="identifier">x</span></code> (a real number) when
a value is in the bin range.
</li>
</ul></div>
<p>
The need to support weighted fills is explained <a class="link" href="rationale.html#histogram.rationale.weights" title="Variance estimates">in
the rationale</a>. Do not use the form <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span> <span class="identifier">weight</span><span class="special">(</span><span class="identifier">x</span><span class="special">))</span></code>
if all your weights are equal to 1. Use <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code> in this case, because it is way more
efficient. You are free to mix the two calls, meaning, you can start calling
<code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code>
and later switch to <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span> <span class="identifier">weight</span><span class="special">(</span><span class="identifier">x</span><span class="special">))</span></code>
Why weighted fills are sometimes useful is explained <a class="link" href="rationale.html#histogram.rationale.weights" title="Variance estimates">in
the rationale</a>. This is mostly required in a scientific context. If
you don't see the point, you can just ignore this type of call. Especially,
do not use the form <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span> <span class="identifier">weight</span><span class="special">(</span><span class="identifier">x</span><span class="special">))</span></code>
if you just wanted to avoid calling <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code> repeatedly with the same arguments.
Use <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span>
<span class="identifier">count</span><span class="special">(</span><span class="identifier">n</span><span class="special">))</span></code> for
that, because it is way more efficient. Apart for that, you are free to mix
these calls in any order, meaning, you can start calling <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...)</span></code> and later switch to <code class="computeroutput"><span class="identifier">fill</span><span class="special">(...,</span> <span class="identifier">weight</span><span class="special">(</span><span class="identifier">x</span><span class="special">))</span></code>
on the same histogram or vice versa.
</p>
<p>
Here is an example which fills a 2d-histogram with 1000 pairs of normal distributed
numbers taken from a generator:
</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">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<pre class="programlisting"><span class="comment">// also see examples/example_2d.cpp</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">random</span><span class="special">/</span><span class="identifier">mersenne_twister</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">random</span><span class="special">/</span><span class="identifier">normal_distribution</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="keyword">namespace</span> <span class="identifier">br</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">random</span><span class="special">;</span>
<span class="keyword">namespace</span> <span class="identifier">bh</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">histogram</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">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">;</span>
<span class="identifier">random</span><span class="special">::</span><span class="identifier">mt19937</span> <span class="identifier">gen</span><span class="special">;</span>
<span class="identifier">random</span><span class="special">::</span><span class="identifier">normal_distribution</span><span class="special">&lt;&gt;</span> <span class="identifier">norm</span><span class="special">;</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">histogram</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span>
<span class="identifier">histogram</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">5</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="string">"x"</span><span class="special">),</span>
<span class="identifier">histogram</span><span class="special">::</span><span class="identifier">regular_axis</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">5</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="string">"y"</span><span class="special">)</span>
<span class="identifier">br</span><span class="special">::</span><span class="identifier">mt19937</span> <span class="identifier">gen</span><span class="special">;</span>
<span class="identifier">br</span><span class="special">::</span><span class="identifier">normal_distribution</span><span class="special">&lt;&gt;</span> <span class="identifier">norm</span><span class="special">;</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span>
<span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">5</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="string">"x"</span><span class="special">),</span>
<span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">regular</span><span class="special">&lt;&gt;(</span><span class="number">100</span><span class="special">,</span> <span class="special">-</span><span class="number">5</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="string">"y"</span><span class="special">)</span>
<span class="special">);</span>
<span class="keyword">for</span> <span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span> <span class="identifier">i</span> <span class="special">&lt;</span> <span class="number">1000</span><span class="special">;</span> <span class="special">++</span><span class="identifier">i</span><span class="special">)</span>
<span class="identifier">h</span><span class="special">.</span><span class="identifier">fill</span><span class="special">(</span><span class="identifier">norm</span><span class="special">(</span><span class="identifier">gen</span><span class="special">),</span> <span class="identifier">norm</span><span class="special">(</span><span class="identifier">gen</span><span class="special">));</span>
@@ -272,13 +287,15 @@
Here is a second example which using a weighted fill in a functional programming
style. The input values are taken from a container:
</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">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<pre class="programlisting"><span class="comment">// also see examples/create_dynamic_histogram.cpp</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">histogram</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">algorithm</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">vector</span><span class="special">&gt;</span>
<span class="keyword">namespace</span> <span class="identifier">bh</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">histogram</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">namespace</span> <span class="identifier">bh</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">histogram</span><span class="special">;</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">integer_axis</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">9</span><span class="special">));</span>
<span class="keyword">auto</span> <span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">make_static_histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">::</span><span class="identifier">axis</span><span class="special">::</span><span class="identifier">integer</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">9</span><span class="special">));</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">{</span><span class="number">0</span><span class="special">,</span> <span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">,</span> <span class="number">4</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="number">6</span><span class="special">,</span> <span class="number">7</span><span class="special">,</span> <span class="number">8</span><span class="special">,</span> <span class="number">9</span><span class="special">};</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">for_each</span><span class="special">(</span><span class="identifier">v</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),</span> <span class="identifier">v</span><span class="special">.</span><span class="identifier">end</span><span class="special">(),</span> <span class="special">[&amp;</span><span class="identifier">h</span><span class="special">](</span><span class="keyword">int</span> <span class="identifier">x</span><span class="special">)</span> <span class="special">{</span> <span class="identifier">h</span><span class="special">.</span><span class="identifier">fill</span><span class="special">(</span><span class="identifier">x</span><span class="special">,</span> <span class="identifier">bh</span><span class="special">::</span><span class="identifier">weight</span><span class="special">(</span><span class="number">2.0</span><span class="special">));</span> <span class="special">});</span>
<span class="comment">// h is now filled</span>
@@ -294,7 +311,7 @@
<pre class="programlisting"><span class="keyword">import</span> <span class="identifier">histogram</span> <span class="keyword">as</span> <span class="identifier">bh</span>
<span class="keyword">import</span> <span class="identifier">numpy</span> <span class="keyword">as</span> <span class="identifier">np</span>
<span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">.</span><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">.</span><span class="identifier">integer_axis</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">9</span><span class="special">))</span>
<span class="identifier">h</span> <span class="special">=</span> <span class="identifier">bh</span><span class="special">.</span><span class="identifier">histogram</span><span class="special">(</span><span class="identifier">bh</span><span class="special">.</span><span class="identifier">axis</span><span class="special">.</span><span class="identifier">integer</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">9</span><span class="special">))</span>
<span class="comment"># don't do this, it is very slow</span>
<span class="keyword">for</span> <span class="identifier">i</span> <span class="keyword">in</span> <span class="identifier">range</span><span class="special">(</span><span class="number">10</span><span class="special">):</span>

View File

@@ -9,36 +9,28 @@ histogram/benchmarks.html
histogram/rationale.html
histogram/concepts.html
histogram/reference.html
boost/histogram/transform/identity.html
boost/histogram/transform/log.html
boost/histogram/transform/sqrt.html
boost/histogram/axis_base.html
boost/histogram/axis_base__idm405170792320.html
boost/histogram/axis_base__idm405170770048.html
boost/histogram/axis_iterator.html
boost/histogram/bin.html
boost/histogram/category_axis.html
boost/histogram/circular_axis.html
boost/histogram/integer_axis.html
boost/histogram/real_bin.html
boost/histogram/regular_axis.html
boost/histogram/variable_axis.html
BOOST_HISTOGRAM_STRING_VIEW.html
boost/histogram/axis/transform/identity.html
boost/histogram/axis/transform/log.html
boost/histogram/axis/transform/sqrt.html
boost/histogram/axis/axis_base.html
boost/histogram/axis/axis_base_f_idm27630255200.html
boost/histogram/axis/axis_base_t_idm27630232864.html
boost/histogram/axis/axis_iterator.html
boost/histogram/axis/bin.html
boost/histogram/axis/category.html
boost/histogram/axis/circular.html
boost/histogram/axis/integer.html
boost/histogram/axis/real_bin.html
boost/histogram/axis/regular.html
boost/histogram/axis/variable.html
boost/histogram/adaptive_storage.html
boost/histogram/count.html
boost/histogram/histogram.html
boost/histogram/weight.html
boost/histogram/histogram__idm405170515456.html
boost/histogram/histogram__idm405170515456/lin_visitor.html
boost/histogram/histogram__idm405170379312.html
boost/histogram/adaptive_storage.html
boost/histogram/adaptive_storage/add_visitor.html
boost/histogram/adaptive_storage/assign_visitor.html
boost/histogram/adaptive_storage/bicmp_visitor.html
boost/histogram/adaptive_storage/cmp_visitor.html
boost/histogram/adaptive_storage/increase_visitor.html
boost/histogram/adaptive_storage/size_visitor.html
boost/histogram/adaptive_storage/value_visitor.html
boost/histogram/adaptive_storage/variance_visitor.html
boost/histogram/adaptive_storage/wincrease_visitor.html
boost/histogram/container_storage.html
boost/histogram/histogram_D_idm27629951904.html
boost/histogram/histogram_D_idm27629951904/lin_visitor.html
boost/histogram/histogram_S_idm27629806656.html
boost/histogram/histogram_S_idm27629806656/shape_assign_helper.html
boost/histogram/array_storage.html
histogram/changelog.html
histogram/references.html

View File

@@ -73,7 +73,6 @@
</dl></dd>
<dt><span class="section"><a href="histogram/reference.html">Reference</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram_hpp">Header &lt;boost/histogram.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.axis_hpp">Header &lt;boost/histogram/axis.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.axis_ostream_operators_hpp">Header &lt;boost/histogram/axis_ostream_operators.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.histogram_fwd_hpp">Header &lt;boost/histogram/histogram_fwd.hpp&gt;</a></span></dt>
@@ -83,7 +82,8 @@
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.literals_hpp">Header &lt;boost/histogram/literals.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.serialization_hpp">Header &lt;boost/histogram/serialization.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.storage.adaptive_storage_hpp">Header &lt;boost/histogram/storage/adaptive_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.storage.container_storage_hpp">Header &lt;boost/histogram/storage/container_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.storage.array_storage_hpp">Header &lt;boost/histogram/storage/array_storage.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.storage.operators_hpp">Header &lt;boost/histogram/storage/operators.hpp&gt;</a></span></dt>
<dt><span class="section"><a href="histogram/reference.html#header.boost.histogram.utility_hpp">Header &lt;boost/histogram/utility.hpp&gt;</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="histogram/changelog.html">Changelog</a></span></dt>
@@ -92,7 +92,7 @@
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: May 03, 2017 at 11:48:21 GMT</small></p></td>
<td align="left"><p><small>Last revised: October 13, 2017 at 16:09:19 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>