Logo ROOT  
Reference Guide
RooRealL.h
Go to the documentation of this file.
1/*
2 * Project: RooFit
3 * Authors:
4 * PB, Patrick Bos, Netherlands eScience Center, p.bos@esciencecenter.nl
5 *
6 * Copyright (c) 2021, CERN
7 *
8 * Redistribution and use in source and binary forms,
9 * with or without modification, are permitted according to the terms
10 * listed in LICENSE (http://roofit.sourceforge.net/license.txt)
11 */
12
13#ifndef ROOT_ROOFIT_TESTSTATISTICS_RooRealL
14#define ROOT_ROOFIT_TESTSTATISTICS_RooRealL
15
16#include "RooAbsReal.h"
17#include "RooSetProxy.h"
18
19#include "Rtypes.h" // ClassDef, ClassImp
20
21#include <memory> // shared_ptr
22
23namespace RooFit {
24namespace TestStatistics {
25
26class RooAbsL;
27
28class RooRealL : public RooAbsReal {
29public:
30 RooRealL(const char *name, const char *title, std::shared_ptr<RooAbsL> likelihood);
31 RooRealL(const RooRealL &other, const char *name = 0);
32
33 inline TObject *clone(const char *newname) const override { return new RooRealL(*this, newname); }
34
35 inline double globalNormalization() const
36 {
37 // Default value of global normalization factor is 1.0
38 return 1.0;
39 }
40
41 inline double getCarry() const { return eval_carry; }
42 inline double defaultErrorLevel() const override { return 0.5; }
43
44protected:
45 double evaluate() const override;
46
47private:
48 std::shared_ptr<RooAbsL> likelihood_;
49 mutable double eval_carry = 0;
50 RooSetProxy vars_proxy_; ///< sets up client-server connections
51 RooArgSet vars_obs_; ///< list of observables
52
54};
55
56} // namespace TestStatistics
57} // namespace RooFit
58
59#endif // ROOT_ROOFIT_TESTSTATISTICS_RooRealL
#define ClassDefOverride(name, id)
Definition: Rtypes.h:339
char name[80]
Definition: TGX11.cxx:110
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:64
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition: RooArgSet.h:57
RooAbsReal that wraps RooAbsL likelihoods for use in RooFit outside of the RooMinimizer context.
Definition: RooRealL.h:28
std::shared_ptr< RooAbsL > likelihood_
Definition: RooRealL.h:48
double defaultErrorLevel() const override
Definition: RooRealL.h:42
TObject * clone(const char *newname) const override
Definition: RooRealL.h:33
double evaluate() const override
Evaluate this PDF / function / constant. Needs to be overridden by all derived classes.
Definition: RooRealL.cxx:44
RooSetProxy vars_proxy_
sets up client-server connections
Definition: RooRealL.h:50
double globalNormalization() const
Definition: RooRealL.h:35
RooArgSet vars_obs_
list of observables
Definition: RooRealL.h:51
RooRealL(const char *name, const char *title, std::shared_ptr< RooAbsL > likelihood)
Definition: RooRealL.cxx:30
Mother of all ROOT objects.
Definition: TObject.h:37
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...
Definition: Common.h:18