File indexing completed on 2021-02-14 12:51:18
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef tmEventSetup_L1TUtmTriggerMenu_hh
0012 #define tmEventSetup_L1TUtmTriggerMenu_hh
0013
0014 #include "CondFormats/L1TObjects/interface/L1TUtmScale.h"
0015 #include "CondFormats/L1TObjects/interface/L1TUtmCondition.h"
0016 #include "CondFormats/L1TObjects/interface/L1TUtmAlgorithm.h"
0017 #include "CondFormats/Serialization/interface/Serializable.h"
0018
0019 #include <map>
0020 #include <string>
0021
0022
0023
0024
0025 class L1TUtmTriggerMenu {
0026 public:
0027 L1TUtmTriggerMenu()
0028 : algorithm_map_(),
0029 condition_map_(),
0030 scale_map_(),
0031 external_map_(),
0032 token_to_condition_(),
0033 name_(),
0034 version_(),
0035 comment_(),
0036 datetime_(),
0037 uuid_firmware_(),
0038 scale_set_name_(),
0039 n_modules_(),
0040 version(0){};
0041
0042 virtual ~L1TUtmTriggerMenu() = default;
0043
0044
0045
0046
0047
0048 const std::map<std::string, L1TUtmAlgorithm>& getAlgorithmMap() const { return algorithm_map_; };
0049
0050
0051
0052
0053
0054 const std::map<std::string, L1TUtmCondition>& getConditionMap() const { return condition_map_; };
0055
0056
0057
0058
0059
0060 const std::map<std::string, L1TUtmScale>& getScaleMap() const { return scale_map_; };
0061
0062
0063
0064
0065
0066 const std::string& getName() const { return name_; };
0067
0068
0069
0070
0071
0072 const std::string& getVersion() const { return version_; };
0073
0074
0075
0076
0077
0078 const std::string& getComment() const { return comment_; };
0079
0080
0081
0082
0083
0084 const std::string& getDatetime() const { return datetime_; };
0085
0086
0087
0088
0089
0090 const std::string& getFirmwareUuid() const { return uuid_firmware_; };
0091
0092
0093
0094
0095
0096 const unsigned long getFirmwareUuidHashed() const;
0097
0098
0099
0100
0101
0102 const std::string& getScaleSetName() const { return scale_set_name_; };
0103
0104
0105
0106
0107
0108 const unsigned int getNmodules() const { return n_modules_; };
0109
0110
0111
0112
0113
0114 void setName(const std::string& value) { name_ = value; };
0115
0116
0117
0118
0119
0120 void setVersion(const std::string& value) { version_ = value; };
0121
0122
0123
0124
0125
0126 void setComment(const std::string& value) { comment_ = value; };
0127
0128
0129
0130
0131
0132 void setDatetime(const std::string& value) { datetime_ = value; };
0133
0134
0135
0136
0137
0138 void setFirmwareUuid(const std::string& value) { uuid_firmware_ = value; };
0139
0140
0141
0142
0143
0144 void setScaleSetName(const std::string& value) { scale_set_name_ = value; };
0145
0146
0147
0148
0149
0150 void setNmodules(const unsigned int value) { n_modules_ = value; };
0151
0152
0153
0154
0155
0156 static unsigned long murmurHashNeutral2(const void* key, int len, unsigned int seed);
0157
0158 protected:
0159 std::map<std::string, L1TUtmAlgorithm> algorithm_map_;
0160 std::map<std::string, L1TUtmCondition> condition_map_;
0161 std::map<std::string, L1TUtmScale> scale_map_;
0162 std::map<std::string, unsigned int> external_map_;
0163 std::map<std::string, std::string>
0164 token_to_condition_;
0165 std::string name_;
0166 std::string version_;
0167 std::string comment_;
0168 std::string datetime_;
0169 std::string uuid_firmware_;
0170 std::string scale_set_name_;
0171 unsigned int n_modules_;
0172 unsigned int version;
0173 COND_SERIALIZABLE;
0174 };
0175
0176 #endif