CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
omtf::CscUnpacker Class Reference

#include <OmtfCscUnpacker.h>

Public Member Functions

void init ()
 
void unpack (unsigned int fed, unsigned int amc, const CscDataWord64 &raw, CSCCorrelatedLCTDigiCollection *prod)
 

Private Attributes

MapEleIndex2CscDet theOmtf2CscDet
 

Detailed Description

Definition at line 18 of file OmtfCscUnpacker.h.

Member Function Documentation

void omtf::CscUnpacker::init ( void  )

Definition at line 10 of file OmtfCscUnpacker.cc.

References omtf::mapEleIndex2CscDet(), and theOmtf2CscDet.

Referenced by omtf::OmtfUnpacker::beginRun().

MapEleIndex2CscDet theOmtf2CscDet
MapEleIndex2CscDet mapEleIndex2CscDet()
void omtf::CscUnpacker::unpack ( unsigned int  fed,
unsigned int  amc,
const CscDataWord64 raw,
CSCCorrelatedLCTDigiCollection prod 
)

Definition at line 12 of file OmtfCscUnpacker.cc.

References omtf::CscDataWord64::bend(), omtf::CscDataWord64::bxNum(), omtf::CscDataWord64::clctPattern(), omtf::CscDataWord64::halfStrip(), omtf::CscDataWord64::hitNum(), CSCConstants::LCT_CENTRAL_BX, omtf::CscDataWord64::linkNum(), LogTrace, omtf::CscDataWord64::quality(), theOmtf2CscDet, omtf::CscDataWord64::valid(), and omtf::CscDataWord64::wireGroup().

Referenced by omtf::OmtfUnpacker::produce().

15  {
16  EleIndex omtfEle(fed, amc, data.linkNum());
17  std::map<EleIndex, CSCDetId>::const_iterator icsc = theOmtf2CscDet.find(omtfEle);
18  if (icsc == theOmtf2CscDet.end()) {
19  LogTrace(" ") << " CANNOT FIND key: " << omtfEle << std::endl;
20  return;
21  }
22  CSCDetId cscId = theOmtf2CscDet[omtfEle];
23  LogTrace("") << "OMTF->CSC " << cscId << std::endl;
24  LogTrace("") << data << std::endl;
25  if (data.linkNum() >= 30) {
26  LogTrace(" ") << " data from overlap, skip digi " << std::endl;
27  return;
28  }
29  CSCCorrelatedLCTDigi digi(data.hitNum(), //trknmb
30  data.valid(),
31  data.quality(),
32  data.wireGroup(),
33  data.halfStrip(),
34  data.clctPattern(),
35  data.bend(),
36  data.bxNum() + (CSCConstants::LCT_CENTRAL_BX - 3));
37  LogTrace("") << digi << std::endl;
38  //producedCscLctDigis->insertDigi( cscId, digi);
39  prod->insertDigi(cscId, digi);
40  }
#define LogTrace(id)
MapEleIndex2CscDet theOmtf2CscDet
double amc
Definition: hdecay.h:20
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79

Member Data Documentation

MapEleIndex2CscDet omtf::CscUnpacker::theOmtf2CscDet
private

Definition at line 24 of file OmtfCscUnpacker.h.

Referenced by init(), and unpack().