33 #ifndef GENBB_HELP_COMBINED_PARTICLE_GENERATOR_H 34 #define GENBB_HELP_COMBINED_PARTICLE_GENERATOR_H 1 130 virtual void reset();
139 void dump(std::ostream & out_,
const std::string & title_,
const std::string & indent_ =
"")
const;
145 bool compute_classification_ =
true);
159 unsigned long _seed_;
174 #endif // GENBB_HELP_COMBINED_PARTICLE_GENERATOR_H void set_mode(int mode_)
Set the generation mode.
virtual void reset()
Reset.
std::string name
Name.
Definition: combined_particle_generator.h:77
virtual void _load_next(primary_event &event_, bool compute_classification_=true)
Main generation function.
Particle generator entry.
Definition: combined_particle_generator.h:70
Fixed time delay.
Definition: combined_particle_generator.h:62
GENBB particle generator abstract base class.
Definition: i_genbb.h:59
bool is_mode_plain_probability() const
Check if generation mode is based on plain probability.
Branching ratios given by absolute activity.
Definition: combined_particle_generator.h:93
double time_width
Time delay constant (only range or gaussian)
Definition: combined_particle_generator.h:82
Gaussian ranged time delay.
Definition: combined_particle_generator.h:65
bool is_valid() const
Check validity.
Definition: combined_particle_generator.h:66
Cascade of events from a time sequence.
Definition: combined_particle_generator.h:94
bool is_mode_activity() const
Check if generation mode is based on activity.
virtual bool is_initialized() const
Check initialization status.
double prob
Probability.
Definition: combined_particle_generator.h:78
virtual void initialize(const datatools::properties &setup_, datatools::service_manager &service_manager_, detail::pg_dict_type &dictionary_)
Main initialization interface method.
DOCD_CLASS_DECLARATION(my::algo)
Declaration of the OCD support for the my::algo class.
Undefined mode.
Definition: combined_particle_generator.h:91
const mygsl::rng & get_random() const
Return a non-mutable random generator.
mode_type
Generation mode.
Definition: combined_particle_generator.h:90
#define GENBB_PG_REGISTRATION_INTERFACE(GENBB_CLASS_NAME)
Definition: genbb_macros.h:22
double time
Time delay constant.
Definition: combined_particle_generator.h:81
Top-level namespace of the Bayeux/genbb_help module library.
Definition: alpha_decay.h:51
time_delay_type time_mode
Time delay mode.
Definition: combined_particle_generator.h:80
Random exponential time delay.
Definition: combined_particle_generator.h:63
A primary event from a Monte-Carlo generator.
Definition: primary_event.h:60
i_genbb * pg
Reference to a particle generator.
Definition: combined_particle_generator.h:83
double cumul_prob
Cumulated probability.
Definition: combined_particle_generator.h:79
void dump(std::ostream &out_, const std::string &title_, const std::string &indent_="") const
Smart dump.
virtual bool has_next()
Check next generation event.
Random ranged time delay.
Definition: combined_particle_generator.h:64
time_delay_type
Time delay mode.
Definition: combined_particle_generator.h:60
bool is_mode_time() const
Check if generation mode is based on time generation.
virtual bool can_external_random() const
Check existence of external random.
std::map< std::string, pg_entry_type > pg_dict_type
Definition: pg_tools.h:134
std::string label
Label.
Definition: combined_particle_generator.h:76
mygsl::rng & grab_random()
Return a mutable random generator.
combined_particle_generator()
Constructor.
Undefined time delay mode.
Definition: combined_particle_generator.h:61
Branching ratios given by probability.
Definition: combined_particle_generator.h:92
Generator for combined generators.
Definition: combined_particle_generator.h:54
virtual ~combined_particle_generator()
Destructor.
Pseudo random number generator.
Definition: rng.h:53
std::vector< entry_type > pg_col_type
Collection of particle generator entry type.
Definition: combined_particle_generator.h:87