9 _randomSeeds(
std::move(seeds)) {
20 throw Exception(
"RandomSeedExtension::randomSeed: processor '" +
22 "' not registered in random seed manager" ) ;
31 for(
auto cond : conds ) {
32 _runtimeConditions->addCondition( cond.first, cond.second ) ;
39 _runtimeConditions->setValue( processor->
name(),
value ) ;
45 _runtimeConditions->setValue( processor->
name() +
"." + name,
value ) ;
51 return _runtimeConditions->conditionIsTrue( name ) ;
const std::string & name() const
Get the component name.
ProcessorConditionsExtension()=delete
RandomSeedExtension()=delete
constexpr unsigned long long value(const Flag_t &flag)
std::hash< const void * > HashFunction
RandomSeedType randomSeed(const Processor *const processor) const
Get the random seed for a given processor.
std::unique_ptr< RandomSeedManager::RandomSeedMap > RandomSeedMap
bool check(const std::string &name) const
Check whether the runtime condition is true.
RandomSeedManager::SeedType RandomSeedType
void set(const Processor *const processor, bool value)
Set the runtime condition of the processor.
std::map< std::string, std::string > ConditionsMap
RandomSeedMap _randomSeeds
The random seed map for the current event.