//STL and C includes #include #include #include //ROOT headers #include #include #include #include #include #include #include #include //TestChamber includes #include "TCcluster.h" #include "TCalign.h" #include "TCtrack.h" #include "TCevent.h" #include "ConfigFile.h" #include "histContainers.h" static bool controlC=false; static int controlCs=0; using std::cout; using std::endl; void signalHandler2(int signal) { if (signal==SIGINT) { cout<<"CTRL + C pressed saving and exiting, press again to abort"<abort" << std::endl; throw; } int main(int argc,char **argv){ using namespace std; signal(SIGINT, signalHandler2); if(!(argc==2)){ cerr<<"Wrong number of arguments, "<FindObject("at_pr"); TCevent *inEvent = new TCevent(); TCevent *outEvent = new TCevent(); TBranch *branchEvent=inTree->GetBranch("event"); branchEvent->SetAddress(&inEvent); int nEvents=inTree->GetEntries(); TFile* outFile = new TFile(outFilePath.c_str(),"RECREATE"); TTree* eventTreeOut = new TTree("at_tr","testBench analysis tree"); eventTreeOut->Branch("event","TCevent",&outEvent,32000,99); int totClusters=0; TCalign* a = TCalign::getInstance(alignmentFilePath); a->clear(); a->read(alignmentFilePath); for(int i_ev=0;i_evGetEntry(i_ev); outEvent->clear(); // cout<getEventNumber()<setEventNumber(inEvent->getEventNumber()); if(controlC){ cout<<"jumping out of for loop"<nTracks();++iTr) { TCtrack* track = inEvent->getTrack(iTr); TCtrack* outTrack=new TCtrack;//cout<nClFit()<nCl();++i){ TCcluster cl=track->getCl(i); outTrack->addCluster(cl); } if(outTrack->nClFit()>5&&outTrack->fit(1,2,3,4,5,6,7,8)){ histCont->fillRes(outTrack); outEvent->addTrack(outTrack); // cout<<"test"<Fill(); }else{ for(unsigned int iTr=0;iTrnTracks();++iTr) { TCtrack* track = inEvent->getTrack(iTr); for(int i=1;i<9;++i){ TCtrack* outTrack=new TCtrack;//cout<nClFit()<nCl();++iCl){ TCcluster cl=track->getCl(iCl); if(cl.getId()==i){ // cout<<"i no fit "<addCluster(cl); } if(outTrack->nClFit()>6&&outTrack->fit(1,2,3,4,5,6,7,8)){ histCont->fillRes(outTrack,true); outEvent->addTrack(outTrack); // cout<<"test"<Fill(); } } eventTreeOut->Write(); outFile->Close(); histCont->write(histFilePath); delete histCont; }