library: libRooFit #include "RooRealSumPdf.h"

# RooRealSumPdf

class description - source file - inheritance tree (.pdf)

## class RooRealSumPdf : public RooAbsPdf

| Inheritance Chart:
`TObject`
| <- | `TNamed`
`RooPrintable`
| <- | `RooAbsArg`
| <- | `RooAbsReal`
| <- | `RooAbsPdf`
| <- | `RooRealSumPdf` |

        protected:

          void syncFuncIntList(const RooArgSet* intSet) const
          void syncFuncNormList(const RooArgSet* normSet) const

        public:

                            RooRealSumPdf(const char* name, const char* title)
                            RooRealSumPdf(const char* name, const char* title, RooAbsReal& func1, RooAbsReal& func2, RooAbsReal& coef1)
                            RooRealSumPdf(const char* name, const char* title, const RooArgList& funcList, const RooArgList& coefList)
                            RooRealSumPdf(const RooRealSumPdf& other, const char* name = "0")
                    virtual ~RooRealSumPdf()
           virtual Double_t analyticalIntegralWN(Int_t code, const RooArgSet* normSet, const char* rangeName = "0") const
             virtual Bool_t checkObservables(const RooArgSet* nset) const
             static TClass* Class()
           virtual TObject* clone(const char* newname) const
          const RooArgList& coefList() const
           virtual Double_t evaluate() const
             virtual Bool_t forceAnalyticalInt(const RooAbsArg&) const
          const RooArgList& funcList() const
              virtual Int_t getAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& numVars, const RooArgSet* normSet, const char* rangeName = "0") const
            virtual TClass* IsA() const
               virtual void ShowMembers(TMemberInspector& insp, char* parent)
               virtual void Streamer(TBuffer& b)
                       void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          RooAICRegistry _codeReg          Registry of component analytical integration codes
              RooArgSet* _lastFuncIntSet
              RooArgSet* _lastFuncNormSet
             RooArgList* _funcIntList      !
             RooArgList* _funcNormList     !
                  Bool_t _haveLastCoef
            RooListProxy _funcList         List of component FUNCs
            RooListProxy _coefList         List of coefficients
              TIterator* _funcIter         ! Iterator over FUNC list
              TIterator* _coefIter         ! Iterator over coefficient list

## Class Description

RooRealSumPdf(const char *name, const char *title) : RooAbsPdf(name,title), _codeReg(10), _lastFuncIntSet(0), _lastFuncNormSet(0), _funcIntList(0), _funcNormList(0), _haveLastCoef(kFALSE), _funcList("funcList","List of functions",this), _coefList("coefList","List of coefficients",this)

     Dummy constructor

RooRealSumPdf(const char *name, const char *title, RooAbsReal& func1, RooAbsReal& func2, RooAbsReal& coef1) : RooAbsPdf(name,title), _codeReg(10), _lastFuncIntSet(0), _lastFuncNormSet(0), _funcIntList(0), _funcNormList(0), _haveLastCoef(kFALSE), _funcList("funcProxyList","List of functions",this), _coefList("coefList","List of coefficients",this)

     Special constructor with two functions and one coefficient

RooRealSumPdf(const char *name, const char *title, const RooArgList& funcList, const RooArgList& coefList) : RooAbsPdf(name,title), _codeReg(10), _lastFuncIntSet(0), _lastFuncNormSet(0), _funcIntList(0), _funcNormList(0), _haveLastCoef(kFALSE), _funcList("funcProxyList","List of functions",this), _coefList("coefList","List of coefficients",this)

     Constructor from list of functions and list of coefficients.
     Each func list element (i) is paired with coefficient list element (i).
     The number of coefficients must be one less than to the number of functions,

     All functions and coefficients must inherit from RooAbsReal.

RooRealSumPdf(const RooRealSumPdf& other, const char* name) : RooAbsPdf(other,name), _codeReg(other._codeReg), _lastFuncIntSet(0), _lastFuncNormSet(0), _funcIntList(0), _funcNormList(0), _haveLastCoef(other._haveLastCoef), _funcList("funcProxyList",this,other._funcList), _coefList("coefList",this,other._coefList)

     Copy constructor

~RooRealSumPdf()

     Destructor

Double_t evaluate() const

     Calculate the current value

Bool_t checkObservables(const RooArgSet* nset) const

     Check if FUNC is valid for given normalization set.
     Coeffient and FUNC must be non-overlapping, but func-coefficient
     pairs may overlap each other

     For the moment, coefficients may not be dependents or derive
     from dependents

Int_t getAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& analVars, const RooArgSet* normSet2, const char* /*rangeName*/) const

     Handle trivial no-integration scenario

Double_t analyticalIntegralWN(Int_t code, const RooArgSet* normSet2, const char* /*rangeName*/) const

     Handle trivial passthrough scenario

void syncFuncIntList(const RooArgSet* intSet) const

void syncFuncNormList(const RooArgSet* normSet) const

### Inline Functions

                     TObject* clone(const char* newname) const
                       Bool_t forceAnalyticalInt(const RooAbsArg&) const
            const RooArgList& funcList() const
            const RooArgList& coefList() const
                      TClass* Class()
                      TClass* IsA() const
                         void ShowMembers(TMemberInspector& insp, char* parent)
                         void Streamer(TBuffer& b)
                         void StreamerNVirtual(TBuffer& b)

Last update: Tue Jun 28 18:14:52 2005
Copyright (c) 2000-2005, Regents of the University of California *