ATLAS Offline Software
Loading...
Searching...
No Matches
IFillNtupleTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRKALIGNINTERFACES_IFILLNTUPLETOOL_IH
6#define TRKALIGNINTERFACES_IFILLNTUPLETOOL_IH
7
8#include "GaudiKernel/IAlgTool.h"
9
21
22#include <fstream>
23
24static const InterfaceID
26
27class TFile;
28
29namespace Trk {
30
31 class AlignTrack;
32
33 class IFillNtupleTool: virtual public IAlgTool {
34
35 public:
36 virtual ~IFillNtupleTool() {}
37
38 static const InterfaceID& interfaceID();
39
40 virtual StatusCode initialize() = 0;
41 virtual StatusCode finalize() = 0;
42
44 virtual void dumpTrack(int itrk, const AlignTrack* alignTrack) = 0;
45
47 virtual void storeHitmap() = 0;
48
50 virtual void fillHitmap() = 0;
51
53 virtual void fillSummary() = 0;
54
56 virtual void showStatistics() = 0;
57
59 virtual void fillChi2VChamberShift(const int, const int, int*,
60 double**,double**,double**,
61 double**,double**,double** ) {}
62
64 //virtual TFile* ntupleFile() { return 0; }
65
67 virtual void setLogStream(std::ostream * os) { m_logStream = os; }
68
70 virtual void setNtuple(TFile* ntuple) = 0;
71
73 virtual StatusCode fillNtuple() = 0;
74
75 protected:
76 std::ostream * m_logStream = nullptr;
77
78 }; // end class definition
79
80 inline const InterfaceID& IFillNtupleTool::interfaceID()
82
83} // end namespace
84
85#endif // TRKALIGNINTERFACES_IFILLNTUPLETOOL_IH
86
static const InterfaceID IID_TRKALIGNINTERFACES_IFillNtupleTool("IFillNtupleTool", 1, 0)
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...
virtual void setLogStream(std::ostream *os)
returns pointer to TFile containing ntuple
virtual StatusCode initialize()=0
virtual StatusCode fillNtuple()=0
writes trees and histograms to ntuple
virtual void fillHitmap()=0
fills ntuple with hit information
virtual void dumpTrack(int itrk, const AlignTrack *alignTrack)=0
dumps track information to ntuple
virtual void setNtuple(TFile *ntuple)=0
sets the output stream for the logfile
virtual void storeHitmap()=0
stores hitmap for writing to ntuple
virtual void showStatistics()=0
write statistics out to log file
virtual void fillChi2VChamberShift(const int, const int, int *, double **, double **, double **, double **, double **, double **)
used for numerical derivatives to write chi2 vs.
std::ostream * m_logStream
logfile output stream
static const InterfaceID & interfaceID()
virtual StatusCode finalize()=0
virtual void fillSummary()=0
fills ntuple with event and track summary information
Ensure that the ATLAS eigen extensions are properly loaded.