StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
rehist.C
1 #include <fstream>
2 
3 void writeFile(const char* inRootFile)
4 {
5  TFile inRoot(inRootFile);
6  if(!inRoot.IsOpen()){
7  cout << "Cannot open " << inRootFile << endl;
8  return;
9  }
10  TIterator* iterator = inRoot.GetListOfKeys()->MakeIterator();
11  TKey* key;
12 
13  TString outText = inRootFile;
14  outText.Replace(0,outText.Last('/')+1,"");
15 
16  ofstream os(outText.Data());
17 
18  char buf[500];
19 
20  int count(0);
21  while( (key=dynamic_cast<TKey*>(iterator->Next())) != 0){
22  cout << key->GetName() << endl;
23  TH1* h = (TH1*)inRoot.Get(key->GetName());
24  if(h->GetDimension()!=1) continue;
25 
26  if(++count>1) break;
27 
28  int nBin = h->GetNbinsX();
29  os << "name: " << h->GetName() << endl
30  << "title: " << h->GetTitle() << endl
31  << "bins: " << h->GetNbinsX() << endl
32  << "min: " << h->GetXaxis()->GetBinLowEdge(1)
33  << ", max: " << h->GetXaxis()->GetBinUpEdge(h->GetNbinsX()) << endl;
34 
35  for(int i=1; i<=nBin; i++){
36  os << "bin: " << i << " value: " << (float)h->GetBinContent(i)
37  << " error: " << (float)h->GetBinError(i) << endl;
38  }
39  }
40 
41 }
42 
43 
44 void readFile(const char* textFile)
45 {
46 
47 
48 }
49