hashRandomPair.cc
Go to the documentation of this file.
1 /* hashRandom.cc
2  */
4 #include <random>
5 
6 std::pair<char,char>
9 
10 void osl::hash::HashRandomPair::setUp(unsigned int seed, unsigned int prob100)
11 {
12  std::mt19937 mt19937(seed);
13  std::uniform_int_distribution<int> uniform100(0, 99);
14 
15  for (size_t i=0; i<Length; ++i) {
16  const unsigned int u = uniform100(mt19937);
17  if (u < prob100)
18  table[i] = std::make_pair(1,0);
19  else if (u < prob100*2)
20  table[i] = std::make_pair(0,1);
21  else
22  table[i] = std::make_pair(0,0);
23  }
24  is_initialized = 1;
25 }
26 
27 
28 // ;;; Local Variables:
29 // ;;; mode:c++
30 // ;;; c-basic-offset:2
31 // ;;; End:
static void setUp(unsigned int seed, unsigned int prob100)
static std::pair< char, char > table[Length]
static const size_t Length