Hi Wen, Add the line gPad->Update(); after your line h->Draw(); Rene Brun Mei Wen wrote: > > Dear rooters, > I have an online histogram need to be displayed and it has been done in > a right way. But for some reason which I don't know I am not able to > update the histogram with the Update function of TH1 class. In order to > update the histogram on corrent pad I have to delete and then recreate the > Canvas. My source code is as following. Could you give me any help? > -------------------------------------------------------------------------- > > Tcanvas *smap; > > smap = (TCanvas*)gROOT->GetListOfCanvases()->FindObject(obj->GetName()); > > if (smap) { > // hope not delete smap if already exist > smap->Delete(); > smap = new TCanvas(obj->GetName(), obj->GetName()); > // > } else { > smap = new TCanvas(obj->GetName(), obj->GetName()); > } > smap->cd(); > > objs = gDirectory->Get(obj->GetName()); > > if (objs) { > > if (objs->IsA() == TH1F::Class()) { > > //__________Get histo from host > > netm = SDPtr->GetNMPtr(); > if (netm) { > > netm->sendget((char*)objs->GetName(), smap); > > smap->Update(); > } > // > } > } > > /**********************************************************/ > void NetManager::sendget(char* hname, TPad *fig) > /**********************************************************/ > { > TMessage* mess; > int len; > > // the client tells the server the histo name > > socket->Send(hname, kMESS_STRING); > // now it receives such histo > len = socket->Recv(mess); > if (len<=0) > { > cout << "ERROR in Recv histogram!" << endl; > } > else > { > if (mess->What() == kMESS_OBJECT) { > //char answer[3]; > > if (mess->IsA() == TH1F::Class()){ > TH1F *h = (TH1F*) mess->ReadObject(mess->GetClass()); > fig->cd(); > h->Draw(); > > } > > } else if (mess->What() == kMESS_STRING){ > char str[64]; > mess->ReadString(str, 64); > cout << "ERROR: " << str << endl; > } > delete mess; > } > } > > MMMMMMMMMMMMMMMMMMMMMMMMMMMMM > M > Wen Mei M > M > DAQ-KLOE-LNF-INFN M > via E. Fermi 40 M > I-00044 Frascati (RM) W > Italy W > W > tel: 94032753 W > W > WWWWWWWWWWWWWWWWWWWWWWWWWWWWW
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:38 MET