Factory.h

Go to the documentation of this file.
00001 // @(#)root/mathcore:$Id: Factory.h 37448 2010-12-09 20:20:56Z moneta $
00002 // Author: L. Moneta Fri Dec 22 14:43:33 2006
00003 
00004 /**********************************************************************
00005  *                                                                    *
00006  * Copyright (c) 2006  LCG ROOT Math Team, CERN/PH-SFT                *
00007  *                                                                    *
00008  *                                                                    *
00009  **********************************************************************/
00010 
00011 // Header file for class Factory
00012 
00013 #ifndef ROOT_Math_Factory
00014 #define ROOT_Math_Factory
00015 
00016 #include <string>
00017 
00018 
00019 namespace ROOT { 
00020 
00021    namespace Math { 
00022 
00023    class Minimizer; 
00024    class DistSampler;   
00025    
00026 //___________________________________________________________________________
00027 /** 
00028    Factory  class holding static functions to create the interfaces like ROOT::Math::Minimizer
00029    via the Plugin Manager
00030 */ 
00031 class Factory { 
00032       public: 
00033 
00034    /**
00035       static method to create the corrisponding Minimizer given the string
00036       Supported Minimizers types are: 
00037       Minuit (TMinuit), Minuit2, GSLMultiMin, GSLMultiFit, GSLSimAn, Linear, Fumili, Genetic
00038       If no name is given use default values defined in  MinimizerOptions
00039     */
00040    static ROOT::Math::Minimizer * CreateMinimizer(const std::string & minimizerType = "", const std::string & algoType = "");
00041 
00042    /**
00043       static method to create the distribution sampler class given a string specifying the type
00044       Supported sampler types are: 
00045       Unuran, Foam
00046       If no name is given use default values defined in  DistSamplerOptions
00047     */
00048    static ROOT::Math::DistSampler * CreateDistSampler(const std::string & samplerType ="");
00049    
00050 
00051 }; 
00052 
00053    } // end namespace Fit
00054 
00055 } // end namespace ROOT
00056 
00057 
00058 #endif /* ROOT_Fit_MinimizerFactory */

Generated on Tue Jul 5 14:25:13 2011 for ROOT_528-00b_version by  doxygen 1.5.1