CERN Accelerating science

This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.

Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

IModelFunction.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // AID-GENERATED
00003 // =========================================================================
00004 // This class was generated by AID - Abstract Interface Definition          
00005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 
00006 // =========================================================================
00007 #ifndef AIDA_IMODELFUNCTION_H
00008 #define AIDA_IMODELFUNCTION_H 1
00009 
00010 //  This file is part of the AIDA library
00011 //  Copyright (C) 2002 by the AIDA team.  All rights reserved.
00012 //  This library is free software and under the terms of the
00013 //  GNU Library General Public License described in the LGPL.txt 
00014 
00015 #include <vector>
00016 
00017 #include "AIDA/IFunction.h"
00018 
00019 namespace AIDA {
00020 
00021 class IRangeSet;
00022 
00043 class IModelFunction : virtual public IFunction {
00044 
00045 public: 
00047     virtual ~IModelFunction() { /* nop */; }
00048 
00050     virtual bool providesNormalization() const = 0;
00051 
00057     virtual void normalize(bool on) = 0;
00058 
00062     virtual bool isNormalized() const = 0;
00063 
00067     virtual const std::vector<double>  & parameterGradient(const std::vector<double>  & x) const = 0;
00068 
00072     virtual bool providesParameterGradient() const = 0;
00073 
00084     virtual IRangeSet & normalizationRange(int iAxis) = 0;
00085 
00089     virtual void includeNormalizationAll() = 0;
00090 
00094     virtual void excludeNormalizationAll() = 0;
00095 }; // class
00096 }; // namespace AIDA
00097 #endif /* ifndef AIDA_IMODELFUNCTION_H */

Generated at Tue Feb 18 15:48:23 2003 for AIDA_Interfaces by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001