KaliVeda
Toolkit for HIC analysis
KV_CCIN2P3_GE.h
1 
4 #ifndef __KV_CCIN2P3_GE_H
5 #define __KV_CCIN2P3_GE_H
6 
7 #include <KVBatchSystem.h>
8 
16 
17 protected:
18 
27 
28  void ChangeDefJobOpt(KVDataAnalyser*) override;
29 
30 public:
31 
32  KV_CCIN2P3_GE(const Char_t* name);
33  virtual ~ KV_CCIN2P3_GE();
34 
35  void SetJobTime(const Char_t* h = ""); /* Set CPU time for batch job */
36  void SetJobMemory(const Char_t* h = ""); /* Set max memory for batch job */
37  void SetJobDisk(const Char_t* h = ""); /* Set max disk space for batch job */
38  void PrintJobs(Option_t* opt = "") override; /* Print list of all jobs submitted to system */
39 
40  Bool_t CheckJobParameters() override; /* Checks job parameters */
41  void SetMultiJobsMode(Bool_t on = kTRUE)
42  {
43  fMultiJobs = on;
44  }
45  Bool_t MultiJobsMode() const override
46  {
47  return fMultiJobs;
48  }
49 
51  {
53  fRunsPerJob = n;
54  }
56  {
58  return fRunsPerJob;
59  }
60 
61  const Char_t* GetJobTime(void) const; /* Get CPU time for batch job */
62  const Char_t* GetJobMemory(void) const; /* Get max memory for batch job */
63  const Char_t* GetJobDisk(void) const; /* Get max disk space for batch job */
64 
65  void ChooseJobTime(void); /* Choose CPU time for batch job */
66  void ChooseJobMemory(void); /* Choose max memory for batch job */
67  void ChooseJobDisk(void); /* Choose max disk space for batch job */
68 
69  void Clear(Option_t* opt = "") override;
70 
71  void WriteBatchEnvFile(TEnv*) override;
72  void ReadBatchEnvFile(TEnv*) override;
73  void Print(Option_t* /*option*/ = "") const override;
74 
75  void SanitizeJobName() const override;
76 
77  KVList* GetListOfJobs() override;
78 
79  void SetSendMailOnJobStart();
80  void SetSendMailOnJobEnd();
81  void SetSendMailAddress(const char*);
82 
83  void Run() override;
85  void SetBatchSystemParameters(const KVNameValueList&) override;
86 
87  ClassDefOverride(KV_CCIN2P3_GE, 1) //Interface to CCIN2P3-GE batch job management system
88 };
89 
90 #endif
int Int_t
bool Bool_t
char Char_t
const char Option_t
#define ClassDefOverride(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Base class for interface to a batch job management system.
Definition: KVBatchSystem.h:78
Manager class which sets up and runs data analysis tasks.
Extended TList class which owns its objects by default.
Definition: KVList.h:28
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:73
Interface to CCIN2P3 Grid Engine batch job management system.
Definition: KV_CCIN2P3_GE.h:15
void Run() override
Bool_t fMultiJobs
set to kTRUE if several jobs are to be submitted for the runlist set in fAnalyser
Definition: KV_CCIN2P3_GE.h:19
void SetSendMailOnJobEnd()
add option to send mail when job ends
const Char_t * GetJobTime(void) const
returns the parameter string corresponding to the job CPU time
Int_t fRunsPerJob
number of runs per job submitted in multi job mode (default=1)
Definition: KV_CCIN2P3_GE.h:20
void SetJobMemory(const Char_t *h="")
Bool_t CheckJobParameters() override
Checks the job and asks for any missing parameters.
KV_CCIN2P3_GE(const Char_t *name)
void ChooseJobDisk(void)
KVString fDefJobTime
default job length
Definition: KV_CCIN2P3_GE.h:21
void GetBatchSystemParameterList(KVNameValueList &) override
void SetJobDisk(const Char_t *h="")
void PrintJobs(Option_t *opt="") override
Print list of owner's jobs.
KVList * GetListOfJobs() override
virtual ~ KV_CCIN2P3_GE()
KVString fDefJobDisk
default job disk space (with units, e.g. "1G")
Definition: KV_CCIN2P3_GE.h:23
KVString fDefJobMem
default job memory allocation (with units, e.g. "512M")
Definition: KV_CCIN2P3_GE.h:22
void SanitizeJobName() const override
void SetSendMailAddress(const char *)
set email address for notifications
Bool_t MultiJobsMode() const override
Definition: KV_CCIN2P3_GE.h:45
void Clear(Option_t *opt="") override
Clear previously set parameters in order to create a new job submission command.
const Char_t * GetJobDisk(void) const
returns the parameter string corresponding to the job Disk
void ChooseJobMemory(void)
void ChooseJobTime(void)
void ReadBatchEnvFile(TEnv *) override
void SetJobTime(const Char_t *h="")
Int_t GetRunsPerJob() const
Definition: KV_CCIN2P3_GE.h:55
const Char_t * GetJobMemory(void) const
returns the parameter string corresponding to the job Memory
void Print(Option_t *="") const override
void SetRunsPerJob(Int_t n)
Definition: KV_CCIN2P3_GE.h:50
void SetSendMailOnJobStart()
add option to send mail when job starts
void SetMultiJobsMode(Bool_t on=kTRUE)
Definition: KV_CCIN2P3_GE.h:41
void ChangeDefJobOpt(KVDataAnalyser *) override
void SetBatchSystemParameters(const KVNameValueList &) override
Use the parameters in the list to set all relevant parameters for batch system.
void WriteBatchEnvFile(TEnv *) override
const Int_t n