Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/RooClassFactory.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*****************************************************************************
0002  * Project: RooFit                                                           *
0003  * Package: RooFitCore                                                       *
0004  *    File: $Id: RooClassFactory.h,v 1.2 2007/05/11 09:11:30 verkerke Exp $
0005  * Authors:                                                                  *
0006  *   WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu       *
0007  *   DK, David Kirkby,    UC Irvine,         dkirkby@uci.edu                 *
0008  *                                                                           *
0009  * Copyright (c) 2000-2005, Regents of the University of California          *
0010  *                          and Stanford University. All rights reserved.    *
0011  *                                                                           *
0012  * Redistribution and use in source and binary forms,                        *
0013  * with or without modification, are permitted according to the terms        *
0014  * listed in LICENSE (http://roofit.sourceforge.net/license.txt)             *
0015  *****************************************************************************/
0016 
0017 #ifndef RooFit_RooClassFactory_h
0018 #define RooFit_RooClassFactory_h
0019 
0020 #include <string>
0021 
0022 class RooAbsReal;
0023 class RooAbsPdf;
0024 class RooArgList;
0025 
0026 // RooFit class code and instance factory
0027 class RooClassFactory {
0028 
0029 public:
0030    static RooAbsReal *makeFunctionInstance(std::string const &className, std::string const &name,
0031                                            std::string const &expression, const RooArgList &vars,
0032                                            std::string const &intExpression = "");
0033    static RooAbsReal *makeFunctionInstance(std::string const &name, std::string const &expression,
0034                                            const RooArgList &vars, std::string const &intExpression = "");
0035 
0036    static RooAbsPdf *makePdfInstance(std::string const &className, std::string const &name,
0037                                      std::string const &expression, const RooArgList &vars,
0038                                      std::string const &intExpression = "");
0039    static RooAbsPdf *makePdfInstance(std::string const &name, std::string const &expression, const RooArgList &vars,
0040                                      std::string const &intExpression = "");
0041 
0042    static bool makeAndCompilePdf(std::string const &name, std::string const &expression, const RooArgList &vars,
0043                                  std::string const &intExpression = "");
0044    static bool makeAndCompileFunction(std::string const &name, std::string const &expression, const RooArgList &args,
0045                                       std::string const &intExpression = "");
0046 
0047    static bool makePdf(std::string const &name, std::string const &realArgNames = "",
0048                        std::string const &catArgNames = "", std::string const &expression = "1.0",
0049                        bool hasAnaInt = false, bool hasIntGen = false, std::string const &intExpression = "");
0050    static bool makeFunction(std::string const &name, std::string const &realArgNames = "",
0051                             std::string const &catArgNames = "", std::string const &expression = "1.0",
0052                             bool hasAnaInt = false, std::string const &intExpression = "");
0053    static bool makeClass(std::string const &baseName, const std::string &className,
0054                          std::string const &realArgNames = "", std::string const &catArgNames = "",
0055                          std::string const &expression = "1.0", bool hasAnaInt = false, bool hasIntGen = false,
0056                          std::string const &intExpression = "");
0057 };
0058 
0059 #endif