![]() |
![]() |
Classes | |
class | ConfigBuilder |
class | Options |
Functions | |
def | addALCAPaths |
def | addOutputModule |
def | dumpPython |
def | filesFromDBSQuery |
def | filesFromList |
def | getConfigsForScenario |
def | getDefaultTrigger |
def | getHelp |
def | installFilteredStream |
def | installPromptReco |
def | MassReplaceInputTag |
Variables | |
string | __default = 'GRun' |
string | __source__ = "$Source: /local/reps/CMSSW/CMSSW/Configuration/PyReleaseValidation/python/ConfigBuilder.py,v $" |
dictionary | __triggerTable |
string | __version__ = "$Revision: 1.381.2.20 $" |
tuple | defaultOptions = Options() |
promptReco = installPromptReco |
def ConfigBuilder::addALCAPaths | ( | process, | |
listOfALCANames, | |||
definitionFile = "Configuration/StandardSequences/AlCaRecoStreams_cff" |
|||
) |
_addALCAPaths_ Function to add alignment&calibration sequences to an existing process
Definition at line 2059 of file ConfigBuilder.py.
02060 : 02061 """ 02062 _addALCAPaths_ 02063 02064 Function to add alignment&calibration sequences to an existing process 02065 """ 02066 __import__(definitionFile) 02067 definitionModule = sys.modules[definitionFile] 02068 process.extend(definitionModule) 02069 02070 for alca in listOfALCANames: 02071 streamName = "ALCARECOStream%s" % alca 02072 stream = getattr(definitionModule, streamName) 02073 for path in stream.paths: 02074 schedule.append(path) 02075 02076 return
def ConfigBuilder::addOutputModule | ( | process, | |
tier, | |||
content | |||
) |
_addOutputModule_ Function to add an output module to a given process with given data tier and event content
Definition at line 2030 of file ConfigBuilder.py.
02031 : 02032 """ 02033 _addOutputModule_ 02034 02035 Function to add an output module to a given process with given data tier and event content 02036 """ 02037 print "WARNING. this method will not be supported any more SOON, please use --eventcontent --datatier field to drive the output module definitions" 02038 02039 moduleName = "output%s%s" % (tier, content) 02040 pathName = "%sPath" % moduleName 02041 contentName = "%sEventContent" % content 02042 contentAttr = getattr(process, contentName) 02043 setattr(process, moduleName, 02044 cms.OutputModule("PoolOutputModule", 02045 contentAttr, 02046 fileName = cms.untracked.string('%s.root' % moduleName), 02047 dataset = cms.untracked.PSet( 02048 dataTier = cms.untracked.string(tier), 02049 ), 02050 ) 02051 ) 02052 print getattr(process,moduleName) 02053 # put it in an EndPath and put the EndPath into the schedule 02054 setattr(process, pathName, cms.EndPath(getattr(process,moduleName)) ) 02055 process.schedule.append(getattr(process, pathName)) 02056 02057 return 02058
def ConfigBuilder::dumpPython | ( | process, | |
name | |||
) |
Definition at line 72 of file ConfigBuilder.py.
00073 : 00074 theObject = getattr(process,name) 00075 if isinstance(theObject,cms.Path) or isinstance(theObject,cms.EndPath) or isinstance(theObject,cms.Sequence): 00076 return "process."+name+" = " + theObject.dumpPython("process") 00077 elif isinstance(theObject,_Module) or isinstance(theObject,cms.ESProducer): 00078 return "process."+name+" = " + theObject.dumpPython()+"\n" 00079 else: return "process."+name+" = " + theObject.dumpPython()+"\n"
def ConfigBuilder::filesFromDBSQuery | ( | query, | |
s = None |
|||
) |
Definition at line 112 of file ConfigBuilder.py.
00113 : 00114 import os 00115 import FWCore.ParameterSet.Config as cms 00116 prim=[] 00117 sec=[] 00118 print "the query is",query 00119 for line in os.popen('dbs search --query "%s"'%(query)): 00120 if line.count(".root")>=2: 00121 #two files solution... 00122 entries=line.replace("\n","").split() 00123 if not entries[0] in prim: 00124 prim.append(entries[0]) 00125 if not entries[1] in sec: 00126 sec.append(entries[1]) 00127 elif (line.find(".root")!=-1): 00128 entry=line.replace("\n","") 00129 if not entry in prim: 00130 prim.append(entry) 00131 if s: 00132 if not hasattr(s,"fileNames"): 00133 s.fileNames=cms.untracked.vstring(prim) 00134 else: 00135 s.fileNames.extend(prim) 00136 if len(sec)!=0: 00137 if not hasattr(s,"secondaryFileNames"): 00138 s.secondaryFileNames=cms.untracked.vstring(sec) 00139 else: 00140 s.secondaryFileNames.extend(sec) 00141 print "found files: ",prim 00142 if len(sec)!=0: 00143 print "found parent files:",sec 00144 return (prim,sec)
def ConfigBuilder::filesFromList | ( | fileName, | |
s = None |
|||
) |
Definition at line 80 of file ConfigBuilder.py.
00081 : 00082 import os 00083 import FWCore.ParameterSet.Config as cms 00084 prim=[] 00085 sec=[] 00086 for line in open(fileName,'r'): 00087 if line.count(".root")>=2: 00088 #two files solution... 00089 entries=line.replace("\n","").split() 00090 if not entries[0] in prim: 00091 prim.append(entries[0]) 00092 if not entries[1] in sec: 00093 sec.append(entries[1]) 00094 elif (line.find(".root")!=-1): 00095 entry=line.replace("\n","") 00096 if not entry in prim: 00097 prim.append(entry) 00098 if s: 00099 if not hasattr(s,"fileNames"): 00100 s.fileNames=cms.untracked.vstring(prim) 00101 else: 00102 s.fileNames.extend(prim) 00103 if len(sec)!=0: 00104 if not hasattr(s,"secondaryFileNames"): 00105 s.secondaryFileNames=cms.untracked.vstring(sec) 00106 else: 00107 s.secondaryFileNames.extend(sec) 00108 print "found files: ",prim 00109 if len(sec)!=0: 00110 print "found parent files:",sec 00111 return (prim,sec)
def ConfigBuilder::getConfigsForScenario | ( | sequence = None | ) |
Retrieves the list of files needed to run a given trigger menu. If no trigger or an invalid trigger is given, use the default one.
Definition at line 38 of file ConfigBuilder.py.
00039 : 00040 """ 00041 Retrieves the list of files needed to run a given trigger menu. 00042 If no trigger or an invalid trigger is given, use the default one. 00043 """ 00044 00045 if not sequence: 00046 # no trigger was specified, use the default one 00047 trigger = __default 00048 else: 00049 # check if the specified trigger is valid 00050 trigger = sequence 00051 if trigger not in __triggerTable: 00052 print 'An unsupported trigger has been requested: %s' % sequence 00053 print 'The default one will be used instead: %s' % __default 00054 print 'The supported triggers are:' 00055 for key in __triggerTable.iterkeys(): 00056 print '\t%s' % key 00057 print 00058 trigger = __default 00059 00060 return __triggerTable[trigger] 00061
def ConfigBuilder::getDefaultTrigger | ( | ) |
Retrieves the default trigger name
Definition at line 24 of file ConfigBuilder.py.
def ConfigBuilder::getHelp | ( | ) |
Retrieves the list of available triggers
Definition at line 31 of file ConfigBuilder.py.
def ConfigBuilder::installFilteredStream | ( | process, | |
schedule, | |||
streamName, | |||
definitionFile = "Configuration/StandardSequences/AlCaRecoStreams_cff" |
|||
) |
Definition at line 1985 of file ConfigBuilder.py.
01986 : 01987 01988 __import__(definitionFile) 01989 definitionModule = sys.modules[definitionFile] 01990 process.extend(definitionModule) 01991 stream = getattr(definitionModule,streamName) 01992 output = cms.OutputModule("PoolOutputModule") 01993 output.SelectEvents = stream.selectEvents 01994 output.outputCommands = stream.content 01995 output.dataset = cms.untracked.PSet( dataTier = stream.dataTier) 01996 setattr(process,streamName,output) 01997 for path in stream.paths: 01998 schedule.append(path) 01999
def ConfigBuilder::installPromptReco | ( | process, | |
recoOutputModule, | |||
aodOutputModule = None |
|||
) |
_promptReco_ Method to install the standard PromptReco configuration into a basic process containing source and output modules. process is the CMS Process instance to be populated recoOutputModule is the output module used to write the RECO data tier aodOutputModule is the output module used to write the AOD data tier, if this is not none, any AOD sequences should be added.
Definition at line 2000 of file ConfigBuilder.py.
02001 : 02002 """ 02003 _promptReco_ 02004 02005 Method to install the standard PromptReco configuration into 02006 a basic process containing source and output modules. 02007 02008 process is the CMS Process instance to be populated 02009 02010 recoOutputModule is the output module used to write the 02011 RECO data tier 02012 02013 aodOutputModule is the output module used to write 02014 the AOD data tier, if this is not none, any AOD sequences 02015 should be added. 02016 """ 02017 cb = ConfigBuilder(defaultOptions, process = process) 02018 cb._options.step = 'RAW2DIGI,RECO' 02019 cb.addStandardSequences() 02020 cb.addConditions() 02021 process.load(cb.EVTCONTDefault) 02022 recoOutputModule.eventContent = process.RECOEventContent 02023 if aodOutputModule != None: 02024 aodOutputModule.eventContent = process.AODEventContent 02025 return process 02026
def ConfigBuilder::MassReplaceInputTag | ( | aProcess, | |
oldT = "rawDataCollector" , |
|||
newT = "rawDataRepacker" |
|||
) |
Definition at line 145 of file ConfigBuilder.py.
string ConfigBuilder::__default = 'GRun' |
Definition at line 21 of file ConfigBuilder.py.
string ConfigBuilder::__source__ = "$Source: /local/reps/CMSSW/CMSSW/Configuration/PyReleaseValidation/python/ConfigBuilder.py,v $" |
Definition at line 4 of file ConfigBuilder.py.
dictionary ConfigBuilder::__triggerTable |
00001 { 00002 00003 # HLT trigger table for the 2009 STARTUP 8E29 menu 00004 '8E29': ( 00005 'FastSimulation/Configuration/HLT_8E29_cff', 00006 ), 00007 00008 # HLT trigger table for the 2009 Global Run menu 00009 'GRun': ( 00010 'FastSimulation/Configuration/HLT_GRun_cff', 00011 ), 00012 00013 # HLT trigger table for the 2009 STARTUP 1E31 menu 00014 '1E31': ( 00015 'FastSimulation/Configuration/HLT_1E31_cff', 00016 ) 00017 }
Definition at line 2 of file ConfigBuilder.py.
string ConfigBuilder::__version__ = "$Revision: 1.381.2.20 $" |
Definition at line 3 of file ConfigBuilder.py.
tuple ConfigBuilder::defaultOptions = Options() |
Definition at line 15 of file ConfigBuilder.py.
ConfigBuilder::promptReco = installPromptReco |
Definition at line 2027 of file ConfigBuilder.py.