Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooClassFactory.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Project: RooFit *
3 * Package: RooFitCore *
4 * File: $Id: RooClassFactory.h,v 1.2 2007/05/11 09:11:30 verkerke Exp $
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
17#ifndef RooFit_RooClassFactory_h
18#define RooFit_RooClassFactory_h
19
20#include <string>
21
22class RooAbsReal;
23class RooAbsPdf;
24class RooArgList;
25
26// RooFit class code and instance factory
28
29public:
30 static RooAbsReal *makeFunctionInstance(std::string const &className, std::string const &name,
31 std::string const &expression, const RooArgList &vars,
32 std::string const &intExpression = "");
33 static RooAbsReal *makeFunctionInstance(std::string const &name, std::string const &expression,
34 const RooArgList &vars, std::string const &intExpression = "");
35
36 static RooAbsPdf *makePdfInstance(std::string const &className, std::string const &name,
37 std::string const &expression, const RooArgList &vars,
38 std::string const &intExpression = "");
39 static RooAbsPdf *makePdfInstance(std::string const &name, std::string const &expression, const RooArgList &vars,
40 std::string const &intExpression = "");
41
42 static bool makeAndCompilePdf(std::string const &name, std::string const &expression, const RooArgList &vars,
43 std::string const &intExpression = "");
44 static bool makeAndCompileFunction(std::string const &name, std::string const &expression, const RooArgList &args,
45 std::string const &intExpression = "");
46
47 static bool makePdf(std::string const &name, std::string const &realArgNames = "",
48 std::string const &catArgNames = "", std::string const &expression = "1.0",
49 bool hasAnaInt = false, bool hasIntGen = false, std::string const &intExpression = "");
50 static bool makeFunction(std::string const &name, std::string const &realArgNames = "",
51 std::string const &catArgNames = "", std::string const &expression = "1.0",
52 bool hasAnaInt = false, std::string const &intExpression = "");
53 static bool makeClass(std::string const &baseName, const std::string &className,
54 std::string const &realArgNames = "", std::string const &catArgNames = "",
55 std::string const &expression = "1.0", bool hasAnaInt = false, bool hasIntGen = false,
56 std::string const &intExpression = "");
57};
58
59#endif
char name[80]
Definition TGX11.cxx:110
Abstract interface for all probability density functions.
Definition RooAbsPdf.h:40
Abstract base class for objects that represent a real value and implements functionality common to al...
Definition RooAbsReal.h:59
RooArgList is a container object that can hold multiple RooAbsArg objects.
Definition RooArgList.h:22
Similar to TTree::MakeClass(), generates skeleton code for RooAbsPdf and RooAbsReal functions given a...
static bool makePdf(std::string const &name, std::string const &realArgNames="", std::string const &catArgNames="", std::string const &expression="1.0", bool hasAnaInt=false, bool hasIntGen=false, std::string const &intExpression="")
Write code for a RooAbsPdf implementation with class name 'name'.
static bool makeAndCompilePdf(std::string const &name, std::string const &expression, const RooArgList &vars, std::string const &intExpression="")
static RooAbsReal * makeFunctionInstance(std::string const &className, std::string const &name, std::string const &expression, const RooArgList &vars, std::string const &intExpression="")
Write, compile and load code and instantiate object for a RooAbsReal implementation with class name '...
static bool makeFunction(std::string const &name, std::string const &realArgNames="", std::string const &catArgNames="", std::string const &expression="1.0", bool hasAnaInt=false, std::string const &intExpression="")
Write code for a RooAbsReal implementation with class name 'name', taking RooAbsReal arguments with n...
static RooAbsPdf * makePdfInstance(std::string const &className, std::string const &name, std::string const &expression, const RooArgList &vars, std::string const &intExpression="")
Write, compile and load code and instantiate object for a RooAbsPdf implementation with class name 'n...
static bool makeClass(std::string const &baseName, const std::string &className, std::string const &realArgNames="", std::string const &catArgNames="", std::string const &expression="1.0", bool hasAnaInt=false, bool hasIntGen=false, std::string const &intExpression="")
Write code for a 'baseName' implementation with class name 'className', taking RooAbsReal arguments w...
static bool makeAndCompileFunction(std::string const &name, std::string const &expression, const RooArgList &args, std::string const &intExpression="")
Write, compile and load code for a RooAbsReal implementation with class name 'name',...