8#ifndef __KVDATAANALYSER_H
9#define __KVDATAANALYSER_H
14#include "KVBatchSystem.h"
16#include "KVNumberList.h"
19#include "KVDBSystem.h"
168 virtual ~ KVDataAnalyser();
287 virtual void Reset();
#define ClassDef(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Relativistic binary kinematics calculator.
Base class for interface to a batch job management system.
void cd()
Make this the default batch system.
Description of an experimental run in database ,,.
Database class used to store information on different colliding systems studied during an experiment....
Manager class which sets up and runs data analysis tasks.
virtual void SetTriggerConditionsForRun(int)
virtual void SetAnalysedTree(TTree *)
const KVString & GetUserClassOptions() const
const Char_t * GetACliCMode()
virtual void postEndRun()
Double_t GetStatusUpdateInterval() const
KVString fUserClass
user's analysis class
void UseBaseClassSubmitTask()
void DoStatusUpdate(Long64_t nevents) const
Print infos on events treated, disk usage, memory usage.
virtual TString ExpandAutoBatchName(const Char_t *format) const
void SetParent(KVDataAnalyser *da)
Bool_t fUseBaseClassSubmitTask
const Char_t * GetBatchName()
virtual void PostRunReset()
virtual void Run()
Check all task variables, then run analyser.
Bool_t fSubmit
set to kTRUE when user wants to submit task
virtual void SetAuxFileList(TList *)
std::unique_ptr< TEnv > fBatchEnv
batch environment file
virtual void AddJobDescriptionList(TList *)
KVDataAnalyser * fParent
holds address of parent analyser which created this one
virtual void WriteBatchEnvFile(const TString &, Bool_t sav=kTRUE)
void SetBatchSystem(KVBatchSystem *bs)
void ChooseNbEventToRead()
Ask user to set number of events to read.
virtual void preInitAnalysis()
void SetUserClassOptions(const Char_t *o="")
Bool_t RunningInLaunchDirectory()
KVString fLibraries
user's libraries
virtual void postAnalysis()
void SetBatchMode(Bool_t on=kTRUE)
const KVString & GetUserLibraries() const
void SetUserLibraries(const Char_t *libs=0)
static void SetAbortProcessingLoop(Bool_t now=kTRUE)
KVString fUserClassOptions
options to be passed to user analysis class
void SetUserClass(const Char_t *kvs, Bool_t check=kTRUE)
virtual Bool_t CheckIfUserClassIsValid(const KVString &alternative_base_class="")
const KVString & GetUserClassDec() const
virtual const KV2Body * GetKinematics() const
virtual Bool_t NeedToChooseWhatToAnalyse() const
const Char_t * GetUserClass()
Bool_t fBatch
set to kTRUE when used in a non-interactive environment
void SetBatchName(const Char_t *batchname)
TString GetPathToFileInLaunchDirectory(const TString &) const
KVDataAnalysisTask * GetAnalysisTask() const
void WriteBatchInfo(TTree *)
virtual void RunMenus()
Run data analyser in menu-driven mode.
virtual Bool_t CheckTaskVariables()
void SetSubmit(Bool_t yes=kTRUE)
Bool_t DoUserClassFilesExist()
const Char_t * GetLaunchDirectory() const
KVDataAnalyser * GetParent() const
void SetAnalysisTask(KVDataAnalysisTask *at)
virtual const KVBatchSystem * GetBatchSystem()
KVString fBatchName
name of batch job when used in a non-interactive environment
void SetProofMode(EProofMode e)
Bool_t fUserClassIsOK
set once user class has been validated
virtual const Char_t * GetRecognisedAutoBatchNameKeywords() const
virtual void set_up_analyser_for_task(KVDataAnalyser *the_analyser)
virtual Bool_t NeedToChooseWhatToDo() const
virtual Bool_t CheckStatusUpdateInterval(Long64_t nevents) const
virtual Bool_t CheckWhatToAnalyseAndHow()
void SetQuit(Bool_t yes=kTRUE)
virtual void SubmitTask()
const Char_t * GetBatchStatusFileName() const
Returns full path to file used to store status of running batch jobs.
const KVString & GetUserClassImp() const
virtual void preAnalysis()
virtual void SetFileList(TList *)
virtual KVDBRun * GetAnalysedRun() const
virtual TTree * GetAnalysedTree() const
const KVString & GetDataType() const
virtual void ChooseWhatToAnalyse()
TO IMPLEMENT ?
KVString fUserClassImp
user's analysis class implementation file
TList * fWorkDirInit
list of files in working directory before task runs
virtual Long64_t GetTotalEntriesToRead() const
KVDataAnalyser()
Default constructor.
virtual Int_t GetNumberOfFilesToAnalyse() const
static Bool_t fCleanAbort
flag to force abort of processing
KVString fUserClassDec
user's analysis class header file
virtual Bool_t PreSubmitCheck()
static KVDataAnalyser * GetAnalyser(const Char_t *plugin)
const KVString & GetUserIncludes() const
KVString fIncludes
user's include directories
Bool_t fQuit
set to kTRUE when user wants to quit
EProofMode GetProofMode() const
static Bool_t IsRunningBatchAnalysis()
void SetDataType(const Char_t *name)
virtual KVString GetRootDirectoryOfDataToAnalyse() const
Bool_t fMenus
set to kTRUE in menu-driven mode
virtual void postInitRun()
KVString fUserClassAlternativeBaseClass
alternative base class for user's analysis class
static void RunAnalyser(const Char_t *plugin="")
void ScanWorkingDirectory(TList **)
void ChooseUserClass()
Choose the user's analysis class.
TList * fWorkDirEnd
list of files in working directory after task runs
static Bool_t AbortProcessingLoop()
Long64_t GetNbEventToRead(void) const
virtual void postEndAnalysis()
virtual void preEndAnalysis()
void SetMenus(Bool_t on=kTRUE)
virtual KVDBSystem * GetAnalysedSystem() const
void CopyAnalysisResultsToLaunchDirectory()
virtual Bool_t ReadBatchEnvFile(const TString &)
void DeleteBatchStatusFile() const
Delete batch status file (and backup - '.bak') for batch job.
void SetStatusUpdateInterval(double t)
virtual void preInitRun()
virtual void RegisterUserClass(TObject *)
void SetUserIncludes(const Char_t *incDirs=0)
virtual void ChooseWhatToDo()
TO IMPLEMENT ?
Bool_t IsUserClassValid() const
virtual void postInitAnalysis()
void OpenBatchInfoFile(const TString &filename)
void UpdateBatchStatusFile(Int_t totev, Int_t evread, TString disk) const
Update infos in batch status file.
KVBatchSystem * fBatchSystem
batch system to use for submission of job
Bool_t fChoseRunMode
set to kTRUE once running mode has been set/chosen
TObject * GetInstanceOfUserClass(const KVString &alternative_base_class="")
TEnv * GetBatchInfoFile() const
KVString fDataType
datatype chosen by user
KVDataAnalysisTask * fTask
task chosen by user
Double_t fStatusUpdateInterval
void SetNbEventToRead(Long64_t nb=0)
Define and manage data analysis tasks.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
void AbstractMethod(const char *method) const
const char * Data() const