ATLAS Offline Software
Loading...
Searching...
No Matches
CalibCscStripFitter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CalibCscStripFitter_H
6#define CalibCscStripFitter_H
7
8// David Adams
9// April 2007
10//
11// Strip fitter using the parabolic fit fron the CSC calibration tool.
12
13#include <string>
14#include <vector>
15
19#include "GaudiKernel/ServiceHandle.h"
20#include "GaudiKernel/ToolHandle.h"
22
23class CalibCscStripFitter : virtual public ICscStripFitter, public AthAlgTool {
24public: // Ctors and dtor.
25 enum NoiseOption { rms = 0, sigma, f001 };
26
27 CalibCscStripFitter(const std::string&, const std::string&, const IInterface*);
28
30
31public: // AlgTool methods
32 StatusCode initialize();
33
34public: // Interface methods
35 // Tell compiler not to hide other fit methods.
37
38 // Fit a list of sample charges using the calibration tool.
39 // If that fit fails, the peak channel is used.
40 // Result fit(const ChargeList& charges, double samplingTime, IdentifierHash& stripHashId ) const;
41 // Result fit(const ChargeList& charges, double samplingTime, Identifier& stripId ) const;
42 Result fit(const ChargeList& ChargeList, double samplingTime, bool samplingPhase, Identifier& sid) const;
43
44private: // data
45 // Job options.
46 // double m_qerr; // Charge error for a successful fit.
47 double m_terr; // Time error for a succcessful fit.
48 // double m_qerr_fail; // Charge error for a failed fit.
49 double m_terr_fail; // Time error for a failed fit.
50 double m_qerrprop; // Charge calibration error
51 bool m_doCorrection; // Correction for para to bipolar
52 double m_chargeErrorScaler; // Charge error scaler
53
54 std::string m_noiseOptionStr;
56
58 this,
59 "MuonIdHelperSvc",
60 "Muon::MuonIdHelperSvc/MuonIdHelperSvc",
61 };
62
63 ToolHandle<ICscCalibTool> m_cscCalibTool{
64 this,
65 "cscCalibTool",
66 "CscCalibTool/CscCalibTool",
67 };
68};
69
70#endif
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
CalibCscStripFitter(const std::string &, const std::string &, const IInterface *)
Result fit(const ChargeList &ChargeList, double samplingTime, bool samplingPhase, Identifier &sid) const
ToolHandle< ICscCalibTool > m_cscCalibTool
~CalibCscStripFitter()=default
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
std::vector< float > ChargeList
virtual Result fit(const ChargeList &ChargeList, double samplingTime, bool samplingPhase, Identifier &sid) const