ATLAS Offline Software
INtupleCalibrationTool.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 MuonCalibStandAloneBase_INtupleCalibrationTool_H
6 #define MuonCalibStandAloneBase_INtupleCalibrationTool_H
7 
8 // Gaudi
9 #include "GaudiKernel/IAlgTool.h"
10 
11 // c - c++
12 #include <memory>
13 #include <string>
14 #include <vector>
15 
16 namespace MuonCalib {
17 
18  // calib
19 
20  class MuonCalibEvent;
21  class MuonCalibSegment;
22  class IMdtCalibrationOutput;
23  class NtupleStationId;
24  class IRtResolution;
29  class INtupleCalibrationTool : virtual public IAlgTool {
30  public:
32  virtual ~INtupleCalibrationTool() = default;
34  static const InterfaceID &interfaceID() {
35  static const InterfaceID IID_NtupleCalibrationTool("MuonCalib::NtupleCalibrationTool", 1, 0);
36  return IID_NtupleCalibrationTool;
37  }
39  virtual StatusCode handleEvent(std::shared_ptr<const MuonCalibEvent> & /*event*/, int /*evnt_nr*/,
40  const std::vector<std::shared_ptr<MuonCalibSegment>> & /*segments*/, unsigned int /*position*/) = 0;
42  virtual StatusCode analyseSegments(const std::vector<std::shared_ptr<MuonCalibSegment>> & /*segemnts*/) = 0;
44  virtual std::shared_ptr<IMdtCalibrationOutput> getResults() const = 0;
46  virtual std::shared_ptr<IRtResolution> getResolution() const = 0;
50  virtual bool KeepSegments() const { return true; }
51  };
52 
53 } // namespace MuonCalib
54 
55 #endif
MuonCalib::INtupleCalibrationTool
Definition: INtupleCalibrationTool.h:29
MuonCalib::INtupleCalibrationTool::analyseSegments
virtual StatusCode analyseSegments(const std::vector< std::shared_ptr< MuonCalibSegment >> &)=0
is called at the end of the analysis
MuonCalib::INtupleCalibrationTool::handleEvent
virtual StatusCode handleEvent(std::shared_ptr< const MuonCalibEvent > &, int, const std::vector< std::shared_ptr< MuonCalibSegment >> &, unsigned int)=0
is called one per event, when the event is read
MuonCalib::INtupleCalibrationTool::KeepSegments
virtual bool KeepSegments() const
return true if ther segment vector in analyseSegments is needed.
Definition: INtupleCalibrationTool.h:50
MuonCalib::INtupleCalibrationTool::getResolution
virtual std::shared_ptr< IRtResolution > getResolution() const =0
get resolution
MuonCalib::INtupleCalibrationTool::interfaceID
static const InterfaceID & interfaceID()
interface method
Definition: INtupleCalibrationTool.h:34
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::INtupleCalibrationTool::~INtupleCalibrationTool
virtual ~INtupleCalibrationTool()=default
destructor
MuonCalib::INtupleCalibrationTool::getResults
virtual std::shared_ptr< IMdtCalibrationOutput > getResults() const =0
get calibration results