// LsfJob.h #ifndef dial__LsfJob_H #define dial__LsfJob_H // David Adams and Wensheng Deng // July 2003 // // LsfJob is a local job that runs an executable using LSF. #include "dataset_util/Environment.h" #include "dial_job/Job.h" namespace dial { class LsfJob : public Job { private: // data // Input data. std::string m_qname; Environment m_env; public: // static functions // Return the location of the LSF package. // We expect to find DIR/bin/bjobs, etc. static std::string find_lsf(); public: // functions // Constructor. // rundir = directory in which to run // runfile = script to run LsfJob(JobId jid, std::string qname, const Application& app, const Task& tsk, const dset::Dataset& dst, const JobPreferences& prf, std::string rundir, std::string runfile); // Conversion constructor. LsfJob(const Job& job, std::string qname); // Destructor. ~LsfJob(); // Start a job. int start(); // Update the status of a job. int update(); // Stop a running job int kill(int err =0); }; } // end namespace dial #endif