Hi Philippe,
I am getting tons of warning messages starting from
*** Break *** segmentation violation
Generating stack trace...
if I use
etree->Draw(tower, tower < 3000);
or if I change above line as
etree->Draw(tower, "tower < 3000");
I am getting this short warning:
*ERROR 26 :
Unknown name : "tower"
Thanks
Philippe Canal wrote:
>Hi,
>
>
>
>>etree->Draw(tower); <--------------------This also works,
>>but when I want to put a cut like before root is complaining.
>>
>>
>
>What kind of complain? This should have worked with or without a cut.
>
>
>
>> rtree->GetBranch("info")->SetAddress(&info);
>>
>>
>
>It would be better to use:
>
> rtree->SetBranchAddress("info",&info);
>
>Cheers,
>Philippe.
>
>-----Original Message-----
>From: owner-roottalk@pcroot.cern.ch
>[mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of taylan yetkin
>Sent: Monday, August 18, 2003 8:36 AM
>To: roottalk@pcroot.cern.ch
>Subject: [ROOT] tree and streams
>
>
>Hi Rooters,
>I have a problem with my stream definitions in trees. Below you can see
>a part from my code.
>
>
>while(!input_file.eof()){
> char run_no[20];
> int tower_no;
> input_file >> run_no >> tower_no;
> if (input_file.fail()) { break; }
> int elmfiber = tower_no - 1;
> int hadfiber = tower_no + 12;
> char s[256];
> char tower[256];
> strstream sstream(s, 256, ios::in | ios::out);
> sstream << "/reco/data/TB2003_JUL/" << run_no << ends;
> strstream sstream(tower,256,ios::in |ios::out);
> sstream << "towers[" << elmfiber << "].e+towers[" <<
>hadfiber<< "].e" << ends;
>
> TFile f(s);
> TTree *rtree = (TTree *)f.Get("Run");
> RecoInfo *info = new RecoInfo();
> RecoRun *run = new RecoRun();
> RecoEvent *event = new RecoEvent();
> RecoTrigger *trigger = new RecoTrigger();
> RecoPhase *phase = new RecoPhase();
> RecoHCAL *hcal = new RecoHCAL();
> RecoCluster *cluster = new RecoCluster();
>
> rtree->GetBranch("info")->SetAddress(&info);
> rtree->GetBranch("run")->SetAddress(&run);
>
> TTree *etree = (TTree *)f.Get("Event");
> etree->GetBranch("event")->SetAddress(&event);
> etree->GetBranch("trigger")->SetAddress(&trigger);
> etree->GetBranch("phase")->SetAddress(&phase);
> etree->GetBranch("hcal")->SetAddress(&hcal);
>
> TCanvas *c1 = new TCanvas("c1","c1",20,10,900,600);
>
> c1->Divide(2,1);
> c1->cd(1);
> etree->Draw("c3x3.e","c3x3.e<5000");
><---------------This works without any problem.
>
> c1->cd(2);
> etree->Draw(tower); <--------------------This also works,
>but when I want to put a cut like before root is complaining.
>
>
>
>How can I use Draw() method with all options for this tower stream.
>
>
>
>
>
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:14 MET