Implements edm::EDAnalyzer.
Definition at line 75 of file CSCTFanalyzer.cc.
References csc::L1Track::BX(), L1MuRegionalCand::charge_packed(), gather_cfg::cout, dataTrackProducer, dbx1, dbx2, dbx3, dch1, dch2, dch3, deta1, deta2, deta3, dlcts1, dlcts2, dlcts3, dmode1, dmode2, dmode3, dphi1, dphi2, dphi3, dpt1, dpt2, dpt3, drank1, drank2, drank3, ebx1, ebx2, ebx3, ech1, ech2, ech3, eeta1, eeta2, eeta3, emode1, emode2, emode3, emulTrackProducer, csc::L1Track::endcap(), ephi1, ephi2, ephi3, ept1, ept2, ept3, erank1, erank2, erank3, L1MuRegionalCand::ETA_LENGTH, L1MuRegionalCand::eta_packed(), CSCTriggerContainer< T >::get(), edm::EventSetup::get(), edm::Event::getByLabel(), L1MuScale::getCenter(), L1MuScale::getLowEdge(), L1MuTriggerScales::getPhiScale(), L1MuTriggerScales::getRegionalEtaScale(), edm::InputTag::instance(), edm::HandleBase::isValid(), edm::InputTag::label(), lctProducer, csc::L1Track::localPhi(), csc::L1Track::mb1ID(), mbProducer, csc::L1Track::me1ID(), csc::L1Track::me2ID(), csc::L1Track::me3ID(), csc::L1Track::me4ID(), csc::L1Track::mode(), nDataMuons, nEmulMuons, csc::L1Track::outputLink(), L1MuRegionalCand::phi_packed(), edm::Handle< T >::product(), edm::ESHandle< class >::product(), L1MuRegionalCand::pt_packed(), csc::L1Track::ptLUTAddress(), CSCTriggerContainer< T >::push_back(), csc::L1Track::rank(), query::result, csc::L1Track::sector(), csc::L1Track::setOutputLink(), python.multivaluedict::sort(), relativeConstraints::station, testEve_cfg::tracks, tree, and ts.
91 int station = (*csc).first.station()-1;
92 int cscId = (*csc).first.triggerCscId()-1;
93 int sector = (*csc).first.triggerSector()-1 + ( (*csc).first.endcap()==1 ? 0 : 6 );
95 int tbin = lct->getBX();
98 std::cout<<
"LCT in station="<<(station+1)<<
" sector="<<(sector+1)<<
" cscId="<<(cscId+1)<<
" bx="<<tbin<<std::endl;
107 std::vector<csctf::TrackStub> vstubs = dtStubs->get();
108 for(std::vector<csctf::TrackStub>::const_iterator stub=vstubs.begin(); stub!=vstubs.end(); stub++){
111 std::cout<<
" DT data: tbin="<<stub->BX()<<
" (CSC) sector="<<stub->sector()<<
" (CSC) subsector="<<stub->subsector()<<
" station="<<stub->station()<<
" endcap="<<stub->endcap()
112 <<
" phi="<<stub->phiPacked()<<
" phiBend="<<stub->getBend()<<
" quality="<<stub->getQuality()<<
" id="<<stub->getMPCLink()<<
" mb_bxn="<<stub->cscid()<<
std::cout;
115 }
else edm::LogInfo(
"CSCTFAnalyzer")<<
" No valid CSCTriggerContainer<csctf::TrackStub> products found";
135 std::vector<csc::L1Track>
result;
137 for(L1CSCTrackCollection::const_iterator tmp_trk=tracks->begin(); tmp_trk!=tracks->end(); tmp_trk++){
139 qqq.setOutputLink(0);
144 qqq.setOutputLink( qqq.outputLink()|(1<<(*csc).first.station()) );
149 for(
int bx = -3; bx <= 3; ++bx){
150 std::vector<csc::L1Track> tks = stripped_tracks.
get(bx);
151 std::sort(tks.begin(),tks.end(),std::greater<csc::L1Track>());
152 if(tks.size() > 4) tks.resize(4);
153 for(std::vector<csc::L1Track>::iterator itr=tks.begin(); itr!=tks.end(); itr++){
154 unsigned gbl_phi = itr->localPhi() + ((itr->sector() - 1)*24) + 6;
155 if(gbl_phi > 143) gbl_phi -= 143;
156 itr->setPhiPacked(gbl_phi & 0xff);
157 unsigned eta_sign = (itr->endcap() == 1 ? 0 : 1);
159 itr->setEtaPacked(gbl_eta & 0x3f);
160 itr->setQualityPacked((itr->rank()>>4) & 0x3);
161 itr->setPtPacked(itr->rank() & 0x1f);
162 if(!itr->empty()) result.push_back(*itr);
166 for(L1CSCTrackCollection::const_iterator _trk=tracks->begin(); _trk!=tracks->end(); _trk++){
const csc::L1Track *trk = &(_trk->first);
202 <<
" (rank="<<trk->
rank()
205 <<
" me1D="<<trk->
me1ID()
206 <<
" me2D="<<trk->
me2ID()
207 <<
" me3D="<<trk->
me3ID()
208 <<
" me4D="<<trk->
me4ID()
209 <<
" mb1D="<<trk->
mb1ID()
219 for(L1CSCTrackCollection::const_iterator trk=tracks.
product()->begin(); trk!=tracks.
product()->end(); trk++){
245 std::cout<<
"Emulator: TRK in endcap="<<trk->first.
endcap()<<
" sector="<<trk->first.
sector()<<
" bx="<<trk->first.
BX()
246 <<
" (rank="<<trk->first.
rank()
247 <<
" localPhi="<<trk->first.
localPhi()
249 <<
" me1D="<<trk->first.
me1ID()
250 <<
" me2D="<<trk->first.
me2ID()
251 <<
" me3D="<<trk->first.
me3ID()
252 <<
" me4D="<<trk->first.
me4ID()
253 <<
" mb1D="<<trk->first.
mb1ID()
254 <<
" pTaddr="<<std::hex<<trk->first.
ptLUTAddress()<<std::dec
unsigned mode(void) const
std::vector< T > get() const
virtual float getLowEdge(unsigned packed) const =0
get the low edge of bin represented by packed
unsigned charge_packed() const
return charge packed as in hardware (0=pos, 1=neg)
void push_back(const T data)
virtual float getCenter(unsigned packed) const =0
get the center of bin represented by packed
edm::InputTag lctProducer
const L1MuScale * getPhiScale() const
get the phi scale
unsigned ptLUTAddress() const
unsigned eta_packed() const
return eta packed as in hardware
unsigned localPhi() const
unsigned outputLink() const
T const * product() const
std::vector< DigiType >::const_iterator const_iterator
T const * product() const
const L1MuScale * getRegionalEtaScale(int isys) const
get the regioanl muon trigger eta scale, isys = 0(DT), 1(bRPC), 2(CSC), 3(fwdRPC) ...
const L1MuTriggerScales * ts
edm::InputTag emulTrackProducer
std::pair< const_iterator, const_iterator > Range
unsigned pt_packed() const
return pt packed as in hardware
edm::InputTag dataTrackProducer
unsigned phi_packed() const
return phi packed as in hardware