ATLAS Offline Software
IAccumulator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRT_CALIBTOOLS__IACCUMULATOR_H
6 #define TRT_CALIBTOOLS__IACCUMULATOR_H
7 /********************************************************************
8 
9 NAME: IAccumulator
10 PACKAGE: TRT_AlignTOOLS
11 
12 AUTHORS: Jorgen Beck Hansen
13 CREATED: December 2005
14 
15 PURPOSE: Alignment info accumulator Tool interface
16 
17 ********************************************************************/
18 
19 // INCLUDES:
20 
21 #include <vector>
22 #include "GaudiKernel/IAlgTool.h"
24 #include "Identifier/Identifier.h"
25 
26 namespace TRT {
27  class TrackInfo;
28 }
29 namespace Trk {
30  class Track ;
31 }
32 
34 
35 static const InterfaceID IID_IAccumulator("IAccumulator", 1, 0);
36 
37 class IAccumulator : virtual public IAlgTool {
38  public:
39 
40  virtual StatusCode accumulate(const TRT::TrackInfo* inputTrack) = 0 ;
41  virtual std::vector<IdentifierProfileHistogram*> getHistograms() { return std::vector<IdentifierProfileHistogram*>() ; }
42 
43  virtual StatusCode finalize() = 0;
44 
45  static const InterfaceID& interfaceID();
46 };
47 
48 inline const InterfaceID& IAccumulator::interfaceID(){
49  return IID_IAccumulator;
50 }
51 #endif // TRT_CALIBTOOLS__IACCUMULATOR_H
52 
IdentifiedProfileHistogram
Definition: IdentifiedProfileHistogram.h:34
IAccumulator::interfaceID
static const InterfaceID & interfaceID()
Definition: IAccumulator.h:48
IdentifierProfileHistogram
IdentifiedProfileHistogram< Identifier > IdentifierProfileHistogram
Definition: IAccumulator.h:33
TRT::TrackInfo
Definition: InnerDetector/InDetCalibEvent/TRT_CalibData/TRT_CalibData/TrackInfo.h:83
TRT
Definition: HitInfo.h:33
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IAccumulator::finalize
virtual StatusCode finalize()=0
IdentifiedProfileHistogram.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
IAccumulator
Definition: IAccumulator.h:37
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
IAccumulator::getHistograms
virtual std::vector< IdentifierProfileHistogram * > getHistograms()
Definition: IAccumulator.h:41
IAccumulator::accumulate
virtual StatusCode accumulate(const TRT::TrackInfo *inputTrack)=0