Files
Catch2/include/internal/catch_random_number_generator.cpp
T

30 lines
703 B
C++
Raw Normal View History

2017-08-30 15:32:44 +02:00
/*
* Created by Martin on 30/08/2017.
*
* 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)
*/
#include "catch_random_number_generator.h"
#include "catch_context.h"
#include "catch_interfaces_config.h"
namespace Catch {
2018-06-15 14:35:47 +01:00
std::mt19937& rng() {
static std::mt19937 s_rng;
return s_rng;
2017-08-30 15:32:44 +02:00
}
2018-06-15 14:35:47 +01:00
void seedRng( IConfig const& config ) {
if( config.rngSeed() != 0 ) {
std::srand( config.rngSeed() );
rng().seed( config.rngSeed() );
}
}
2017-08-30 15:32:44 +02:00
unsigned int rngSeed() {
return getCurrentContext().getConfig()->rngSeed();
}
}