Logo ROOT  
Reference Guide
RooNumGenConfig.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Project: RooFit *
3 * Package: RooFitCore *
4 * File: $Id$
5 * Authors: *
6 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8 * *
9 * Copyright (c) 2000-2005, Regents of the University of California *
10 * and Stanford University. All rights reserved. *
11 * *
12 * Redistribution and use in source and binary forms, *
13 * with or without modification, are permitted according to the terms *
14 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15 *****************************************************************************/
16#ifndef ROO_NUM_GEN_CONFIG
17#define ROO_NUM_GEN_CONFIG
18
19#include "TObject.h"
20#include "RooCategory.h"
21#include "RooLinkedList.h"
22class RooNumGenFactory ;
24
25class RooNumGenConfig : public TObject, public RooPrintable {
26public:
27
29 RooNumGenConfig(const RooNumGenConfig& other) ;
31 virtual ~RooNumGenConfig();
32
33 // Return selected integration techniques for 1,2,N dimensional integrals
34 RooCategory& method1D(Bool_t cond, Bool_t cat) ;
35 RooCategory& method2D(Bool_t cond, Bool_t cat) ;
36 RooCategory& methodND(Bool_t cond, Bool_t cat) ;
37 const RooCategory& method1D(Bool_t cond, Bool_t cat) const ;
38 const RooCategory& method2D(Bool_t cond, Bool_t cat) const ;
39 const RooCategory& methodND(Bool_t cond, Bool_t cat) const ;
40
41
43
45 const RooArgSet& getConfigSection(const char* name) const ;
46 RooArgSet& getConfigSection(const char* name) ;
47
48 void printMultiline(std::ostream &os, Int_t content, Bool_t verbose, TString indent= "") const;
49
50 inline virtual void Print(Option_t *options= 0) const {
52 }
53 virtual StyleOption defaultPrintStyle(Option_t* opt) const ;
54
55
56protected:
57
58 RooCategory _method1D ; // Selects integration method for 1D p.d.f.s
59 RooCategory _method1DCat ; // Selects integration method for 1D p.d.f.s with categories
60 RooCategory _method1DCond ; // Selects integration method for 1D conditional p.d.f.s
61 RooCategory _method1DCondCat ; // Selects integration method for 1D conditional p.d.f.s with categories
62
63 RooCategory _method2D ; // Selects integration method for 2D p.d.f.s
64 RooCategory _method2DCat ; // Selects integration method for 2D p.d.f.s with categories
65 RooCategory _method2DCond ; // Selects integration method for 2D conditional p.d.f.s
66 RooCategory _method2DCondCat ; // Selects integration method for 2D conditional p.d.f.s with categories
67
68 RooCategory _methodND ; // Selects integration method for ND p.d.f.s
69 RooCategory _methodNDCat ; // Selects integration method for ND p.d.f.s with categories
70 RooCategory _methodNDCond ; // Selects integration method for ND conditional p.d.f.s
71 RooCategory _methodNDCondCat ; // Selects integration method for ND conditional p.d.f.s with categories
72
73 RooLinkedList _configSets ; // List of configuration sets for individual integration methods
74
75 ClassDef(RooNumGenConfig,1) // Numeric (MC) Event generator configuration
76};
77
78#endif
79
80
int Int_t
Definition: CPyCppyy.h:43
bool Bool_t
Definition: RtypesCore.h:63
const char Option_t
Definition: RtypesCore.h:66
#define ClassDef(name, id)
Definition: Rtypes.h:325
static void indent(ostringstream &buf, int indent_level)
const char * proto
Definition: civetweb.c:16604
Class RooAbsNumGenerator is the abstract base class for MC event generator implementations like RooAc...
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition: RooArgSet.h:35
RooCategory is an object to represent discrete states.
Definition: RooCategory.h:27
RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in ...
Definition: RooLinkedList.h:37
RooNumGenConfig holds the configuration parameters of the various numeric integrators used by RooReal...
RooCategory & method2D(Bool_t cond, Bool_t cat)
RooCategory _methodND
RooCategory _methodNDCondCat
static RooNumGenConfig & defaultConfig()
Return reference to instance of default numeric integrator configuration object.
virtual ~RooNumGenConfig()
Destructor.
RooNumGenConfig()
Constructor.
RooCategory _method2D
RooCategory _method1DCondCat
RooCategory _method2DCat
RooCategory _method1DCond
RooCategory _method2DCondCat
virtual StyleOption defaultPrintStyle(Option_t *opt) const
RooCategory & methodND(Bool_t cond, Bool_t cat)
RooCategory _method1DCat
Bool_t addConfigSection(const RooAbsNumGenerator *proto, const RooArgSet &defaultConfig)
Add a configuration section for a particular integrator.
RooCategory & method1D(Bool_t cond, Bool_t cat)
RooCategory _method1D
RooCategory _method2DCond
RooLinkedList _configSets
const RooArgSet & getConfigSection(const char *name) const
Retrieve configuration information specific to integrator with given name.
virtual void Print(Option_t *options=0) const
This method must be overridden when a class wants to print itself.
RooNumGenConfig & operator=(const RooNumGenConfig &other)
Assignment operator from other RooNumGenConfig.
RooCategory _methodNDCat
RooCategory _methodNDCond
void printMultiline(std::ostream &os, Int_t content, Bool_t verbose, TString indent="") const
Detailed printing interface.
RooNumGenFactory is a factory to instantiate numeric integrators from a given function binding and a ...
RooPlotable is a 'mix-in' base class that define the standard RooFit plotting and printing methods.
Definition: RooPrintable.h:25
virtual Int_t defaultPrintContents(Option_t *opt) const
Default choice of contents to be printed (name and value)
static std::ostream & defaultPrintStream(std::ostream *os=0)
Return a reference to the current default stream to use in Print().
virtual void printStream(std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
Print description of object on ostream, printing contents set by contents integer,...
Mother of all ROOT objects.
Definition: TObject.h:37
Basic string class.
Definition: TString.h:136
static const std::string name("name")