Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooConvIntegrandBinding.h
Go to the documentation of this file.
1/// \cond ROOFIT_INTERNAL
2
3/*****************************************************************************
4 * Project: RooFit *
5 * Package: RooFitCore *
6 * File: $Id: RooConvIntegrandBinding.h,v 1.3 2007/05/11 09:11:30 verkerke Exp $
7 * Authors: *
8 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
9 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
10 * *
11 * Copyright (c) 2000-2005, Regents of the University of California *
12 * and Stanford University. All rights reserved. *
13 * *
14 * Redistribution and use in source and binary forms, *
15 * with or without modification, are permitted according to the terms *
16 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
17 *****************************************************************************/
18#ifndef ROO_CONV_INTEGRAND_BINDING
19#define ROO_CONV_INTEGRAND_BINDING
20
21#include "RooAbsFunc.h"
22
24class RooAbsReal;
25class RooArgSet;
26
27// RooAbsFunc representation of convolution integrands
29public:
31 const RooArgSet *nset = nullptr, bool clipInvalid = false);
32 ~RooConvIntegrandBinding() override;
33
34 double operator()(const double xvector[]) const override;
35 double getMinLimit(UInt_t dimension) const override;
36 double getMaxLimit(UInt_t dimension) const override;
37 inline void setNormalizationSet(const RooArgSet *nset)
38 {
39 // Use the supplied nset as normalization set for calls to func and model
40 _nset = nset;
41 }
42
43protected:
44 void loadValues(const double xvector[], bool clipInvalid = false) const;
45
46 const RooAbsReal *_func; ///< Pointer to input function
47 const RooAbsReal *_model; ///< Pointer to input resolution model
48
49 RooAbsRealLValue **_vars; ///< Array of pointers to variables
50 const RooArgSet *_nset; ///< Normalization set to be used for function evaluations
51 mutable bool _xvecValid; ///< If true _xvec defines a valid point
52 bool _clipInvalid; ///< If true, invalid x values are clipped into their valid range
53};
54
55#endif
56
57/// \endcond
unsigned int UInt_t
Definition RtypesCore.h:46
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
TRObject operator()(const T1 &t1) const
Abstract interface for evaluating a real-valued function of one real variable and performing numerica...
Definition RooAbsFunc.h:27
Abstract base class for objects that represent a real value that may appear on the left hand side of ...
Abstract base class for objects that represent a real value and implements functionality common to al...
Definition RooAbsReal.h:59
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition RooArgSet.h:24
Double_t x[n]
Definition legend1.C:17