1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <TFile.h>
#include <TTree.h>
#include <TPad.h>
#include <TH1F.h>
#include <iostream>
bool isValidFile(const TString& fileName) {
TFile* file = TFile::Open(fileName, "read");
if (!file || file->IsZombie()) {
std::cout << "Error: Invalid file or file is a zombie.\n";
return false;
}
return true;
}
void printParameters(const TString& fileName) {
if (!isValidFile(fileName)) {
exit(EXIT_FAILURE);
}
TFile* file = TFile::Open(fileName, "read");
TTree* tree = static_cast<TTree*>(file->Get("zMuMuMassConstraintParameterFinder/di_muon_from_Z"));
tree->Draw("di_muon_mass>>htemp", "in_mass_window");
TH1F* htemp = static_cast<TH1F*>(gPad->GetPrimitive("htemp"));
std::cout << "\n========================================\n";
std::cout << "'Z -> mu mu' mass constraint parameters:\n";
std::cout << "----------------------------------------\n";
std::cout << " PrimaryMass = " << htemp->GetMean() << "\n";
std::cout << " PrimaryWidth = " << htemp->GetRMS() << "\n";
std::cout << "========================================\n";
exit(EXIT_SUCCESS);
}
|