KanMerger
class description - source file - inheritance tree (.pdf)
protected:
Int_t numberOfInputBlocks()
Bool_t prepareInputBlock(Int_t block)
Bool_t readBorrowedBranches(KanCompMap::Index idx, Bool_t& newFile)
void setBranches(Bool_t replace)
Bool_t sizeCheck()
Bool_t updateBorrowedBranches(KanCompMap::Index idx, Bool_t replace)
public:
KanMerger(Bool_t copyBorrowed = kFALSE)
KanMerger(const KanMerger&)
virtual ~KanMerger()
Bool_t addInput(const Char_t* coll)
void addOutputCluster(UInt_t mask)
Int_t doMerge(const Char_t* outColl, UInt_t maxSize = 0x7FFFFFFF, UInt_t nEvts = 0)
void getInputBranches()
KanEventSource* input()
void listBranches() const
KanMerger& operator=(const KanMerger&)
KanOutputSink* output()
void setMaxInputCollOpen(Int_t mxInput)
private:
Bool_t _copyBorrowed ! Copy the borrowed components from input?
KanCompMap::Mask _mask ! The components to copy
KanCompMap::Mask _borrowed ! The borrowed components to copy
list<KanHandleBase,allocator<KanHandleBase> > _branchNameList ! The list of branches to copy
map<unsigned int,list<string,allocator<string> >,less<unsigned int>,allocator<pair<const unsigned int,list<string,allocator<string> > > > > _branchNameMap ! The map of branches to copy
map<unsigned int,list<KanBranch*,allocator<KanBranch*> >,less<unsigned int>,allocator<pair<const unsigned int,list<KanBranch*,allocator<KanBranch*> > > > > _branchMap ! The map of borrowed branches
list<unsigned int,allocator<unsigned int> > _clusterList ! The output clustering
KanEventSource* _input ! The input
KanOutputSink* _output ! The output
vector<std::string> _collList ! list of collection names
Int_t _maxInputCollOpen ! Max no. of input colls open at once
Int_t _currentInputBlock ! current block setup for _input
KanMerger(Bool_t copyBorrowed)
:_copyBorrowed(copyBorrowed),
_mask(),
_borrowed(),
_input(0),
_output(0),
_maxInputCollOpen(9999),
_currentInputBlock(0)
~KanMerger()
close all the files
Bool_t prepareInputBlock(Int_t block)
Bool_t addInput(const Char_t* coll)
Int_t numberOfInputBlocks()
Int_t doMerge(const Char_t* outColl, UInt_t maxSize,
UInt_t nEventRequested)
merges the input collections into outColl
maxSize is the maximum file size before rollover is triggered
nEventRequested is the number of events to merge
returns the number of events merged
void listBranches() const
list the branches that will be copied/ merged
void setBranches(Bool_t replace)
Setup the output branches
If replace is true (on the second and later collections during merges),
the branches will be simply be pointed to the new input locations.
Bool_t readBorrowedBranches(KanCompMap::Index idx, Bool_t& newFile)
Bool_t updateBorrowedBranches(KanCompMap::Index idx, Bool_t replace)
void getInputBranches()
Get the list of input branches from the input collection
Bool_t sizeCheck()
Check for the file size limit and rollover files
Inline Functions
void setMaxInputCollOpen(Int_t mxInput)
void addOutputCluster(UInt_t mask)
KanEventSource* input()
KanOutputSink* output()
KanMerger KanMerger(const KanMerger&)
KanMerger& operator=(const KanMerger&)
Author: E. Charles
Last update: KanMerger.cc,v 1.16 2004/11/10 02:15:47 echarles Exp $
Copyright (C) 2003 LBNL
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.
|