#include "TTree.h" #include "TCanvas.h" #include "TRandom.h" #include "TVirtualFFT.h" #include "TFile.h" #include #include "TGraph.h" #include "TF1.h" #include "TClonesArray.h" void test(){ Double_t time[1024], ampl[1024]; for(Int_t i=0;i<1024;i++){ ampl[i] = gRandom->Gaus(0.,0.001); time[i] = i; } TFile *fout = new TFile("test.root","RECREATE"); TTree *rec = new TTree("rec","rec"); TClonesArray *WF = new TClonesArray("TGraph"); // DCWaveform Branch TClonesArray &wave = *WF; rec->Branch("wave",&wave,256000); WF->BypassStreamer(); for(Int_t i=0;i<100000;i++){ wave.Clear(); if(i%100 == 0) cout << "Event " << i << endl; for(Int_t ich=0;ich<8;ich++){ new(wave[ich]) TGraph(1024,time,ampl); } rec->Fill(); } rec->Write(); fout->Close(); }