makeTree() { TFile *f = new TFile("testtree.root","recreate"); TTree *t = new TTree("testtree","testtree"); std::vector *vb; std::vector *vi; t->Branch("vb","std::vector",&vb); t->Branch("vi","std::vector",&vi); TRandom rand; for (int i=0; i<10000000; ++i) { vb->clear(); vi->clear(); for (int j=0; j<10; ++j) { float r = rand.Rndm(); vb->push_back(r>0.5 ? 1 : 0); vi->push_back(r>0.5 ? 1 : 0); } t->Fill(); } f->Write(); f->Close(); } drawTree_bool() { cout << "Using vector..." << endl; TFile *f = TFile::Open("testtree.root"); TTree *t = (TTree*)f->Get("testtree"); t->Draw("vb[4]","vb[5]==1"); f->Close(); } drawTree_int() { cout << "Using vector..." << endl; TFile *f = TFile::Open("testtree.root"); TTree *t = (TTree*)f->Get("testtree"); t->Draw("vi[4]","vi[5]==1"); f->Close(); }