#include <CSCAnalogSignal.h>
Public Member Functions | |
CSCAnalogSignal () | |
CSCAnalogSignal (int element, float binSize, std::vector< float > &binValues, float total=0., float timeOffset=0.) | |
float | getBinSize () const |
float | getBinValue (int i) const |
int | getElement () const |
constructor from time and amp shape More... | |
int | getSize () const |
float | getTimeOffset () const |
float | getTotal () const |
float | getValue (float t) const |
void | operator*= (float scaleFactor) |
void | operator+= (float offset) |
float & | operator[] (int i) |
const float & | operator[] (int i) const |
float | peakTime () const |
the time when the signal peaks More... | |
void | setElement (int element) |
void | setTimeOffset (float offset) |
unsigned | size () const |
void | superimpose (const CSCAnalogSignal &signal2) |
Private Attributes | |
float | invBinSize |
std::vector< float > | theBinValues |
int | theElement |
float | theTimeOffset |
float | theTotal |
Friends | |
std::ostream & | operator<< (std::ostream &, const CSCAnalogSignal &) |
Simple histogram meant to represent the analog signal on a detector element.
Last mod:
30-Jun-00 ptc Add further traps in getBinValue() and setBinValue().
06-Jul-00 ptc In fact the getBinValue trap was an important bug-fix: it trapped on > size() of stl std::vector but should have trapped >= size(). It occasionally does reach size().
Mods (performace improvements) by Vin 31/07/2000
Critical methods (getBinValue, get Value +=) inlined
bin-size stored and used as his inverse (encapulation helped in not changing interface, named changed to use compiler to catch its occurrencies)
swap input std::vector (be careful if const..)
do proper interpolation (not just /2)
Definition at line 33 of file CSCAnalogSignal.h.
|
inline |
Definition at line 37 of file CSCAnalogSignal.h.
|
inline |
|
inline |
Definition at line 76 of file CSCAnalogSignal.h.
References invBinSize.
Referenced by CSCCrosstalkGenerator::getCrosstalk(), and operator<<().
|
inline |
Definition at line 53 of file CSCAnalogSignal.h.
References i, and theBinValues.
Referenced by CSCWireElectronicsSim::fillDigis(), getValue(), and CSCCrosstalkGenerator::ratio().
|
inline |
constructor from time and amp shape
Definition at line 51 of file CSCAnalogSignal.h.
References theElement.
Referenced by CSCBaseElectronicsSim::add(), and CSCStripConditions::noisify().
|
inline |
Definition at line 75 of file CSCAnalogSignal.h.
References theBinValues.
Referenced by CSCWireElectronicsSim::fillDigis(), CSCCrosstalkGenerator::getCrosstalk(), operator*=(), operator+=(), operator[](), and CSCCrosstalkGenerator::ratio().
|
inline |
Definition at line 78 of file CSCAnalogSignal.h.
References theTimeOffset.
Referenced by CSCCrosstalkGenerator::getCrosstalk(), CSCStripConditions::noisify(), and operator<<().
|
inline |
Definition at line 77 of file CSCAnalogSignal.h.
References theTotal.
Referenced by SortSignalsByTotal().
|
inline |
Definition at line 58 of file CSCAnalogSignal.h.
References f, getBinValue(), i, invBinSize, and theTimeOffset.
Referenced by CSCStripElectronicsSim::comparatorReading(), CSCStripElectronicsSim::createDigi(), CSCCrosstalkGenerator::getCrosstalk(), CSCStripElectronicsSim::makeNoiseSignal(), CSCStripElectronicsSim::runComparator(), and superimpose().
|
inline |
Definition at line 96 of file CSCAnalogSignal.h.
References getSize(), i, theBinValues, and theTotal.
|
inline |
Definition at line 90 of file CSCAnalogSignal.h.
References getSize(), i, hltrates_dqm_sourceclient-live_cfg::offset, and theBinValues.
|
inline |
Definition at line 105 of file CSCAnalogSignal.h.
References assert(), getSize(), i, and theBinValues.
|
inline |
Definition at line 110 of file CSCAnalogSignal.h.
References assert(), getSize(), i, and theBinValues.
float CSCAnalogSignal::peakTime | ( | ) | const |
the time when the signal peaks
Definition at line 6 of file CSCAnalogSignal.cc.
References invBinSize, theBinValues, and theTimeOffset.
|
inline |
|
inline |
Definition at line 79 of file CSCAnalogSignal.h.
References hltrates_dqm_sourceclient-live_cfg::offset, and theTimeOffset.
|
inline |
|
inline |
Definition at line 81 of file CSCAnalogSignal.h.
References getValue(), i, invBinSize, gen::n, edmStreamStallGrapher::t, theBinValues, theTimeOffset, and theTotal.
Referenced by cuy.FindIssue::__init__(), CSCBaseElectronicsSim::add(), CSCStripElectronicsSim::addCrosstalk(), and CSCStripConditions::noisify().
|
friend |
Definition at line 12 of file CSCAnalogSignal.cc.
|
private |
Definition at line 121 of file CSCAnalogSignal.h.
Referenced by getBinSize(), getValue(), peakTime(), and superimpose().
|
private |
Definition at line 122 of file CSCAnalogSignal.h.
Referenced by CSCAnalogSignal(), getBinValue(), getSize(), operator*=(), operator+=(), operator<<(), operator[](), peakTime(), size(), and superimpose().
|
private |
Definition at line 120 of file CSCAnalogSignal.h.
Referenced by getElement(), operator<<(), and setElement().
|
private |
Definition at line 124 of file CSCAnalogSignal.h.
Referenced by getTimeOffset(), getValue(), peakTime(), setTimeOffset(), and superimpose().
|
private |
Definition at line 123 of file CSCAnalogSignal.h.
Referenced by getTotal(), operator*=(), operator<<(), and superimpose().