CMS 3D CMS Logo

Functions
uGTrates.cc File Reference
#include <vector>
#include <string>
#include <algorithm>
#include <iostream>
#include <iomanip>
#include "TFile.h"
#include "TTree.h"
#include "TList.h"
#include "TIterator.h"

Go to the source code of this file.

Functions

int main (int argc, char **argv)
 
void print_rates (TFile *file)
 

Function Documentation

int main ( int  argc,
char **  argv 
)

Definition at line 33 of file uGTrates.cc.

References FrontierConditions_GlobalTag_cff::file, and print_rates().

33  {
34  if (argc < 2)
35  return 0;
36 
37  TFile * file = TFile::Open(argv[1]);
38  print_rates(file);
39 }
void print_rates(TFile *file)
Definition: uGTrates.cc:12
void print_rates ( TFile *  file)

Definition at line 12 of file uGTrates.cc.

References egammaCTFFinalFitWithMaterial_cff::alias, gather_cfg::cout, cmsBatch::log, dataset::name, and names.

Referenced by main().

12  {
13  TTree * tree = (TTree *) file->Get("l1uGTTree/L1uGTTree");
14 
15  // extract the list of Aliases
16  std::vector<std::string> names;
17  TList * aliases = tree->GetListOfAliases();
18  TIter iter(aliases);
19  std::for_each(iter.Begin(), TIter::End(), [&](TObject* alias){ names.push_back(alias->GetName()); } );
20 
21  unsigned long long entries = tree->GetEntries();
22  if (entries == 0)
23  return;
24 
25  int digits = std::log(entries) / std::log(10) + 1;
26  for (auto const & name: names) {
27  unsigned long long counts = tree->GetEntries(name.c_str());
28  std::cout << std::setw(digits) << counts << " / " << std::setw(digits) << entries << " " << name << std::endl;
29  }
30 }
const std::string names[nVars_]
Definition: tree.py:1