![]() |
KaliVeda
Toolkit for HIC analysis
|
Abstract base class for user analysis of raw data.
The user's analysis class must implement the following methods:
InitAnalysis() is called once at the beginning of the analyis. It is the place to define the histograms and/or TTrees you want to fill in your analysis:
Definition at line 43 of file KVRawDataAnalyser.h.
#include <KVRawDataAnalyser.h>
Public Member Functions | |
KVRawDataAnalyser () | |
Default constructor. More... | |
virtual | ~KVRawDataAnalyser () |
Destructor. More... | |
template<typename HistoType , typename... Args> | |
HistoType * | AddHisto (Args &&... args) |
void | AddHisto (TH1 *histo) |
TTree * | AddTree (const TString &name, const TString &title="") |
void | AddTree (TTree *tree) |
virtual Bool_t | Analysis ()=0 |
void | CalculateTotalEventsToRead () |
loop over runs and calculate total events More... | |
Bool_t | CreateTreeFile (const Char_t *filename="") |
virtual void | EndAnalysis ()=0 |
virtual void | EndRun ()=0 |
void | FillHisto (const Char_t *sname, const Char_t *label, Double_t weight=1) |
Fill 1D histogram with named bins. More... | |
void | FillHisto (const Char_t *sname, Double_t one, Double_t two=1, Double_t three=1, Double_t four=1) |
void | FillTree (const Char_t *sname="") |
KVDBRun * | GetCurrentRun () const |
KVDBRunFile * | GetCurrentRunFile () const |
Long64_t | GetEventNumber () const |
TH1 * | GetHisto (const Char_t *name) const |
const KVHashList * | GetHistoList () const |
TString | GetOpt (const Char_t *option) const |
const KVRawDataReader & | GetRunFileReader () const |
const run_index_t & | GetRunIndexNumber () const |
Int_t | GetRunNumber () const |
Long64_t | GetTotalEntriesToRead () const override |
TTree * | GetTree (const Char_t *name) const |
const KVHashList * | GetTreeList () const |
virtual void | InitAnalysis ()=0 |
virtual void | InitRun ()=0 |
Bool_t | IsOptGiven (const Char_t *option) |
virtual void | SaveHistos (const Char_t *filename="", Option_t *option="recreate", Bool_t onlyfilled=kFALSE) |
void | SetJobOutputFileName (const TString &filename) |
void | SetOpt (const Char_t *option, const Char_t *value) |
void | SubmitTask () override |
void | UnsetOpt (const Char_t *opt) |
![]() | |
KVDataSetAnalyser () | |
Default constructor. More... | |
virtual | ~KVDataSetAnalyser () |
Destructor. More... | |
void | AddJobDescriptionList (TList *) override |
virtual void | ChooseAnalysisTask () |
void | ChooseDataSet () |
void | ChooseDataType () |
void | ChooseRuns (KVDBSystem *system=nullptr, const Char_t *data_type="") |
void | ChooseSystem (const Char_t *data_type="") |
void | ClearRunList () |
TString | ExpandAutoBatchName (const Char_t *format) const override |
KVDBRun * | GetAnalysedRun () const override |
KVDBSystem * | GetAnalysedSystem () const override |
const KVDataSet * | GetDataSet () const |
const run_index_list & | GetFullRunList () const |
const KV2Body * | GetKinematics () const override |
Int_t | GetNumberOfFilesToAnalyse () const override |
const Char_t * | GetRecognisedAutoBatchNameKeywords () const override |
KVString | GetRootDirectoryOfDataToAnalyse () const override |
Returns path to data to be analysed. More... | |
const run_index_list & | GetRunList () const |
Int_t | GetRunNumberFromFileName (const Char_t *) |
Get the run number from the filename. More... | |
const KVDBSystem * | GetSystem () const |
Bool_t | IsChooseDataSet () const |
Bool_t | IsChooseRuns () const |
Bool_t | IsChooseSystem () const |
Bool_t | IsChooseTask () const |
Bool_t | ReadBatchEnvFile (const TString &filename) override |
void | Reset () override |
void | SetChooseDataSet (Bool_t yes=kTRUE) |
void | SetChooseRuns (Bool_t yes=kTRUE) |
void | SetChooseSystem (Bool_t yes=kTRUE) |
void | SetChooseTask (Bool_t yes=kTRUE) |
void | SetDataSet (const Char_t *name) |
void | SetDataSet (KVDataSet *ds) |
void | SetFullRunList (const run_index_list &nl) |
void | SetRuns (const run_index_list &nl, Bool_t check=kTRUE) |
void | SetSystem (KVDBSystem *syst) |
Set the System used in the analysis. More... | |
TString | SystemBatchName () const |
void | WriteBatchEnvFile (const TString &jobname, Bool_t save=kTRUE) override |
![]() | |
KVDataAnalyser () | |
Default constructor. More... | |
virtual | ~ KVDataAnalyser () |
Bool_t | BatchMode () const |
virtual Bool_t | CheckStatusUpdateInterval (Long64_t nevents) const |
virtual Bool_t | CheckTaskVariables () |
void | ChooseNbEventToRead () |
Ask user to set number of events to read. More... | |
void | ChooseRunningMode () |
void | ChooseUserClass () |
Choose the user's analysis class. More... | |
void | DeleteBatchStatusFile () const |
Delete batch status file (and backup - '.bak') for batch job. More... | |
void | DoStatusUpdate (Long64_t nevents) const |
Print infos on events treated, disk usage, memory usage. More... | |
Bool_t | DoUserClassFilesExist () |
virtual TTree * | GetAnalysedTree () const |
KVDataAnalysisTask * | GetAnalysisTask () const |
const Char_t * | GetBatchName () |
const Char_t * | GetBatchStatusFileName () const |
Returns full path to file used to store status of running batch jobs. More... | |
virtual const KVBatchSystem * | GetBatchSystem () |
const KVString & | GetDataType () const |
const Char_t * | GetLaunchDirectory () const |
Long64_t | GetNbEventToRead (void) const |
KVDataAnalyser * | GetParent () const |
TString | GetPathToFileInLaunchDirectory (const TString &) const |
EProofMode | GetProofMode () const |
Double_t | GetStatusUpdateInterval () const |
const UserClass & | GetUserClass () const |
KVString | GetUserClassName () |
const KVString & | GetUserClassOptions () const |
const KVString & | GetUserIncludes () const |
const KVString & | GetUserLibraries () const |
Bool_t | IsMenus () const |
Bool_t | IsQuit () const |
Bool_t | IsSubmit () const |
Bool_t | IsUserClassValid () const |
virtual void | postAnalysis () |
virtual void | postEndAnalysis () |
virtual void | postEndRun () |
virtual void | postInitAnalysis () |
virtual void | postInitRun () |
virtual void | preAnalysis () |
virtual void | preEndAnalysis () |
virtual void | preEndRun () |
virtual void | preInitAnalysis () |
virtual void | preInitRun () |
virtual void | RegisterUserClass (TObject *) |
virtual void | Run () |
Check all task variables, then run analyser. More... | |
virtual void | RunMenus () |
Run data analyser in menu-driven mode. More... | |
Bool_t | RunningInLaunchDirectory () |
virtual void | SetAnalysedTree (TTree *) |
void | SetAnalysisTask (KVDataAnalysisTask *at) |
virtual void | SetAuxFileList (TList *) |
void | SetBatchMode (Bool_t on=kTRUE) |
void | SetBatchName (const Char_t *batchname) |
void | SetBatchSystem (KVBatchSystem *bs) |
void | SetDataType (const Char_t *name) |
virtual void | SetFileList (TList *) |
void | SetMenus (Bool_t on=kTRUE) |
void | SetNbEventToRead (Long64_t nb=0) |
void | SetParent (KVDataAnalyser *da) |
void | SetProofMode (EProofMode e) |
void | SetQuit (Bool_t yes=kTRUE) |
void | SetStatusUpdateInterval (double t) |
void | SetSubmit (Bool_t yes=kTRUE) |
virtual void | SetTriggerConditionsForRun (int) |
void | SetUserClass (const UserClass &kvs, Bool_t check=kTRUE) |
void | SetUserClassOptions (const Char_t *o="") |
void | SetUserIncludes (const Char_t *incDirs=0) |
void | SetUserLibraries (const Char_t *libs=0) |
void | UpdateBatchStatusFile (Int_t totev, Int_t evread, TString disk) const |
Update infos in batch status file. More... | |
void | UseBaseClassSubmitTask () |
void | WriteBatchInfo (TTree *) |
![]() | |
TObject () | |
TObject (const TObject &object) | |
virtual | ~TObject () |
void | AbstractMethod (const char *method) const |
virtual void | AppendPad (Option_t *option="") |
virtual void | Browse (TBrowser *b) |
ULong_t | CheckedHash () |
virtual const char * | ClassName () const |
virtual void | Clear (Option_t *="") |
virtual TObject * | Clone (const char *newname="") const |
virtual Int_t | Compare (const TObject *obj) const |
virtual void | Copy (TObject &object) const |
virtual void | Delete (Option_t *option="") |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
virtual void | Draw (Option_t *option="") |
virtual void | DrawClass () const |
virtual TObject * | DrawClone (Option_t *option="") const |
virtual void | Dump () const |
virtual void | Error (const char *method, const char *msgfmt,...) const |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
virtual TObject * | FindObject (const char *name) const |
virtual TObject * | FindObject (const TObject *obj) const |
virtual Option_t * | GetDrawOption () const |
virtual const char * | GetIconName () const |
virtual const char * | GetName () const |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
virtual Option_t * | GetOption () const |
virtual const char * | GetTitle () const |
virtual UInt_t | GetUniqueID () const |
virtual Bool_t | HandleTimer (TTimer *timer) |
virtual ULong_t | Hash () const |
Bool_t | HasInconsistentHash () const |
virtual void | Info (const char *method, const char *msgfmt,...) const |
virtual Bool_t | InheritsFrom (const char *classname) const |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
virtual void | Inspect () const |
void | InvertBit (UInt_t f) |
virtual TClass * | IsA () const |
Bool_t | IsDestructed () const |
virtual Bool_t | IsEqual (const TObject *obj) const |
virtual Bool_t | IsFolder () const |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
virtual Bool_t | IsSortable () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
virtual void | ls (Option_t *option="") const |
void | MayNotUse (const char *method) const |
virtual Bool_t | Notify () |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *vp) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, void *vp) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
virtual void | Paint (Option_t *option="") |
virtual void | Pop () |
virtual void | Print (Option_t *option="") const |
virtual Int_t | Read (const char *name) |
virtual void | RecursiveRemove (TObject *obj) |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
virtual void | SetDrawOption (Option_t *option="") |
virtual void | SetUniqueID (UInt_t uid) |
virtual void | Streamer (TBuffer &) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Static Public Member Functions | |
static void | Make (const Char_t *kvsname="MyOwnRawDataAnalyser") |
Automatic generation of derived class for raw data analysis. More... | |
![]() | |
static Bool_t | AbortProcessingLoop () |
static KVDataAnalyser * | GetAnalyser (const Char_t *plugin) |
static Bool_t | IsRunningBatchAnalysis () |
static void | RunAnalyser (const Char_t *plugin="") |
static void | SetAbortProcessingLoop (Bool_t now=kTRUE) |
![]() | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
static Bool_t | GetObjectStat () |
static void | SetDtorOnly (void *obj) |
static void | SetObjectStat (Bool_t stat) |
Private Member Functions | |
void | AbortDuringRunProcessing () |
Method called to abort analysis during processing of a run. More... | |
void | add_histo (TH1 *histo) |
void | add_tree (TTree *tree) |
void | FillTH1 (TH1 *h1, Double_t one, Double_t two) |
void | FillTH2 (TH2 *h2, Double_t one, Double_t two, Double_t three) |
void | FillTH3 (TH3 *h3, Double_t one, Double_t two, Double_t three, Double_t four) |
void | FillTProfile (TProfile *h1, Double_t one, Double_t two, Double_t three) |
void | FillTProfile2D (TProfile2D *h2, Double_t one, Double_t two, Double_t three, Double_t four) |
void | ProcessRun () |
void | SetCombinedOutputFile (const KVString &filename) |
Private Attributes | |
KVString | fCombinedOutputFile |
optional name for single results file with trees and histos More... | |
KVDBRun * | fCurrentRun |
poiner to current run More... | |
Long64_t | fEventNumber |
event number in current run More... | |
KVHashList | fHistoList |
list of histograms of user analysis More... | |
KVUserAnalysisOptionList | fOptionList |
list of options set by user for analysis More... | |
KVRawDataReader * | fRunFile |
currently analysed run file More... | |
run_index_t | fRunNumber |
run number of current file More... | |
KVRawDataPatchList | fRustines |
TFile * | fTreeFile |
KVHashList | fTreeList |
list of trees of user analysis More... | |
Long64_t | TotalEntriesToRead |
Additional Inherited Members | |
![]() | |
enum | EProofMode { None , Lite , Proof } |
![]() | |
enum | EDeprecatedStatusBits |
enum | EStatusBits |
![]() | |
kBitMask | |
kCanDelete | |
kCannotPick | |
kHasUUID | |
kInconsistent | |
kInvalidObject | |
kIsOnHeap | |
kIsReferenced | |
kMustCleanup | |
kNoContextMenu | |
kNotDeleted | |
kObjInCanvas | |
kOverwrite | |
kSingleKey | |
kWriteDelete | |
kZombie | |
![]() | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
void | MakeZombie () |
![]() | |
kOnlyPrepStep | |
KVRawDataAnalyser::KVRawDataAnalyser | ( | ) |
Default constructor.
Definition at line 21 of file KVRawDataAnalyser.cpp.
|
virtual |
Destructor.
Definition at line 34 of file KVRawDataAnalyser.cpp.
|
private |
Method called to abort analysis during processing of a run.
Definition at line 485 of file KVRawDataAnalyser.cpp.
Definition at line 64 of file KVRawDataAnalyser.h.
User must call CreateTreeFile(const Char_t*) before calling this method
Definition at line 68 of file KVRawDataAnalyser.h.
|
inline |
Add a user histogram to the analysis. The name of the histogram can later be used in calls to FillHisto().
HistoType | valid ROOT histogram class name |
args | arguments required by constructor of HistoType class |
Definition at line 185 of file KVRawDataAnalyser.h.
Definition at line 191 of file KVRawDataAnalyser.h.
Create TTree and add to list of trees to be filled during analysis. name
can be used to fill individual TTree with FillTree().
Definition at line 205 of file KVRawDataAnalyser.h.
Definition at line 212 of file KVRawDataAnalyser.h.
|
pure virtual |
Implemented in KVRawDataReconstructor.
void KVRawDataAnalyser::CalculateTotalEventsToRead | ( | ) |
loop over runs and calculate total events
Definition at line 276 of file KVRawDataAnalyser.cpp.
This method must be called before creating any user TTree in InitAnalysis(). If no filename is given, default name="TreeFileFrom[name of analysis class].root"
Definition at line 445 of file KVRawDataAnalyser.cpp.
|
pure virtual |
Implemented in KVRawDataReconstructor.
|
pure virtual |
Implemented in KVRawDataReconstructor.
void KVRawDataAnalyser::FillHisto | ( | const Char_t * | sname, |
const Char_t * | label, | ||
Double_t | weight = 1 |
||
) |
Fill 1D histogram with named bins.
Definition at line 327 of file KVRawDataAnalyser.cpp.
void KVRawDataAnalyser::FillHisto | ( | const Char_t * | histo_name, |
Double_t | one, | ||
Double_t | two = 1 , |
||
Double_t | three = 1 , |
||
Double_t | four = 1 |
||
) |
Find in the list, if there is an histogram named "histo_name" If not print an error message If yes redirect to the right method according to its closest mother class to fill it
Definition at line 295 of file KVRawDataAnalyser.cpp.
Definition at line 80 of file KVRawDataAnalyser.h.
|
inlineprivate |
Definition at line 88 of file KVRawDataAnalyser.h.
|
inlineprivate |
Definition at line 96 of file KVRawDataAnalyser.h.
|
inlineprivate |
Definition at line 84 of file KVRawDataAnalyser.h.
|
inlineprivate |
Definition at line 92 of file KVRawDataAnalyser.h.
Filltree method, the tree named tree_name has to be declared with AddTTree(TTree*) method
if no sname="", all trees in the list is filled
Definition at line 348 of file KVRawDataAnalyser.cpp.
|
inline |
Definition at line 144 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 150 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 139 of file KVRawDataAnalyser.h.
Definition at line 232 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 223 of file KVRawDataAnalyser.h.
Definition at line 266 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 162 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 133 of file KVRawDataAnalyser.h.
Definition at line 129 of file KVRawDataAnalyser.h.
|
inlineoverridevirtual |
Reimplemented from KVDataAnalyser.
Definition at line 115 of file KVRawDataAnalyser.h.
Definition at line 236 of file KVRawDataAnalyser.h.
|
inline |
Definition at line 227 of file KVRawDataAnalyser.h.
|
pure virtual |
Implemented in KVRawDataReconstructor.
|
pure virtual |
Implemented in KVRawDataReconstructor.
Definition at line 262 of file KVRawDataAnalyser.h.
Automatic generation of derived class for raw data analysis.
Definition at line 469 of file KVRawDataAnalyser.cpp.
|
private |
Perform treatment of a given runfile
Before processing begins, after opening the runfile, and initialising the experimental setup (KVMultiDetArray object accessible through global pointer gMultiDetArray), the user's InitRun() method is called.
After reading each runfile, user's EndRun() method is called.
For each event of each runfile, user's Analysis() method is called just after calling gMultiDetArray->HandleRawDataEvent(fRunfile).
In the Analysis() method the user can test gMultiDetArray->HandledRawData() to know if some pertinent data was found in the event or not.
For further customisation, the following methods are called just before and just after each of these methods:
Definition at line 66 of file KVRawDataAnalyser.cpp.
|
virtual |
Write in file all histograms declared with AddHisto(TH1*)
If no filename is specified, set default name : HistoFileFrom[name_of_class].root
If a filename is specified, search in gROOT->GetListOfFiles() if this file has been already opened
onlyfilled flag allow to write all (onlyfilled=kFALSE, default) or only histograms (onlyfilled=kTRUE) those have been filled
Definition at line 385 of file KVRawDataAnalyser.cpp.
Call in InitAnalysis() to set the name of the single output file containing all histograms and TTrees produced by analysis. This is equivalent to running the analysis with option CombinedOutputFile=[filename] but setting this option in InitAnalysis() will not work. Note that if this method is not called/the option is not given, histograms and TTrees will be written in separate files.
Definition at line 101 of file KVRawDataAnalyser.h.
Call in InitAnalysis() to set the name of the single output file containing all histograms and TTrees produced by analysis.
For interactive jobs, filename will be used for the ROOT file.
For jobs using a batch system to execute many jobs in parallel, we use the job name with the '.root' extension.
Definition at line 242 of file KVRawDataAnalyser.h.
Definition at line 258 of file KVRawDataAnalyser.h.
|
overridevirtual |
Perform analysis of chosen runs
Before beginning the loop over the runs, the user's InitAnalysis() method is called. After completing the analysis of all runs, the user's EndAnalysis() method is called.
Further customisation of the event loop is possible by overriding the methods
which are executed respectively just before and just after those methods.
Reimplemented from KVDataAnalyser.
Definition at line 190 of file KVRawDataAnalyser.cpp.
Definition at line 270 of file KVRawDataAnalyser.h.
|
private |
optional name for single results file with trees and histos
Definition at line 54 of file KVRawDataAnalyser.h.
|
private |
poiner to current run
Definition at line 52 of file KVRawDataAnalyser.h.
|
private |
event number in current run
Definition at line 48 of file KVRawDataAnalyser.h.
|
private |
list of histograms of user analysis
Definition at line 49 of file KVRawDataAnalyser.h.
|
private |
list of options set by user for analysis
Definition at line 55 of file KVRawDataAnalyser.h.
|
private |
currently analysed run file
Definition at line 46 of file KVRawDataAnalyser.h.
|
private |
run number of current file
Definition at line 47 of file KVRawDataAnalyser.h.
|
private |
Definition at line 57 of file KVRawDataAnalyser.h.
|
private |
Definition at line 51 of file KVRawDataAnalyser.h.
|
private |
list of trees of user analysis
Definition at line 50 of file KVRawDataAnalyser.h.
|
private |
Definition at line 53 of file KVRawDataAnalyser.h.