ATLAS Offline Software
Loading...
Searching...
No Matches
Derivation_tf.py
Go to the documentation of this file.
1#!/usr/bin/env python
2
3# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
4
5"""
6Run DAOD building from AOD or EVNT, or D2AOD building from DAOD, using the derivation framework
7"""
8
9import sys
10import time
11
12from PyJobTransforms.trfDecorators import stdTrfExceptionHandler, sigUsrStackTrace
13from PyJobTransforms.trfArgs import addAthenaArguments, addDetectorArguments
14from PyJobTransforms.transform import transform
15
16# Setup core logging here
17from PyJobTransforms.trfLogger import msg
18msg.info('logging set in %s', sys.argv[0])
19
20
21@stdTrfExceptionHandler
22@sigUsrStackTrace
23def main():
24 msg.info('This is %s', sys.argv[0])
25 trf = getTransform()
26 trf.parseCmdLineArgs(sys.argv[1:])
27 trf.execute()
28 trf.generateReport()
29
30 msg.info('%s stopped at %s, trf exit code %d',
31 sys.argv[0], time.asctime(), trf.exitCode)
32 sys.exit(trf.exitCode)
33
34
36 executor_set = set()
37 from DerivationFrameworkConfiguration.DerivationTransformHelpers import \
38 addDerivationArguments, addDerivationSubstep, \
39 addPhysicsValidationArguments, addPhysicsValidationSubstep
40 addDerivationSubstep(executor_set)
41 addPhysicsValidationSubstep(executor_set)
42 trf = transform(executor=executor_set,
43 description='ATLAS derivation framework transform. Inputs must be EVNT, AOD or DAOD. Outputs must be DAOD or D2AOD.')
44 addAthenaArguments(trf.parser)
45 addDetectorArguments(trf.parser)
46 addDerivationArguments(trf.parser)
47 addPhysicsValidationArguments(trf.parser)
48 return trf
49
50
51if __name__ == '__main__':
52 main()
STL class.
Main package for new style ATLAS job transforms.
Logging configuration for ATLAS job transforms.