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 procee, defaults to Merge
- 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 procee, defaults to Merge
00027     - newDQMIO     : specifies if the new DQM format should be used to merge the files
00028     - output_file  : sets the output file name
00029     - output_lfn   : sets the output LFN
00030 
00031     """
00032     #  //
00033     # // process supported options
00034     #//
00035     processName = options.get("process_name", "Merge")
00036     outputFilename = options.get("output_file", "Merged.root")
00037     outputLFN = options.get("output_lfn", None)
00038     dropDQM = options.get("drop_dqm", False)
00039     newDQMIO = options.get("newDQMIO", False)
00040     
00041     #  //
00042     # // build process
00043     #//
00044     process = Process(processName)
00045 
00046     #  //
00047     # // input source
00048     #//
00049     if newDQMIO:
00050         process.source = Source("DQMRootSource")
00051         process.Merged = OutputModule("DQMRootOutputModule")
00052         process.add_(Service("DQMStore"))
00053     else:
00054         process.source = Source("PoolSource")
00055         process.Merged = OutputModule("PoolOutputModule")
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     process.Merged.fileName = CfgTypes.untracked(CfgTypes.string(
00066         outputFilename))
00067 
00068     if outputLFN != None:
00069         process.Merged.logicalFileName = CfgTypes.untracked(CfgTypes.string(
00070             outputLFN))
00071 
00072 
00073     process.outputPath = EndPath(process.Merged)
00074     return process