+enum e_event_generator_type {
+ e_generator_uniform, e_generator_exponential, e_generator_weibull
+};
+
+typedef struct probabilist_event_generator {
+ enum e_event_generator_type type;
+ RngStream rng_stream;
+ double next_value;
+ union {
+ struct {
+ double min;
+ double max;
+ } s_uniform_parameters;
+ struct {
+ double rate;
+ } s_exponential_parameters;
+ struct {
+ double scale;
+ double shape;
+ } s_weibull_parameters;
+ };
+} s_probabilist_event_generator_t;
+