CMS 3D CMS Logo

Functions

Merge Namespace Reference

Functions

def mergeProcess

Function Documentation

def Merge::mergeProcess (   inputFiles,
  options 
)
_mergeProcess_

Creates and returns a merge process that will merge the provided
filenames

supported options:

- process_name : name of the process, defaults to Merge
- outputmod_label : label of the output module, defaults to Merged
- newDQMIO : specifies if the new DQM format should be used to merge the files
- output_file : sets the output file name
- output_lfn : sets the output LFN

Definition at line 16 of file Merge.py.

00017                                         :
00018     """
00019     _mergeProcess_
00020 
00021     Creates and returns a merge process that will merge the provided
00022     filenames
00023 
00024     supported options:
00025 
00026     - process_name : name of the process, defaults to Merge
00027     - outputmod_label : label of the output module, defaults to Merged
00028     - newDQMIO : specifies if the new DQM format should be used to merge the files
00029     - output_file : sets the output file name
00030     - output_lfn : sets the output LFN
00031 
00032     """
00033     #  //
00034     # // process supported options
00035     #//
00036     processName = options.get("process_name", "Merge")
00037     outputModLabel = options.get("outputmod_label", "Merged")
00038     outputFilename = options.get("output_file", "Merged.root")
00039     outputLFN = options.get("output_lfn", None)
00040     dropDQM = options.get("drop_dqm", False)
00041     newDQMIO = options.get("newDQMIO", False)
00042     
00043     #  //
00044     # // build process
00045     #//
00046     process = Process(processName)
00047 
00048     #  //
00049     # // input source
00050     #//
00051     if newDQMIO:
00052         process.source = Source("DQMRootSource")
00053         process.add_(Service("DQMStore"))
00054     else:
00055         process.source = Source("PoolSource")
00056         if dropDQM:
00057             process.source.inputCommands = CfgTypes.untracked.vstring('keep *','drop *_EDMtoMEConverter_*_*')
00058     process.source.fileNames = CfgTypes.untracked(CfgTypes.vstring())
00059     for entry in inputFiles:
00060         process.source.fileNames.append(str(entry))
00061  
00062     #  //
00063     # // output module
00064     #//
00065     if newDQMIO:
00066         outMod = OutputModule("DQMRootOutputModule")
00067     else:
00068         outMod = OutputModule("PoolOutputModule")
00069     outMod.fileName = CfgTypes.untracked.string(outputFilename)
00070     if outputLFN != None:
00071         outMod.logicalFileName = CfgTypes.untracked.string(outputLFN)
00072     setattr(process, outputModLabel, outMod)
00073 
00074     process.outputPath = EndPath(outMod)
00075 
00076     return process