swh:1:snp:af87cd67498ef4fe47c76ed3e7caffe5b61facaf
Revision ddcfa58642686cb8f428fbbc665cc45e02420cdf authored by Philippe Canal on 09 June 2011, 15:06:54 UTC, committed by Philippe Canal on 09 June 2011, 15:06:54 UTC
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. git-svn-id: http://root.cern.ch/svn/root/branches/v5-30-00-patches@39631 27541ba8-7e3a-0410-8455-c3a389f83636
1 parent b72e986
Tip revision: 6c9118fb23c981c28a53dc215c68f2be00c04e3e authored by Jonas Rembser on 12 April 2024, 19:22:15 UTC
[RF] Enable `roofit_multiprocess` on the CI
[RF] Enable `roofit_multiprocess` on the CI
Tip revision: 6c9118f
File | Mode | Size |
---|---|---|
README | ||
bindings | ||
build | ||
cint | ||
cmake | ||
config | ||
core | ||
doc | ||
docbook | ||
etc | ||
fonts | ||
geom | ||
graf2d | ||
graf3d | ||
gui | ||
hist | ||
html | ||
icons | ||
io | ||
macros | ||
main | ||
man | ||
math | ||
misc | ||
montecarlo | ||
net | ||
proof | ||
roofit | ||
rootx | ||
sql | ||
test | ||
tmva | ||
tree | ||
tutorials | ||
CMakeLists.txt | -rw-r--r-- | 4.0 KB |
LICENSE | -rw-r--r-- | 25.8 KB |
Makefile | -rw-r--r-- | 48.2 KB |
configure | -rwxr-xr-x | 236.1 KB |
Computing file changes ...