7std::vector<std::string>
pathToList(
const char* path);
9TH1F*
CreateHistogram1(
const char* name,
const char* xtitle,
int nbin, Float_t firstBin, Float_t lastBin)
11 TH1F* h =
new TH1F(name, name, nbin, firstBin, lastBin);
26 TH2F* h =
new TH2F(name, name, nbinx, firstBinX, lastBinX, nbiny, firstBinY, lastBinY);
46 TH3F* h =
new TH3F(name, name, nbinx, firstBinX, lastBinX, nbiny, firstBinY, lastBinY, nbinz, firstBinZ, lastBinZ);
57 std::vector<std::string> splitedPath =
pathToList(dir);
58 TDirectory*
d = (TDirectory*)gFile;
59 for (
size_t i = 0;
i < splitedPath.size();
i++) {
60 TDirectory* nextDir = (TDirectory*)
d->FindObject(splitedPath[
i].c_str());
62 d->mkdir(splitedPath[
i].c_str());
63 nextDir = (TDirectory*)
d->GetDirectory(splitedPath[
i].c_str());
66 Error(
"QAHelpers::toDir",
"Can't create/find directory");
75 std::vector<std::string> result;
77 const char* begin = path;
78 const char* index = path;
81 for (; *index != 0 && *index !=
'/'; index++)
84 result.push_back(std::string(begin, index - begin));
85 for (; *index != 0 && *index ==
'/'; index++)
92const TGeoShape*
getShape(
const TGeoManager* g,
const char* name)
95 Error(
"getShape",
"Geo Manager not initialized");
98 TGeoVolume* vol = gGeoManager->GetVolume(name);
100 Error(
"getShape",
"Volume %s not found", name);
104 return vol->GetShape();
110 const std::string& suffix,
116 std::string fullName = std::string(name) + suffix;
120 const std::string& suffix,
130 std::string fullName = std::string(name) + suffix;
131 return CreateHistogram2(fullName.c_str(), xtitle, ytitle, nbinx, firstBinX, lastBinX, nbiny, firstBinY, lastBinY);
134 const std::string& suffix,
148 std::string fullName = std::string(name) + suffix;
149 return CreateHistogram3(fullName.c_str(), xtitle, ytitle, ztitle, nbinx, firstBinX, lastBinX, nbiny, firstBinY,
150 lastBinY, nbinz, firstBinZ, lastBinZ);
void toDirectory(const char *dir)
TH3F * CreateHistogram3(const char *name, const char *xtitle, const char *ytitle, const char *ztitle, int nbinx, Float_t firstBinX, Float_t lastBinX, int nbiny, Float_t firstBinY, Float_t lastBinY, int nbinz, Float_t firstBinZ, Float_t lastBinZ)
std::vector< std::string > pathToList(const char *path)
const TGeoShape * getShape(const TGeoManager *g, const char *name)
TH2F * CreateHistogram2(const char *name, const char *xtitle, const char *ytitle, int nbinx, Float_t firstBinX, Float_t lastBinX, int nbiny, Float_t firstBinY, Float_t lastBinY)
TH1F * CreateHistogram1(const char *name, const char *xtitle, int nbin, Float_t firstBin, Float_t lastBin)
const Float_t d
Z-ccordinate of the first GEM-station.