File indexing completed on 2024-04-06 12:02:45
0001 #ifndef DTHVCheckWithHysteresis_H
0002 #define DTHVCheckWithHysteresis_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #include "CondTools/DT/interface/DTHVAbstractCheck.h"
0018
0019
0020
0021
0022 namespace edm {
0023
0024
0025 class ParameterSet;
0026 class ActivityRegistry;
0027 }
0028
0029
0030
0031
0032 #include <map>
0033
0034
0035
0036
0037
0038 namespace cond {
0039 namespace service {
0040 class DTHVCheckWithHysteresis : public DTHVAbstractCheck {
0041 public:
0042
0043
0044 DTHVCheckWithHysteresis();
0045 DTHVCheckWithHysteresis(const edm::ParameterSet& iConfig, edm::ActivityRegistry& iAR);
0046
0047
0048
0049 ~DTHVCheckWithHysteresis() override;
0050
0051
0052
0053
0054
0055 DTHVAbstractCheck::flag checkCurrentStatus(int rawId,
0056 int type,
0057 float valueA,
0058 float valueC,
0059 float valueS,
0060 const std::map<int, timedMeasurement>& snapshotValues,
0061 const std::map<int, int>& aliasMap,
0062 const std::map<int, int>& layerMap) override;
0063 void setStatus(int rawId,
0064 int flagA,
0065 int flagC,
0066 int flagS,
0067 const std::map<int, timedMeasurement>& snapshotValues,
0068 const std::map<int, int>& aliasMap,
0069 const std::map<int, int>& layerMap) override;
0070
0071 private:
0072 float* minHVl;
0073 float* minHVh;
0074 float* maxHV;
0075 float maxCurrent;
0076 std::map<int, int>* oldStatusA;
0077 std::map<int, int>* oldStatusC;
0078 std::map<int, int>* oldStatusS;
0079 };
0080
0081 }
0082 }
0083
0084 #endif