//_____________________________________________________________________________ // for the FAT jet the high 16 bits of fWord contain match information // between the fat ond 0.4 cone jets //_____________________________________________________________________________ #include "Stntuple/run1/StnRun1InitDataBlocks.hh" #include "Stntuple/run1/TStnRun1Event.hh" #include "Stntuple/obj/TStnJet.hh" #include "Stntuple/obj/TStnJetBlock.hh" //_____________________________________________________________________________ Int_t StnRun1InitFatJet(TStnJet* Jet, StnFatJetsBlock_t* R1Fat, Int_t I) { // init jet object from a UC standard Ntuple FAT JET // use the same format for the jets, however zero the missing part // flag = cone*10 Jet->fMomentum.SetXYZT(R1Fat->J1p4[I][0],R1Fat->J1p4[I][1], R1Fat->J1p4[I][2],R1Fat->J1p4[I][3]); Jet->fEt = R1Fat->J1et[I]; Jet->fM = R1Fat->J1m[I]; Jet->fEveta = R1Fat->J1eveta[I]; Jet->fDteta = R1Fat->J1dteta[I]; Jet->fPhi = R1Fat->J1phi[I]; Jet->fWord = R1Fat->J1word[I]; Jet->fWord = Jet->fWord || (R1Fat->J1jts[I] << 16); Jet->fCorfm = R1Fat->J1corfm[I]; Jet->fCorfd = R1Fat->J1corfd[I]; Jet->fEgrd = R1Fat->j1egrd[I]; return 0; } //_____________________________________________________________________________ int StnRun1InitFatJetBlock(TStnDataBlock* Block, TStnEvent* Event, int Mode) { // initialize fat jet data block starting from Run1 UC Stntuple // (it is defined for UC ntuple only anyway) TStnRun1Event* event = (TStnRun1Event*) Event; TStnJetBlock* blk = (TStnJetBlock*) Block; blk->Clear(); StnFatJetsBlock_t* r1fat = event->FatJetsBlock(); for (int i=0; iNj1; i++) { TStnJet* jet = blk->NewJet(); StnRun1InitFatJet(jet,r1fat,i); } return 0; }