File indexing completed on 2023-03-17 10:49:46
0001
0002
0003
0004
0005 #include "DataFormats/FEDRawData/interface/FEDNumbering.h"
0006 #include <cassert>
0007
0008 using namespace std;
0009
0010 namespace {
0011
0012 constexpr std::array<bool, FEDNumbering::FEDNumbering::MAXFEDID + 1> initIn() {
0013 std::array<bool, FEDNumbering::MAXFEDID + 1> in = {};
0014 int i = 0;
0015 for (i = 0; i <= FEDNumbering::MAXFEDID; i++) {
0016 in[i] = false;
0017 }
0018 for (i = FEDNumbering::MINSiPixelFEDID; i <= FEDNumbering::MAXSiPixelFEDID; i++) {
0019 in[i] = true;
0020 }
0021 for (i = FEDNumbering::MINSiStripFEDID; i <= FEDNumbering::MAXSiStripFEDID; i++) {
0022 in[i] = true;
0023 }
0024 for (i = FEDNumbering::MINPreShowerFEDID; i <= FEDNumbering::MAXPreShowerFEDID; i++) {
0025 in[i] = true;
0026 }
0027 for (i = FEDNumbering::MINECALFEDID; i <= FEDNumbering::MAXECALFEDID; i++) {
0028 in[i] = true;
0029 }
0030 for (i = FEDNumbering::MINCASTORFEDID; i <= FEDNumbering::MAXCASTORFEDID; i++) {
0031 in[i] = true;
0032 }
0033 for (i = FEDNumbering::MINHCALFEDID; i <= FEDNumbering::MAXHCALFEDID; i++) {
0034 in[i] = true;
0035 }
0036 for (i = FEDNumbering::MINLUMISCALERSFEDID; i <= FEDNumbering::MAXLUMISCALERSFEDID; i++) {
0037 in[i] = true;
0038 }
0039 for (i = FEDNumbering::MINCSCFEDID; i <= FEDNumbering::MAXCSCFEDID; i++) {
0040 in[i] = true;
0041 }
0042 for (i = FEDNumbering::MINCSCTFFEDID; i <= FEDNumbering::MAXCSCTFFEDID; i++) {
0043 in[i] = true;
0044 }
0045 for (i = FEDNumbering::MINDTFEDID; i <= FEDNumbering::MAXDTFEDID; i++) {
0046 in[i] = true;
0047 }
0048 for (i = FEDNumbering::MINDTTFFEDID; i <= FEDNumbering::MAXDTTFFEDID; i++) {
0049 in[i] = true;
0050 }
0051 for (i = FEDNumbering::MINRPCFEDID; i <= FEDNumbering::MAXRPCFEDID; i++) {
0052 in[i] = true;
0053 }
0054 for (i = FEDNumbering::MINTriggerGTPFEDID; i <= FEDNumbering::MAXTriggerGTPFEDID; i++) {
0055 in[i] = true;
0056 }
0057 for (i = FEDNumbering::MINTriggerEGTPFEDID; i <= FEDNumbering::MAXTriggerEGTPFEDID; i++) {
0058 in[i] = true;
0059 }
0060 for (i = FEDNumbering::MINTriggerGCTFEDID; i <= FEDNumbering::MAXTriggerGCTFEDID; i++) {
0061 in[i] = true;
0062 }
0063 for (i = FEDNumbering::MINTriggerLTCFEDID; i <= FEDNumbering::MAXTriggerLTCFEDID; i++) {
0064 in[i] = true;
0065 }
0066 for (i = FEDNumbering::MINTriggerLTCmtccFEDID; i <= FEDNumbering::MAXTriggerLTCmtccFEDID; i++) {
0067 in[i] = true;
0068 }
0069 for (i = FEDNumbering::MINCSCDDUFEDID; i <= FEDNumbering::MAXCSCDDUFEDID; i++) {
0070 in[i] = true;
0071 }
0072 for (i = FEDNumbering::MINCSCContingencyFEDID; i <= FEDNumbering::MAXCSCContingencyFEDID; i++) {
0073 in[i] = true;
0074 }
0075 for (i = FEDNumbering::MINCSCTFSPFEDID; i <= FEDNumbering::MAXCSCTFSPFEDID; i++) {
0076 in[i] = true;
0077 }
0078 for (i = FEDNumbering::MINDAQeFEDFEDID; i <= FEDNumbering::MAXDAQeFEDFEDID; i++) {
0079 in[i] = true;
0080 }
0081 for (i = FEDNumbering::MINDAQmFEDFEDID; i <= FEDNumbering::MAXDAQmFEDFEDID; i++) {
0082 in[i] = true;
0083 }
0084 for (i = FEDNumbering::MINTCDSuTCAFEDID; i <= FEDNumbering::MAXTCDSuTCAFEDID; i++) {
0085 in[i] = true;
0086 }
0087 for (i = FEDNumbering::MINHCALuTCAFEDID; i <= FEDNumbering::MAXHCALuTCAFEDID; i++) {
0088 in[i] = true;
0089 }
0090 for (i = FEDNumbering::MINSiPixeluTCAFEDID; i <= FEDNumbering::MAXSiPixeluTCAFEDID; i++) {
0091 in[i] = true;
0092 }
0093 for (i = FEDNumbering::MINDTUROSFEDID; i <= FEDNumbering::MAXDTUROSFEDID; i++) {
0094 in[i] = true;
0095 }
0096 for (i = FEDNumbering::MINTriggerUpgradeFEDID; i <= FEDNumbering::MAXTriggerUpgradeFEDID; i++) {
0097 in[i] = true;
0098 }
0099 return in;
0100 }
0101
0102 constexpr std::array<bool, FEDNumbering::MAXFEDID + 1> in_ = initIn();
0103
0104 }
0105
0106 bool FEDNumbering::inRange(int i) { return in_[i]; }
0107 bool FEDNumbering::inRangeNoGT(int i) {
0108 if ((i >= MINTriggerGTPFEDID && i <= MAXTriggerGTPFEDID) || (i >= MINTriggerEGTPFEDID && i <= MAXTriggerEGTPFEDID))
0109 return false;
0110 return in_[i];
0111 }