File indexing completed on 2024-04-06 12:02:38
0001 #ifndef CondFormats_SiStripObjects_OptoScanAnalysis_H
0002 #define CondFormats_SiStripObjects_OptoScanAnalysis_H
0003
0004 #include "CondFormats/SiStripObjects/interface/CommissioningAnalysis.h"
0005 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h"
0006 #include <sstream>
0007 #include <vector>
0008 #include <cstdint>
0009
0010
0011
0012
0013
0014
0015 class OptoScanAnalysis : public CommissioningAnalysis {
0016 public:
0017
0018
0019 OptoScanAnalysis(const uint32_t& key);
0020
0021 OptoScanAnalysis();
0022
0023 ~OptoScanAnalysis() override { ; }
0024
0025 friend class OptoScanAlgorithm;
0026
0027
0028
0029
0030 bool isValid() const override;
0031
0032
0033 inline const uint16_t& gain() const;
0034
0035
0036 inline const VInt& bias() const;
0037
0038
0039 inline const VFloat& measGain() const;
0040
0041
0042 inline const VFloat& zeroLight() const;
0043
0044
0045 inline const VFloat& linkNoise() const;
0046
0047
0048 inline const VFloat& liftOff() const;
0049
0050
0051 inline const VFloat& threshold() const;
0052
0053
0054 inline const VFloat& tickHeight() const;
0055
0056
0057 inline const VFloat& baseSlope() const;
0058
0059
0060
0061
0062 void print(std::stringstream&, uint32_t gain_setting = sistrip::invalid_) override;
0063
0064
0065 void summary(std::stringstream&) const override;
0066
0067
0068 void reset() override;
0069
0070
0071
0072
0073 static const uint16_t defaultGainSetting_;
0074
0075
0076 static const uint16_t defaultBiasSetting_;
0077
0078
0079 static const float fedAdcGain_;
0080
0081
0082
0083 private:
0084
0085 uint16_t gain_;
0086
0087
0088 VInt bias_;
0089
0090
0091 VFloat measGain_;
0092
0093
0094 VFloat zeroLight_;
0095
0096
0097 VFloat linkNoise_;
0098
0099
0100 VFloat liftOff_;
0101
0102
0103 VFloat threshold_;
0104
0105
0106 VFloat tickHeight_;
0107
0108
0109 VFloat baseSlope_;
0110 };
0111
0112
0113
0114 const uint16_t& OptoScanAnalysis::gain() const { return gain_; }
0115 const OptoScanAnalysis::VInt& OptoScanAnalysis::bias() const { return bias_; }
0116 const OptoScanAnalysis::VFloat& OptoScanAnalysis::measGain() const { return measGain_; }
0117 const OptoScanAnalysis::VFloat& OptoScanAnalysis::zeroLight() const { return zeroLight_; }
0118 const OptoScanAnalysis::VFloat& OptoScanAnalysis::linkNoise() const { return linkNoise_; }
0119 const OptoScanAnalysis::VFloat& OptoScanAnalysis::liftOff() const { return liftOff_; }
0120 const OptoScanAnalysis::VFloat& OptoScanAnalysis::threshold() const { return threshold_; }
0121 const OptoScanAnalysis::VFloat& OptoScanAnalysis::tickHeight() const { return tickHeight_; }
0122 const OptoScanAnalysis::VFloat& OptoScanAnalysis::baseSlope() const { return baseSlope_; }
0123
0124 #endif