20 #ifdef DO_TPCCATRACKER_EFF_PERFORMANCE 22 #ifndef PNDCAPERFORMANCEBASE_H 23 #define PNDCAPERFORMANCEBASE_H 55 class PndCAPerformanceBase {
57 struct PndCAHitLabel {
59 friend ostream &
operator<<(ostream &out,
const PndCAHitLabel &hl) {
return out << hl.fLab[0] <<
" " << hl.fLab[1] <<
" " << hl.fLab[2] <<
" " << std::endl; }
60 friend istream &
operator>>(istream &in, PndCAHitLabel &hl) {
return in >> hl.fLab[0] >> hl.fLab[1] >> hl.fLab[2]; }
63 PndCAPerformanceBase();
64 virtual ~PndCAPerformanceBase();
66 virtual void SetNewEvent(
const PndCAGBTracker *
const Tracker, vector<PndCAHitLabel> *hitLabels, vector<PndCAMCTrack> *mcTracks, vector<PndCALocalMCPoint> *localMCPoints);
69 virtual void CreateHistos(
string histoDir =
"", TFile *outFile = 0) { UNUSED_PARAM2(histoDir, outFile); };
72 virtual void Exec(
bool print =
false);
74 virtual void PrintEfficiencyStatistic()
79 virtual void PrintEfficiency()
85 virtual void Draw(){};
91 bool IsHistoCreated() {
return fIsHistoCreated; }
92 void SetHistoCreated(
bool v = 1) { fIsHistoCreated =
v; }
94 vector<PndCAPerformanceMCTrackData> &GetMCData() {
return mcData; };
95 vector<PndCAPerformanceRecoTrackData> &GetRecoData() {
return recoData; };
98 virtual void FillHistos(){};
99 TH1 *GetHisto(
const char *name);
102 virtual void CheckMCTracks(){};
104 virtual void MatchTracks(){};
106 virtual void EfficiencyPerformance();
119 THistoInfo(
const char *name_,
const char *title_, Int_t nx_, Double_t left_, Double_t right_, Int_t ny_ = 0, Double_t low_ = 0, Double_t up_ = 0, TString XAxisName_ =
"",
120 TString YAxisName_ =
"")
121 : name(name_), title(title_), nx(nx_), left(left_), right(right_), ny(ny_), low(low_), up(up_), XAxisName(XAxisName_), YAxisName(YAxisName_){};
126 Double_t left, right;
129 TString XAxisName, YAxisName;
132 THistoInfo *fHistosInfo;
135 vector<PndCAPerformanceMCTrackData> mcData;
136 vector<PndCAPerformanceRecoTrackData> recoData;
142 vector<PndCAHitLabel> *fHitLabels;
143 vector<PndCAMCTrack> *fMCTracks;
144 vector<PndCALocalMCPoint> *fLocalMCPoints;
146 int nRecoTracks, nMCTracks;
148 TDirectory *fHistoDir;
149 bool fIsHistoCreated;
153 #endif // DO_TPCCATRACKER_EFF_PERFORMANCE basic_istream< char, char_traits< char > > istream
std::ostream & operator<<(std::ostream &o, const PndEventInfo &)
std::istream & operator>>(std::istream &stream, RhoVector3Err &verr)
basic_ostream< char, char_traits< char > > ostream