Dear Rooters, I'm experiencing troubles with THbookFile and THbookTree: I have two files with the same structure and a ntuple inside, and I'd like to compare them. The files are different, as I checked out both with PAW and ROOT opening them separatly. This is my script: { gSystem->Load("libHbook"); THbookFile *file1=new THbookFile("lqtau_s0l_m600_11.ntp",8192); file1->ls(); printf("Now Get #1: file1 is 0x%x\n",(int )file1); THbookTree *tree1=(THbookTree*)file1->Get(1); printf("Now Draw #1: tree1 is 0x%x\n", (int)tree1); tree1->SetName("tree1"); tree1->Draw("Cal_pt"); // file1->Close(); // <<== THbookFile *file2=new THbookFile("cc_q210.ntp",8192); file2->ls(); printf("Now Get #2: file2 is 0x%x\n",(int )file2); THbookTree *tree2=(THbookTree*)file2->Get(1); printf("Now Draw #2: tree2 is 0x%x\n", (int)tree2); tree2->SetName("tree2"); tree2->SetLineColor(2); tree2->Draw("Cal_pt","","same"); } Executing I get: ===> Directory : //lun10 1 (N) ORANGE 1103 (2) VCMONFIT CTD AX:Y=fit,X=M-F 1104 (1) VCMONFIT CTD AX: (M-F) 331 (1) VCMONFIT CTD AX(FADC): (M-F) 332 (1) VCMONFIT CTD AX(ZBYT): (M-F) 1105 (2) VCMONFIT CTD ZBYT:Y=fit,X=M-F 1106 (1) VCMONFIT CTD ZBYT:M-F 1107 (2) VCMONFIT CTD STER:Y=fit,X=M-F 1108 (1) VCMONFIT CTD STER: (M-F) 201 (1) VCMONend CTD AX: (M-F) 202 (1) VCMONend CTD ZBYT:Y=M-F,X=fit 203 (1) VCMONend CTD ZBYT:M-F Now Get #1: file1 is 0x8713db8 Now Draw #1: tree1 is 0x8718050 <TCanvas::MakeDefCanvas>: created default TCanvas with name c1 ===> Directory : //lun11 1 (N) ORANGE 1103 (2) VCMONFIT CTD AX:Y=fit,X=M-F 1104 (1) VCMONFIT CTD AX: (M-F) 331 (1) VCMONFIT CTD AX(FADC): (M-F) 332 (1) VCMONFIT CTD AX(ZBYT): (M-F) 1105 (2) VCMONFIT CTD ZBYT:Y=fit,X=M-F 1106 (1) VCMONFIT CTD ZBYT:M-F 1107 (2) VCMONFIT CTD STER:Y=fit,X=M-F 1108 (1) VCMONFIT CTD STER: (M-F) 201 (1) VCMONend CTD AX: (M-F) 202 (1) VCMONend CTD ZBYT:Y=M-F,X=fit 203 (1) VCMONend CTD ZBYT:M-F Now Get #2: file2 is 0x8d288b8 Now Draw #2: tree2 is 0x8d2ca48 (Int_t)4983 root [1] but i don't get two different superimposed histograms, but only one (as if the input files were the same). The "SetName" commands don't seem to alter this behaviour. If now I uncomment the file1->Close(); // <<== and execute, I get: ===> Directory : //lun10 1 (N) ORANGE 1103 (2) VCMONFIT CTD AX:Y=fit,X=M-F 1104 (1) VCMONFIT CTD AX: (M-F) 331 (1) VCMONFIT CTD AX(FADC): (M-F) 332 (1) VCMONFIT CTD AX(ZBYT): (M-F) 1105 (2) VCMONFIT CTD ZBYT:Y=fit,X=M-F 1106 (1) VCMONFIT CTD ZBYT:M-F 1107 (2) VCMONFIT CTD STER:Y=fit,X=M-F 1108 (1) VCMONFIT CTD STER: (M-F) 201 (1) VCMONend CTD AX: (M-F) 202 (1) VCMONend CTD ZBYT:Y=M-F,X=fit 203 (1) VCMONend CTD ZBYT:M-F Now Get #1: f1 is 0x8713dd8 Now Draw #1: t1 is 0x8718070 <TCanvas::MakeDefCanvas>: created default TCanvas with name c1 ===> Directory : //lun10 1 (N) ORANGE 1103 (2) VCMONFIT CTD AX:Y=fit,X=M-F 1104 (1) VCMONFIT CTD AX: (M-F) 331 (1) VCMONFIT CTD AX(FADC): (M-F) 332 (1) VCMONFIT CTD AX(ZBYT): (M-F) 1105 (2) VCMONFIT CTD ZBYT:Y=fit,X=M-F 1106 (1) VCMONFIT CTD ZBYT:M-F 1107 (2) VCMONFIT CTD STER:Y=fit,X=M-F 1108 (1) VCMONFIT CTD STER: (M-F) 201 (1) VCMONend CTD AX: (M-F) 202 (1) VCMONend CTD ZBYT:Y=M-F,X=fit 203 (1) VCMONend CTD ZBYT:M-F Now Get #2: f2 is 0x87181d8 *** Break *** segmentation violation Root > If I convert them all to .root with h2root, everything works fine. Can you help me? Thanks Luigi PS: I'm using ROOT 3.03/06 compiled on a RedHat 7.2 box with gcc version 2.96. ,------------------------------------------------------------------, | Luigi Bardelli | |------------------------------------------------------------------| | INFN Sezione di Firenze | | Tel: +39-055-457-2255 | | E-Mail: bardelli@fi.infn.it | `------------------------------------------------------------------' ** Please avoid sending me Word or PowerPoint attachments. ** See http://www.fsf.org/philosophy/no-word-attachments.html
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:15 MET