6#include <benchmark/benchmark.h> 
   19   using benchmark::Fixture::SetUp;
 
   20   void SetUp(benchmark::State &state) 
final 
   23      std::uniform_real_distribution<> 
dis;
 
   25      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
   33   for (
auto _ : state) {
 
   34      for (
double number : fNumbers) {
 
 
   49   using benchmark::Fixture::SetUp;
 
   50   void SetUp(benchmark::State &state) 
final 
   53      std::uniform_real_distribution<> 
dis;
 
   55      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
   63   for (
auto _ : state) {
 
   64      for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
 
   65         engine.Fill(fNumbers[i], fNumbers[i + 1]);
 
 
   79   using benchmark::Fixture::SetUp;
 
   80   void SetUp(benchmark::State &state) 
final 
   83      std::uniform_real_distribution<> 
dis;
 
   85      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
   93   for (
auto _ : state) {
 
   94      for (
double number : fNumbers) {
 
 
  103   for (
auto _ : state) {
 
  104      for (
double number : fNumbers) {
 
 
  119   using benchmark::Fixture::SetUp;
 
  120   void SetUp(benchmark::State &state) 
final 
  123      std::uniform_real_distribution<> 
dis;
 
  124      fNumbers.resize(2 * state.range(0));
 
  125      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
  133   for (
auto _ : state) {
 
  134      for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
 
  135         engine.Fill(fNumbers[i], fNumbers[i + 1]);
 
 
  143   for (
auto _ : state) {
 
  144      for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
 
 
  159   using benchmark::Fixture::SetUp;
 
  160   void SetUp(benchmark::State &state) 
final 
  163      std::uniform_real_distribution<> 
dis;
 
  165      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
  173   for (
auto _ : state) {
 
  174      for (
double number : fNumbers) {
 
 
  183   for (
auto _ : state) {
 
  184      for (
double number : fNumbers) {
 
 
  199   using benchmark::Fixture::SetUp;
 
  200   void SetUp(benchmark::State &state) 
final 
  203      std::uniform_real_distribution<> 
dis;
 
  204      fNumbers.resize(2 * state.range(0));
 
  205      for (std::size_t i = 0; i < 
fNumbers.size(); i++) {
 
 
 
  213   for (
auto _ : state) {
 
  214      for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
 
  215         engine.Fill(fNumbers[i], fNumbers[i + 1]);
 
 
  223   for (
auto _ : state) {
 
  224      for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Int_t Fill(Double_t x) override
 
A histogram data structure to bin data along multiple dimensions.
 
A regular axis with equidistant bins in the interval .
 
BENCHMARK_DEFINE_F(RHistEngine_int_Regular1, Fill)(benchmark
 
BENCHMARK_REGISTER_F(RHistEngine_int_Regular1, Fill) -> Range(0, 32768)
 
ROOT::Experimental::RRegularAxis axis
 
void SetUp(benchmark::State &state) final
 
std::vector< double > fNumbers
 
ROOT::Experimental::RHistEngine< ROOT::Experimental::RBinWithError > engine
 
ROOT::Experimental::RHistEngine< ROOT::Experimental::RBinWithError > engine
 
std::vector< double > fNumbers
 
void SetUp(benchmark::State &state) final
 
ROOT::Experimental::RRegularAxis axis
 
std::vector< double > fNumbers
 
ROOT::Experimental::RRegularAxis axis
 
ROOT::Experimental::RHistEngine< float > engine
 
void SetUp(benchmark::State &state) final
 
std::vector< double > fNumbers
 
ROOT::Experimental::RHistEngine< float > engine
 
void SetUp(benchmark::State &state) final
 
ROOT::Experimental::RRegularAxis axis
 
ROOT::Experimental::RHistEngine< int > engine
 
void SetUp(benchmark::State &state) final
 
ROOT::Experimental::RRegularAxis axis
 
std::vector< double > fNumbers
 
ROOT::Experimental::RRegularAxis axis
 
ROOT::Experimental::RHistEngine< int > engine
 
void SetUp(benchmark::State &state) final
 
std::vector< double > fNumbers
 
A weight for filling histograms.