[root] / trunk / io / io / inc / TMemFile.h Repository:
ViewVC logotype

Log of /trunk/io/io/inc/TMemFile.h

Parent Directory Parent Directory


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

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: 3393 byte(s)
Diff to previous 41423
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 41423 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Oct 17 17:30:33 2011 UTC (3 years, 3 months ago) by pcanal
File length: 3177 byte(s)
Diff to previous 41321
When transfering TMemFile make sure to transfer the StreamerInfo only once

Revision 41321 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 11 09:01:54 2011 UTC (3 years, 3 months ago) by pcanal
File length: 3180 byte(s)
Diff to previous 39614
Remove size limitation to TMemFile which can now be composed on a series of memory block
and can handle arbitrary size.
To copy the content of the TMemFile use TMemFile::CopyTo towards either a memory area
or another TBuffer.

Revision 39614 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 8 23:42:55 2011 UTC (3 years, 7 months ago) by rdm
File length: 2456 byte(s)
Diff to previous 39611
fix some typos.

Revision 39611 - (view) (download) (as text) (annotate) - [select for diffs]
Added Wed Jun 8 19:35:17 2011 UTC (3 years, 7 months ago) by pcanal
File length: 2461 byte(s)
Introduce TMemFile and update TFileMerger to support incremental merges.

Add new tutorials ( net/treeClient.C + net/fastMergeServer.C )
demonstrating how a TMemFile can be used to do parallel merge
from many client. ( TMemFile still needs to be better integrated
with TMessage and TSocket).

The new TMemFile class support the TFile interface but only store
the information in memory.   This version is limited to 32MB.

   TMessage mess;
   ... 
   mess->ReadFastArray(scratch,length);
   transient = new TMemFile("hsimple.memroot",scratch,length);

will copy the content of 'scratch' into the in-memory buffer
created by/for the TMemFile.

   TMemFile *file = new TMemFile("hsimple.memroot","RECREATE");

Will create an empty in-memory of (currently fixed) size 32MB.

   file->ResetAfterMerge(0);

Will reset the objects in the TDirectory list of objects
so that they are ready for more data accumulations (i.e.
returns the data to 0 but keep the customizations).

Introduce the new function TFileMerger::IncrementalMerge will
will Merge the list of file _with_ the content of the output
file (if any).   This allows make several successive Merge
into the same TFile object.

Introduce non-static version of TFile::Cp allows the copy of
an existing TFile object.

Introduce new explicit interface for providing reseting 
capability after a merge.  If a class has a method with 
the name and signature:

   void ResetAfterMerge(TFileMergeInfo*);

it will be used by a TMemFile to reset its objects after
a merge operation has been done.

If this method does not exist, the TClass will use
a method with the name and signature:
  
   void Reset(Optiont_t *);

TClass now provides a quick access to these merging 
function via TClass::GetResetAfterMerge.   The wrapper function
is automatically created by rootcint and can be installed
via TClass::SetResetAfterMerge.   The wrapper function should have
the signature/type ROOT::ResetAfterMergeFunc_t:

   void (*)(void *thisobj, TFileMergeInfo*);

ResetAfterMerge functions were added to the following classes:
TDirectoryFile, TMemFile, TTree, TChain, TBranch, TBranhcElement, 
TBranchClones, TBranchObject and TBranchRef.

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