![]() |
ATLAS Offline Software
|
Core transform class. More...
Public Types | |
| typedef HLT::TypeInformation::for_each_type_c< typenameEDMLIST::map, my_functor, my_result<>, my_arg< HLT::TypeInformation::get_cont, CONTAINER > >::type | result |
Public Member Functions | |
| __init__ (self, standardSignalHandlers=True, standardTrfArgs=True, standardValidationArgs=True, trfName=None, executor=None, exeArgs=None, description='') | |
| Initialise a job transform. | |
| name (self) | |
| exitCode (self) | |
| exitMsg (self) | |
| argdict (self) | |
| dataDictionary (self) | |
| report (self) | |
| transformStart (self) | |
| transformSetupCpuTime (self) | |
| transformSetupWallTime (self) | |
| inFileValidationCpuTime (self) | |
| inFileValidationWallTime (self) | |
| outFileValidationCpuTime (self) | |
| outFileValidationWallTime (self) | |
| outFileValidationStop (self) | |
| trfPredata (self) | |
| executors (self) | |
| processedEvents (self) | |
| getProcessedEvents (self) | |
| appendToExecutorSet (self, executors) | |
| parseCmdLineArgs (self, args) | |
| Parse command line arguments for a transform. | |
| setGlobalLogLevel (self) | |
| Check transform argument dictionary and set the correct root logger option. | |
| execute (self) | |
| Execute transform. | |
| setupSplitting (self) | |
| Setup executor splitting. | |
| lastExecuted (self) | |
| Return the last executor which actually executed. | |
| generateReport (self, reportType=None, fast=False, fileReport=defaultFileReport) | |
| Transform report generator. | |
| updateValidationDict (self, newValidationOptions) | |
| Setter for transform's validation dictionary. | |
| getValidationDict (self) | |
| Getter function for transform validation dictionary. | |
| getValidationOption (self, key) | |
| Getter for a specific validation option. | |
| getFiles (self, io=None) | |
| Return a list of fileArgs used by the transform. | |
| validateInFiles (self) | |
| validateOutFiles (self) | |
Public Attributes | |
| parser | |
| validation | |
| name | |
Protected Member Functions | |
| _setupGraph (self) | |
| Setup the executor graph. | |
| _tracePath (self) | |
| Trace the path through the executor graph. | |
| _doSteering (self, steeringDict=None) | |
| Setup steering, which manipulates the graph before we trace the path for this transform. | |
| _exitWithReport (self, signum, frame) | |
| Common signal handler. | |
Protected Attributes | |
| _transformStart = os.times() | |
| Get transform starting timestamp as early as possible. | |
| _inFileValidationStart = None | |
| _inFileValidationStop = None | |
| _outFileValidationStart = None | |
| _outFileValidationStop = None | |
| _trfPredata = os.environ.get('TRF_PREDATA') | |
| Get trf pre-data as early as possible. | |
| _name = trfName or path.basename(sys.argv[0]).rsplit('.py', 1)[0] | |
| Transform _name. | |
| _argdict = dict() | |
| Argument dictionary for this transform. | |
| _dataDictionary = dict() | |
| Dsta dictionary place holder (this maps data types to their argFile instances) | |
| _executors = set() | |
| dict | _executorDictionary = {} |
| int | _exitCode = None |
| Transform exit code/message holders. | |
| str | _exitMsg = None |
| _report = trfJobReport(parentTrf = self) | |
| Report object for this transform. | |
| _processedEvents = None | |
| Transform processed events. | |
| _exitWithReport | |
| _executorPath | |
| _executorGraph | |
| _inputData = list() | |
| _outputData = list() | |
Core transform class.
Definition at line 40 of file transform.py.
|
inherited |
Definition at line 90 of file EDM_MasterSearch.h.
| python.transform.transform.__init__ | ( | self, | |
| standardSignalHandlers = True, | |||
| standardTrfArgs = True, | |||
| standardValidationArgs = True, | |||
| trfName = None, | |||
| executor = None, | |||
| exeArgs = None, | |||
| description = '' ) |
Initialise a job transform.
| standardSignalHandlers | Boolean to set signal handlers. Default True. |
| standardValidationArgs | Boolean to set standard validation options. Default True. |
| trfName | Name of the transform. Default is executable name with .py rstripped. |
| executor | Executor list |
Transform class initialiser
Definition at line 47 of file transform.py.
|
protected |
Setup steering, which manipulates the graph before we trace the path for this transform.
| steeringDict | Manual steering dictionary (if specified, used instead of the steering from the steering argument - pay attention to the input structure! |
Definition at line 601 of file transform.py.
|
protected |
Common signal handler.
This function is installed in place of the default signal handler and attempts to terminate the transform gracefully. When a signal is caught by the transform, the stdout from the running application process (i.e. athena.py) is allowed to continue uninterrupted and write it's stdout to the log file (to retrieve the traceback) before the associated job report records the fact that a signal has been caught and complete the report accordingly.
| signum | Signal number. Not used since this is a common handle assigned to predefined signals using the _installSignalHandlers(). This param is still required to satisfy the requirements of signal.signal(). |
| frame | Not used. Provided here to satisfy the requirements of signal.signal(). |
| SystemExit() |
Definition at line 740 of file transform.py.
|
protected |
Setup the executor graph.
Definition at line 509 of file transform.py.
|
protected |
Trace the path through the executor graph.
Definition at line 586 of file transform.py.
| python.transform.transform.appendToExecutorSet | ( | self, | |
| executors ) |
Definition at line 221 of file transform.py.
| python.transform.transform.argdict | ( | self | ) |
Definition at line 134 of file transform.py.
| python.transform.transform.dataDictionary | ( | self | ) |
Definition at line 138 of file transform.py.
| python.transform.transform.execute | ( | self | ) |
Execute transform.
This function calls the actual transform execution class and sets self.exitCode, self.exitMsg and self.processedEvents transform data members.
Definition at line 384 of file transform.py.
| python.transform.transform.executors | ( | self | ) |
Definition at line 206 of file transform.py.
| python.transform.transform.exitCode | ( | self | ) |
Definition at line 118 of file transform.py.
| python.transform.transform.exitMsg | ( | self | ) |
Definition at line 126 of file transform.py.
| python.transform.transform.generateReport | ( | self, | |
| reportType = None, | |||
| fast = False, | |||
| fileReport = defaultFileReport ) |
Transform report generator.
| fast | If True ensure that no external calls are made for file metadata (this is used to generate reports in a hurry after a crash or a forced exit) |
| fileReport | Dictionary giving the type of report to make for each type of file. This dictionary has to have all io types as keys and valid values are: None - skip this io type; 'full' - Provide all details; 'name' - only dataset and filename will be reported on. |
| reportType | Iterable with report types to generate, otherwise a sensible default is used (~everything, plus the Tier0 report at Tier0) |
Definition at line 658 of file transform.py.
| python.transform.transform.getFiles | ( | self, | |
| io = None ) |
Return a list of fileArgs used by the transform.
c io Filter files by io attribute
Definition at line 784 of file transform.py.
| python.transform.transform.getProcessedEvents | ( | self | ) |
Definition at line 213 of file transform.py.
| python.transform.transform.getValidationDict | ( | self | ) |
Getter function for transform validation dictionary.
Definition at line 769 of file transform.py.
| python.transform.transform.getValidationOption | ( | self, | |
| key ) |
Getter for a specific validation option.
| key | Validation dictionary key |
None if this key is absent Definition at line 775 of file transform.py.
| python.transform.transform.inFileValidationCpuTime | ( | self | ) |
Definition at line 166 of file transform.py.
| python.transform.transform.inFileValidationWallTime | ( | self | ) |
Definition at line 174 of file transform.py.
| python.transform.transform.lastExecuted | ( | self | ) |
Return the last executor which actually executed.
_hasExecuted == True, or the very first executor if we didn't even start yet Definition at line 637 of file transform.py.
| python.transform.transform.name | ( | self | ) |
Definition at line 114 of file transform.py.
| python.transform.transform.outFileValidationCpuTime | ( | self | ) |
Definition at line 182 of file transform.py.
| python.transform.transform.outFileValidationStop | ( | self | ) |
Definition at line 198 of file transform.py.
| python.transform.transform.outFileValidationWallTime | ( | self | ) |
Definition at line 190 of file transform.py.
| python.transform.transform.parseCmdLineArgs | ( | self, | |
| args ) |
Parse command line arguments for a transform.
Definition at line 244 of file transform.py.
| python.transform.transform.processedEvents | ( | self | ) |
Definition at line 210 of file transform.py.
| python.transform.transform.report | ( | self | ) |
Definition at line 142 of file transform.py.
| python.transform.transform.setGlobalLogLevel | ( | self | ) |
Check transform argument dictionary and set the correct root logger option.
Definition at line 368 of file transform.py.
| python.transform.transform.setupSplitting | ( | self | ) |
Setup executor splitting.
Definition at line 551 of file transform.py.
| python.transform.transform.transformSetupCpuTime | ( | self | ) |
Definition at line 150 of file transform.py.
| python.transform.transform.transformSetupWallTime | ( | self | ) |
Definition at line 158 of file transform.py.
| python.transform.transform.transformStart | ( | self | ) |
Definition at line 146 of file transform.py.
| python.transform.transform.trfPredata | ( | self | ) |
Definition at line 202 of file transform.py.
| python.transform.transform.updateValidationDict | ( | self, | |
| newValidationOptions ) |
Setter for transform's validation dictionary.
This function updates the validation dictionary for the transform, updating values which are passed in the newValidationOptions argument.
| newValidationOptions | Dictionary (or tuples) to update validation dictionary with |
Definition at line 764 of file transform.py.
| python.transform.transform.validateInFiles | ( | self | ) |
Definition at line 797 of file transform.py.
| python.transform.transform.validateOutFiles | ( | self | ) |
Definition at line 818 of file transform.py.
|
protected |
Argument dictionary for this transform.
Definition at line 83 of file transform.py.
|
protected |
Dsta dictionary place holder (this maps data types to their argFile instances)
Definition at line 86 of file transform.py.
|
protected |
Definition at line 91 of file transform.py.
|
protected |
Definition at line 405 of file transform.py.
|
protected |
Definition at line 215 of file transform.py.
|
protected |
Definition at line 90 of file transform.py.
|
protected |
Transform exit code/message holders.
Definition at line 98 of file transform.py.
|
protected |
Definition at line 99 of file transform.py.
|
protected |
Definition at line 109 of file transform.py.
|
protected |
Definition at line 56 of file transform.py.
|
protected |
Definition at line 57 of file transform.py.
|
protected |
Definition at line 511 of file transform.py.
|
protected |
Transform _name.
Definition at line 65 of file transform.py.
|
protected |
Definition at line 58 of file transform.py.
|
protected |
Definition at line 59 of file transform.py.
|
protected |
Definition at line 512 of file transform.py.
|
protected |
Transform processed events.
Definition at line 105 of file transform.py.
|
protected |
Report object for this transform.
Definition at line 102 of file transform.py.
|
protected |
Get transform starting timestamp as early as possible.
Definition at line 53 of file transform.py.
|
protected |
Get trf pre-data as early as possible.
Definition at line 62 of file transform.py.
| python.transform.transform.name |
Definition at line 807 of file transform.py.
| python.transform.transform.parser |
Definition at line 70 of file transform.py.
| python.transform.transform.validation |
Definition at line 776 of file transform.py.