27 string hash(
void *
buf,
size_t len)
const;
30 printLayerMap =
pset.getUntrackedParameter<
bool>(
"printLayerMap",
false);
43 const EVP_MD *md = EVP_get_digestbyname(
"SHA1");
44 if (!EVP_DigestInit_ex(mdctx, md,
nullptr))
45 throw cms::Exception(
"L1TCaloParamsViewer::hash") <<
"SHA1 initialization error";
47 if (!EVP_DigestUpdate(mdctx,
buf, len))
48 throw cms::Exception(
"L1TCaloParamsViewer::hash") <<
"SHA1 processing error";
50 unsigned char hash[EVP_MAX_MD_SIZE];
51 unsigned int md_len = 0;
52 if (!EVP_DigestFinal_ex(mdctx,
hash, &md_len))
53 throw cms::Exception(
"L1TCaloParamsViewer::hash") <<
"SHA1 finalization error";
58 char tmp[EVP_MAX_MD_SIZE * 2 + 1];
61 for (
unsigned int i = 0;
i < md_len;
i++)
74 cout <<
"Some fields in L1TMuonOverlapParamsParams: " << endl;
76 cout <<
" fwVersion() = " << ptr1->fwVersion() << endl;
77 cout <<
" nPdfAddrBits() = " << ptr1->nPdfAddrBits() << endl;
78 cout <<
" nPdfValBits() = " << ptr1->nPdfValBits() << endl;
79 cout <<
" nHitsPerLayer() = " << ptr1->nHitsPerLayer() << endl;
80 cout <<
" nPhiBits() = " << ptr1->nPhiBits() << endl;
81 cout <<
" nPhiBins() = " << ptr1->nPhiBins() << endl;
82 cout <<
" nRefHits() = " << ptr1->nRefHits() << endl;
83 cout <<
" nTestRefHits() = " << ptr1->nTestRefHits() << endl;
84 cout <<
" nProcessors() = " << ptr1->nProcessors() << endl;
85 cout <<
" nLogicRegions() = " << ptr1->nLogicRegions() << endl;
86 cout <<
" nInputs() = " << ptr1->nInputs() << endl;
87 cout <<
" nLayers() = " << ptr1->nLayers() << endl;
88 cout <<
" nRefLayers() = " << ptr1->nRefLayers() << endl;
89 cout <<
" nGoldenPatterns() = " << ptr1->nGoldenPatterns() << endl;
91 const std::vector<int> *
gp = ptr1->generalParams();
92 cout <<
" number of general parameters: = " <<
gp->size() << endl;
98 const std::vector<L1TMuonOverlapParams::LayerMapNode> *lm = ptr1->layerMap();
100 cout <<
" layerMap() = [" << lm->size() <<
"] ";
102 for (
unsigned int i = 0;
i < lm->size();
i++)
107 for (
unsigned int i = 0;
i < lm->size();
i++) {
111 char *
n = (
char *)(&(lm_[
i]));
113 cout <<
"0x" << hex <<
int(*(
n +
j)) <<
dec <<
", ";
120 cout <<
" layerMap() = [0] " << endl;
123 const std::vector<L1TMuonOverlapParams::RefLayerMapNode> *rlm = ptr1->refLayerMap();
125 cout <<
" refLayerMap() = [" << rlm->size() <<
"] ";
127 for (
unsigned int i = 0;
i < rlm->size();
i++)
132 cout <<
" refLayerMap() = [0] " << endl;
135 const std::vector<L1TMuonOverlapParams::RefHitNode> *rhn = ptr1->refHitMap();
137 cout <<
" refHitMap() = [" << rhn->size() <<
"] ";
139 for (
unsigned int i = 0;
i < rhn->size();
i++)
144 cout <<
" refHitMap() = [0] " << endl;
147 const std::vector<int> *gpsm = ptr1->globalPhiStartMap();
148 if (!gpsm->empty()) {
149 cout <<
" globalPhiStartMap() = [" << gpsm->size() <<
"] ";
150 int gpsm_[gpsm->size()];
151 for (
unsigned int i = 0;
i < gpsm->size();
i++)
152 gpsm_[
i] = (*gpsm)[
i];
153 cout <<
hash(gpsm_,
sizeof(
int) * (gpsm->size())) << endl;
155 cout <<
" globalPhiStartMap() = [0] " << endl;
158 const std::vector<L1TMuonOverlapParams::LayerInputNode> *lim = ptr1->layerInputMap();
160 cout <<
" layerInputMap() = [" << lim->size() <<
"] ";
162 for (
unsigned int i = 0;
i < lim->size();
i++)
167 cout <<
" layerInputMap() = [0] " << endl;
170 const std::vector<int> *css = ptr1->connectedSectorsStart();
172 cout <<
" connectedSectorsStart() = [" << css->size() <<
"] ";
173 int css_[css->size()];
174 for (
unsigned int i = 0;
i < css->size();
i++)
176 cout <<
hash(css_,
sizeof(
int) * (css->size())) << endl;
178 cout <<
" connectedSectorsStart() = [0] " << endl;
181 const std::vector<int> *cse = ptr1->connectedSectorsEnd();
183 cout <<
" connectedSectorsEnd() = [" << cse->size() <<
"] ";
184 int cse_[cse->size()];
185 for (
unsigned int i = 0;
i < cse->size();
i++)
187 cout <<
hash(cse_,
sizeof(
int) * (cse->size())) << endl;
189 cout <<
" connectedSectorsEnd() = [0] " << endl;
192 const l1t::LUT *clut = ptr1->chargeLUT();
194 cout <<
" chargeLUT = [" << clut->
maxSize() <<
"] ";
196 for (
unsigned int i = 0;
i < clut->
maxSize();
i++)
200 cout <<
" chargeLUT = [0] " << endl;
203 const l1t::LUT *elut = ptr1->etaLUT();
207 for (
unsigned int i = 0;
i < elut->
maxSize();
i++)
211 cout <<
" chargeLUT = [0] " << endl;
214 const l1t::LUT *ptlut = ptr1->ptLUT();
216 cout <<
" ptLUT = [" << ptlut->
maxSize() <<
"] " << flush;
218 for (
unsigned int i = 0;
i < ptlut->
maxSize();
i++)
219 ptlut_[
i] = ptlut->
data(
i);
222 cout <<
" ptLUT = [0] " << endl;
225 const l1t::LUT *plut = ptr1->pdfLUT();
227 cout <<
" pdfLUT = [" << plut->
maxSize() <<
"] " << flush;
229 for (
unsigned int i = 0;
i < plut->
maxSize();
i++)
233 cout <<
" pdfLUT = [0] " << endl;
236 const l1t::LUT *mlut = ptr1->meanDistPhiLUT();
238 cout <<
" meanDistPhiLUT = [" << mlut->
maxSize() <<
"] " << flush;
240 for (
unsigned int i = 0;
i < mlut->
maxSize();
i++)
244 cout <<
" meanDistPhiLUT = [0] " << endl;
void analyze(const edm::Event &, const edm::EventSetup &) override
unsigned int maxSize() const
unsigned int hwNumber
short layer number used within OMTF emulator
#define DEFINE_FWK_MODULE(type)
unsigned int logicNumber
logic numer of the layer
example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
T const * product() const
int data(unsigned int address) const
L1TMuonOverlapParamsViewer(const edm::ParameterSet &pset)
bool bendingLayer
Is this a bending layers?
string hash(void *buf, size_t len) const
~L1TMuonOverlapParamsViewer(void) override
unsigned int connectedToLayer