[root] / trunk / tree / tree / inc / TTreeCloner.h Repository:
ViewVC logotype

Log of /trunk/tree/tree/inc/TTreeCloner.h

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 43515 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 27 21:15:53 2012 UTC (2 years, 9 months ago) by pcanal
File length: 4042 byte(s)
Diff to previous 43276
Fix coding convention R.RN7 (Avoid the raw C types 'long', 'unsigned long', 'long double', 'bool', 'long long' and 'unsigned long long'.)

Revision 43276 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 7 17:13:42 2012 UTC (2 years, 10 months ago) by pcanal
File length: 4038 byte(s)
Diff to previous 39059
Coverity number 35355,35805,35666,35708,35511,35782,35782,35642,35787,35796,35653,35806,35667,
35670,35809,35810,35671,35673,35812,35688,35283,35824,35689,35825,35690,35691,35826,35827,35692,
35635,35636,35275
about missing operator= and/or copy constructors.

Revision 39059 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Apr 30 20:28:06 2011 UTC (3 years, 8 months ago) by pcanal
File length: 3894 byte(s)
Diff to previous 37921
Introduce support for TTree with variable cluster size (i.e. value of fAutoFlush).
The information is kept in the new data members: fNClusterRange, fMaxClusterRange, fClusterRangeEnd, fClusterSize.
(See TTree::SetAutoFlush for more details).

Iterating through the cluster should be done via the new class TTree::TClusterIterator (i.e. this replaces += fAutoFlush):
   TTree::TClusterIterator clusterIter = tree->GetClusterIterator(which_entry_to_start_from);
   Long64_t clusterStart;
   while( (clusterStart = clusterIter()) < tree->GetEntries()) {
      printf("The cluster starts at %lld and ends at %lld\n",clusterStart,clusterIter.GetNextEntry()-1);
   }
See TTreeCache::FillBuffer for a concrete usage example.

Revision 37921 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 31 22:20:01 2011 UTC (3 years, 11 months ago) by pcanal
File length: 3859 byte(s)
Diff to previous 29413
Allow (via the option kIgnoreMissingTopLevel) for the TTreeCloner to handle the case where the output TTree has more top level branches than the input TTree (this is usefull in case of 'horizontal' merging of TTrees and/or the case of copy and add.)

Revision 29413 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 9 14:10:29 2009 UTC (5 years, 6 months ago) by pcanal
File length: 3820 byte(s)
Diff to previous 29401
Fix for solaris

Revision 29401 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 9 01:07:45 2009 UTC (5 years, 6 months ago) by pcanal
File length: 3769 byte(s)
Diff to previous 28615
Fix the default sorting order of baskets when the TTree is an older in-memory TTree.
Enhance the sort order to use the 'entry number' when the seek position are equal.
Consequently the default sort order for an older in-memory TTree is now
essentially kSortBasketsByEntry rather than kSortBasketsByBranch (old 'correct' sort 
order) or 'random' (the 'broken' sort order prior to this patch).

Revision 28615 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 13 18:50:17 2009 UTC (5 years, 8 months ago) by pcanal
File length: 3422 byte(s)
Diff to previous 28355
Insure the error message string is created before being used.
Reject the case where the input tree is missing a branch compared to the output tree.
In that case, the TTreeCloner can not 'guess' what data to back fill into the missing branch.

Revision 28355 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 24 19:53:11 2009 UTC (5 years, 9 months ago) by pcanal
File length: 3422 byte(s)
Diff to previous 26028
TTree::CloneTree and TChain::Merge in fast mode now can recover from some mismatch errors between
the input and output TTrees by falling back to using the 'slow' mode.  In particular this allow
a 'fast cloning' to handle files that requires schema evolution (albeit it is of course much slower).

The TTreeCloner constructor takes an additional argument to indicate whether the TTreeCloner should
directly print the mismatch error/warning or if the caller we handle them.  The message of the
warning can be retriever via TTreeCloner::GetWarning.   TTreeCloner::NeedConversion return true
if there is a mismatch but the TTree will/should be able to be process properly in slow mode.

This fixes the issue #33743 in savannah

Revision 26028 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 30 20:09:44 2008 UTC (6 years, 2 months ago) by brun
File length: 2986 byte(s)
Diff to previous 22902
From Lorenzo:
 this patch fixes some not-consistent usage of TMath::Sort. If it is not 
applied, the compilation will fail when I will change 

Tmath::Sort<Element,Index> (Long64 n, Element x, Index w) 

in 

Tmath::Sort<Element,Index> (Index n, Element x, Index w) 

to avoid some possible conversion errors from Long64 to Index

Revision 22902 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 31 09:48:42 2008 UTC (6 years, 9 months ago) by rdm
File length: 2986 byte(s)
Diff to previous 20882
move tree, treeplayer and treeviewer under tree meta directory.

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2986 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2986 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 3039 byte(s)
Diff to previous 19579
remove :$ from tag line

Revision 19579 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 9 08:53:38 2007 UTC (7 years, 5 months ago) by brun
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 3049 byte(s)
Diff to previous 16368
Add the necessary includes and forward declarations such that the class can be compiled independently.

Revision 16368 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 28 17:37:55 2006 UTC (8 years, 3 months ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2981 byte(s)
Diff to previous 14721
From Maarten:
Add a new sort option 'SortBasketsByEntry' to the fast TTree cloning.
With this option the branches' baskets will be reordered so that they
are in the order they will be read when processing the full tree.

Revision 14721 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 17 21:21:59 2006 UTC (8 years, 9 months ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2870 byte(s)
Diff to previous 14037
Add support in the fast cloning method for files where the basket
have been stored 'out-of-order' (i.e. for a given branch a basket with
higher entry number is located early in the file)

Revision 14037 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 10 23:43:51 2006 UTC (8 years, 11 months ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2771 byte(s)
Diff to previous 13987
Insure that there is a way to detect that some file where skipped when merging with the 'fast' option (see doc for details)

Revision 13987 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 3 21:55:39 2006 UTC (8 years, 11 months ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2706 byte(s)
Diff to previous 13386
Update of spacing and documentation to match the coding rule

Revision 13386 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 29 06:01:20 2005 UTC (9 years, 1 month ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2660 byte(s)
Diff to previous 13261
Enable and document a variation of the 'fast' tree cloning method
where the baskets can be sorted by branches (SortBasketsByBranch).

Revision 13261 - (view) (download) (as text) (annotate) - [select for diffs]
Added Wed Nov 16 20:17:59 2005 UTC (9 years, 2 months ago) by pcanal
Original Path: trunk/tree/inc/TTreeCloner.h
File length: 2610 byte(s)
New helper class implementing the fast cloning/merging of trees

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9