Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:10:16

0001 // @(#)root/mathcore:$Id$
0002 // Author: L. Moneta Fri Dec 22 14:43:33 2006
0003 
0004 /**********************************************************************
0005  *                                                                    *
0006  * Copyright (c) 2006  LCG ROOT Math Team, CERN/PH-SFT                *
0007  *                                                                    *
0008  *                                                                    *
0009  **********************************************************************/
0010 
0011 // Header file for class Factory
0012 
0013 #ifndef ROOT_Math_Factory
0014 #define ROOT_Math_Factory
0015 
0016 #include <string>
0017 
0018 
0019 namespace ROOT {
0020 
0021    namespace Math {
0022 
0023    class Minimizer;
0024    class DistSampler;
0025 
0026 //___________________________________________________________________________
0027 /**
0028    Factory  class holding static functions to create the interfaces like ROOT::Math::Minimizer
0029    via the Plugin Manager
0030 */
0031 class Factory {
0032       public:
0033 
0034    /**
0035       static method to create the corresponding Minimizer given the string
0036       Supported Minimizers types are:
0037       Minuit (TMinuit), Minuit2, GSLMultiMin, GSLMultiFit, GSLSimAn, Linear, Fumili, Genetic
0038       If no name is given use default values defined in  ROOT::Math::MinimizerOptions
0039       See also there for the possible options and algorithms available
0040     */
0041    static ROOT::Math::Minimizer * CreateMinimizer(const std::string & minimizerType = "", const std::string & algoType = "");
0042 
0043    /**
0044       static method to create the distribution sampler class given a string specifying the type
0045       Supported sampler types are:
0046       Unuran, Foam
0047       If no name is given use default values defined in  DistSamplerOptions
0048     */
0049    static ROOT::Math::DistSampler * CreateDistSampler(const std::string & samplerType ="");
0050 
0051 
0052 };
0053 
0054    } // end namespace Fit
0055 
0056 } // end namespace ROOT
0057 
0058 
0059 #endif /* ROOT_Fit_MinimizerFactory */