LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Implementation of the "autoIncrement" policy. More...
#include "BasePolicies.h"
Public Types | |
using | base_t = CheckedRangePolicy< SEED > |
using | this_t = AutoIncrementPolicy< SEED > |
using | seed_t = typename base_t::seed_t |
using | base_t = CheckedRangePolicy< SEED > |
using | this_t = AutoIncrementPolicy< SEED > |
using | seed_t = typename base_t::seed_t |
using | EventData_t = NuRandomServiceHelper::EventSeedInputData |
type of data used for event seeds More... | |
using | EventData_t = NuRandomServiceHelper::EventSeedInputData |
type of data used for event seeds More... | |
Public Member Functions | |
AutoIncrementPolicy (fhicl::ParameterSet const &pset) | |
virtual void | configure (fhicl::ParameterSet const &pset) override |
Configure this policy. More... | |
virtual void | print (std::ostream &out) const override |
Prints the configuration of this policy. More... | |
AutoIncrementPolicy (fhicl::ParameterSet const &pset) | |
virtual void | configure (fhicl::ParameterSet const &pset) override |
Configure this policy. More... | |
virtual void | print (std::ostream &out) const override |
Prints the configuration of this policy. More... | |
virtual seed_t | getSeed (SeedMasterHelper::EngineId const &id) |
Returns the next random number. More... | |
virtual seed_t | getSeed (SeedMasterHelper::EngineId const &id) override |
Returns the next random number. More... | |
virtual seed_t | getEventSeed (SeedMasterHelper::EngineId const &id, EventData_t const &eventInfo) |
Returns a random number specific to an event. More... | |
virtual seed_t | getEventSeed (SeedMasterHelper::EngineId const &id, EventData_t const &eventInfo) |
Returns a random number specific to an event. More... | |
std::string | getName () const |
Returns the given name of the policy. More... | |
std::string | getName () const |
Returns the given name of the policy. More... | |
virtual bool | yieldsUniqueSeeds () const override |
Returns whether the returned seed should be unique. More... | |
virtual bool | yieldsUniqueSeeds () const |
Returns whether the returned seed should be unique. More... | |
Static Public Attributes | |
static constexpr seed_t | InvalidSeed = 0 |
An invalid seed. More... | |
Protected Member Functions | |
virtual seed_t | createSeed (SeedMasterHelper::EngineId const &) override |
Returns the next random number. More... | |
void | static_configure (fhicl::ParameterSet const &) |
virtual seed_t | createSeed (SeedMasterHelper::EngineId const &) override |
Returns the next random number. More... | |
void | static_configure (fhicl::ParameterSet const &) |
virtual void | ensureRange (SeedMasterHelper::EngineId const &id, seed_t seed) const |
Performs the range checks and complains if needed. More... | |
virtual void | ensureRange (SeedMasterHelper::EngineId const &id, seed_t seed) const |
Performs the range checks and complains if needed. More... | |
void | CheckRangeConfiguration () const |
Check that the configuration is complete. More... | |
void | CheckRangeConfiguration () const |
Check that the configuration is complete. More... | |
virtual seed_t | createEventSeed (SeedMasterHelper::EngineId const &, EventData_t const &) |
Extracts a seed for specified event information; returns InvalidSeed. More... | |
virtual seed_t | createEventSeed (SeedMasterHelper::EngineId const &, EventData_t const &) |
Extracts a seed for specified event information; returns InvalidSeed. More... | |
Protected Attributes | |
seed_t | first_seed |
seed_t | next_seed |
next seed delivered More... | |
RangeCheckHelper< seed_t > | range_check |
std::string | name |
name of the policy More... | |
Implementation of the "autoIncrement" policy.
This is heavily based on CheckedRangePolicy.
Definition at line 343 of file BasePolicies.h.
using rndm::details::AutoIncrementPolicy< SEED >::base_t = CheckedRangePolicy<SEED> |
Definition at line 42 of file StandardPolicies.h.
using rndm::details::AutoIncrementPolicy< SEED >::base_t = CheckedRangePolicy<SEED> |
Definition at line 345 of file BasePolicies.h.
|
inherited |
type of data used for event seeds
Definition at line 48 of file BasePolicies.h.
|
inherited |
type of data used for event seeds
Definition at line 93 of file RandomSeedPolicyBase.h.
using rndm::details::AutoIncrementPolicy< SEED >::seed_t = typename base_t::seed_t |
Definition at line 44 of file StandardPolicies.h.
using rndm::details::AutoIncrementPolicy< SEED >::seed_t = typename base_t::seed_t |
Definition at line 347 of file BasePolicies.h.
using rndm::details::AutoIncrementPolicy< SEED >::this_t = AutoIncrementPolicy<SEED> |
Definition at line 43 of file StandardPolicies.h.
using rndm::details::AutoIncrementPolicy< SEED >::this_t = AutoIncrementPolicy<SEED> |
Definition at line 346 of file BasePolicies.h.
|
inline |
Configures from a parameter set
Definition at line 351 of file BasePolicies.h.
|
inline |
Configures from a parameter set
Definition at line 48 of file StandardPolicies.h.
References rndm::details::AutoIncrementPolicy< SEED >::configure().
|
protectedinherited |
Check that the configuration is complete.
Definition at line 323 of file BasePolicies.h.
References art::errors::Configuration, rndm::details::RandomSeedPolicyBase< SEED >::getName(), rndm::details::RangeCheckHelper< SEED >::isConfigured(), and rndm::details::RangeCheckHelper< SEED >::missingConfig().
Referenced by rndm::details::AutoIncrementPolicy< SEED >::createSeed(), rndm::details::LinearMappingPolicy< SEED >::createSeed(), rndm::details::PredefinedOffsetPolicy< SEED >::createSeed(), and rndm::details::CheckedRangePolicy< SEED >::ensureRange().
|
protectedinherited |
Check that the configuration is complete.
|
inlineoverridevirtual |
Configure this policy.
pset | the parameter set for the configuration |
Parameters:
Reimplemented from rndm::details::CheckedRangePolicy< SEED >.
Definition at line 64 of file StandardPolicies.h.
References rndm::details::CheckedRangePolicy< SEED >::configure(), rndm::details::AutoIncrementPolicy< SEED >::first_seed, rndm::details::AutoIncrementPolicy< SEED >::next_seed, rndm::details::AutoIncrementPolicy< SEED >::print(), rndm::details::CheckedRangePolicy< SEED >::range_check, rndm::details::RangeCheckHelper< SEED >::SetConfigLabels(), and rndm::details::AutoIncrementPolicy< SEED >::static_configure().
|
inlineoverridevirtual |
Configure this policy.
pset | the parameter set for the configuration |
Parameters:
Reimplemented from rndm::details::CheckedRangePolicy< SEED >.
Definition at line 367 of file BasePolicies.h.
References rndm::details::RandomSeedPolicyBase< SEED >::print().
Referenced by rndm::details::AutoIncrementPolicy< SEED >::AutoIncrementPolicy(), rndm::details::LinearMappingPolicy< SEED >::LinearMappingPolicy(), rndm::details::PredefinedOffsetPolicy< SEED >::PredefinedOffsetPolicy(), and rndm::details::PredefinedSeedPolicy< SEED >::PredefinedSeedPolicy().
|
inlineprotectedvirtualinherited |
Extracts a seed for specified event information; returns InvalidSeed.
Reimplemented in rndm::details::PerEventPolicy< SEED >.
Definition at line 90 of file BasePolicies.h.
Referenced by rndm::details::RandomSeedPolicyBase< seed_t >::getEventSeed().
|
inlineprotectedvirtualinherited |
Extracts a seed for specified event information; returns InvalidSeed.
Reimplemented in rndm::details::PerEventPolicy< SEED >.
Definition at line 135 of file RandomSeedPolicyBase.h.
|
inlineoverrideprotectedvirtual |
Returns the next random number.
Implements rndm::details::RandomSeedPolicyBase< SEED >.
Definition at line 80 of file StandardPolicies.h.
References rndm::details::CheckedRangePolicy< SEED >::CheckRangeConfiguration(), rndm::details::AutoIncrementPolicy< SEED >::first_seed, fhicl::ParameterSet::get(), rndm::details::AutoIncrementPolicy< SEED >::next_seed, rndm::details::CheckedRangePolicy< SEED >::print(), rndm::details::AutoIncrementPolicy< SEED >::print(), rndm::details::CheckedRangePolicy< SEED >::range_check, rndm::details::RangeCheckHelper< SEED >::SetBaseSeed(), and rndm::details::AutoIncrementPolicy< SEED >::static_configure().
|
inlineoverrideprotectedvirtual |
Returns the next random number.
Implements rndm::details::RandomSeedPolicyBase< SEED >.
Definition at line 383 of file BasePolicies.h.
References rndm::details::AutoIncrementPolicy< SEED >::static_configure().
|
inlineprotectedvirtualinherited |
Performs the range checks and complains if needed.
Definition at line 303 of file BasePolicies.h.
References rndm::details::RangeCheckHelper< SEED >::EnsureRange(), rndm::details::RandomSeedPolicyBase< SEED >::getName(), and rndm::details::CheckedRangePolicy< SEED >::static_configure().
|
inlineprotectedvirtualinherited |
Performs the range checks and complains if needed.
Definition at line 348 of file RandomSeedPolicyBase.h.
References rndm::details::CheckedRangePolicy< SEED >::CheckRangeConfiguration(), art::errors::Configuration, rndm::details::RangeCheckHelper< SEED >::configure(), rndm::details::RangeCheckHelper< SEED >::EnsureRange(), rndm::details::RangeCheckHelper< SEED >::isConfigured(), rndm::details::RangeCheckHelper< SEED >::missingConfig(), and rndm::details::CheckedRangePolicy< SEED >::static_configure().
|
inlinevirtualinherited |
Returns a random number specific to an event.
Definition at line 69 of file BasePolicies.h.
Referenced by rndm::details::RandomSeedPolicyBase< seed_t >::getSeed().
|
inlinevirtualinherited |
Returns a random number specific to an event.
Definition at line 114 of file RandomSeedPolicyBase.h.
|
inlineinherited |
Returns the given name of the policy.
Definition at line 73 of file BasePolicies.h.
Referenced by rndm::details::CheckedRangePolicy< SEED >::CheckRangeConfiguration(), rndm::details::CheckedRangePolicy< SEED >::ensureRange(), and rndm::details::RandomSeedPolicyBase< seed_t >::print().
|
inlineinherited |
Returns the given name of the policy.
Definition at line 118 of file RandomSeedPolicyBase.h.
|
inlinevirtualinherited |
Returns the next random number.
Reimplemented from rndm::details::RandomSeedPolicyBase< SEED >.
Definition at line 281 of file BasePolicies.h.
References rndm::details::RandomSeedPolicyBase< SEED >::createSeed(), and seed.
|
inlineoverridevirtualinherited |
Returns the next random number.
Reimplemented from rndm::details::RandomSeedPolicyBase< SEED >.
Definition at line 326 of file RandomSeedPolicyBase.h.
References rndm::details::ValidSeed< SEED >::seed.
|
overridevirtual |
Prints the configuration of this policy.
Reimplemented from rndm::details::CheckedRangePolicy< SEED >.
|
overridevirtual |
Prints the configuration of this policy.
Reimplemented from rndm::details::CheckedRangePolicy< SEED >.
Definition at line 402 of file BasePolicies.h.
Referenced by rndm::details::AutoIncrementPolicy< SEED >::configure(), rndm::details::LinearMappingPolicy< SEED >::configure(), rndm::details::PredefinedSeedPolicy< SEED >::configure(), rndm::details::PredefinedOffsetPolicy< SEED >::configure(), and rndm::details::AutoIncrementPolicy< SEED >::createSeed().
|
protected |
|
protected |
Definition at line 392 of file BasePolicies.h.
References fhicl::ParameterSet::get().
Referenced by rndm::details::AutoIncrementPolicy< SEED >::configure(), rndm::details::LinearMappingPolicy< SEED >::configure(), rndm::details::PredefinedSeedPolicy< SEED >::configure(), rndm::details::PredefinedOffsetPolicy< SEED >::configure(), rndm::details::LinearMappingPolicy< SEED >::createSeed(), rndm::details::PredefinedOffsetPolicy< SEED >::createSeed(), and rndm::details::AutoIncrementPolicy< SEED >::createSeed().
|
inlineoverridevirtualinherited |
Returns whether the returned seed should be unique.
Reimplemented in rndm::details::PredefinedSeedPolicy< SEED >, rndm::details::PredefinedSeedPolicy< SEED >, and rndm::details::PerEventPolicy< SEED >.
Definition at line 80 of file BasePolicies.h.
|
inlinevirtualinherited |
Returns whether the returned seed should be unique.
Reimplemented in rndm::details::PredefinedSeedPolicy< SEED >, rndm::details::PredefinedSeedPolicy< SEED >, and rndm::details::PerEventPolicy< SEED >.
Definition at line 125 of file RandomSeedPolicyBase.h.
|
protected |
|
staticinherited |
An invalid seed.
Definition at line 51 of file BasePolicies.h.
Referenced by rndm::details::RandomSeedPolicyBase< seed_t >::createEventSeed(), rndm::details::PerEventPolicy< SEED >::createEventSeed(), and rndm::details::PerEventPolicy< SEED >::createSeed().
|
protectedinherited |
name of the policy
Definition at line 83 of file BasePolicies.h.
Referenced by rndm::details::RandomSeedPolicyBase< seed_t >::getName().
|
protected |
next seed delivered
Definition at line 380 of file BasePolicies.h.
Referenced by rndm::details::AutoIncrementPolicy< SEED >::configure(), rndm::details::LinearMappingPolicy< SEED >::configure(), rndm::details::AutoIncrementPolicy< SEED >::createSeed(), and rndm::details::LinearMappingPolicy< SEED >::createSeed().
|
protectedinherited |
Definition at line 296 of file BasePolicies.h.
Referenced by rndm::details::AutoIncrementPolicy< SEED >::configure(), rndm::details::LinearMappingPolicy< SEED >::configure(), rndm::details::PredefinedOffsetPolicy< SEED >::configure(), rndm::details::AutoIncrementPolicy< SEED >::createSeed(), rndm::details::LinearMappingPolicy< SEED >::createSeed(), rndm::details::PredefinedOffsetPolicy< SEED >::createSeed(), and rndm::details::PredefinedSeedPolicy< SEED >::static_configure().