1 #ifndef ALITRDPWG1HELPER_H
2 #define ALITRDPWG1HELPER_H
4 ////////////////////////////////////////////////////////////////////////////
6 // Helper class for PWG1 TRD train //
9 // Markus Fasel <M.Fasel@gsi.de> //
11 ////////////////////////////////////////////////////////////////////////////
13 class AliTRDpwg1Helper{
15 enum ETRDinfoGenOutSlots {
45 kNTRDTASKS = kNTRDQATASKS + kNTRDCALIBTASKS
51 static Bool_t DoTask(Int_t idx, Int_t map);
52 static Int_t GetTaskIndex(const Char_t *name);
53 static Bool_t HasReadMCData(Char_t *opt);
54 static Bool_t HasReadFriendData(Char_t *opt);
55 static const Char_t * TaskOpt(Int_t itask) {return fgkTRDtaskOpt[itask];}
56 static const Char_t * TaskClassName(Int_t itask) {return fgkTRDtaskClassName[itask];}
58 static const Char_t* Basename(const char* filepath);
59 static const Char_t* Dirname(const char* filepath);
60 static const Char_t* MergeBatch(const Char_t *mark, const Char_t *files, const Int_t nfiles=20, const Int_t first=0, Bool_t kSVN=kTRUE, Bool_t kCLEAR=kFALSE);
61 static void MergeProd(const Char_t *mark, const Char_t *files, const Int_t nBatch=20, Int_t level=0);
62 static Int_t ParseOptions(Char_t *trd);
65 AliTRDpwg1Helper(const AliTRDpwg1Helper& ref);
66 const AliTRDpwg1Helper& operator=(const AliTRDpwg1Helper& ref);
67 static const Char_t * fgkTRDtaskOpt[kNTRDTASKS + 1]; //! task options
68 static const Char_t * fgkTRDtaskClassName[kNTRDTASKS];//! task class name