Re: Automatic split

Rene Brun (Rene.Brun@cern.ch)
Fri, 08 May 1998 20:35:31 +0200


Hi Manuel,
Your proposal is pretty simple to implement.
If no objections or other proposals, I will add the feature
in the next version.

Rene Brun

Manuel Sanchez wrote:
>
> Hello Rooters,
>
> I would like to ask your opinion on a new "automatic split" feature,
> the idea is as simple as having the posibilty to mark some data members
> in a class so they won't be processed by the automatic split algorithm;
> that is, the responsability to create the appropiate branches for those
> members is left to the user. For instance, it coud be something like:
> 'if the comment field of a data members starts with '-' then it won't be
> processed by automatic split'.
>
> This would be different from marking that data member as not
> persistent (using '!' as the first character in the comment field) in
> the sense that the particular data member is persistent (it is stored
> when the automatically generated Streamer() method is used) but the
> responsability to generate the branches (in split mode) is left to the
> user.
>
> This change would make easier to implement automatic split
> strategies different from the default one.
>
> I think the changes in the code are as simple as adding one single
> line to TTree::Branch() and TBranchObject::SetAddress() ( is this right?
> )
>
> There are at least two workarounds (i'm using one of them):
>
> 1.- Mark the data member as non-persistent (using '!') and then
> generate the Streamer function by hand
>
> 2.- Use the '-' in the comment field and use different Branch() and
> SetAddress() methods from those which come with Root. (as external
> functions or inheriting new classes from TTree and TBranchObject ...)
>
> 3.- Any more?
>
> Thanks for your attention,
> Manuel.