5 #include "sbnanaobj/StandardRecord/Proxy/FwdDeclare.h"
17 ISyst(
const std::string& shortName,
18 const std::string& latexName,
19 bool applyPenalty =
true,
35 virtual double Penalty(
double x)
const;
49 virtual void Shift(
double sigma,
51 double& weight)
const = 0;
process_name opflash particleana ie x
ISyst(const std::string &shortName, const std::string &latexName, bool applyPenalty=true, double min=-3, double max=+3)
virtual bool ApplyPenalty() const
Should a penalty be applied for this shift?
virtual double Max() const
process_name opflashCryoW ana
virtual double Min() const
Return the min/max value for this syst.
Encapsulate code to systematically shift a caf::StandardRecord.
caf::Proxy< caf::SRSlice > SRSliceProxy
virtual std::string ShortName() const final
The name printed out to the screen.
virtual int PredInterpMaxNSigma() const
void operator=(const ISyst &)=delete
virtual std::string LatexName() const final
The name used on plots (ROOT's TLatex syntax)
virtual double Penalty(double x) const
virtual void Shift(double sigma, caf::SRSliceProxy *sr, double &weight) const =0
Perform the systematic shift.