19 :
KVDataAnalyser(), fListOfSimFiles(
nullptr), fListOfAuxFiles(
nullptr), fAnalysisChain(
nullptr), fSimDir(
nullptr), fCopyFilesToWorkDir(false)
71 Long64_t update_interval = (nevents > 10 ? nevents / 10 : 1);
76 options.
Form(
"SimFileName=%s,SimTitle=%s,OutputDir=%s,EventsReadInterval=%lld,BranchName=%s,CombinedOutputFile=%s,SimulationInfos=%s",
80 if (first_file->
IsFiltered()) options +=
Form(
",DataSet=%s,System=%s,Run=%d",
88 if (auxfiles !=
"") auxfiles +=
"|";
91 options +=
",AuxFiles=";
93 options +=
",AuxDir=";
96 options +=
",AuxTreeName=";
98 options +=
",AuxBranchName=";
109 Info(
"SubmitTask",
"Beginning TChain::Process...");
118 if (read_all_events) {
201 if (simdir ==
"")
return ok;
207 if (filetype ==
"")
return ok;
210 if (simfiles ==
"")
return ok;
217 while (!simfiles.
End()) {
226 if (auxfiles ==
"")
return (ok =
kTRUE);
233 while (!auxfiles.
End()) {
267 Info(
"BuildChain",
"Copied file in %g seconds", timer.
RealTime());
310 kTRUE,
"SimulatedEventAnalysisTemplate");
313 kTRUE,
"ROOT6SimulatedEventAnalysisTemplate");
void AssignAndDelete(TString &target, char *tobedeleted)
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
KVString GetValue(KVString &l, char c)
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
Factory class for generating skeleton files for new classes.
void GenerateCode()
Generate header and implementation file for currently-defined class.
void AddImplIncludeFile(const Char_t *filename)
Manager class which sets up and runs data analysis tasks.
const Char_t * GetACliCMode()
virtual TString ExpandAutoBatchName(const Char_t *format) const
const KVString & GetUserClassImp() const
virtual Bool_t CheckIfUserClassIsValid(const KVString &alternative_base_class="")
virtual void WriteBatchEnvFile(const Char_t *, Bool_t sav=kTRUE)
TList * fWorkDirInit
list of files in working directory before task runs
const KVString & GetUserClassOptions() const
const Char_t * GetUserClass()
EProofMode GetProofMode() const
void ScanWorkingDirectory(TList **)
Long64_t GetNbEventToRead(void) const
virtual Bool_t ReadBatchEnvFile(const Char_t *)
KVDataAnalysisTask * GetAnalysisTask() const
TEnv * GetBatchInfoFile() const
virtual TObject * FindObject(const char *name) const
Class piloting analyses of simulated data.
Bool_t ReadBatchEnvFile(const Char_t *)
void SubmitTask()
Set up and run the analysis.
KVString GetRootDirectoryOfDataToAnalyse() const
Returns path to data to be analysed.
void DeleteSimFilesListIfOurs()
TString ExpandAutoBatchName(const Char_t *format) const
Replace any special symbols in auto-format jobname with current values.
virtual Bool_t NeedToChooseWhatToAnalyse() const
TList * fListOfAuxFiles
[optional] list of original simulated data to be used during filtered data analysis
KVSimDir * fSimDir
used for batch analysis
Bool_t IsCopyFilesToWorkDir() const
TList * fListOfSimFiles
list of files/trees to analyse
TChain * fAnalysisChain
TChain for analysis.
virtual ~KVSimDirAnalyser()
Destructor.
void GetInfosForJobNameFromFiles()
void SetCopyFilesToWorkDir(Bool_t on=kTRUE)
void WriteBatchEnvFile(const Char_t *, Bool_t sav=kTRUE)
void DeleteAuxFilesListIfOurs()
TString fFilterDataSet
name of dataset to be used for filtering the simulation
TString fFilterSystem
name of system to be used for filtering the simulation
TString fModel
name of model used for simulation
static void Make(const Char_t *kvsname="MySimulatedAnalysis")
Generate a new simulated analysis selector class.
Handle directory containing simulated and/or filtered simulated data ,.
virtual const KVList * GetFiltDataList() const
virtual void AnalyseDirectory()
virtual const KVList * GetSimDataList() const
virtual const Char_t * GetDirectory() const
Handle file containing simulated and/or filtered simulated data ,.
const Char_t * GetSystem() const
const Char_t * GetBranchName() const
const Char_t * GetDataSet() const
KVSimDir * GetSimDir() const
Bool_t IsFiltered() const
const Char_t * GetTreeName() const
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
void Begin(TString delim) const
KVString Next(Bool_t strip_whitespace=kFALSE) const
virtual Long64_t Process(const char *filename, Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0)
virtual Int_t Add(const char *name, Long64_t nentries=TTree::kMaxEntries)
virtual Long64_t GetEntries() const
virtual void SetProof(Bool_t on=kTRUE, Bool_t refresh=kFALSE, Bool_t gettreeheader=kFALSE)
virtual const char * GetName() const
void SetName(const char *name)
virtual Int_t GetEntries() const
virtual const char * GetValue(const char *name, const char *dflt) const
virtual void SetValue(const char *name, const char *value, EEnvLevel level=kEnvChange, const char *type=nullptr)
virtual void SaveLevel(EEnvLevel level)
virtual Bool_t Cp(const char *dst, Bool_t progressbar=kTRUE, UInt_t buffersize=1000000)
virtual void Add(TObject *obj)
virtual TObject * First() const
virtual const char * GetName() const
virtual const char * GetTitle() const
virtual const char * GetName() const
virtual void Info(const char *method, const char *msgfmt,...) const
const char * Data() const
void Form(const char *fmt,...)
TString & ReplaceAll(const char *s1, const char *s2)
virtual char * ConcatFileName(const char *dir, const char *name)
virtual const char * BaseName(const char *pathname)