The Gaudi Framework  v40r0 (475e45c1)
QuasiRandom.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #pragma once
12 
13 // Include files
14 #include <string>
15 
16 // boost
17 #include <boost/integer/integer_mask.hpp>
18 
35 namespace Gaudi {
36  namespace Utils {
37  namespace QuasiRandom {
38 
40  uint32_t mix( uint32_t state );
41 
43  uint32_t mix32( uint32_t state, uint32_t extra );
44 
46  uint32_t mix64( uint32_t state, uint64_t extra );
47 
49  uint32_t mixString( uint32_t state, const std::string& extra );
50  } // namespace QuasiRandom
51  } // namespace Utils
52 } // namespace Gaudi
Gaudi::Utils::QuasiRandom::mix64
uint32_t mix64(uint32_t state, uint64_t extra)
mix some 'extra' entropy into 'state' and return result
Definition: QuasiRandom.cpp:35
Gaudi::Utils::QuasiRandom::mixString
uint32_t mixString(uint32_t state, const std::string &extra)
mix some 'extra' entropy into 'state' and return result
Definition: QuasiRandom.cpp:41
Gaudi::Utils::QuasiRandom::mix32
uint32_t mix32(uint32_t state, uint32_t extra)
mix some 'extra' entropy into 'state' and return result
Definition: QuasiRandom.cpp:33
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition: __init__.py:1
Gaudi::Utils::QuasiRandom
Definition: QuasiRandom.h:37
Gaudi::Utils::QuasiRandom::mix
uint32_t mix(uint32_t state)
Create a hash with a large avalanche effect from a 32 bit integer.
Definition: QuasiRandom.cpp:21
compareRootHistos.state
state
Definition: compareRootHistos.py:496