library: libRooFit #include "RooImproperIntegrator1D.h"

# RooImproperIntegrator1D

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

## class RooImproperIntegrator1D : public RooAbsIntegrator

| Inheritance Chart:

`TObject`

<-

`RooAbsIntegrator`

<-

`RooImproperIntegrator1D`

        protected:

                                         void initialize(const RooAbsFunc* function = 0)
          RooImproperIntegrator1D::LimitsCase limitsCase() const

        public:

                                    RooImproperIntegrator1D()
                                    RooImproperIntegrator1D(const RooAbsFunc& function)
                                    RooImproperIntegrator1D(const RooAbsFunc& function, const RooNumIntConfig& config)
                                    RooImproperIntegrator1D(const RooAbsFunc& function, Double_t xmin, Double_t xmax, const RooNumIntConfig& config)
                            virtual ~RooImproperIntegrator1D()
                     virtual Bool_t canIntegrate1D() const
                     virtual Bool_t canIntegrate2D() const
                     virtual Bool_t canIntegrateND() const
                     virtual Bool_t canIntegrateOpenEnded() const
                     virtual Bool_t checkLimits() const
                     static TClass* Class()
          virtual RooAbsIntegrator* clone(const RooAbsFunc& function, const RooNumIntConfig& config) const
                   virtual Double_t integral(const Double_t* yvec = 0)
                    virtual TClass* IsA() const
                     virtual Bool_t setLimits(Double_t xmin, Double_t xmax)
                     virtual Bool_t setUseIntegrandLimits(Bool_t flag)
                       virtual void ShowMembers(TMemberInspector& insp, char* parent)
                       virtual void Streamer(TBuffer& b)
                               void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          RooImproperIntegrator1D::LimitsCase _case
                                     Double_t _xmin
                                     Double_t _xmax
                                       Bool_t _useIntegrandLimits
                                  RooAbsFunc* _origFunc
                             RooInvTransform* _function
                              RooNumIntConfig _config
                             RooIntegrator1D* _integrator1
                             RooIntegrator1D* _integrator2
                             RooIntegrator1D* _integrator3

        public:

          static const RooImproperIntegrator1D::LimitsCase Invalid
          static const RooImproperIntegrator1D::LimitsCase ClosedBothEnds
          static const RooImproperIntegrator1D::LimitsCase OpenBothEnds
          static const RooImproperIntegrator1D::LimitsCase OpenBelowSpansZero
          static const RooImproperIntegrator1D::LimitsCase OpenBelow
          static const RooImproperIntegrator1D::LimitsCase OpenAboveSpansZero
          static const RooImproperIntegrator1D::LimitsCase OpenAbove

## Class Description

RooImproperIntegrator1D()

RooImproperIntegrator1D(const RooAbsFunc& function) : RooAbsIntegrator(function), _useIntegrandLimits(kTRUE), _origFunc((RooAbsFunc*)&function), _function(0), _integrator1(0), _integrator2(0), _integrator3(0)

RooImproperIntegrator1D(const RooAbsFunc& function, const RooNumIntConfig& config) : RooAbsIntegrator(function), _useIntegrandLimits(kTRUE), _origFunc((RooAbsFunc*)&function), _function(0), _config(config), _integrator1(0), _integrator2(0), _integrator3(0)

RooImproperIntegrator1D(const RooAbsFunc& function, Double_t xmin, Double_t xmax, const RooNumIntConfig& config) : RooAbsIntegrator(function), _xmin(xmin), _xmax(xmax), _useIntegrandLimits(kFALSE), _origFunc((RooAbsFunc*)&function), _function(0), _config(config), _integrator1(0), _integrator2(0), _integrator3(0)

RooAbsIntegrator* clone(const RooAbsFunc& function, const RooNumIntConfig& config) const

void initialize(const RooAbsFunc* function)

~RooImproperIntegrator1D()

Bool_t setLimits(Double_t xmin, Double_t xmax)

     Change our integration limits. Return kTRUE if the new limits are
     ok, or otherwise kFALSE. Always returns kFALSE and does nothing
     if this object was constructed to always use our integrand's limits.

Bool_t checkLimits() const

     Analyze the current limits to see if the same case applies.

Double_t integral(const Double_t* yvec)

### Inline Functions

                                         Bool_t setUseIntegrandLimits(Bool_t flag)
                                         Bool_t canIntegrate1D() const
                                         Bool_t canIntegrate2D() const
                                         Bool_t canIntegrateND() const
                                         Bool_t canIntegrateOpenEnded() const
            RooImproperIntegrator1D::LimitsCase limitsCase() 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:13:12 2005
Copyright (c) 2000-2005, Regents of the University of California *