#include "TSystem.h" #include "TCanvas.h" #include "TFile.h" #include "TH1F.h" #include "TString.h" #include #include using namespace std; void txttoroot() { TString pwd(gSystem->pwd()); //Get a current directory const char *dirname="/media/sf_Partag_virtualbox/Ampli/Test"; TSystemDirectory dir(dirname, dirname); TList *files = dir.GetListOfFiles(); Double_t time,V; Double_t dt=10e-12; const Int_t nBins=TMath::FloorNint(5.5e-7/dt)+1; if (files) { TSystemFile *file; TString fname,fname2; TIter next(files); while ((file=(TSystemFile*)next())) { fname = file->GetName(); if (!file->IsDirectory() && fname.EndsWith(".txt")) { ifstream infile; infile.open (fname); //cout << fname << endl; if (fname.Index(".root_mpvE")>0){fname.Remove(fname.Index(".root"));fname2="mpvE";} else if(fname.Index("deg_emp")>0){fname2=fname;fname=fname(0,fname.Index("_emp"));fname2=fname2(fname2.Index("_emp")+4,fname2.Length());fname2.Remove(fname2.First("_"));} else{fname2=fname;fname=fname(0,fname.Index("deg_")+3);fname2=fname2(fname2.Index("deg_")+4,fname2.Length());fname2.Remove(fname2.First("_"));} fname2=fname2+"_L1"; //cout << fname << endl; //cout << fname2 << endl; fname = fname +TString(".root"); TFile *data= new TFile(fname,"UPDATE"); gDirectory->pwd(); TH1F* hist_L= new TH1F(fname2,"Voltage output of Low Gain Amplifiers",nBins,0,5.5e-7); /*while(!infile.eof()) // To get you all the lines. { infile >> time; infile >> V; hist_L->Fill(time,V); }*/ hist_L->GetXaxis()->SetTitle("Time [s]"); hist_L->GetYaxis()->SetTitle("Amplitude[V]"); infile.close(); data->cd(); hist_L->Write("",TObject::kOverwrite); data->Close(); //cout<