CMS 3D CMS Logo

Public Member Functions | Private Attributes

CSCCorrelatedLCTDigi Class Reference

#include <CSCCorrelatedLCTDigi.h>

Inheritance diagram for CSCCorrelatedLCTDigi:
csctf::TrackStub

List of all members.

Public Member Functions

void clear ()
 default
 CSCCorrelatedLCTDigi ()
 Default.
 CSCCorrelatedLCTDigi (const int trknmb, const int valid, const int quality, const int keywire, const int strip, const int pattern, const int bend, const int bx, const int mpclink=0, const uint16_t bx0=0, const uint16_t syncErr=0, const uint16_t cscID=0)
 Constructors.
int getBend () const
 return bend
int getBX () const
 return BX
uint16_t getBX0 () const
int getCLCTPattern () const
 return CLCT pattern number (in use again Feb 2011)
uint16_t getCSCID () const
int getKeyWG () const
 return the key wire group
int getMPCLink () const
 return MPC link number, 0 means not sorted, 1-3 give MPC sorting rank
int getPattern () const
 return pattern
int getQuality () const
 return the 4 bit Correlated LCT Quality
int getStrip () const
 return the key halfstrip from 0,159
int getStripType () const
 return strip type (obsolete since mid-2008)
uint16_t getSyncErr () const
int getTrknmb () const
 return track number
bool isValid () const
 return valid pattern bit
bool operator!= (const CSCCorrelatedLCTDigi &rhs) const
bool operator== (const CSCCorrelatedLCTDigi &) const
 Comparison.
void print () const
 Print content of correlated LCT digi.
void setMPCLink (const uint16_t &link)
 Set mpc link number after MPC sorting.
void setQuality (unsigned int q)
 set quality code
void setTrknmb (const uint16_t number)
 Set track number (1,2) after sorting LCTs.
void setWireGroup (unsigned int wiregroup)
 set wiregroup number

Private Attributes

uint16_t bend
uint16_t bx
uint16_t bx0
uint16_t cscID
uint16_t keywire
uint16_t mpclink
uint16_t pattern
uint16_t quality
uint16_t strip
uint16_t syncErr
uint16_t trknmb
uint16_t valid

Detailed Description

Digi for Correlated LCT trigger primitives.

Date:
2011/02/02 13:27:20
Revision:
1.17
Author:
L. Gray, UF

Digi for Correlated LCT trigger primitives.

Date:
2010/07/07 10:53:22
Revision:
1.14
Author:
L.Gray, UF

Definition at line 17 of file CSCCorrelatedLCTDigi.h.


Constructor & Destructor Documentation

CSCCorrelatedLCTDigi::CSCCorrelatedLCTDigi ( const int  trknmb,
const int  valid,
const int  quality,
const int  keywire,
const int  strip,
const int  pattern,
const int  bend,
const int  bx,
const int  mpclink = 0,
const uint16_t  bx0 = 0,
const uint16_t  syncErr = 0,
const uint16_t  cscID = 0 
)

Constructors.

Definition at line 15 of file CSCCorrelatedLCTDigi.cc.

                                                                 :
  trknmb(itrknmb),
  valid(ivalid),
  quality(iquality),
  keywire(ikeywire),
  strip(istrip),
  pattern(ipattern),
  bend(ibend),
  bx(ibx),
  mpclink(impclink),
  bx0(ibx0),
  syncErr(isyncErr),
  cscID(icscID)
{}
CSCCorrelatedLCTDigi::CSCCorrelatedLCTDigi ( )

Default.

Definition at line 39 of file CSCCorrelatedLCTDigi.cc.

References clear().

                                           {
  clear(); // set contents to zero
}

Member Function Documentation

void CSCCorrelatedLCTDigi::clear ( void  )

default

Clears this LCT.

clear this LCT

Definition at line 44 of file CSCCorrelatedLCTDigi.cc.

References bend, bx, bx0, cscID, keywire, mpclink, pattern, quality, strip, syncErr, trknmb, and valid.

Referenced by CSCMotherboard::clear(), CSCMotherboardME11::clear(), CSCCorrelatedLCTDigi(), CSCMotherboardME11::run(), and L1DummyProducer::SimpleDigi().

                                 {
  trknmb  = 0;
  valid   = 0;
  quality = 0;
  keywire = 0;
  strip   = 0;
  pattern = 0;
  bend    = 0;
  bx      = 0;
  mpclink = 0;
  bx0     = 0; 
  syncErr = 0;
  cscID   = 0;
}
int CSCCorrelatedLCTDigi::getBend ( ) const [inline]
int CSCCorrelatedLCTDigi::getBX ( ) const [inline]
uint16_t CSCCorrelatedLCTDigi::getBX0 ( ) const [inline]
int CSCCorrelatedLCTDigi::getCLCTPattern ( ) const [inline]

return CLCT pattern number (in use again Feb 2011)

Definition at line 57 of file CSCCorrelatedLCTDigi.h.

{ return (pattern & 0xF); }
uint16_t CSCCorrelatedLCTDigi::getCSCID ( ) const [inline]
int CSCCorrelatedLCTDigi::getKeyWG ( ) const [inline]
int CSCCorrelatedLCTDigi::getMPCLink ( ) const [inline]

return MPC link number, 0 means not sorted, 1-3 give MPC sorting rank

Definition at line 63 of file CSCCorrelatedLCTDigi.h.

References mpclink.

Referenced by operator<<(), and print().

{ return mpclink; }
int CSCCorrelatedLCTDigi::getPattern ( ) const [inline]
int CSCCorrelatedLCTDigi::getQuality ( ) const [inline]
int CSCCorrelatedLCTDigi::getStrip ( ) const [inline]
int CSCCorrelatedLCTDigi::getStripType ( ) const [inline]

return strip type (obsolete since mid-2008)

Definition at line 60 of file CSCCorrelatedLCTDigi.h.

{ return ((pattern & 0x8) >> 3); }
uint16_t CSCCorrelatedLCTDigi::getSyncErr ( ) const [inline]
int CSCCorrelatedLCTDigi::getTrknmb ( ) const [inline]

return track number

Definition at line 33 of file CSCCorrelatedLCTDigi.h.

References trknmb.

Referenced by L1EmulBias::ModifyCollection(), csctf::TrackStub::operator<(), operator<<(), csctf::TrackStub::operator>(), and print().

{ return trknmb; }
bool CSCCorrelatedLCTDigi::isValid ( void  ) const [inline]
bool CSCCorrelatedLCTDigi::operator!= ( const CSCCorrelatedLCTDigi rhs) const [inline]

Definition at line 80 of file CSCCorrelatedLCTDigi.h.

References operator==().

    { return !(this->operator==(rhs)); }
bool CSCCorrelatedLCTDigi::operator== ( const CSCCorrelatedLCTDigi rhs) const

Comparison.

Definition at line 60 of file CSCCorrelatedLCTDigi.cc.

References bend, bx, keywire, mpclink, pattern, quality, strip, trknmb, and valid.

Referenced by operator!=().

                                                                           {
  return ((trknmb == rhs.trknmb)   && (quality == rhs.quality) &&
          (keywire == rhs.keywire) && (strip == rhs.strip)     &&
          (pattern == rhs.pattern) && (bend == rhs.bend)       &&
          (bx == rhs.bx)           && (valid == rhs.valid) && (mpclink == rhs.mpclink) );
}
void CSCCorrelatedLCTDigi::print ( void  ) const

Print content of correlated LCT digi.

Debug.

Definition at line 68 of file CSCCorrelatedLCTDigi.cc.

References gather_cfg::cout, getBend(), getBX(), getKeyWG(), getMPCLink(), getPattern(), getQuality(), getStrip(), getTrknmb(), and isValid().

                                       {
  if (isValid()) {
    std::cout << "CSC LCT #"        << getTrknmb() 
              << ": Valid = "       << isValid()
              << " Quality = "      << getQuality()
              << " Key Wire = "     << getKeyWG()
              << " Strip = "        << getStrip()
              << " Pattern = "      << getPattern()
              << " Bend = "         << ( (getBend() == 0) ? 'L' : 'R' )
              << " BX = "           << getBX() 
              << " MPC Link = "     << getMPCLink() << std::endl;
  }
  else {
    std::cout << "Not a valid correlated LCT." << std::endl;
  }
}
void CSCCorrelatedLCTDigi::setMPCLink ( const uint16_t &  link) [inline]

Set mpc link number after MPC sorting.

Definition at line 73 of file CSCCorrelatedLCTDigi.h.

References link(), and mpclink.

{ mpclink = link; }
void CSCCorrelatedLCTDigi::setQuality ( unsigned int  q) [inline]

set quality code

Definition at line 87 of file CSCCorrelatedLCTDigi.h.

References lumiQueryAPI::q.

void CSCCorrelatedLCTDigi::setTrknmb ( const uint16_t  number) [inline]

Set track number (1,2) after sorting LCTs.

Definition at line 70 of file CSCCorrelatedLCTDigi.h.

Referenced by CSCMotherboardME11::correlateLCTs(), CSCMotherboard::correlateLCTs(), and L1EmulBias::ModifyCollection().

{trknmb = number;}
void CSCCorrelatedLCTDigi::setWireGroup ( unsigned int  wiregroup) [inline]

set wiregroup number

Definition at line 84 of file CSCCorrelatedLCTDigi.h.

{keywire= wiregroup;}

Member Data Documentation

uint16_t CSCCorrelatedLCTDigi::bend [private]

Definition at line 96 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getBend(), and operator==().

uint16_t CSCCorrelatedLCTDigi::bx [private]

Definition at line 97 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getBX(), and operator==().

uint16_t CSCCorrelatedLCTDigi::bx0 [private]

Definition at line 99 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), and getBX0().

uint16_t CSCCorrelatedLCTDigi::cscID [private]

Definition at line 101 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), and getCSCID().

uint16_t CSCCorrelatedLCTDigi::keywire [private]

Definition at line 93 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getKeyWG(), and operator==().

uint16_t CSCCorrelatedLCTDigi::mpclink [private]

Definition at line 98 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getMPCLink(), operator==(), and setMPCLink().

uint16_t CSCCorrelatedLCTDigi::pattern [private]

Definition at line 95 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getPattern(), and operator==().

uint16_t CSCCorrelatedLCTDigi::quality [private]

Definition at line 92 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getQuality(), and operator==().

uint16_t CSCCorrelatedLCTDigi::strip [private]

Definition at line 94 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getStrip(), and operator==().

uint16_t CSCCorrelatedLCTDigi::syncErr [private]

Definition at line 100 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), and getSyncErr().

uint16_t CSCCorrelatedLCTDigi::trknmb [private]

Definition at line 90 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), getTrknmb(), and operator==().

uint16_t CSCCorrelatedLCTDigi::valid [private]

Definition at line 91 of file CSCCorrelatedLCTDigi.h.

Referenced by clear(), isValid(), and operator==().