Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:28:08

0001 // -*- C++ -*-
0002 // AID-GENERATED
0003 // =========================================================================
0004 // This class was generated by AID - Abstract Interface Definition          
0005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 
0006 // =========================================================================
0007 #ifndef AIDA_IFITFACTORY_H
0008 #define AIDA_IFITFACTORY_H 1
0009 
0010 //  This file is part of the AIDA library
0011 //  Copyright (C) 2002 by the AIDA team.  All rights reserved.
0012 //  This library is free software and under the terms of the
0013 //  GNU Library General Public License described in the LGPL.txt 
0014 
0015 #include <string>
0016 
0017 namespace AIDA {
0018 
0019 class IFitData;
0020 class IFitter;
0021 
0022 /** @interface IFitFactory
0023  *
0024  * Factory for fitter and fit data objects.
0025  *
0026  * @author The AIDA team (http://aida.freehep.org/)
0027  *
0028  */
0029 
0030 class IFitFactory {
0031 
0032 public: 
0033     /// Destructor.
0034     virtual ~IFitFactory() { /* nop */; }
0035 
0036     virtual IFitData * createFitData() = 0;
0037 
0038     /**
0039      * Create a new IFitter.
0040      * @param fitterType The type of fitter. The supported types are:
0041      *                    - "CHI2" or "Chi2" or "ChiSquared" for chi squared fitter (this is the default),
0042      *                    - "ML" or "MaxLikelihood" for maximum likelihood fitter,
0043      *                    - "LS" or "LeastSquares" for Last Squares fitter.
0044      * @param engineType The type of optimization engine used by the fitter. The available types depend on the
0045      *                   specific implementation in use. The default is "" (the implementation specific default).
0046      * @param options    A string of options. The default is "".
0047      * @return           The IFitter.
0048      *
0049      */
0050     virtual IFitter * createFitter(const std::string & fitterType = "Chi2", const std::string & engineType = "", const std::string & options = "") = 0;
0051 }; // class
0052 } // namespace AIDA
0053 #endif /* ifndef AIDA_IFITFACTORY_H */