Newer
Older
TB_Chris / TbAlignment / src / .svn / text-base / TbAlignmentMinuitBase.h.svn-base
@iaro iaro on 9 May 2016 750 bytes first attempt of automated anal
  1. #pragma once
  2.  
  3. // ROOT
  4. #include "TFitter.h"
  5.  
  6. // Local
  7. #include "TbAlignmentBase.h"
  8.  
  9. class TbAlignmentMinuitBase : public TbAlignmentBase {
  10.  
  11. public:
  12. /// Constructor
  13. TbAlignmentMinuitBase(const std::string& type, const std::string& name,
  14. const IInterface* parent);
  15. /// Destructor
  16. virtual ~TbAlignmentMinuitBase();
  17.  
  18. virtual void align(std::vector<TbAlignmentTrack*>& alignmentTracks);
  19. virtual void chi2(double& f, double* par, double* g) = 0;
  20.  
  21. virtual void updateGeometry();
  22.  
  23. protected:
  24. /// Number of iterations
  25. unsigned int m_nIterations;
  26. /// Minuit fit strategy (allowed values are 0, 1, 2).
  27. int m_fitStrategy;
  28.  
  29. std::vector<TbAlignmentTrack*> m_tracks;
  30. TFitter* m_fitter;
  31.  
  32. void setParameters();
  33. };