24#include "marley/EventProcessor.hh"
32 class Weighter :
public EventProcessor {
39 inline virtual ~Weighter() =
default;
56 inline std::vector< std::shared_ptr< WeightCalculator > >&
67 std::vector< std::shared_ptr< WeightCalculator > >
calc_vec_;
Stores event-related information.
The MARLEY Event generator.
Abstract base class for objects that compute numerical weights for an input event.
static const std::string CV_WEIGHT_NAME
Reserved name for the central-value weights (required for compliance with the NuHepMC standard)
std::vector< std::shared_ptr< WeightCalculator > > & get_weight_calculators()
Provides non-const access to the owned vector of weight calculators.
std::vector< std::shared_ptr< WeightCalculator > > calc_vec_
Owned vector of weight calculators used to actually compute weights.
std::vector< std::string > get_weight_names() const
Returns the names of the weights associated with all configured weight calculators.
void set_use_cv_weight(bool use_it)
Toggles inclusion of the central-value weight.
std::shared_ptr< marley::WeightCalculator > make_cv_weight_calc()
Helper function to create the weight calculator that handles the central-value weights during event g...
virtual void process_event(HepMC3::GenEvent &event, marley::Generator &gen) override
Processes an input GenEvent object.