00001
00002
00003
00004
00005
00006
00007 #ifndef AIDA_IFITRESULT_H
00008 #define AIDA_IFITRESULT_H 1
00009
00010
00011
00012
00013
00014
00015 #include <string>
00016 #include <vector>
00017
00018 namespace AIDA {
00019
00020 class IFitParameterSettings;
00021 class IFunction;
00022
00035 class IFitResult {
00036
00037 public:
00039 virtual ~IFitResult() { ; }
00040
00042 virtual bool isValid() = 0;
00043
00045 virtual int fitStatus() = 0;
00046
00048 virtual IFunction * fittedFunction() = 0;
00049
00052 virtual double quality() = 0;
00053
00055 virtual int ndf() = 0;
00056
00058 virtual double covMatrixElement(int i, int j) = 0;
00059
00061 virtual std::string fitMethodName() = 0;
00062
00064 virtual std::string engineName() = 0;
00065
00071 virtual std::string dataDescription() = 0;
00072
00074 virtual const std::vector<std::string> & constraints() = 0;
00075
00077 virtual IFitParameterSettings * fitParameterSettings(std::string name) = 0;
00078
00084 virtual const std::vector<double> & fittedParameters() const = 0;
00085
00091 virtual const std::vector<std::string> & fittedParameterNames() const = 0;
00092
00098 virtual double fittedParameter(std::string & name) = 0;
00099
00106 virtual const std::vector<double> & errors() const = 0;
00107
00114 virtual const std::vector<double> & errorsPlus() const = 0;
00115
00122 virtual const std::vector<double> & errorsMinus() const = 0;
00123
00126
00127 };
00128 };
00129 #endif