12 #ifndef ROOT_TFileMerger 13 #define ROOT_TFileMerger 21 #ifndef ROOT_TStopwatch Merge incrementally all type of objects.
Int_t fPrintLevel
How much information to print out at run time.
virtual const char * GetCWD()
TStopwatch fWatch
Stop watch to measure file copy speed.
Int_t GetMaxOpenedFiles() const
TFile * GetOutputFile() const
virtual Bool_t Merge(Bool_t=kTRUE)
Merge the files.
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
const char * GetMergeOptions()
Normal merge, overwritting the output file.
Bool_t OpenExcessFiles()
Open up to fMaxOpenedFiles of the excess files.
const char * GetObjectNames() const
TString fMergeOptions
Options (in string format) to be passed down to the Merge functions.
Bool_t fCompressionChange
True if the output and input have different compression level (default kFALSE)
Only the objects specified in fObjectNames list.
virtual void RecursiveRemove(TObject *obj)
Intercept the case where the output TFile is deleted!
const char * GetOutputFileName() const
Merge all type of objects (default)
#define ClassDef(name, id)
TList * fExcessFiles
! List of TObjString containing the name of the files not yet added to fFileList due to user or syste...
void Clear()
Clear string without changing its capacity.
Skip objects specified in fObjectNames list.
virtual Bool_t SetCWD(const char *)
void MayNotUse(const char *method) const
Use this method to signal that a method (defined in a base class) may not be called in a derived clas...
Merge the input file with the content of the output file (if already exising).
Bool_t fHistoOneGo
Merger histos in one go (default is kTRUE)
void SetMsgPrefix(const char *prefix)
Set the prefix to be used when printing informational message.
void AddObjectNames(const char *name)
virtual void SetNotrees(Bool_t notrees=kFALSE)
virtual Bool_t AddAdoptFile(TFile *source, Bool_t cpProgress=kTRUE)
Add the TFile to this file merger and give ownership of the TFile to this object (unless kFALSE is re...
TFileMerger(const TFileMerger &)
virtual Bool_t OutputFile(const char *url, Bool_t force)
Open merger output file.
TFile * fOutputFile
The outputfile for merging.
TList * fMergeList
list of TObjString containing the name of the files need to be merged
virtual Bool_t AddFile(TFile *source, Bool_t own, Bool_t cpProgress)
Add the TFile to this file merger and give ownership of the TFile to this object (unless kFALSE is re...
TString fOutputFilename
The name of the outputfile for merging.
Int_t GetPrintLevel() const
This class provides file copy and merging services.
Keep compression level unchanged for each input files.
void SetPrintLevel(Int_t level)
TString fMsgPrefix
Prefix to be used when printing informational message (default TFileMerger)
TFileMerger & operator=(const TFileMerger &)
TString fObjectNames
List of object names to be either merged exclusively or skipped.
const char * GetMsgPrefix() const
void SetMaxOpenedFiles(Int_t newmax)
Set a limit to the number file that TFileMerger will opened at one time.
virtual Bool_t MergeRecursive(TDirectory *target, TList *sourcelist, Int_t type=kRegular|kAll)
Merge all objects in a directory.
Describe directory structure in memory.
Bool_t fLocal
Makes local copies of merging files if True (default is kTRUE)
TList * GetMergeList() const
void SetMergeOptions(const std::string_view &options)
Mother of all ROOT objects.
Bool_t fFastMethod
True if using Fast merging algorithm (default)
Only the objects without a MergeAfterReset member function.
Bool_t fNoTrees
True if Trees should not be merged (default is kFALSE)
virtual Bool_t PartialMerge(Int_t type=kAll|kIncremental)
Merge the files.
virtual void SetFastMethod(Bool_t fast=kTRUE)
virtual ~TFileMerger()
Cleanup.
virtual void PrintFiles(Option_t *options)
Print list of files being merged.
Only the objects with a MergeAfterReset member function.
virtual void Reset()
Reset merger file list.
EPartialMergeType
Type of the partial merge.
Int_t fMaxOpenedFiles
Maximum number of files opened at the same time by the TFileMerger.
TList * fFileList
A list the file (TFile*) which shall be merged.
Bool_t fExplicitCompLevel
True if the user explicitly requested a compressio level change (default kFALSE)
Bool_t HasCompressionChange() const
const char * Data() const