ATLAS Offline Software
EvtGenFromEVNT_tf.py
Go to the documentation of this file.
1 #! /usr/bin/env python
2 
3 # Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
4 
5 from __future__ import print_function
6 import sys
7 import time
8 
9 import logging
10 
11 # Setup core logging here
12 from PyJobTransforms.trfLogger import msg
13 msg.info('logging set in %s' % sys.argv[0])
14 
15 from PyJobTransforms.transform import transform
16 from PyJobTransforms.trfExe import athenaExecutor
17 from PyJobTransforms.trfArgs import addAthenaArguments
18 from PyJobTransforms.trfDecorators import stdTrfExceptionHandler, sigUsrStackTrace
19 
20 import PyJobTransforms.trfArgClasses as trfArgClasses
21 
22 @stdTrfExceptionHandler
23 @sigUsrStackTrace
24 def main():
25 
26  msg.info('This is %s' % sys.argv[0])
27 
28  trf = getTransform()
29  trf.parseCmdLineArgs(sys.argv[1:])
30  trf.execute()
31  trf.generateReport()
32 
33  msg.info("%s stopped at %s, trf exit code %d" % (sys.argv[0], time.asctime(), trf.exitCode))
34  sys.exit(trf.exitCode)
35 
37  executorSet = set()
38  executorSet.add(athenaExecutor(name = 'EvtGenFromEVNT', skeletonFile = 'EvgenJobTransforms/skeleton.EvtGenFromEVNT.py',inData = ['EVNT'], outData = ['EVNT_MRG']))
39 
40  trf = transform(executor = executorSet)
41 
42  addAthenaArguments(trf.parser)
43  addMyArgs(trf.parser)
44  return trf
45 
46 
47 def addMyArgs(parser):
48  # Use arggroup to get these arguments in their own sub-section (of --help)
49  parser.defineArgGroup('EvtGenFromEVNT_tf', 'EVNT merge job specific options')
50  parser.add_argument('--inputEVNTFile', nargs='+',
51  type=trfArgClasses.argFactory(trfArgClasses.argPOOLFile, io='input', runarg=True, type='evnt'),
52  help='Input EVNT file', group='EvtGenFromEVNT_tf')
53  parser.add_argument('--outputEVNT_MRGFile', '--outputEVNTFile',
54  type=trfArgClasses.argFactory(trfArgClasses.argPOOLFile, io='output', runarg=True, type='evnt'),
55  help='Output EVNT file', group='EvtGenFromEVNT_tf')
56 
57 
58 
59 
60 if __name__ == '__main__':
61  main()
62 
PyJobTransforms.trfArgClasses
Transform argument class definitions.
python.trfArgs.addAthenaArguments
def addAthenaArguments(parser, maxEventsDefaultSubstep='first', addValgrind=True, addPerfMon=True, addVTune=True)
Options related to running athena in general TODO: Some way to mask certain options (perExec,...
Definition: trfArgs.py:59
EvtGenFromEVNT_tf.main
def main()
Definition: EvtGenFromEVNT_tf.py:24
Amg::transform
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Definition: GeoPrimitivesHelpers.h:156
EvtGenFromEVNT_tf.addMyArgs
def addMyArgs(parser)
Definition: EvtGenFromEVNT_tf.py:47
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:224
EvtGenFromEVNT_tf.getTransform
def getTransform()
Definition: EvtGenFromEVNT_tf.py:36
PyJobTransforms.trfExe
Transform execution functions.
PyJobTransforms.trfLogger
Logging configuration for ATLAS job transforms.
PyJobTransforms.transform
Main package for new style ATLAS job transforms.