ATLAS Offline Software
IMdtCalibration.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 // IMdtCalibration.h
5 // Header file for class IMdtCalibration
6 #ifndef MUONCALIB_IMDTCALIBRATION_H
7 #define MUONCALIB_IMDTCALIBRATION_H
8 
9 #include <string>
10 #include <vector>
11 #include <memory>
12 
13 namespace MuonCalib {
14 
15  class IMdtCalibrationOutput;
16  class MuonCalibSegment;
17 
26  public:
27  using MuonSegVec = std::vector<std::shared_ptr<MuonCalibSegment>> ;
29  using MuonSegCit = MuonSegVec::const_iterator ;
30  using MdtCalibOutputPtr = std::shared_ptr<IMdtCalibrationOutput>;
31 
32  public:
34  IMdtCalibration(const std::string& name) : m_name(name) {}
35 
37  virtual ~IMdtCalibration()= default;
38 
40  virtual void setInput(const IMdtCalibrationOutput* input) = 0;
41 
43  virtual MdtCalibOutputPtr analyseSegments(const MuonSegVec& segs) = 0;
44 
46  virtual MdtCalibOutputPtr getResults() const = 0;
47 
49  virtual std::string name() const { return m_name; }
50 
51  private:
52  std::string m_name;
53  };
54 
55 } // namespace MuonCalib
56 
57 #endif
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
MuonCalib::IMdtCalibration::MdtCalibOutputPtr
std::shared_ptr< IMdtCalibrationOutput > MdtCalibOutputPtr
Definition: IMdtCalibration.h:30
MuonCalib::IMdtCalibration::IMdtCalibration
IMdtCalibration(const std::string &name)
constructor, string used to identify the instance
Definition: IMdtCalibration.h:34
MuonCalib::IMdtCalibration::~IMdtCalibration
virtual ~IMdtCalibration()=default
destructor
MuonCalib::IMdtCalibration
Definition: IMdtCalibration.h:25
MuonCalib::IMdtCalibration::MuonSegIt
MuonSegVec::iterator MuonSegIt
Definition: IMdtCalibration.h:28
MuonCalib::IMdtCalibration::getResults
virtual MdtCalibOutputPtr getResults() const =0
retrieve results from calibration
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
MuonCalib::IMdtCalibration::m_name
std::string m_name
Definition: IMdtCalibration.h:52
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::IMdtCalibration::MuonSegCit
MuonSegVec::const_iterator MuonSegCit
Definition: IMdtCalibration.h:29
MuonCalib::IMdtCalibration::name
virtual std::string name() const
returns name (region) of instance
Definition: IMdtCalibration.h:49
MuonCalib::IMdtCalibration::setInput
virtual void setInput(const IMdtCalibrationOutput *input)=0
initialize algoritm
MuonCalib::IMdtCalibrationOutput
Definition: IMdtCalibrationOutput.h:28
MuonCalib::IMdtCalibration::MuonSegVec
std::vector< std::shared_ptr< MuonCalibSegment > > MuonSegVec
Definition: IMdtCalibration.h:27
MuonCalib::IMdtCalibration::analyseSegments
virtual MdtCalibOutputPtr analyseSegments(const MuonSegVec &segs)=0
final analyse results