25 acf.addFlag(
'Exec.OutputLevel', INFO, help=
'Global OutputLevel')
26 acf.addFlag(
'Exec.QuietMode',
True, help=
'Suppress excess output for grid running')
27 acf.addFlag(
'Exec.PrintAlgsSequence',
False, help=
'print algorithm sequence in ApplicationMgr')
28 acf.addFlag(
'Exec.MaxEvents', -1, type=int, help=
'number of events to proceess (-1 for all)')
29 acf.addFlag(
'Exec.SkipEvents', 0, type=int, help=
'number of events to skip')
30 acf.addFlag(
'Exec.FirstEvent', 1, type=int, help=
'first event number when not reading from input file')
31 acf.addFlag(
'Exec.DebugStage',
'', help=
'attach debugger at stage: conf, init, exec, fini')
32 acf.addFlag(
'Exec.Interactive',
"", help=
'interactive prompt at stage: init, exec')
33 acf.addFlag(
'Exec.FPE', 0, help=
'FPE check mode: -2 (no FPE check), -1 (abort with core-dump), 0 (FPE Auditor w/o stack-tace) , >0 (number of stack-traces printed by the job)')
34 acf.addFlag(
'Exec.EventTimeOut', 0, help=
'per-event timeout (in ns) after which the job is aborted (0 means no timeout)')
35 acf.addFlag(
'Exec.EventPrintoutInterval', 1, help=
'interval of event heartbeat printouts from the loop manager')
36 acf.addFlag(
'Exec.StopOnSignal', [], help=
'List of signal names that can be used to stop the job gracefully. See SignalMonitorSvc in GaudiUtils.' )
39 acf.addFlag(
'Exec.VerboseMessageComponents', [], help=
'verbose output for listed components (wildcards)')
40 acf.addFlag(
'Exec.DebugMessageComponents', [], help=
'debug output for listed components (wildcards)')
41 acf.addFlag(
'Exec.InfoMessageComponents', [], help=
'info output for listed components (wildcards)')
42 acf.addFlag(
'Exec.WarningMessageComponents', [], help=
'warning output for listed components (wildcards)')
43 acf.addFlag(
'Exec.ErrorMessageComponents', [], help=
'error output for listed components (wildcards)')
46 acf.addFlag(
'Exec.MTEventService',
False, help=
'use multi-threaded event service')
47 acf.addFlag(
'Exec.MTEventServiceChannel',
'EventService_EventRanges', help=
'name of YAMPL communication channel between AthenaMT and pilot')
50 acf.addFlag(
'Exec.MPI',
False, help=
'run in MPI mode')
53 acf.addFlag(
'Debug.DumpEvtStore',
False, help=
'dump event store on each event')
54 acf.addFlag(
'Debug.DumpDetStore',
False, help=
'dump detector store on each event')
55 acf.addFlag(
'Debug.DumpCondStore',
False, help=
'dump conditions store on each event')
58 acf.addFlag(
'Debug.NameAuditor',
False,help=
'Activate NameAuditor')
60 acf.addFlag(
'ExecutorSplitting.TotalSteps', 0, help=
'number of steps for pileup overlay')
61 acf.addFlag(
'ExecutorSplitting.Step', -1, help=
'step number of current pileup overlay job')
62 acf.addFlag(
'ExecutorSplitting.TotalEvents', -1, help=
'events per pileup overlay step')
65 acf.addFlag(
'Input.Files', [
"_ATHENA_GENERIC_INPUTFILE_NAME_",], help=
'input files')
66 acf.addFlag(
"Input.FileNentries", -1, help=
'actual number of events in file (filled from runArgs')
67 acf.addFlag(
'Input.SecondaryFiles', [], help=
'secondary input files for DoubleEventSelector')
68 acf.addFlag(
'Input.isMC',
lambda prevFlags :
"IS_SIMULATION" in GetFileMD(prevFlags.Input.Files).
get(
"eventTypes", []), help=
'Monte Carlo input')
69 acf.addFlag(
'Input.OverrideRunNumber',
False, help=
'override run number' )
70 acf.addFlag(
"Input.ConditionsRunNumber", -1, help=
'override HITS file run number with one from a data')
71 acf.addFlag(
'Input.RunNumbers',
lambda prevFlags : list(GetFileMD(prevFlags.Input.Files).
get(
"runNumbers", [])), type=list, help=
'run numbers of input files')
72 acf.addFlag(
'Input.MCChannelNumber',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"mc_channel_number", 0), help=
'Monte Carlo channel number')
73 acf.addFlag(
'Input.LumiBlockNumbers',
lambda prevFlags : list(GetFileMD(prevFlags.Input.Files).
get(
"lumiBlockNumbers", [])), type=list, help=
'lumi block numbers of input files')
74 acf.addFlag(
'Input.TimeStamps',
lambda prevFlags : getInitialTimeStampsFromRunNumbers(prevFlags.Input.RunNumbers)
if prevFlags.Input.OverrideRunNumber
else [], type=list, help=
'timestamps of inputs files')
77 acf.addFlag(
"Input.RunAndLumiOverrideList", [], help=
'list of dictionaries to configure EvtIdModifierSvc')
79 acf.addFlag(
"Input.JobNumber", 1, help=
'job number for pileup overlay')
80 acf.addFlag(
'Input.FailOnUnknownCollections',
False, help=
'fail on unknown collections in input load')
82 def _dataYearFromFlags(prevFlags):
83 dataYear = GetFileMD(prevFlags.Input.Files).
get(
"data_year",
"")
86 if prevFlags.Input.ProjectName.startswith(
"data"):
87 if prevFlags.Input.ProjectName[4:6].isdigit():
88 return 2000 + int(prevFlags.Input.ProjectName[4:6])
91 def _keywordsFromFlags(prevFlags):
92 keywords_string = GetFileMD(prevFlags.Input.Files).
get(
"keywords",
"")
93 return [keyword.strip()
for keyword
in keywords_string.split(
',')
if keyword.strip()]
95 acf.addFlag(
'Input.ProjectName',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"project_name",
""), help=
'project name')
96 acf.addFlag(
'Input.DataYear', _dataYearFromFlags, help=
'year of input data')
97 acf.addFlag(
'Input.MCCampaign',
lambda prevFlags : Campaign(GetFileMD(prevFlags.Input.Files).
get(
"mc_campaign",
"")), type=Campaign, help=
'Monte Carlo campaign')
98 acf.addFlag(
'Input.TriggerStream',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"stream",
"")
if prevFlags.Input.Format == Format.BS
99 else GetFileMD(prevFlags.Input.Files).
get(
"triggerStreamOfFile",
""), help=
'trigger stream name')
100 acf.addFlag(
'Input.Format',
lambda prevFlags : Format.BS
if GetFileMD(prevFlags.Input.Files).
get(
"file_type",
"BS") ==
"BS" else Format.POOL, type=Format, help=
'input format type')
101 acf.addFlag(
'Input.ProcessingTags',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"processingTags", []), help=
'list of stream names in this file')
102 acf.addFlag(
'Input.GeneratorsInfo',
lambda prevFlags : getGeneratorsInfo(prevFlags), help=
'generator version')
103 acf.addFlag(
'Input.Keywords', _keywordsFromFlags, type=list, help=
'evtgen keywords')
104 acf.addFlag(
'Input.SpecialConfiguration',
lambda prevFlags : getSpecialConfigurationMetadata(prevFlags), help=
'special configuration options read from input file metadata')
106 def _inputCollections(inputFile):
107 rawCollections = [type_key[1]
for type_key
in GetFileMD(inputFile).
get(
"itemList", [])]
108 collections = [col
for col
in rawCollections
if not col.endswith(
'Aux.')]
111 def _typedInputCollections(inputFile):
112 collections = [
'%s#%s' % type_key
for type_key
in GetFileMD(inputFile).
get(
"itemList", [])]
115 acf.addFlag(
'Input.Collections',
lambda prevFlags : _inputCollections(prevFlags.Input.Files), help=
'input collections')
116 acf.addFlag(
'Input.SecondaryCollections',
lambda prevFlags : _inputCollections(prevFlags.Input.SecondaryFiles), help=
'secondary input collections for overlay')
117 acf.addFlag(
'Input.TypedCollections',
lambda prevFlags : _typedInputCollections(prevFlags.Input.Files), help=
'input collections key#type')
118 acf.addFlag(
'Input.SecondaryTypedCollections',
lambda prevFlags : _typedInputCollections(prevFlags.Input.SecondaryFiles), help=
'secondary input collections key#type')
120 def _metadataItems(inputFile):
121 return GetFileMD(inputFile).
get(
"metadata_items", {})
123 acf.addFlag(
'Input.MetadataItems',
lambda prevFlags : _metadataItems(prevFlags.Input.Files), help=
'metadata items in input' )
124 acf.addFlag(
'Input.Release',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"AtlasRelease",
""), help=
'release of input file')
125 acf.addFlag(
'Input.AODFixesDone',
lambda prevFlags : GetFileMD(prevFlags.Input.Files).
get(
"AODFixVersion",
""), help=
'set of already applied AODFixes')
127 acf.addFlag(
'Concurrency.NumProcs', 0, help=
'number of concurrent processes')
128 acf.addFlag(
'Concurrency.NumThreads', 0, help=
'number of threads' )
129 acf.addFlag(
'Concurrency.NumConcurrentEvents',
lambda prevFlags : prevFlags.Concurrency.NumThreads, help=
'number of concurrent events')
130 acf.addFlag(
'Concurrency.DebugWorkers',
False, help=
'stops the worker in bootstrap until SIGUSR1 is received')
131 acf.addFlag(
'Concurrency.NumOffloadThreads', 0, help=
'maximum number of extra threads to use for CPU portion of asynchronous algorithms')
133 acf.addFlag(
'Scheduler.CheckDependencies',
True, help=
'runtime check of algorithm input dependencies')
134 acf.addFlag(
'Scheduler.CheckOutputUsage',
False, help=
'runtime check of algorithm output usage')
135 acf.addFlag(
'Scheduler.ShowDataDeps',
False, help=
'show data dependencies')
136 acf.addFlag(
'Scheduler.ShowDataFlow',
False, help=
'show data flow')
137 acf.addFlag(
'Scheduler.ShowControlFlow',
False, help=
'show data flow')
138 acf.addFlag(
'Scheduler.EnableVerboseViews',
True, help=
'enable verbose view output')
139 acf.addFlag(
'Scheduler.AutoLoadUnmetDependencies',
True, help=
'auto-load unmet data dependencies')
140 acf.addFlag(
'Scheduler.DataDepsGraphFile',
'', help=
'file name containing the data dependency graph [.dot or .md]')
141 acf.addFlag(
'Scheduler.DataDepsGraphAlgPattern',
'.*', help=
'regex pattern for selecting algorithms to be drawn in the data dependency graph')
142 acf.addFlag(
'Scheduler.DataDepsGraphObjectPattern',
'.*', help=
'regex pattern for selecting I/O to be drawn in the data dependency graph')
144 acf.addFlag(
'MP.WorkerTopDir',
'athenaMP_workers', help=
'work directory for MP workers')
145 acf.addFlag(
'MP.OutputReportFile',
'AthenaMPOutputs', help=
'name of MP report file')
146 acf.addFlag(
'MP.Strategy',
'SharedQueue', help=
'event assignment strategy')
147 acf.addFlag(
'MP.CollectSubprocessLogs',
False, help=
'collects log of sub-processes')
148 acf.addFlag(
'MP.PollingInterval', 100, help=
'time interval in milliseconds between subsequent polling of subproceses')
149 acf.addFlag(
'MP.EventsBeforeFork', 0, help=
'number of events to process before forking')
150 acf.addFlag(
'MP.EventRangeChannel',
'EventService_EventRanges', help=
'channel name for communicating event ranges with the pilot')
151 acf.addFlag(
'MP.EvtRangeScattererCaching',
False, help=
'activate extra event caching by the EvtRangeScatterer')
152 acf.addFlag(
'MP.MemSamplingInterval', 0, help=
'time interval in seconds between taking memory samples')
153 acf.addFlag(
'MP.ChunkSize', -1, help=
'size of event chunks in shared queue (-1: auto_flush for LZMA-compressed files, -2: auto_flush for LZMA or ZLIB, -3: auto_flush for LZMA, ZLIB or LZ4, -4: auto_flush)')
154 acf.addFlag(
'MP.ReadEventOrders',
False, help=
'read event order from ASCII file for reproducibility')
155 acf.addFlag(
'MP.EventOrdersFile',
'athenamp_eventorders.txt', help=
'file name for event order')
156 acf.addFlag(
'MP.UseSharedReader',
False, help=
'use shared reader')
157 acf.addFlag(
'MP.UseSharedWriter',
False, help=
'use shared writer')
158 acf.addFlag(
'MP.UseParallelCompression',
True, help=
'enable event compression in workers')
159 acf.addFlag(
'MP.SharedWriter.FileFlushSetting', {},
160 help=
"how frequently (in number of events) SW will flush the output, e.g., {'DAOD_PHYS.pool.root':500}. If empty, AutoFlush is used. Only applies when parallel compression is enabled.")
162 acf.addFlag(
'Common.MsgSuppression',
True, help=
'enable log message suppression')
163 acf.addFlag(
'Common.MsgSourceLength', 50, help=
'length of the source-field in the log message format')
164 acf.addFlag(
'Common.ShowMsgStats',
False ,help=
'print message statistics at the end of the job')
166 acf.addFlag(
'Common.isOnline',
False, help=
'job runs in an online environment')
167 acf.addFlag(
'Common.useOnlineLumi',
lambda prevFlags : prevFlags.Common.isOnline, help=
'use online version of luminosity')
168 acf.addFlag(
'Common.isOverlay',
lambda prevFlags: prevFlags.Common.ProductionStep == ProductionStep.Overlay,
169 help=
'enable overlay')
170 acf.addFlag(
'Common.doExpressProcessing',
False, help=
'do express stream processing')
171 acf.addFlag(
'Common.ProductionStep', ProductionStep.Default, type=ProductionStep, help=
'production step')
172 acf.addFlag(
'Common.Project', Project.determine(), type=Project, help=
'current athena software project')
175 acf.addFlag(
'Beam.BunchSpacing', 25, help=
'bunch spacing in nanoseconds')
176 acf.addFlag(
'Beam.Type',
lambda prevFlags : BeamType(GetFileMD(prevFlags.Input.Files).
get(
'beam_type',
'collisions')), type=BeamType, help=
'beam type')
177 acf.addFlag(
"Beam.NumberOfCollisions",
lambda prevFlags : 2.
if prevFlags.Beam.Type
is BeamType.Collisions
else 0., help=
'number of pileup collisions')
179 def _configureBeamEnergy(prevFlags):
180 metadata = GetFileMD(prevFlags.Input.Files)
183 if prevFlags.Input.Format == Format.POOL:
184 return float(metadata.get(
"beam_energy", default))
186 elif prevFlags.Input.Format == Format.BS:
187 if metadata.get(
"eventTypes", [
""])[0] ==
"IS_DATA":
189 if prevFlags.Common.isOnline:
190 from PyUtils.OnlineISConfig
import GetRunType
192 return float(GetRunType()[1]
or default)
195 if prevFlags.Beam.Type.value ==
"cosmics":
197 elif prevFlags.Beam.Type.value ==
"singlebeam":
199 elif prevFlags.Beam.Type.value ==
"collisions":
200 projectName = prevFlags.Input.ProjectName
203 if "GeV" in projectName:
211 elif "TeV" in projectName:
212 if "hip5TeV" in projectName:
214 beamEnergy = 1.577 * TeV
215 elif "hip8TeV" in projectName:
217 beamEnergy = 2.51 * TeV
221 (str(projectName).
split(
"_")[1])
228 if "5TeV" in projectName:
230 beamEnergy = 2.51 * TeV
231 elif projectName.endswith(
"_hi")
or projectName.endswith(
"_hip"):
232 if projectName
in (
"data10_hi",
"data11_hi"):
233 beamEnergy = 1.38 * TeV
234 elif projectName ==
"data12_hi":
235 beamEnergy = 1.577 * TeV
236 elif projectName
in (
"data12_hip",
"data13_hip"):
239 beamEnergy = 2.51 * TeV
240 elif projectName
in (
"data15_hi",
"data18_hi"):
241 beamEnergy = 2.51 * TeV
242 elif projectName ==
"data17_hi":
243 beamEnergy = 2.721 * TeV
244 return beamEnergy
or default
245 elif metadata.get(
"eventTypes", [
""])[0] ==
"IS_SIMULATION":
246 return float(metadata.get(
"beam_energy", default))
250 acf.addFlag(
'Beam.Energy',
lambda prevFlags : _configureBeamEnergy(prevFlags), help=
'beam energy in MeV')
251 acf.addFlag(
'Beam.estimatedLuminosity',
lambda prevFlags : ( 1E33*(prevFlags.Beam.NumberOfCollisions)/2.3 ) *\
252 (25./prevFlags.Beam.BunchSpacing), help=
'luminosity estimated from pileup')
253 acf.addFlag(
'Beam.BunchStructureSource',
lambda prevFlags: BunchStructureSource.MC
if prevFlags.Input.isMC
else BunchStructureSource.TrigConf, help=
'source of bunch structure')
255 acf.addFlag(
'Beam.vdMScan.ConfigFile',
'LRAPositioner.root', help=
'vdM Scan Sim/Reco/BSFit Configuration File')
256 acf.addFlag(
'Beam.vdMScan.PV.PDF',
'Default', help=
'vdM Scan Sim/BSFit PV PDF Histogram')
259 acf.addFlag(
'Output.BSFileName',
'', help=
'BS output file name')
260 acf.addFlag(
'Output.EVNTFileName',
'', help=
'EVNT output file name')
261 acf.addFlag(
'Output.TXTFileName',
'', help=
'LHE output file name')
262 acf.addFlag(
'Output.EVNT_TRFileName',
'', help=
'EVNT_TR output file name')
263 acf.addFlag(
'Output.HITSFileName',
'', help=
'HITS output file name')
264 acf.addFlag(
'Output.RDOFileName',
'', help=
'RDO output file name')
265 acf.addFlag(
'Output.RDO_SGNLFileName',
'', help=
'RDO_SGNL output file name')
266 acf.addFlag(
'Output.ESDFileName',
'', help=
'ESD output file name')
267 acf.addFlag(
'Output.AODFileName',
'', help=
'AOD output file name')
268 acf.addFlag(
'Output.HISTFileName',
'', help=
'HIST output file name')
270 acf.addFlag(
'Output.doWriteEVNT',
lambda prevFlags: bool(prevFlags.Output.EVNTFileName), help=
'write EVNT file')
271 acf.addFlag(
'Output.doWriteTXT',
lambda prevFlags: bool(prevFlags.Output.TXTFileName), help=
'write LHE file')
272 acf.addFlag(
'Output.doWriteEVNT_TR',
lambda prevFlags: bool(prevFlags.Output.EVNT_TRFileName), help=
'write EVNT_TR file')
273 acf.addFlag(
'Output.doWriteHITS',
lambda prevFlags: bool(prevFlags.Output.HITSFileName), help=
'write HITS file')
274 acf.addFlag(
'Output.doWriteRDO',
lambda prevFlags: bool(prevFlags.Output.RDOFileName), help=
'write RDO file')
275 acf.addFlag(
'Output.doWriteRDO_SGNL',
lambda prevFlags: bool(prevFlags.Output.RDO_SGNLFileName), help=
'write RDO_SGNL file')
276 acf.addFlag(
'Output.doWriteESD',
lambda prevFlags: bool(prevFlags.Output.ESDFileName), help=
'write ESD file')
277 acf.addFlag(
'Output.doWriteAOD',
lambda prevFlags: bool(prevFlags.Output.AODFileName), help=
'write AOD file')
278 acf.addFlag(
'Output.doWriteBS',
False, help=
'write bytestream file')
279 acf.addFlag(
'Output.doWriteDAOD',
False, help=
'write at least one DAOD file')
280 acf.addFlag(
'Output.doJiveXML',
False, help=
'write JiveXML file')
282 acf.addFlag(
'Output.doGEN_AOD2xAOD',
True, help=
"Configure the AODtoxAOD Truth Conversion")
283 acf.addFlag(
'Output.OneDataHeaderForm',
False, help=
"Write only a single common DataHeaderForm per stream")
284 acf.addFlag(
'Output.TreeAutoFlush', {}, help=
"dict with auto-flush settings for stream e.g. {'STREAM': 123}")
285 acf.addFlag(
'Output.TemporaryStreams', [], help=
'list of output streams that are marked temporary')
288 acf.addFlag(
'Output.DefaultContainerType',
'ROOTTREEINDEX', help=
'set the underlying storage technology for the default container type')
293 acf.addFlag(
'TrackingGeometry.MagneticFileMode', 6)
294 acf.addFlag(
'TrackingGeometry.MaterialSource',
'COOL', help=
'material source (COOL, Input or None)')
298 from AthenaConfiguration.DetectorConfigFlags
import createDetectorConfigFlags
299 return createDetectorConfigFlags()
300 acf.addFlagsCategory(
"Detector", __detector )
304 from SimulationConfig.SimConfigFlags
import createSimConfigFlags
305 return createSimConfigFlags()
306 _addFlagsCategory (acf,
"Sim", __simulation,
'SimulationConfig' )
310 from SimulationConfig.TestBeamConfigFlags
import createTestBeamConfigFlags
311 return createTestBeamConfigFlags()
312 _addFlagsCategory (acf,
"TestBeam", __testbeam,
'SimulationConfig' )
315 def __digitization():
316 from DigitizationConfig.DigitizationConfigFlags
import createDigitizationCfgFlags
317 return createDigitizationCfgFlags()
322 from OverlayConfiguration.OverlayConfigFlags
import createOverlayConfigFlags
323 return createOverlayConfigFlags()
328 from AthenaConfiguration.GeoModelConfigFlags
import createGeoModelConfigFlags
329 return createGeoModelConfigFlags(
not isGaudiEnv()
or acf.Common.Project
is Project.AthAnalysis)
330 acf.addFlagsCategory(
"GeoModel", __geomodel )
334 from RecJobTransforms.RecoConfigFlags
import createRecoConfigFlags
335 return createRecoConfigFlags()
340 from GeneratorConfig.GeneratorConfigFlags
import createGeneratorConfigFlags
341 return createGeneratorConfigFlags()
346 from IOVDbSvc.IOVDbAutoCfgFlags
import getLastGlobalTag, getDatabaseInstanceDefault
348 def __getTrigTag(flags):
349 from TriggerJobOpts.TriggerConfigFlags
import trigGlobalTag
350 return trigGlobalTag(flags)
352 acf.addFlag(
"IOVDb.GlobalTag",
lambda flags :
353 (__getTrigTag(flags)
if flags.Trigger.doLVL1
or flags.Trigger.doHLT
else None)
or
354 getLastGlobalTag(flags), help=
'global conditions tag')
356 acf.addFlag(
"IOVDb.DatabaseInstance", getDatabaseInstanceDefault, help=
'conditions DB instance')
359 acf.addFlag(
"IOVDb.RunToTimestampDict",
lambda prevFlags: getRunToTimestampDict(), help=
'runNumber to timestamp map')
361 acf.addFlag(
"IOVDb.DBConnection",
lambda prevFlags :
"sqlite://;schema=mycool.db;dbname=" + prevFlags.IOVDb.DatabaseInstance, help=
'default DB connection string')
363 def __useCrest(flags):
364 if flags.Common.Project
is Project.AthGeneration:
366 elif flags.GeoModel.Run > LHCPeriod.Run3:
371 acf.addFlag(
"IOVDb.UseCREST",
lambda prevFlags : __useCrest(prevFlags), help=
'Use CREST for conditions access')
372 acf.addFlag(
"IOVDb.CrestServer",
lambda prevFlags : os.environ.get(
'CREST_SERVER')
if prevFlags.IOVDb.UseCREST
and os.environ.get(
'CREST_SERVER')
else "https://crest.cern.ch",help=
"CREST server URL")
375 acf.addFlag(
"IOVDb.CleanerRingSize",
lambda prevFlags : 0
if prevFlags.Trigger.doHLT
else 2*
max(1, prevFlags.Concurrency.NumConcurrentEvents), help=
'size of ring-buffer for conditions cleaner')
376 acf.addFlag(
"IOVDb.SqliteInput",
"",help=
"Folders found in this file will be used instead of the production db")
377 acf.addFlag(
"IOVDb.SqliteFolders",(),help=
"Folders listed here will be taken from the IOVDb.SqliteInput file instead of the production db. If empty, all folders found in the file are used.")
378 acf.addFlag(
"IOVDb.WriteParametersAsMetaData",
True, help=
"Write simulation/digitization parameters directly as in-file metadata (True) or via intermediate sqlite files (False)")
381 acf.addFlag(
"PoolSvc.MaxFilesOpen",
lambda prevFlags : 2
if prevFlags.MP.UseSharedReader
else 0, help=
'maximum number of open files')
382 acf.addFlag(
"PoolSvc.PersSvcPerInputType",
False, help=
'enable separate persistency service for each input type')
386 from MagFieldConfig.BFieldConfigFlags
import createBFieldConfigFlags
387 return createBFieldConfigFlags()
391 from LArConfiguration.LArConfigFlags
import createLArConfigFlags
392 return createLArConfigFlags()
396 from TileConfiguration.TileConfigFlags
import createTileConfigFlags
397 return createTileConfigFlags()
402 from CaloRec.CaloConfigFlags
import createCaloConfigFlags
403 return createCaloConfigFlags()
407 acf.addFlag(
"Random.Engine",
"dSFMT", help=
'random number service ("dSFMT", "Ranlux64", "Ranecu")')
408 acf.addFlag(
"Random.SeedOffset", 0, help=
'seed offset')
411 from TriggerJobOpts.TriggerConfigFlags
import createTriggerFlags
412 return createTriggerFlags(acf.Common.Project
is not Project.AthAnalysis)
418 acf.addFlag(
'Trigger.doLVL1',
False, help=
'enable L1 simulation')
419 acf.addFlag(
'Trigger.doHLT',
False, help=
'run HLT selection algorithms')
422 from InDetConfig.InDetConfigFlags
import createInDetConfigFlags
423 return createInDetConfigFlags()
427 from InDetConfig.ITkConfigFlags
import createITkConfigFlags
428 return createITkConfigFlags()
432 from TrkConfig.TrkConfigFlags
import createTrackingConfigFlags
433 return createTrackingConfigFlags()
436 def __trackoverlay():
437 from TrackOverlayConfig.TrackOverlayConfigFlags
import createTrackOverlayConfigFlags
438 return createTrackOverlayConfigFlags()
442 from ActsConfig.ActsConfigFlags
import createActsConfigFlags
443 return createActsConfigFlags()
447 from HGTD_Config.HGTD_ConfigFlags
import createHGTD_ConfigFlags
448 return createHGTD_ConfigFlags()
452 from MuonConfig.MuonConfigFlags
import createMuonConfigFlags
453 return createMuonConfigFlags()
456 def __muoncombined():
457 from MuonCombinedConfig.MuonCombinedConfigFlags
import createMuonCombinedConfigFlags
458 return createMuonCombinedConfigFlags()
462 from egammaConfig.egammaConfigFlags
import createEgammaConfigFlags
463 return createEgammaConfigFlags()
467 from METReconstruction.METConfigFlags
import createMETConfigFlags
468 return createMETConfigFlags()
472 from JetRecConfig.JetConfigFlags
import createJetConfigFlags
473 return createJetConfigFlags()
477 from TrackCaloClusterRecTools.UFOConfigFlags
import createUFOConfigFlags
478 return createUFOConfigFlags()
482 from tauRec.TauConfigFlags
import createTauConfigFlags
483 return createTauConfigFlags()
487 from DiTauRec.DiTauConfigFlags
import createDiTauConfigFlags
488 return createDiTauConfigFlags()
492 from eflowRec.PFConfigFlags
import createPFConfigFlags
493 return createPFConfigFlags()
497 from JetTagConfig.BTaggingConfigFlags
import createBTaggingConfigFlags
498 return createBTaggingConfigFlags()
502 from HIRecConfig.HIRecConfigFlags
import createHIRecConfigFlags
503 return createHIRecConfigFlags()
507 from EventDisplaysOnline.EventDisplaysOnlineFlags
import createOnlineEventDisplayFlags
508 return createOnlineEventDisplayFlags()
509 _addFlagsCategory(acf,
"OnlineEventDisplays", __onlineED,
'EventDisplaysOnline' )
512 from AthenaMonitoring.DQConfigFlags
import createDQConfigFlags
513 dqf = createDQConfigFlags()
518 from PerfMonComps.PerfMonConfigFlags
import createPerfMonConfigFlags
519 return createPerfMonConfigFlags()
523 from PhysValMonitoring.PhysValFlags
import createPhysValConfigFlags
524 return createPhysValConfigFlags()
528 from CaloRingerAlgs.CaloRingerFlags
import createCaloRingerConfigFlags
529 return createCaloRingerConfigFlags()
533 from CaloRecGPU.CaloRecGPUFlags
import createFlagsCaloRecGPU
534 return createFlagsCaloRecGPU()