8 #ifdef DO_TPCCATRACKER_EFF_PERFORMANCE 10 #ifndef PNDCAPERFORMANCEBASE_H 11 #define PNDCAPERFORMANCEBASE_H 43 class PndCAPerformanceBase {
45 struct PndCAHitLabel {
47 friend ostream &
operator<<(ostream &out,
const PndCAHitLabel &hl) {
return out << hl.fLab[0] <<
" " << hl.fLab[1] <<
" " << hl.fLab[2] <<
" " << std::endl; }
48 friend istream &
operator>>(istream &in, PndCAHitLabel &hl) {
return in >> hl.fLab[0] >> hl.fLab[1] >> hl.fLab[2]; }
51 PndCAPerformanceBase();
52 virtual ~PndCAPerformanceBase();
54 virtual void SetNewEvent(
const PndCAGBTracker *
const Tracker, vector<PndCAHitLabel> *hitLabels, vector<PndCAMCTrack> *mcTracks, vector<PndCALocalMCPoint> *localMCPoints);
57 virtual void CreateHistos(
string histoDir =
"", TFile *outFile = 0) { UNUSED_PARAM2(histoDir, outFile); };
60 virtual void Exec(
bool print =
false);
62 virtual void PrintEfficiencyStatistic()
67 virtual void PrintEfficiency()
73 virtual void Draw(){};
79 bool IsHistoCreated() {
return fIsHistoCreated; }
80 void SetHistoCreated(
bool v = 1) { fIsHistoCreated =
v; }
82 vector<PndCAPerformanceMCTrackData> &GetMCData() {
return mcData; };
83 vector<PndCAPerformanceRecoTrackData> &GetRecoData() {
return recoData; };
86 virtual void FillHistos(){};
87 TH1 *GetHisto(
const char *name);
90 virtual void CheckMCTracks(){};
92 virtual void MatchTracks(){};
94 virtual void EfficiencyPerformance();
107 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_ =
"",
108 TString YAxisName_ =
"")
109 : name(name_), title(title_), nx(nx_), left(left_), right(right_), ny(ny_), low(low_), up(up_), XAxisName(XAxisName_), YAxisName(YAxisName_){};
114 Double_t left, right;
117 TString XAxisName, YAxisName;
120 THistoInfo *fHistosInfo;
123 vector<PndCAPerformanceMCTrackData> mcData;
124 vector<PndCAPerformanceRecoTrackData> recoData;
130 vector<PndCAHitLabel> *fHitLabels;
131 vector<PndCAMCTrack> *fMCTracks;
132 vector<PndCALocalMCPoint> *fLocalMCPoints;
134 int nRecoTracks, nMCTracks;
136 TDirectory *fHistoDir;
137 bool fIsHistoCreated;
141 #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