CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTTTrigProd.py
Go to the documentation of this file.
1 from tools import loadCmsProcess,loadCrabCfg,loadCrabDefault,writeCfg,prependPaths
2 from CrabTask import *
3 import os
4 
5 class DTTTrigProd:
6  def __init__(self, run, dir, config):
7  self.pset_name = 'dtTTrigCalibration_cfg.py'
8  self.outputfile = 'DTTimeBoxes.root'
9  self.config = config
10  self.dir = dir
11  self.pset_template = 'CalibMuon.DTCalibration.dtTTrigCalibration_cfg'
12  self.process = None
13  self.crab_cfg = None
14 
15  self.initProcess()
16  self.initCrab()
17  self.task = CrabTask(self.dir,self.crab_cfg)
18 
19  def initProcess(self):
21  self.process.GlobalTag.globaltag = self.config.globaltag
22  self.process.dtTTrigCalibration.rootFileName = self.outputfile
23  self.process.dtTTrigCalibration.digiLabel = self.config.digilabel
24  if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics:
25  self.process.load('RecoLocalMuon.Configuration.RecoLocalMuonCosmics_cff')
26 
27  if hasattr(self.config,'runOnRAW') and self.config.runOnRAW:
28  prependPaths(self.process,self.config.digilabel)
29 
30  if hasattr(self.config,'preselection') and self.config.preselection:
31  pathsequence = self.config.preselection.split(':')[0]
32  seqname = self.config.preselection.split(':')[1]
33  self.process.load(pathsequence)
34  prependPaths(self.process,seqname)
35 
36  def initCrab(self):
37  crab_cfg_parser = loadCrabCfg()
38  crab_cfg_parser = loadCrabDefault(crab_cfg_parser,self.config)
39  crab_cfg_parser.set('CMSSW','pset',self.pset_name)
40  crab_cfg_parser.set('CMSSW','output_file',self.outputfile)
41  self.crab_cfg = crab_cfg_parser
42 
43  def writeCfg(self):
44  writeCfg(self.process,self.dir,self.pset_name)
45  #writeCfgPkl(self.process,self.dir,self.pset_name)
46 
47  def run(self):
48  self.project = self.task.run()
49  return self.project
def loadCrabDefault
Definition: tools.py:159
def loadCmsProcess
Definition: tools.py:110
def loadCrabCfg
Definition: tools.py:142
def prependPaths
Definition: tools.py:118