ShowerDirectionPerf Class Reference

#include <ShowerDirectionPerf.h>

List of all members.

Public Member Functions

 ShowerDirectionPerf ()
 ShowerDirectionPerf (int iter)
bool FillEvent (const AtmosEvent *evt)
void MakeHistos ()
void Reset ()
void Finish ()
int Loud ()
void Loud (int i)

Private Attributes

int fIter
int fLoud
int NEvents
TH1F ** hTrueNuCosX
TH1F ** hTrueNuCosY
TH1F ** hTrueNuCosZ
TH1F * hTrueLepCosX
TH1F * hTrueLepCosY
TH1F * hTrueLepCosZ
TH1F * hRecoShwCosX [NShwRecoDir]
TH1F * hRecoShwCosY [NShwRecoDir]
TH1F * hRecoShwCosZ [NShwRecoDir]
TH1F ** hNuTDR [NShwRecoDir]
TProfile ** hNuTDRvCosX [NShwRecoDir]
TProfile ** hNuTDRvCosY [NShwRecoDir]
TProfile ** hNuTDRvCosZ [NShwRecoDir]
TProfile ** hNuTDRvTrueE [NShwRecoDir]
TProfile ** hNuTDRvL10TrueE [NShwRecoDir]
TH1F ** hNuATDR [NShwRecoDir]
TProfile ** hNuATDRvCosX [NShwRecoDir]
TProfile ** hNuATDRvCosY [NShwRecoDir]
TProfile ** hNuATDRvCosZ [NShwRecoDir]
TProfile ** hNuATDRvTrueE [NShwRecoDir]
TProfile ** hNuATDRvL10TrueE [NShwRecoDir]

Detailed Description

Definition at line 11 of file ShowerDirectionPerf.h.


Constructor & Destructor Documentation

ShowerDirectionPerf::ShowerDirectionPerf (  ) 

Definition at line 27 of file ShowerDirectionPerf.cxx.

00027                                          {
00028   Reset();
00029 }

ShowerDirectionPerf::ShowerDirectionPerf ( int  iter  ) 

Definition at line 31 of file ShowerDirectionPerf.cxx.

References fIter, and Reset().

00031                                                  {
00032   Reset();
00033   fIter = iter;
00034 }


Member Function Documentation

bool ShowerDirectionPerf::FillEvent ( const AtmosEvent evt  ) 

Definition at line 178 of file ShowerDirectionPerf.cxx.

References AtmosMC::Ehad, AtmosMC::Enu, AtNuAnaUtil::GetPrimaryShower(), hNuATDR, hNuATDRvCosX, hNuATDRvCosY, hNuATDRvCosZ, hNuATDRvL10TrueE, hNuATDRvTrueE, hNuTDR, hNuTDRvCosX, hNuTDRvCosY, hNuTDRvCosZ, hNuTDRvL10TrueE, hNuTDRvTrueE, hRecoShwCosX, hRecoShwCosY, hRecoShwCosZ, hTrueLepCosX, hTrueLepCosY, hTrueLepCosZ, hTrueNuCosX, hTrueNuCosY, hTrueNuCosZ, UtilMisc::IType(), UtilMisc::kNuNC, Msg::kVerbose, MSG, NEvents, AtmosMC::PelX, AtmosMC::PelY, AtmosMC::PelZ, AtmosMC::PhadX, AtmosMC::PhadY, AtmosMC::PhadZ, AtmosMC::PnuX, AtmosMC::PnuY, AtmosMC::PnuZ, AtmosShower::VtxDirCosX, AtmosShower::VtxDirCosY, and AtmosShower::VtxDirCosZ.

00178                                                            {
00179   MSG("ShwPerf",Msg::kVerbose) << "ShowerDirectionPerf::FillEvent" << endl;
00180   assert(event);
00181 
00182   /* Only events that would pass the Cam Filter
00183   if(!(event->FilterInfo.EventId == 0 || 
00184        event->FilterInfo.EventId == 1)) return false;
00185 
00186   if(event->FilterInfo.GoodPlanes < 5 ||
00187      event->FilterInfo.GoodUPlanes < 2 ||
00188      event->FilterInfo.GoodVPlanes < 2) return false;
00189   */
00190 
00191   int itype = UtilMisc::IType(event);
00192 
00193   AtmosMC mcinfo = event->MCInfo;
00194 
00195   double TrueNuE = fabs(mcinfo.Enu);
00196   if (itype==UtilMisc::kNuNC) TrueNuE = fabs(mcinfo.Ehad);
00197 
00198   const AtmosShower* shower =
00199     AtNuAnaUtil::GetPrimaryShower(const_cast<AtmosEvent*>(event));
00200   if ( !shower ) return false;
00201 
00202   NEvents++;
00203 
00204   double NuMom = TMath::Sqrt((mcinfo.PnuX*mcinfo.PnuX) +
00205                              (mcinfo.PnuY*mcinfo.PnuY) +
00206                              (mcinfo.PnuZ*mcinfo.PnuZ));
00207   double LepMom = TMath::Sqrt((mcinfo.PelX*mcinfo.PelX) +
00208                               (mcinfo.PelY*mcinfo.PelY) +
00209                               (mcinfo.PelZ*mcinfo.PelZ));
00210   double HadMom = TMath::Sqrt((mcinfo.PhadX*mcinfo.PhadX) +
00211                               (mcinfo.PhadY*mcinfo.PhadY) +
00212                               (mcinfo.PhadZ*mcinfo.PhadZ));
00213 
00214   double NuCos[3] = {0.0};
00215   if (NuMom != 0) {
00216     NuCos[0] = mcinfo.PnuX / NuMom;
00217     NuCos[1] = mcinfo.PnuY / NuMom;
00218     NuCos[2] = mcinfo.PnuZ / NuMom;
00219   }
00220 
00221   double LepCos[3] = {0.0};
00222   if (LepMom != 0) {
00223     LepCos[0] = mcinfo.PelX / LepMom;
00224     LepCos[1] = mcinfo.PelY / LepMom;
00225     LepCos[2] = mcinfo.PelZ / LepMom;
00226   }
00227 
00228   double HadCos[3] = {0.0};
00229   if (HadMom != 0) {
00230     HadCos[0] = mcinfo.PhadX / HadMom;
00231     HadCos[1] = mcinfo.PhadY / HadMom;
00232     HadCos[2] = mcinfo.PhadZ / HadMom;
00233   }
00234 
00235   hTrueNuCosX[itype]->Fill(NuCos[0]);
00236   hTrueNuCosY[itype]->Fill(NuCos[1]);
00237   hTrueNuCosZ[itype]->Fill(NuCos[2]);
00238 
00239   if (itype == 0) {
00240     hTrueLepCosX->Fill(LepCos[0]);
00241     hTrueLepCosY->Fill(LepCos[1]);
00242     hTrueLepCosZ->Fill(LepCos[2]);
00243   }
00244 
00245   hRecoShwCosX[0]->Fill(shower->VtxDirCosX);
00246   hRecoShwCosY[0]->Fill(shower->VtxDirCosY);
00247   hRecoShwCosZ[0]->Fill(shower->VtxDirCosZ);
00248 
00249   if (itype==0 || itype==1) {
00250     double NuDotShw = ((shower->VtxDirCosX*NuCos[0]) +
00251                        (shower->VtxDirCosY*NuCos[1]) +
00252                        (shower->VtxDirCosZ*NuCos[2]));
00253     hNuTDR[0][itype]->Fill(NuDotShw);
00254     hNuTDRvCosX[0][itype]->Fill(NuCos[0], NuDotShw);
00255     hNuTDRvCosY[0][itype]->Fill(NuCos[1], NuDotShw);
00256     hNuTDRvCosZ[0][itype]->Fill(NuCos[2], NuDotShw);
00257     hNuTDRvTrueE[0][itype]->Fill(TrueNuE, NuDotShw);
00258     hNuTDRvL10TrueE[0][itype]->Fill(TrueNuE, NuDotShw);
00259 
00260     hNuATDR[0][itype]->Fill(fabs(NuDotShw));
00261     hNuATDRvCosX[0][itype]->Fill(NuCos[0], fabs(NuDotShw));
00262     hNuATDRvCosY[0][itype]->Fill(NuCos[1], fabs(NuDotShw));
00263     hNuATDRvCosZ[0][itype]->Fill(NuCos[2], fabs(NuDotShw));
00264     hNuATDRvTrueE[0][itype]->Fill(TrueNuE, fabs(NuDotShw));
00265     hNuATDRvL10TrueE[0][itype]->Fill(TrueNuE, fabs(NuDotShw));
00266   }
00267   if (itype==3) {
00268     double HadDotShw = ((shower->VtxDirCosX*HadCos[0]) +
00269                         (shower->VtxDirCosY*HadCos[1]) +
00270                         (shower->VtxDirCosZ*HadCos[2]));
00271     hNuTDR[0][itype]->Fill(HadDotShw);
00272     hNuTDRvCosX[0][itype]->Fill(HadCos[0], HadDotShw);
00273     hNuTDRvCosY[0][itype]->Fill(HadCos[1], HadDotShw);
00274     hNuTDRvCosZ[0][itype]->Fill(HadCos[2], HadDotShw);
00275     hNuTDRvTrueE[0][itype]->Fill(TrueNuE, HadDotShw);
00276     hNuTDRvL10TrueE[0][itype]->Fill(TrueNuE, HadDotShw);
00277 
00278     hNuATDR[0][itype]->Fill(fabs(HadDotShw));
00279     hNuATDRvCosX[0][itype]->Fill(HadCos[0], fabs(HadDotShw));
00280     hNuATDRvCosY[0][itype]->Fill(HadCos[1], fabs(HadDotShw));
00281     hNuATDRvCosZ[0][itype]->Fill(HadCos[2], fabs(HadDotShw));
00282     hNuATDRvTrueE[0][itype]->Fill(TrueNuE, fabs(HadDotShw));
00283     hNuATDRvL10TrueE[0][itype]->Fill(TrueNuE, fabs(HadDotShw));
00284   }
00285 
00286   return(true);
00287 }

void ShowerDirectionPerf::Finish (  ) 

Definition at line 289 of file ShowerDirectionPerf.cxx.

References Msg::kVerbose, and MSG.

00290 {
00291   MSG("ShwPerf",Msg::kVerbose) << "ShowerDirectionPerf::Finish" << endl;
00292 }

void ShowerDirectionPerf::Loud ( int  i  )  [inline]

Definition at line 24 of file ShowerDirectionPerf.h.

References fLoud.

00024 {fLoud=i;}

int ShowerDirectionPerf::Loud (  )  [inline]

Definition at line 23 of file ShowerDirectionPerf.h.

References fLoud.

00023 {return fLoud;}

void ShowerDirectionPerf::MakeHistos (  ) 

Definition at line 42 of file ShowerDirectionPerf.cxx.

References HistMan::Adopt(), HistMan::Book(), Form(), Nav::GetName(), hNuATDR, hNuATDRvCosX, hNuATDRvCosY, hNuATDRvCosZ, hNuATDRvL10TrueE, hNuATDRvTrueE, hNuTDR, hNuTDRvCosX, hNuTDRvCosY, hNuTDRvCosZ, hNuTDRvL10TrueE, hNuTDRvTrueE, hRecoShwCosX, hRecoShwCosY, hRecoShwCosZ, hTrueLepCosX, hTrueLepCosY, hTrueLepCosZ, hTrueNuCosX, hTrueNuCosY, hTrueNuCosZ, Msg::kVerbose, MSG, NShwRecoDir, and UtilHist::TProfileLogX().

00042                                      {
00043   MSG("ShwPerf",Msg::kVerbose) << "ShowerDirectionPerf::MakeHistos" << endl;
00044 
00045   const char* hsuf[] = {"NueCC", "NumuCC", "NutauCC", "NuNC"};
00046   const unsigned int NTypes = 4;
00047 
00048   /* Truth Quantities */
00049   HistMan HMTrue(Form("%s/True", GetName()));
00050 
00051   //True Neutrino Quantities
00052   hTrueNuCosX = new TH1F*[NTypes];
00053   hTrueNuCosY = new TH1F*[NTypes];
00054   hTrueNuCosZ = new TH1F*[NTypes];
00055   for (unsigned int itype=0; itype<NTypes; itype++) {
00056     hTrueNuCosX[itype] = HMTrue.Book<TH1F>
00057       (Form("TrueNuCosX%s",hsuf[itype]),"", 41,-1.025,1.025);
00058     hTrueNuCosX[itype]->GetXaxis()->SetTitle("#nu cos(#theta_{x})");
00059     hTrueNuCosX[itype]->GetYaxis()->SetTitle("Events / 0.05");
00060     hTrueNuCosY[itype] = HMTrue.Book<TH1F>
00061       (Form("TrueNuCosY%s",hsuf[itype]),"", 41,-1.025,1.025);
00062     hTrueNuCosY[itype]->GetXaxis()->SetTitle("#nu cos(#theta_{y})");
00063     hTrueNuCosY[itype]->GetYaxis()->SetTitle("Events / 0.05");
00064     hTrueNuCosZ[itype] = HMTrue.Book<TH1F>
00065       (Form("TrueNuCosZ%s",hsuf[itype]),"", 41,-1.025,1.025);
00066     hTrueNuCosZ[itype]->GetXaxis()->SetTitle("#nu cos(#theta_{z})");
00067     hTrueNuCosZ[itype]->GetYaxis()->SetTitle("Events / 0.05");
00068   }
00069 
00070   //True Lepton Quantities
00071   hTrueLepCosX = HMTrue.Book<TH1F>("TrueLepCosX","", 41,-1.025,1.025);
00072   hTrueLepCosX->GetXaxis()->SetTitle("#ell cos(#theta_{x})");
00073   hTrueLepCosX->GetYaxis()->SetTitle("Events / 0.05");
00074   hTrueLepCosY = HMTrue.Book<TH1F>("TrueLepCosY","", 41,-1.025,1.025);
00075   hTrueLepCosY->GetXaxis()->SetTitle("#ell cos(#theta_{y})");
00076   hTrueLepCosY->GetYaxis()->SetTitle("Events / 0.05");
00077   hTrueLepCosZ = HMTrue.Book<TH1F>("TrueLepCosZ","", 41,-1.025,1.025);
00078   hTrueLepCosZ->GetXaxis()->SetTitle("#ell cos(#theta_{z})");
00079   hTrueLepCosZ->GetYaxis()->SetTitle("Events / 0.05");
00080 
00081   //Reconstructed Directions
00082   const char *cRecoDirs[] = {"CamReco", "MOIReco"};
00083   for (int ireco=0; ireco<NShwRecoDir; ireco++) {
00084     HistMan HMReco(Form("%s/Reco/%s", GetName(), cRecoDirs[ireco]));
00085     HistMan HMDirPerf(Form("%s/DirPerf/%s", GetName(), cRecoDirs[ireco]));
00086     hRecoShwCosX[ireco] = HMReco.Book<TH1F>("RecoShwCosX","", 41,-1.025,1.025);
00087     hRecoShwCosX[ireco]->GetXaxis()->SetTitle("Shower cos(#theta_{x})");
00088     hRecoShwCosX[ireco]->GetYaxis()->SetTitle("Events / 0.05");
00089     hRecoShwCosY[ireco] = HMReco.Book<TH1F>("RecoShwCosY","", 41,-1.025,1.025);
00090     hRecoShwCosY[ireco]->GetXaxis()->SetTitle("Shower cos(#theta_{y})");
00091     hRecoShwCosY[ireco]->GetYaxis()->SetTitle("Events / 0.05");
00092     hRecoShwCosZ[ireco] = HMReco.Book<TH1F>("RecoShwCosZ","", 41,-1.025,1.025);
00093     hRecoShwCosZ[ireco]->GetXaxis()->SetTitle("Shower cos(#theta_{z})");
00094     hRecoShwCosZ[ireco]->GetYaxis()->SetTitle("Events / 0.05");
00095 
00096     hNuTDR[ireco] = new TH1F*[NTypes];
00097     hNuTDRvCosX[ireco] = new TProfile*[NTypes];
00098     hNuTDRvCosY[ireco] = new TProfile*[NTypes];
00099     hNuTDRvCosZ[ireco] = new TProfile*[NTypes];
00100     hNuTDRvTrueE[ireco] = new TProfile*[NTypes];
00101     hNuTDRvL10TrueE[ireco] = new TProfile*[NTypes];
00102     hNuATDR[ireco] = new TH1F*[NTypes];
00103     hNuATDRvCosX[ireco] = new TProfile*[NTypes];
00104     hNuATDRvCosY[ireco] = new TProfile*[NTypes];
00105     hNuATDRvCosZ[ireco] = new TProfile*[NTypes];
00106     hNuATDRvTrueE[ireco] = new TProfile*[NTypes];
00107     hNuATDRvL10TrueE[ireco] = new TProfile*[NTypes];
00108     for (unsigned int itype=0; itype<NTypes; itype++) {
00109       hNuTDR[ireco][itype] = HMDirPerf.Book<TH1F>
00110         (Form("NuTDR%s",hsuf[itype]),"", 41,-1.025,1.025);
00111       hNuTDR[ireco][itype]->GetXaxis()->SetTitle
00112         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00113       hNuTDR[ireco][itype]->GetYaxis()->SetTitle("Events / 0.05");
00114       hNuTDRvCosX[ireco][itype] = HMDirPerf.Book<TProfile>
00115         (Form("NuTDRvCosX%s",hsuf[itype]),"", 41,-1.025,1.025);
00116       hNuTDRvCosX[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{x})");
00117       hNuTDRvCosX[ireco][itype]->GetYaxis()->SetTitle
00118         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00119       hNuTDRvCosY[ireco][itype] = HMDirPerf.Book<TProfile>
00120         (Form("NuTDRvCosY%s",hsuf[itype]),"", 41,-1.025,1.025);
00121       hNuTDRvCosY[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{y})");
00122       hNuTDRvCosY[ireco][itype]->GetYaxis()->SetTitle
00123         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00124       hNuTDRvCosZ[ireco][itype] = HMDirPerf.Book<TProfile>
00125         (Form("NuTDRvCosZ%s",hsuf[itype]),"", 41,-1.025,1.025);
00126       hNuTDRvCosZ[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{z})");
00127       hNuTDRvCosZ[ireco][itype]->GetYaxis()->SetTitle
00128         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00129 
00130       hNuTDRvTrueE[ireco][itype] = HMDirPerf.Book<TProfile>
00131         (Form("NuTDRvTrueE%s",hsuf[itype]),"", 60,0.,30.);
00132       hNuTDRvTrueE[ireco][itype]->GetXaxis()->SetTitle("E_{#nu} (GeV)");
00133       hNuTDRvTrueE[ireco][itype]->GetYaxis()->SetTitle
00134         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00135       hNuTDRvL10TrueE[ireco][itype] = UtilHist::TProfileLogX
00136         (Form("NuTDRvL10TrueE%s",hsuf[itype]),"", 30,0.1,100.);
00137       HMDirPerf.Adopt(".", hNuTDRvL10TrueE[ireco][itype]);
00138       hNuTDRvL10TrueE[ireco][itype]->GetXaxis()->SetTitle("E_{#nu} (GeV)");
00139       hNuTDRvL10TrueE[ireco][itype]->GetYaxis()->SetTitle
00140         ("#vec{d}_{#nu} #bullet #vec{d}_{shw}");
00141 
00142       hNuATDR[ireco][itype] = HMDirPerf.Book<TH1F>
00143         (Form("NuATDR%s",hsuf[itype]),"", 21,-0.025,1.025);
00144       hNuATDR[ireco][itype]->GetXaxis()->SetTitle
00145         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00146       hNuATDR[ireco][itype]->GetYaxis()->SetTitle("Events / 0.05");
00147       hNuATDRvCosX[ireco][itype] = HMDirPerf.Book<TProfile>
00148         (Form("NuATDRvCosX%s",hsuf[itype]),"", 41,-1.025,1.025);
00149       hNuATDRvCosX[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{x})");
00150       hNuATDRvCosX[ireco][itype]->GetYaxis()->SetTitle
00151         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00152       hNuATDRvCosY[ireco][itype] = HMDirPerf.Book<TProfile>
00153         (Form("NuATDRvCosY%s",hsuf[itype]),"", 41,-1.025,1.025);
00154       hNuATDRvCosY[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{y})");
00155       hNuATDRvCosY[ireco][itype]->GetYaxis()->SetTitle
00156         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00157       hNuATDRvCosZ[ireco][itype] = HMDirPerf.Book<TProfile>
00158         (Form("NuATDRvCosZ%s",hsuf[itype]),"", 41,-1.025,1.025);
00159       hNuATDRvCosZ[ireco][itype]->GetXaxis()->SetTitle("#nu cos(#theta_{z})");
00160       hNuATDRvCosZ[ireco][itype]->GetYaxis()->SetTitle
00161         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00162 
00163       hNuATDRvTrueE[ireco][itype] = HMDirPerf.Book<TProfile>
00164         (Form("NuATDRvTrueE%s",hsuf[itype]),"", 60,0.,30.);
00165       hNuATDRvTrueE[ireco][itype]->GetXaxis()->SetTitle("E_{#nu} (GeV)");
00166       hNuATDRvTrueE[ireco][itype]->GetYaxis()->SetTitle
00167         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00168       hNuATDRvL10TrueE[ireco][itype] = UtilHist::TProfileLogX
00169         (Form("NuATDRvL10TrueE%s",hsuf[itype]),"", 30,0.1,100.);
00170       HMDirPerf.Adopt(".", hNuATDRvL10TrueE[ireco][itype]);
00171       hNuATDRvL10TrueE[ireco][itype]->GetXaxis()->SetTitle("E_{#nu} (GeV)");
00172       hNuATDRvL10TrueE[ireco][itype]->GetYaxis()->SetTitle
00173         ("|#vec{d}_{#nu} #bullet #vec{d}_{shw}|");
00174     }
00175   }
00176 }

void ShowerDirectionPerf::Reset (  ) 

Definition at line 36 of file ShowerDirectionPerf.cxx.

References fIter, and NEvents.

Referenced by ShowerDirectionPerf().

00036                                 {
00037   fIter = 1;
00038 
00039   NEvents = 0;
00040 }


Member Data Documentation

Definition at line 27 of file ShowerDirectionPerf.h.

Referenced by Reset(), and ShowerDirectionPerf().

Definition at line 29 of file ShowerDirectionPerf.h.

Referenced by Loud().

Definition at line 58 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 59 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 60 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 61 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 63 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 62 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 52 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 53 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 54 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 55 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 57 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 56 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 44 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 45 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 46 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 39 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 40 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 41 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 34 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 35 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 36 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and MakeHistos().

Definition at line 31 of file ShowerDirectionPerf.h.

Referenced by FillEvent(), and Reset().


The documentation for this class was generated from the following files:

Generated on 2 Nov 2017 for loon by  doxygen 1.6.1