signalStream.ItemList += ["LArTTL1Container#*"] signalStream.ItemList += ["TileTTL1Container#*"] signalStream.ItemList += [ "ROIB::RoIBResult#*", "MuCTPI_RDO#*", "CTP_RDO#*", "DataVector<LVL1::TriggerTower>#*", "DataVector<LVL1::CPMTower>#*", "DataVector<LVL1::JetElement>#*", "DataVector<LVL1::CPMHits>#*", "DataVector<LVL1::CPMRoI>#*", "DataVector<LVL1::CMMCPHits>#*", "DataVector<LVL1::CMMJetHits>#*", "DataVector<LVL1::CMMEtSums>#*", "DataVector<LVL1::JEMHits>#*", "DataVector<LVL1::JEMRoI>#*", "DataVector<LVL1::JEMEtSums>#*", "LVL1::CMMRoI#*" ] #options for writing the MetaData into the output file MetaDataStore = ServiceMgr.MetaDataStore from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream StreamRDO_MC_FH = AthenaPoolOutputStream("StreamRDO_MC_FH") from AthenaCommon.AthenaCommonFlags import jobproperties StreamRDO_MC_FH.OutputFile = "ROOTTREE:" + SignalCollection StreamRDO_MC_FH.Store = MetaDataStore StreamRDO_MC_FH.WriteOnExecute = False StreamRDO_MC_FH.WriteOnFinalize = True # Write all IOV meta data containers StreamRDO_MC_FH.ItemList += ["IOVMetaDataContainer#*"] StreamRDO_MC_FH.ItemList += ["LumiBlockCollection#*"] from OutputStreamAthenaPool.OutputStreamAthenaPoolConf import AthenaPoolOutputStreamTool StreamRDO_MC_FHTool = AthenaPoolOutputStreamTool("StreamRDO_MC_FHTool") StreamRDO_MC_FHTool.OutputCollection = "MetaDataHdr" StreamRDO_MC_FHTool.PoolContainerPrefix = "MetaData" StreamRDO_MC_FH.WritingTool = StreamRDO_MC_FHTool
def __init__(self, name='LArShapeDumper', digitsKey='FREE', noiseSignifCut=3, doStream=False, doShape=True, doTrigger=True, doOFCIter=True, prescale=1, triggerNames=triggersToCheck, caloType='EMHECFCAL', dumpChannelInfos=False, addToAlgSeq=True): super(LArShapeDumper, self).__init__(name) theDumperTool = DefaultShapeDumperTool(doShape=doShape) self.LArShapeDumperTool = theDumperTool if doStream: from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream StreamLArSamples = AthenaPoolOutputStream('StreamLArSamples', 'LArSamples.root', True) topSequence.StreamLArSamples.ItemList += [ 'LArSamplesContainer#Samples' ] topSequence.StreamLArSamples_FH.ItemList += [ 'LArSamplesContainer#Samples' ] StreamLArSamples.WriteOnExecute = False StreamLArSamples.WriteOnFinalize = True else: from AthenaCommon.AppMgr import ServiceMgr as svcMgr svcMgr.AthenaSealSvc.DictNames += ["LArCafJobsDict"] self.CaloType = caloType self.Prescale = prescale self.NoiseSignifCut = noiseSignifCut self.DoTrigger = doTrigger self.DoStream = doStream self.DoOFCIter = doOFCIter self.DumpChannelInfos = dumpChannelInfos self.DumpDisconnected = dumpChannelInfos #self.ChannelsKey = 'LArRawChannels_FromDigits' self.ChannelsKey = 'LArRawChannels' self.TriggerNames = triggerNames from AthenaCommon.AppMgr import ToolSvc from LArRecUtils.LArADC2MeVToolDefault import LArADC2MeVToolDefault theADC2MeVTool = LArADC2MeVToolDefault() ToolSvc += theADC2MeVTool self.ADC2MeVTool = theADC2MeVTool if doShape: from IOVDbSvc.CondDB import conddb conddb.addFolder( 'LAR_OFL', '/LAR/ElecCalibOfl/AutoCorrs/AutoCorr<tag>LARElecCalibOflAutoCorrsAutoCorr-RUN2-UPD3-00</tag>' ) # use the shapes without residual corrections by default (makes it easier to compute new residuals) conddb.addOverride( '/LAR/ElecCalibOfl/Shape/RTM/5samples1phase', 'LARElecCalibOflShapeRTM5samples1phase-RUN2-UPD1-04') masker = LArBadChannelMasker('LArBadChannelMasker') masker.DoMasking = True masker.ProblemsToMask = [ 'deadReadout', 'deadPhys', 'almostDead', 'short', 'highNoiseHG', 'highNoiseMG', 'highNoiseLG' ] self.BadChannelMasker = masker self.DigitsKey = digitsKey if doOFCIter: from AthenaCommon.AppMgr import ToolSvc if hasattr(ToolSvc, 'LArRawChannelBuilderToolOFCIter'): ToolSvc.LArRawChannelBuilderToolOFCIter.StoreTiming = True if addToAlgSeq: from AthenaCommon.AlgSequence import AlgSequence topSequence = AlgSequence() topSequence += self print self