Warning, file /include/root/RooTruthModel.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef ROO_TRUTH_MODEL
0017 #define ROO_TRUTH_MODEL
0018
0019 #include "RooResolutionModel.h"
0020
0021 class RooTruthModel : public RooResolutionModel {
0022 public:
0023
0024 RooTruthModel() = default;
0025 RooTruthModel(const char *name, const char *title, RooAbsRealLValue& x) ;
0026 RooTruthModel(const RooTruthModel& other, const char* name=nullptr) : RooResolutionModel{other, name} {}
0027 TObject* clone(const char* newname) const override { return new RooTruthModel(*this,newname) ; }
0028
0029 Int_t basisCode(const char* name) const override ;
0030
0031 RooAbsGenContext* modelGenContext(const RooAbsAnaConvPdf& convPdf, const RooArgSet &vars,
0032 const RooDataSet *prototype=nullptr, const RooArgSet* auxProto=nullptr,
0033 bool verbose= false) const override;
0034
0035 Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, bool staticInitOK=true) const override;
0036 void generateEvent(Int_t code) override;
0037
0038 Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=nullptr) const override ;
0039 double analyticalIntegral(Int_t code, const char* rangeName=nullptr) const override ;
0040
0041 void doEval(RooFit::EvalContext &) const override;
0042 inline bool canComputeBatchWithCuda() const override { return true; }
0043
0044 protected:
0045 double evaluate() const override ;
0046 void changeBasis(RooFormulaVar* basis) override ;
0047
0048 ClassDefOverride(RooTruthModel,1)
0049 };
0050
0051 #endif