def checkHtrModules(fedId=None, spigots=[], htrBlocks={}): crates = [] for iBlock, block in htrBlocks.iteritems(): if block["IsTTP"]: continue expected = patterns.expectedHtr(fedId, spigots[iBlock]) crates.append(block["Crate"]) bad = [block["Top"] != expected["Top"], block["Slot"] != expected["Slot"], ] if any(bad): fields = (fedId, spigot, block["Crate"], block["Slot"], block["Top"], expected["Slot"], expected["Top"]) printer.error("FED %3d spigot %2d has moduleId decode to crate %2d slot %2d%s (expected slot %2d%s)" % fields) if len(set(crates)) != 1: printer.error("FED %s contains modules with crate labels %s." % (str(fedId), str(crates)))
def pretty(be=None, fe=None): if be: dcc, sp, fi = be if dcc.startswith("u"): crate = dcc[1:] slot = sp s = " %2s %2s %2s: " % (crate, slot, fi) else: crate = conf.expectedCrate(int(dcc)) exp = conf.expectedHtr(int(dcc), int(sp)) htr = "%2d%1s" % (exp["Slot"], exp["Top"]) s = "%2s(%2d) %2s(%3s) %2s: " % (dcc, crate, sp, htr, fi) else: s = "" try: s += " %6s %2s %2s" % fe except TypeError: s += " ".join(fe) return s
def checkHtrModules(fedId=None, spigots=[], htrBlocks={}): crates = [] for iBlock, block in htrBlocks.iteritems(): if block["IsTTP"]: continue expected = patterns.expectedHtr(fedId, spigots[iBlock]) crates.append(block["Crate"]) bad = [ block["Top"] != expected["Top"], block["Slot"] != expected["Slot"], ] if any(bad): fields = (fedId, spigot, block["Crate"], block["Slot"], block["Top"], expected["Slot"], expected["Top"]) printer.error( "FED %3d spigot %2d has moduleId decode to crate %2d slot %2d%s (expected slot %2d%s)" % fields) if len(set(crates)) != 1: printer.warning("FED %s contains modules with crate labels %s." % (str(fedId), str(crates)))