00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #include "StHbtMaker/Cut/mercedesStarStandardEventCut.h"
00034 #include <cstdio>
00035
00036 #ifdef __ROOT__
00037 ClassImp(mercedesStarStandardEventCut)
00038 #endif
00039
00040 mercedesStarStandardEventCut::mercedesStarStandardEventCut(){
00041 mNEventsPassed = mNEventsFailed = 0;
00042 }
00043
00044
00045 bool mercedesStarStandardEventCut::Pass(const StHbtEvent* event){
00046
00047 double VertexZPos = event->PrimVertPos().z();
00048 cout << "mercedesStarStandardEventCut:: VertexZPos: " << mVertZPos[0] << " < " << VertexZPos << " < " << mVertZPos[1] << endl;
00049 bool goodEvent =
00050 ((VertexZPos > mVertZPos[0]) &&
00051 (VertexZPos < mVertZPos[1]));
00052 if (goodEvent){
00053
00054 int mult = event->UncorrectedNumberOfPrimaries();
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065 cout << "mercedesStarStandardEventCut:: mult: " << mEventMult[0] << " < " << mult << " < " << mEventMult[1] << endl;
00066 goodEvent = (goodEvent&& (mult > mEventMult[0]) && (mult < mEventMult[1]));
00067 }
00068
00069 goodEvent ? mNEventsPassed++ : mNEventsFailed++ ;
00070 cout << "mercedesStarStandardEventCut:: return : " << goodEvent << endl;
00071
00072 return (goodEvent);
00073 }
00074
00075
00076 StHbtString mercedesStarStandardEventCut::Report(){
00077 string Stemp;
00078 char Ctemp[100];
00079 sprintf(Ctemp,"\nMultiplicity:\t %d-%d",mEventMult[0],mEventMult[1]);
00080 Stemp = Ctemp;
00081 sprintf(Ctemp,"\nVertex Z-position:\t %E-%E",mVertZPos[0],mVertZPos[1]);
00082 Stemp += Ctemp;
00083 sprintf(Ctemp,"\nNumber of events which passed:\t%ld Number which failed:\t%ld",mNEventsPassed,mNEventsFailed);
00084 Stemp += Ctemp;
00085 StHbtString returnThis = Stemp;
00086 return returnThis;
00087 }