7 #include "utilities.hh" 11 int main(
int argc,
char *argv[]){
12 time_t begtime, endtime;
16 cout<<
"Format: ./run/change_branch.exe <infolder> <outfolder> <sample> <branch_type1> <branch_name1> <branch_value1> ... <branch_valueN>"<<endl;
17 cout<<
"Accepts up to N branches folowing the format above."<<endl;
18 cout<<
"<sample> is an indentifier for files in the folder, e.g \"*.root\" or \"*TTJets*SingleLep*\""<<endl;
19 cout<<
"<branch_type> must be \"int\", \"float\", \"double\", \"bool\", \"vint\", \"vfloat\", \"vdouble\", or \"vbool\""<<endl;
20 cout<<
"Accepts multiplication of branches, i.e. <branch_value>=\"*3.1415\" or <branch_value>=\"3.1415*\""<<endl;
28 vector<TString> var_type, var, var_val;
29 for(
int ivar=4; ivar<argc; ivar+=3){
30 var_type.push_back(argv[ivar]);
31 var.push_back(argv[ivar+1]);
32 var_val.push_back(argv[ivar+2]);
36 for(
unsigned int i=0; i<files.size(); i++){
37 if(i%100==0) cout<<
"[Change Branch] File #"<<i+1<<
"/"<<files.size()<<endl;
42 cout<<endl<<
"Took "<<difftime(endtime, begtime)<<
" seconds"<<endl<<endl;
int change_branch_one(TString indir, TString name, TString outdir, std::vector< TString > var_type, std::vector< TString > var, std::vector< std::vector< TString > > var_val, int totentries)
int main(int argc, char *argv[])
std::vector< TString > dirlist(const TString &folder, const TString &inname="dir", const TString &tag="")