RE: [ROOT] SetVirtual in TTree leaf

From: Philippe Canal (pcanal@fnal.gov)
Date: Wed Aug 01 2001 - 23:10:07 MEST


Hi Anton,

Please note that, as of now, SetVirtual has not effect on leaves created 
using the new I/O scheme.  So unless you also did 
TTree->SetBranchStyle(kFALSE); you should not see any differences.  
Currently all new style branches have a behavior equivalent to 
SetVirtual(kFALSE) (i.e. you can only store one actual type of object
in those branches).

We will implement the other behavior during Autumn.

Cheers,
Philippe.

-----Original Message-----
From: owner-roottalk@pcroot.cern.ch
[mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Anton Fokin
Sent: Wednesday, August 01, 2001 8:36 AM
To: roottalk
Subject: [ROOT] SetVirtual in TTree leaf


Hello,

I would like to use SetVirtual(kFALSE) feature in non-split mode. Could you
please check if I am doing right thing below. I do not observe any size
reduction in NO COMPRESSION mode.

Basically my question is: should it be "Daily" leaf of the tree "TDaily"
leaf of "Daili" branch?

Regards,
Anton


        OutDailyTree      = new TTree("DailyTree", "Daily tree");
        OutDailyTree     ->Branch("Daily", "TDaily", &fDaily, fBasketSize,
fSplitMode);

        if (fSplitMode == 0)

((TLeafObject*)OutDailyTree->GetLeaf("Daily"))->SetVirtual(kFALSE);

        if (!InDailyTree)
          Warning("Rebuild", "No input daily tree");
        else
          OutDailyTree   ->CopyEntries(InDailyTree);

        OutDailyTree     ->Write();


http://www.smartquant.com



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:54 MET