file1.h .... public: TH1I *fHpx_waveMCA; TAxis* x_waveMCA; TAxis* y_waveMCA; Int_t xmaxint_waveMCA; Int_t xminint_waveMCA; Double_t xmaxdt; Double_t xmindt; Double_t ymaxdt; Double_t ymindt; TCanvas *c124; ..... file1.cpp ... int Wind1::load_data(unsigned short mod3333, unsigned short chan3333) { int retval; unsigned int NumWords ; NumWords = 32768; char hname1[10] = "MCA" ; if (tracehist == NULL) tracehist = new unsigned int[NumWords]; memset(tracehist, 0, NumWords * sizeof(unsigned int)); printf("Reading Histogram from module: module no:%i , chan no.:%i \n",mod3333, chan3333); Getdata (tracehist, NumWords, mod3333, chan3333); if(retval < 0) { // error handling if (retval == -1) ...... return 0; } char title01[20] = "data from module" ; sprintf(histtitle,"%s,mod=%d,chan=%d", title01 ,mod3333, chan3333); if (fHpx_waveMCA == NULL ) { fHpx_waveMCA = new TH1I ( hname1 , histtitle , NumWords, 0, NumWords ); gStyle->SetOptStat(0); x_waveMCA = fHpx_waveMCA->GetXaxis(); // y_waveMCA = fHpx_waveMCA->GetYaxis(); // for y-axis } fHpx_waveMCA->UseCurrentStyle(); xmaxint_waveMCA = x_waveMCA->GetLast(); xminint_waveMCA = x_waveMCA->GetFirst(); // for y - axis // ymaxdt = fHpx_waveMCA->GetMaximum(); // ymindt = fHpx_waveMCA->GetMinimum(); fHpx_waveMCA = new TH1I ( hname1 , histtitle , NumWords, 0, NumWords ); fHpx_waveMCA->Reset(); for ( int i = 0; i < NumWords ; i++) { fHpx_waveMCA->Fill(i, int(tracehist[i]) ); } xmaxdt = (Double_t) 2000 ; // xmaxint_waveMCA; xmindt = (Double_t) 1000 ; // xminint_waveMCA; fHpx_waveMCA->SetAxisRange(xmindt, xmaxdt, "X"); // fHpx_waveMCA->SetAxisRange(ymindt, ymaxdt, "Y"); // for y-axis c124->cd(); fHpx_waveMCA->DrawCopy(); c124->Modified(); c124->Update(); gSystem->ProcessEvents(); return 1; } // int Wind1::load_data(unsigned short mod3333, unsigned short chan3333) .....