7 #ifndef ROOMOMENTMORPHFUNCND 8 #define ROOMOMENTMORPHFUNCND 47 Grid2(
const std::vector<RooAbsBinning *> binnings)
49 for (
unsigned int i = 0; i < binnings.size(); i++) {
62 mutable std::vector<RooAbsBinning *>
_grid;
64 mutable std::map<std::vector<int>,
int>
_pdfMap;
66 mutable std::vector<std::vector<double>>
_nref;
76 : _sumFunc(&sumFunc), _tracker(&tracker)
122 template <
typename T>
124 typename std::vector<T>::const_iterator
begin;
125 typename std::vector<T>::const_iterator
end;
126 typename std::vector<T>::const_iterator
me;
129 template <
typename T>
130 static void cartesian_product(std::vector<std::vector<T>> &out, std::vector<std::vector<T>> &in);
131 template <
typename Iterator>
133 void findShape(
const std::vector<double> &
x)
const;
157 inline int sij(
const int &i,
const int &j)
const {
return (i * _obsList.
getSize() + j); }
void setMode(const Setting &setting)
TIterator * _obsItr
do not persist
CacheElem(RooAbsReal &sumFunc, RooChangeTracker &tracker, const RooArgList &flist)
std::vector< T >::const_iterator me
RooAbsReal * sumFunc(const RooArgSet *nset)
void initializeObservables(const RooArgList &obsList)
Grid2(const RooAbsBinning &binning_x)
CacheElem * getCache(const RooArgSet *nset) const
Bool_t setBinIntegrator(RooArgSet &allVars)
void initializeParameters(const RooArgList &parList)
void addPdf(const RooAbsReal &func, int bin_x)
std::vector< T >::const_iterator begin
int sij(const int &i, const int &j) const
Grid2(const std::vector< RooAbsBinning *> binnings)
virtual RooAbsBinning * clone(const char *name=0) const =0
Iterator abstract base class.
std::map< std::vector< int >, int > _pdfMap
virtual ~RooMomentMorphFuncND()
#define ClassDef(name, id)
std::vector< int > _squareIdx
void operModeHook(RooAbsArg::OperMode)
Interface for operation mode change calls.
std::vector< std::vector< double > > _squareVec
virtual Double_t getVal(const RooArgSet *set=0) const
RooObjCacheManager _cacheMgr
std::vector< int > _nnuis
RooRealVar represents a fundamental (non-derived) real valued object.
std::vector< RooAbsBinning * > _grid
static void cartesian_product(std::vector< std::vector< T >> &out, std::vector< std::vector< T >> &in)
static bool next_combination(const Iterator first, Iterator k, const Iterator last)
std::vector< T >::const_iterator end
RooAbsCacheElement is the abstract base class for objects to be stored in RooAbsCache cache manager o...
Double_t evaluate() const
void useHorizontalMorphing(Bool_t val)
RooListProxy is the concrete proxy for RooArgList objects.
Grid2(const RooAbsBinning &binning_x, const RooAbsBinning &binning_y, const RooAbsBinning &binning_z)
RooAbsBinning is the abstract base class for RooRealVar binning definitions This class defines the in...
virtual TObject * clone(const char *newname) const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Class RooObjCacheManager is an implementation of class RooCacheManager<RooAbsCacheElement> and specia...
void findShape(const std::vector< double > &x) const
Grid2(const RooAbsBinning &binning_x, const RooAbsBinning &binning_y)
RooChangeTracker * _tracker
RooChangeTracker is a meta object that tracks value changes in a given set of RooAbsArgs by registeri...
Mother of all ROOT objects.
RooSetProxy is the concrete proxy for RooArgSet objects.
std::vector< std::vector< double > > _nref
void addBinning(const RooAbsBinning &binning)
virtual Bool_t selfNormalized() const