{ gROOT->Reset(); #include "TF1.h" #include "TH1F.h" #include "TFile.h" #include #include "TNtuple.h" // #include // #include "TLorentzVector.h" using namespace std; struct event { Int_t evNumber; Int_t numOfPart; Float_t eTot; Float_t impPar; Float_t weight; }; struct particle { Float_t eTot; Float_t px; Float_t py; Float_t pz; Int_t partID; Float_t part_weight; }; TString inputFile = TString("LesHouches.Real.00000001.xml"); // TString(argv[2]); TString outputFile = TString("part_ntuple.root"); Float_t YK0S, PtK0S, PcmK0S, CosThetacmK0S, PK0S, ThetaK0S, PIDK0S; event ev1; particle par1; FILE *pFile = fopen(inputFile.Data(),"r"); TFile *pFileOut = new TFile(outputFile,"recreate"); TNtuple *NT = new TNtuple("LesHouches_Particles","all particles in 4pi","ID:px:py:pz:Etot"); //reading initial lines char str[300]; for (Int_t jj = 1; jj<10; jj++) { fscanf(pFile, "\n%[^\n]", str); } Int_t nreac = 0; for(Int_t iev=1; iev<=1000000; iev++) { //cout<<"iev = "<Fill(par1.partID, par1.px, par1.py, par1.pz, par1.eTot); }//iteration over particles in one event fscanf(pFile, "\n%[^\n]", str); fscanf(pFile, "\n%[^\n]", str); ev1.numOfPart = -1; }//event cycle //cout<<"nreac = "<Print(); pFileOut->Write(); pFileOut->Close(); return 0; }