Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:49:51

0001 ###############################################################################
0002 # Way to use this:
0003 #   cmsRun dumpHGCalPassive_cfg.py type=DDD
0004 #
0005 #   Options for type DDD, DD4hep
0006 #
0007 ###############################################################################
0008 import FWCore.ParameterSet.Config as cms
0009 import os, sys, importlib, re
0010 import FWCore.ParameterSet.VarParsing as VarParsing
0011 
0012 ####################################################################
0013 ### SETUP OPTIONS
0014 options = VarParsing.VarParsing('standard')
0015 options.register('type',
0016                  "DDD",
0017                   VarParsing.VarParsing.multiplicity.singleton,
0018                   VarParsing.VarParsing.varType.string,
0019                   "type of operations: DDD, DD4hep")
0020 
0021 ### get and parse the command line arguments
0022 options.parseArguments()
0023 
0024 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
0025 process = cms.Process('GeomDump',Phase2C17I13M9)
0026 if (options.type == "DD4hep"):
0027     geomFile = "Geometry/HGCalCommonData/data/dd4hep/testHGCalPassive.xml"
0028     fileName = "hgcalPassiveDD4hep.root"
0029     process.DDDetectorESProducer = cms.ESSource("DDDetectorESProducer",
0030                                                 confGeomXMLFiles = cms.FileInPath(geomFile),
0031     appendToDataLabel = cms.string('DDHGCal'))
0032 else:
0033     geomFile = "Geometry.HGCalCommonData.testHGCalPassiveXML_cfi"
0034     fileName = "hgcalPassiveDDD.root"
0035     process.load(geomFile)
0036 
0037 print("Geometry file: ", geomFile)
0038 print("Output file:   ", fileName)
0039 
0040 process.load('FWCore.MessageService.MessageLogger_cfi')
0041 
0042 if 'MessageLogger' in process.__dict__:
0043     process.MessageLogger.G4cerr=dict()
0044     process.MessageLogger.G4cout=dict()
0045     process.MessageLogger.HGCalGeom=dict()
0046 #   process.MessageLogger.SimG4CoreGeometry=dict()
0047 #   process.MessageLogger.TGeoMgrFromDdd=dict()
0048     
0049 process.source = cms.Source("EmptySource")
0050 
0051 process.maxEvents = cms.untracked.PSet(
0052     input = cms.untracked.int32(1)
0053 )
0054 
0055 if (options.type == "DD4hep"):
0056     process.dump = cms.EDAnalyzer("DDTestDumpFile",
0057                                   outputFileName = cms.untracked.string(fileName),
0058                                   DDDetector = cms.ESInputTag('','DDHGCal'))
0059 else:
0060     process.add_(cms.ESProducer("TGeoMgrFromDdd",
0061                                 verbose = cms.untracked.bool(False),
0062                                 level   = cms.untracked.int32(14)))
0063     process.dump = cms.EDAnalyzer("DumpSimGeometry",
0064                                   outputFileName = cms.untracked.string(fileName))
0065 
0066 process.p = cms.Path(process.dump)