1 #ifndef MU_END_STRIP_ELECTRONICS_SIM_H
2 #define MU_END_STRIP_ELECTRONICS_SIM_H
24 class HepRandomEngine;
37 CLHEP::HepRandomEngine*);
64 int & minStrip,
int & maxStrip);
68 getKeyStrips(
const std::vector<CSCComparatorDigi> & comparators)
const;
80 CLHEP::HepRandomEngine*);
84 int thisStrip,
int otherStrip, CLHEP::HepRandomEngine*);
double theComparatorTimeOffset
std::list< int > getKeyStripsFromMC() const
get ths strips that have detector hits
void addCrosstalk(CLHEP::HepRandomEngine *)
int theComparatorClockJump
float calculateAmpResponse(float t) const
void runComparator(std::vector< CSCComparatorDigi > &result, CLHEP::HepRandomEngine *)
float theComparatorDeadTime
void getReadoutRange(int inputStrip, int &minStrip, int &maxStrip)
void setStripConditions(CSCStripConditions *cond)
CSCStripConditions * theStripConditions
virtual ~CSCStripElectronicsSim()
float comparatorReading(const CSCAnalogSignal &signal, float time, CLHEP::HepRandomEngine *) const
calculates the comparator reading, including saturation and offsets
std::vector< double > theSCATimingOffsets
std::list< int > channelsToRead(const std::list< int > &keyStrips, int window) const
float theComparatorRMSOffset
CSCAnalogSignal makeNoiseSignal(int element, CLHEP::HepRandomEngine *) override
void fillMissingLayer(const CSCLayer *layer, const CSCComparatorDigiCollection &comparators, CSCStripDigiCollection &digis, CLHEP::HepRandomEngine *)
CSCCrosstalkGenerator * theCrosstalkGenerator
void initParameters()
initialization for each layer
void doSaturation(CSCStripDigi &digi)
float theComparatorThreshold
CSCStripElectronicsSim(const edm::ParameterSet &p)
configurable parameters
double theComparatorTimeBinOffset
std::list< int > getKeyStrips(const std::vector< CSCComparatorDigi > &comparators) const
finds the key strips from these comparators
float theComparatorSaturation
virtual int readoutElement(int strip) const
double theComparatorSamplingTime
void fillDigis(CSCStripDigiCollection &digis, CSCComparatorDigiCollection &comparators, CLHEP::HepRandomEngine *)
float theAverageTimeOfFlight
CSCStripAmpResponse theAmpResponse
void createDigi(int istrip, const CSCAnalogSignal &signal, std::vector< CSCStripDigi > &result, CLHEP::HepRandomEngine *)
void fillStripDigis(const std::list< int > &keyStrips, CSCStripDigiCollection &digis, CLHEP::HepRandomEngine *)