The Gaudi Framework  master (181af51f)
Loading...
Searching...
No Matches
merge.C File Reference
#include <TBranch.h>
#include <TFile.h>
#include <TInterpreter.h>
#include <TKey.h>
#include <TLeaf.h>
#include <TROOT.h>
#include <TSystem.h>
#include <TTree.h>
#include <TTreeCloner.h>
#include <TUUID.h>
#include <libgen.h>
#include <map>
#include <memory>
#include <string>
#include <vector>
Include dependency graph for merge.C:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Gaudi::ContainerSection
 
class  Gaudi::RootDatabaseMerger
 
union  Gaudi::RootDatabaseMerger::uuid_data
 

Namespaces

namespace  Gaudi
 This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from python with a format liks : ( nbins, min, max, title ) where title can be ommited.
 

Functions

int merge (const char *target, const char *source, bool fixup=false, bool dbg=true)
 

Function Documentation

◆ merge()

int merge ( const char * target,
const char * source,
bool fixup = false,
bool dbg = true )

Definition at line 417 of file merge.C.

417 {
418 s_dbg = dbg;
419 // s_dbg = true;
420#if 0
421 static bool first = true;
422 if ( first ) {
423 first = false;
424 gSystem->Load("libCintex");
425 gInterpreter->ProcessLine("Cintex::Enable()");
426 //gSystem->Load("libGaudiKernelDict");
427 //gSystem->Load("libGaudiTestSuiteDict");
428 }
429#endif
430 // printf("+++ Target:%s\n+++ Source file:%s Fixup:%s Dbg:%s\n",
431 // target,source, fixup ? "YES" : "NO",s_dbg ? "YES" : "NO");
433 MergeStatus ret = m.exists( target ) ? m.attach( target ) : m.create( target );
434 if ( ret == MERGE_SUCCESS ) {
435 ret = m.merge( source );
436 if ( ret == MERGE_SUCCESS ) {
437 m.dumpSections();
438 if ( fixup ) m.createFID();
439 m.saveSections();
440 return m.close();
441 }
442 }
443 ::printf( "+++ Cannot open output file:%s\n", target );
444 return 0;
445}
constexpr double m