def insertOldSeeds(self, *seeds): """ _insertOldSeeds_ Backwards compatibility methods """ seedList = list(seeds) svc = self.data.services["RandomNumberGeneratorService"] # //=====Old methods, keep for backwards compat.======= # // #// srcSeedVec = getattr(svc, "sourceSeedVector", Utilities._CfgNoneType()).value() if srcSeedVec != None: numReq = len(srcSeedVec) seedsReq = seedList[0:numReq] seedList = seedList[numReq + 1:] svc.sourceSeedVector = CfgTypes.untracked( CfgTypes.vuint32(seedsReq)) else: svc.sourceSeed = CfgTypes.untracked( CfgTypes.uint32(seedList.pop(0))) modSeeds = getattr(svc, "moduleSeeds", Utilities._CfgNoneType()).value() if modSeeds != None: for param in modSeeds.parameterNames_(): setattr(modSeeds, param, CfgTypes.untracked(CfgTypes.uint32(seedList.pop(0)))) # // # // #//====End old stuff====================================== return
def hasOldSeeds(self): """ _hasOldSeeds_ Check to see if old or new seed service format is used """ svc = self.data.services["RandomNumberGeneratorService"] srcSeedVec = getattr(svc, "sourceSeedVector", Utilities._CfgNoneType()).value() srcSeed = getattr(svc, "sourceSeed", Utilities._CfgNoneType()).value() testSeed = (srcSeedVec != None) or (srcSeed != None) return testSeed
def seedCount(self): """ _seedCount_ Get the number of required Seeds """ return Utilities.seedCount(self.data)
def getConditionsTag(self): """ _getConditionsTag_ Retrieve the conditions tag if set, else None """ globalPSet = getattr(self.data, "GlobalTag", None) if globalPSet == None: return None return getattr(globalPSet, "globaltag", Utilities._CfgNoneType()).value()
def getConditionsTag(self): """ _getConditionsTag_ Retrieve the conditions tag if set, else None """ globalPSet = getattr( self.data, "GlobalTag", None) if globalPSet == None: return None return getattr( globalPSet, "globaltag", Utilities._CfgNoneType()).value()
def pileupFileList(self): """ _pileupFilesList_ return a list of pileup files from all mixing modules """ result = set() for mixMod in self.mixingModules(): secSource = getattr(mixMod, "secsource", None) if secSource == None: continue fileList = getattr(secSource, "fileNames", Utilities._CfgNoneType()).value() if fileList == None: continue for entry in fileList: result.add(entry) return list(result)
def validateForProduction(self): """ _validateForProduction_ Perform tests to ensure that the cfg object contains all the necessary pieces for production. Use this method to validate a cfg at request time """ Utilities.checkMessageLoggerSvc(self.data) Utilities.checkConfigMetadata(self.data) for outMod in self.outputModules.values(): Utilities.checkOutputModule(outMod.data) return