L1Trigger/CSCTriggerPrimitives/src/CSCMotherboard.cc
CSCCorrelatedLCTDigi CSCMotherboard::constructLCTs(const CSCALCTDigi& aLCT,
                                                   const CSCCLCTDigi& cLCT,
                                                   int type,
                                                   int trknmb) const {
  // CLCT pattern number
  unsigned int pattern = encodePattern(cLCT.getPattern(), cLCT.getStripType());

  // LCT quality number
  unsigned int quality = findQuality(aLCT, cLCT);

  // Bunch crossing: get it from cathode LCT if anode LCT is not there.
  int bx = aLCT.isValid() ? aLCT.getBX() : cLCT.getBX();

  // construct correlated LCT
  CSCCorrelatedLCTDigi thisLCT(trknmb, 1, quality, aLCT.getKeyWG(),
                               cLCT.getKeyStrip(), pattern, cLCT.getBend(),
                               bx, 0, 0, 0, theTrigChamber);
  thisLCT.setType(type);
  // make sure to shift the ALCT BX from 8 to 3!
  thisLCT.setALCT(getBXShiftedALCT(aLCT));
  thisLCT.setCLCT(cLCT);
  return thisLCT;
}
// This method calculates all the TMB words and then passes them to the
// constructor of correlated LCTs.
This method calculates all the TMB words and then passes them to the
constructor of correlated LCTs.
This method calculates all the TMB words and then passes them to the constructor of correlated LCTs .
CSCCorrelatedLCTDigi CSCMotherboard::constructLCTs(const CSCALCTDigi& aLCT,
                                                   const CSCCLCTDigi& cLCT,
                                                   int type,
                                                   int trknmb) const {
  unsigned int pattern = encodePattern(cLCT.getPattern(), cLCT.getStripType());
  unsigned int quality = findQuality(aLCT, cLCT);
  int bx = aLCT.isValid() ? aLCT.getBX() : cLCT.getBX();
  CSCCorrelatedLCTDigi thisLCT(trknmb, 1, quality, aLCT.getKeyWG(),
                               cLCT.getKeyStrip(), pattern, cLCT.getBend(),
                               bx, 0, 0, 0, theTrigChamber);
  thisLCT.setType(type);
  thisLCT.setALCT(getBXShiftedALCT(aLCT));
  thisLCT.setCLCT(cLCT);
  return thisLCT;
}
CSCCorrelatedLCTDigi CSCMotherboard :: constructLCTs ( const CSCALCTDigi & aLCT , const CSCCLCTDigi & cLCT , int type , int trknmb ) const { unsigned int pattern = encodePattern ( cLCT . getPattern ( ) , cLCT . getStripType ( ) ) ; unsigned int quality = findQuality ( aLCT , cLCT ) ; int bx = aLCT . isValid ( ) ? aLCT . getBX ( ) : cLCT . getBX ( ) ; CSCCorrelatedLCTDigi thisLCT ( trknmb , 1 , quality , aLCT . getKeyWG ( ) , cLCT . getKeyStrip ( ) , pattern , cLCT . getBend ( ) , bx , 0 , 0 , 0 , theTrigChamber ) ; thisLCT . setType ( type ) ; thisLCT . setALCT ( getBXShiftedALCT ( aLCT ) ) ; thisLCT . setCLCT ( cLCT ) ; return thisLCT ; }
This method calculates all the TMB words and then passes them to the
constructor of correlated LCTs.
This method calculates all the TMB words and then passes them to the constructor of correlated LCTs .
// CLCT pattern number // LCT quality number // Bunch crossing: get it from cathode LCT if anode LCT is not there. // construct correlated LCT // make sure to shift the ALCT BX from 8 to 3!