ATLAS Offline Software
Loading...
Searching...
No Matches
python.HITtoRDO_Skeleton Namespace Reference

Functions

 fromRunArgs (runArgs)

Variables

 jobPropertiesDisallowed

Function Documentation

◆ fromRunArgs()

python.HITtoRDO_Skeleton.fromRunArgs ( runArgs)

Definition at line 14 of file HITtoRDO_Skeleton.py.

14def fromRunArgs(runArgs):
15 from AthenaCommon.Logging import logging
16 log = logging.getLogger('HITtoRDO')
17 log.info('****************** STARTING HITtoRDO *****************')
18
19 log.info('**** Transformation run arguments')
20 log.info(str(runArgs))
21
22 log.info('**** Setting-up configuration flags')
23 from AthenaConfiguration.AllConfigFlags import initConfigFlags
24 flags = initConfigFlags()
25
26 commonRunArgsToFlags(runArgs, flags)
27
28 if not hasattr(runArgs, 'inputHITSFile'):
29 raise RuntimeError('No input HITS file defined')
30
31 if not hasattr(runArgs, 'outputRDOFile'):
32 raise RuntimeError('No output RDO file defined')
33
34 flags.Input.isMC = True
35 flags.Input.Files = runArgs.inputHITSFile
36 flags.Output.RDOFileName = runArgs.outputRDOFile
37
38 # runNumber is MC channel number in reco
39 if hasattr(runArgs, 'runNumber'):
40 if flags.Input.MCChannelNumber != runArgs.runNumber:
41 log.warning('Got different MC channel number (%d) from runNumber than from metadata (%d)', runArgs.runNumber, flags.Input.MCChannelNumber)
42 flags.Input.MCChannelNumber = runArgs.runNumber
43 else:
44 log.info('MC channel number: %d', flags.Input.MCChannelNumber)
45
46 # Autoconfigure enabled subdetectors
47 if hasattr(runArgs, 'detectors'):
48 detectors = runArgs.detectors
49 else:
50 detectors = None
51
52 # Setup digitization flags
53 from DigitizationConfig.DigitizationConfigFlags import digitizationRunArgsToFlags
54 digitizationRunArgsToFlags(runArgs, flags)
55
56 # Setup common digitization flags
57 from DigitizationConfig.DigitizationConfigFlags import setupDigitizationFlags
58 setupDigitizationFlags(runArgs, flags)
59 log.info('Running with pile-up: %s', flags.Digitization.PileUp)
60
61 # Setup detector flags
62 from AthenaConfiguration.DetectorConfigFlags import setupDetectorFlags
63 setupDetectorFlags(flags, detectors, use_metadata=True, toggle_geometry=True)
64
65 # Setup perfmon flags from runargs
66 from PerfMonComps.PerfMonConfigHelpers import setPerfmonFlagsFromRunArgs
67 setPerfmonFlagsFromRunArgs(flags, runArgs)
68
69 # Special Configuration preInclude
70 specialConfigPreInclude(flags)
71
72 # Pre-include
73 processPreInclude(runArgs, flags)
74
75 # Pre-exec
76 processPreExec(runArgs, flags)
77
78 # Load pile-up stuff after pre-include/exec to ensure everything is up-to-date
79 from DigitizationConfig.DigitizationConfigFlags import pileupRunArgsToFlags
80 pileupRunArgsToFlags(runArgs, flags)
81
82 # Setup pile-up profile
83 if flags.Digitization.PileUp:
84 from RunDependentSimComps.PileUpUtils import setupPileUpProfile
85 setupPileUpProfile(flags)
86
87 # TODO not parsed yet:
88 # '--outputRDO_FILTFile'
89
90 # To respect --athenaopts
91 flags.fillFromArgs()
92
93 # Lock flags
94 flags.lock()
95
96 # Main overlay steering
97 from DigitizationConfig.DigitizationSteering import DigitizationMainCfg
98 cfg = DigitizationMainCfg(flags)
99
100 # Special message service configuration
101 from DigitizationConfig.DigitizationSteering import DigitizationMessageSvcCfg
102 cfg.merge(DigitizationMessageSvcCfg(flags))
103
104 # Special Configuration postInclude
105 specialConfigPostInclude(flags, cfg)
106
107 # Post-include
108 processPostInclude(runArgs, flags, cfg)
109
110 # Post-exec
111 processPostExec(runArgs, flags, cfg)
112
113 from AthenaConfiguration.Utils import setupLoggingLevels
114 setupLoggingLevels(flags, cfg)
115
116 # Write AMI tag into in-file metadata
117 from PyUtils.AMITagHelperConfig import AMITagCfg
118 cfg.merge(AMITagCfg(flags, runArgs))
119
120 # Run the final configuration
121 sc = cfg.run()
122 sys.exit(not sc.isSuccess())

Variable Documentation

◆ jobPropertiesDisallowed

python.HITtoRDO_Skeleton.jobPropertiesDisallowed

Definition at line 11 of file HITtoRDO_Skeleton.py.