00001 00002 // VtxFinder.h - description 00003 // ------------------- 00004 // begin : Wed Oct 19 2005 00005 // copyright : (C) 2005 by Joshua Boehm 00006 // email : boehm@physics.harvard.edu 00007 // Last Modified : Oct 19, 2005 00008 // VtxFinder is a reconstruction class used to determine the 00009 // event vertex. 00011 00012 #ifndef NTPVTXFINDER_H 00013 #define NTPVTXFINDER_H 00014 00015 //C++ headers 00016 #include <iostream> 00017 #include <cstdlib> 00018 #include <fstream> 00019 #include <RecoBase/CandEventHandle.h> 00020 #include "Validity/VldContext.h" 00021 #include "StandardNtuple/NtpStRecord.h" 00022 #include "CandNtupleSR/NtpSRRecord.h" 00023 #include "CandNtupleSR/NtpSREvent.h" 00024 #include "CandNtupleSR/NtpSRTrack.h" 00025 #include "CandNtupleSR/NtpSRStrip.h" 00026 #include "MessageService/MsgService.h" 00027 #include "NueAna/SntpHelpers.h" 00028 00029 #include "VertexFinder/VtxClusterList.h" 00030 00031 00032 using namespace std; 00033 00034 class NtpVtxFinder 00035 { 00036 00037 public: 00038 //Constructor/Destructor 00039 NtpVtxFinder(int event, RecRecordImp<RecCandHeader> *srobj); 00040 00041 ~NtpVtxFinder(); 00042 00043 //Only state modifying function 00044 Int_t FindVertex(); 00045 00046 Float_t VtxX(){return fX;} 00047 Float_t VtxY(){return fY;} 00048 Float_t VtxZ(){return fZ;} 00049 Float_t VtxU(){return fU;} 00050 Float_t VtxV(){return fV;} 00051 Int_t VtxPlane(){return fPlane;} 00052 00053 private: 00054 Int_t FindVtxPlane(); 00055 Int_t FindVtxUV(); 00056 Int_t CheckTrackInfo(); 00057 Int_t AcceptTrackInfo(); 00058 00059 Int_t kNPlanes; //Number of planes in detector 00060 00061 Int_t kUVPlanesBefore; //Planes to look before the z vertex 00062 Int_t kUVPlanesAfter; //Planes to search after the z vertex 00063 Float_t kNoiseCut; 00064 00065 Float_t fTotalEnergy; //Total energy in Event 00066 00067 Float_t fX; 00068 Float_t fY; 00069 Float_t fZ; 00070 Float_t fU; 00071 Float_t fV; 00072 Int_t fPlane; 00073 00074 00075 int fEventNo; 00076 RecRecordImp<RecCandHeader>* fSrObj; 00077 NtpStRecord* fSt; 00078 00079 NtpSREvent *fEvent; 00080 NtpSRTrack *fTrack; 00081 00082 }; 00083 00084 #endif 00085 00086
1.3.9.1