Belle II Software  release-08-01-10
ParameterScanner.h
Go to the documentation of this file.
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * Forked from https://github.com/iLCSoft/MarlinKinfit *
6  * *
7  * Further information about the fit engine and the user interface *
8  * provided in MarlinKinfit can be found at *
9  * https://www.desy.de/~blist/kinfit/doc/html/ *
10  * and in the LCNotes LC-TOOL-2009-001 and LC-TOOL-2009-004 available *
11  * from http://www-flc.desy.de/lcnotes/ *
12  * *
13  * See git log for contributors and copyright holders. *
14  * This file is licensed under LGPL-3.0, see LICENSE.md. *
15  **************************************************************************/
16 
37 #ifdef MARLIN_USE_ROOT
38 
39 #ifndef __PARAMETERSCANNER_H
40 #define __PARAMETERSCANNER_H
41 
42 #include <vector>
43 
44 namespace Belle2 {
49  namespace OrcaKinFit {
50 
51  class BaseFitter;
52  class BaseFitObject;
53  class BaseHardConstraint;
54 
55  class ParameterScanner {
56  public:
57  explicit ParameterScanner(BaseFitter& fitter_);
58 
59  void doScan(int xglobal,
60  int nx,
61  double xstart,
62  double xstop,
63  int yglobal,
64  int ny,
65  double ystart,
66  double ystop,
67  const char* idprefix = "",
68  const char* titleprefix = "",
69  double mumerit = 0);
70 
71 
72  protected:
73 
74  typedef std::vector <BaseFitObject*> FitObjectContainer;
75  typedef std::vector <BaseHardConstraint*> ConstraintContainer;
76 
77  typedef FitObjectContainer::iterator FitObjectIterator;
78  typedef ConstraintContainer::iterator ConstraintIterator;
79 
80  BaseFitter& fitter;
81 
82  enum {NCONMAX = 100};
83 
84 
85  };
86 
87  }// end OrcaKinFit namespace
89 } // end Belle2 namespace
90 
91 #endif /* #ifndef __PARAMETERSCANNER_H */
92 
93 #endif // MARLIN_USE_ROOT
Abstract base class for different kinds of events.