15 #include <TObjArray.h>
16 #include <TObjString.h>
24 if (filename(0, 1) ==
"~")
25 filename.Replace(0, 1, gSystem->HomeDirectory());
27 TString nextData = filename;
29 TObjArray *pathElements =
nullptr;
30 pathElements = nextData.Tokenize(
"/");
32 Int_t numElements = pathElements->GetLast();
36 path = gSystem->pwd();
38 if (filename(0, 1) ==
"/")
41 for (Int_t i = 0; i < numElements; i++) {
42 path.Append(((TObjString *)pathElements->At(i))->GetString());
47 TString tempDataFile = ((TObjString *)pathElements->Last())->GetString();
50 nextData = gSystem->Which(path, tempDataFile);
51 if (!nextData.EqualTo(
"")) {
52 std::cout <<
"== [GETFileChecker] File exist: " << filename << std::endl;
54 return nextData.Data();
56 std::cout <<
"== [GETFileChecker] File does not exist: " << filename << std::endl;