|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef GENERATORFILTERS_XAODCHARGEDTRACKSWEIGHTFILTER_H
6 #define GENERATORFILTERS_XAODCHARGEDTRACKSWEIGHTFILTER_H
9 #include "GaudiKernel/ServiceHandle.h"
16 class HepRandomEngine;
33 Point(
double _x,
double _y,
double _slope) :
50 double value(
int nch)
const;
56 const EventContext& ctx)
const;
StatusCode initialize(std::vector< double > &x, std::vector< double > &y)
StatusCode event_weight(double &event_weight) const
read the event weight
std::vector< double > m_weight_fun_x
Spline points.
double value(int nch) const
get value for certain x
xAODChargedTracksWeightFilter(const std::string &name, ISvcLocator *pSvcLocator)
double m_nevents_selected
Number of events passing selection (weighted, orig weight)
std::vector< Point > points
n-1 spline points filled at initialization
double m_nevents_accepted
Number of events passing weight-filtering (weighted, origin weight)
Linear spline representation of a function used to calculate weights.
Filter events based on presence of charged tracks.
double get_nch_weight(int nch) const
get weight to filter and weight events
Base class for event generator filtering modules.
std::vector< double > m_weight_fun_y
StatusCode filterInitialize()
::StatusCode StatusCode
StatusCode definition for legacy code.
void weight_event(double weight)
modify the event weight by weight
double get_minimum(double min, double max) const
get minimum over certain range (requires initialization to extrapolate)
ServiceHandle< IAthRNGSvc > m_rndmSvc
Rndm generator service.
Point(double _x, double _y, double _slope)
Single point and slope to next point.
StatusCode filterFinalize()
CLHEP::HepRandomEngine * getRandomEngine(const std::string &streamName, const EventContext &ctx) const