ATLAS Offline Software
|
the base class for the various EventLoop drivers that allow to run jobs on different backends More...
#include <Driver.h>
Public Member Functions | |
void | testInvariant () const |
test the invariant of this object More... | |
Driver () | |
standard default constructor More... | |
SH::MetaObject * | options () |
the list of options to jobs with this driver More... | |
const SH::MetaObject * | options () const |
std::string | submit (const Job &job, const std::string &location) const |
submit the given job with the given output location and wait for it to finish More... | |
std::string | submitOnly (const Job &job, const std::string &location) const |
submit the given job with the given output location and return immediately More... | |
Static Public Member Functions | |
static void | resubmit (const std::string &location, const std::string &option) |
resubmit all failed sub-jobs for the job in the given location More... | |
static bool | retrieve (const std::string &location) |
retrieve all the output for the job in the given location More... | |
static bool | wait (const std::string &location, unsigned time=60) |
retrieve all the output for the job in the given location and wait until it is finished completely. More... | |
static void | updateLocation (const std::string &location) |
update the internal location of files, after moving the submission directory More... | |
static void | mergedOutputSave (Detail::ManagerData &data) |
create and save a sample handler assuming we created all the merged files at the requested locations More... | |
static void | diskOutputSave (Detail::ManagerData &data) |
make the output sample handler for the given job or stream from the information stored in the histogram files. More... | |
Protected Member Functions | |
virtual ::StatusCode | doManagerStep (Detail::ManagerData &data) const |
Static Protected Attributes | |
static bool | abortRetrieve |
this flag is set to true when the wait() function is running and a SIGINT is caught, meaning that control should be returned to the user as soon as possible. More... | |
Private Member Functions | |
ClassDef (Driver, 1) | |
Private Attributes | |
SH::MetaObject | m_options |
members directly corresponding to accessors More... | |
Friends | |
class | Detail::DriverManager |
the base class for the various EventLoop drivers that allow to run jobs on different backends
The interface here is intended for users to interact with directly, but it is considered an expert level task to define new implementations of this class.
EL::Driver::Driver | ( | ) |
standard default constructor
|
private |
|
static |
make the output sample handler for the given job or stream from the information stored in the histogram files.
This is optional, but it is convenient for drivers that use (conventional) writers
|
protected |
|
static |
create and save a sample handler assuming we created all the merged files at the requested locations
This is optional, but it is convenient for drivers that want to keep their outputs locally.
SH::MetaObject* EL::Driver::options | ( | ) |
the list of options to jobs with this driver
const SH::MetaObject* EL::Driver::options | ( | ) | const |
|
static |
resubmit all failed sub-jobs for the job in the given location
\parm option driver-specific option string selecting which jobs to resubmit (and how)
|
static |
retrieve all the output for the job in the given location
While job failures will cause this method to fail you can typically retry it multiple times if you can use partial results.
submit the given job with the given output location and wait for it to finish
This is mostly for small jobs and backward compatibility. For longer jobs use submitOnly instead.
submit the given job with the given output location and return immediately
This method allows you to submit jobs to your local batch system, log out and at a later point log back in again.
void EL::Driver::testInvariant | ( | ) | const |
test the invariant of this object
|
static |
update the internal location of files, after moving the submission directory
|
static |
retrieve all the output for the job in the given location and wait until it is finished completely.
poll the output every time seconds.
While job failures will cause this method to fail you can typically retry it multiple times if you can use partial results.
Typically sleeping for 60 seconds is an appropriate interval, but if it doesn't work for you, you can change it here.
|
friend |
|
staticprotected |
|
private |