#include <vector>
#include <cstdlib>
#include <cmath>
+#include <list>
#include "GateMergeManager.hh"
//if(res) cout<<"Strange?? Can't mark "<<dir<<" as done!"<<endl;
};
+void GateMergeManager::StartMergingFromFilenames(Strings filenames, string outputfile)
+{
+ for (Strings::const_iterator iter=filenames.begin(); iter!=filenames.end(); iter++)
+ {
+ m_vRootFileNames.push_back(*iter);
+ if(m_verboseLevel>2) cout<<"Root input file name: "<<m_vRootFileNames.back()<<endl;
+ }
+
+ m_Nfiles = m_vRootFileNames.size();
+ m_RootTargetName=m_outDir+outputfile;
+ if(m_verboseLevel>2) cout<<"Root output file name: "<<m_RootTargetName<<endl;
+
+ if (m_fastMerge==true) FastMergeRoot();
+ else MergeRoot();
+};
+
// to process the splitfile
void GateMergeManager::ReadSplitFile(string splitfileName){
#include <TFile.h>
#include <TChain.h>
#include <cstdlib>
+#include <list>
using namespace std;
+typedef list<string> Strings;
class GateMergeManager
{
void StartMerging(string splitfileName);
+ void StartMergingFromFilenames(Strings filenames, string outputfile);
void ReadSplitFile(string splitfileName);
bool MergeTree(string name);
bool MergeGate(TChain* chain);