KaliVeda
Toolkit for HIC analysis
KVBatchSystemManager Class Reference

Detailed Description

Handles list of all available batch systems for processing non-interactive data analysis tasks.

Created by KVClassFactory on Mon May 7 17:29:05 2007 Author: franklan

The different "batch" systems available are described in the $KVROOT/KVFiles/.kvrootrc or the user's $HOME/.kvrootrc, as in the following examples:

# Batch systems
BatchSystem:     Xterm
Xterm.BatchSystem.Title:    Execute task in an X-terminal window
+BatchSystem:     Linux
Linux.BatchSystem.Title:    Execute task in background with output stored in log file
#+BatchSystem:     BQS
#BQS.BatchSystem.Title:   Use CCIN2P3 BQS batch system
#BQS.BatchSystem.DefaultJobTime:   4000
#BQS.BatchSystem.DefaultJobMemory:   256MB
#BQS.BatchSystem.DefaultJobDisk:   100MB

For each named batch system, there must be a corresponding plugin which defines the actual class to use:

#Plugins for batch systems
Plugin.KVBatchSystem:    Xterm    KVRootBatch     KVMultiDet    "KVRootBatch()"
+Plugin.KVBatchSystem:    Linux    KVLinuxBatch     KVMultiDet    "KVLinuxBatch()"
+Plugin.KVBatchSystem:    BQS    KV_CCIN2P3_BQS     KVMultiDet    "KV_CCIN2P3_BQS()"

The "default" batch system is defined as follows:

#Default batch system
Default.BatchSystem:   Xterm

It can be accessed via the global pointer to the batch system manager:

KVBatchSystem* default = gBatchSystemManager->GetDefaultBatchSystem();

Definition at line 56 of file KVBatchSystemManager.h.

#include <KVBatchSystemManager.h>

Public Member Functions

 KVBatchSystemManager ()
 Default constructor. More...
 
virtual ~KVBatchSystemManager ()
 Destructor. More...
 
KVBatchSystemGetBatchSystem (const Char_t *name)
 Get batch system by name. More...
 
KVBatchSystemGetBatchSystem (Int_t index)
 Get batch system by number in the list printed by Print() More...
 
KVBatchSystemGetDefaultBatchSystem () const
 
void Print (Option_t *opt="") const
 

Private Member Functions

void Init ()
 Set up list of available batch systems. More...
 

Private Attributes

KVList fBatchSystems
 list of available batch systems More...
 
KVBatchSystemfDefault
 default batch system More...
 

Constructor & Destructor Documentation

◆ KVBatchSystemManager()

KVBatchSystemManager::KVBatchSystemManager ( )

Default constructor.

Definition at line 28 of file KVBatchSystemManager.cpp.

◆ ~KVBatchSystemManager()

KVBatchSystemManager::~KVBatchSystemManager ( )
virtual

Destructor.

Definition at line 43 of file KVBatchSystemManager.cpp.

Member Function Documentation

◆ GetBatchSystem() [1/2]

KVBatchSystem * KVBatchSystemManager::GetBatchSystem ( const Char_t name)

Get batch system by name.

Definition at line 83 of file KVBatchSystemManager.cpp.

◆ GetBatchSystem() [2/2]

KVBatchSystem * KVBatchSystemManager::GetBatchSystem ( Int_t  index)

Get batch system by number in the list printed by Print()

Definition at line 94 of file KVBatchSystemManager.cpp.

◆ GetDefaultBatchSystem()

KVBatchSystem* KVBatchSystemManager::GetDefaultBatchSystem ( ) const
inline

Definition at line 68 of file KVBatchSystemManager.h.

◆ Init()

void KVBatchSystemManager::Init ( void  )
private

Set up list of available batch systems.

Definition at line 55 of file KVBatchSystemManager.cpp.

◆ Print()

void KVBatchSystemManager::Print ( Option_t opt = "") const

Print list of available batch systems Default is to show numbered list with title of each batch system if opt="all", print detailed information on each batch system

Definition at line 107 of file KVBatchSystemManager.cpp.

Member Data Documentation

◆ fBatchSystems

KVList KVBatchSystemManager::fBatchSystems
private

list of available batch systems

Definition at line 57 of file KVBatchSystemManager.h.

◆ fDefault

KVBatchSystem* KVBatchSystemManager::fDefault
private

default batch system

Definition at line 59 of file KVBatchSystemManager.h.