| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Functions | Variables
GaudiRoot Namespace Reference

## Classes
union | RefAccessor
class | IOHandler

## Functions
bool | patchStreamers (MsgStream &log)
void | resetLastLink ()
void | pushCurrentDataObject (DataObject **pobjAddr)
void | popCurrentDataObject ()
template<class T >
static bool | makeStreamer (MsgStream &log)

## Variables
static const DataObject * | last_link_object = 0
static int | last_link_hint = -1

## Function Documentation

template<class T >

static bool GaudiRoot::makeStreamer | ( | MsgStream & | log | ) |
| static

Definition at line 188 of file RootIOHandler.cpp.

{
string cl_name = System::typeinfoName(typeid(T));
TClass* c = gROOT->GetClass(cl_name.c_str());
if ( c ) {
TClassStreamer* s = new IOHandler<T>(c);
c->AdoptStreamer(s);
log << MSG::DEBUG << "Installed IOHandler for class " << cl_name << endmsg;
return true;
}
log << MSG::ERROR << "[No ROOT TClass] Failed to install IOHandler for class " << cl_name << endmsg;
return false;
}

bool GaudiRoot::patchStreamers | ( | MsgStream & | log | ) |

Definition at line 201 of file RootIOHandler.cpp.

{
static bool first = true;
if ( first ) {
first = false;
#if ROOT_VERSION_CODE < ROOT_VERSION(5,99,0)
gSystem->Load("libCintex");
gROOT->ProcessLine("Cintex::Cintex::Enable()");
gROOT->ProcessLine("#include <vector>");
gInterpreter->EnableAutoLoading();
gInterpreter->AutoLoad("DataObject");
gInterpreter->AutoLoad("PoolDbLinkManager");
gSystem->Load("libGaudiKernelDict");
gSystem->Load("libGaudiExamplesDict");
#else
gInterpreter->EnableAutoLoading();
gInterpreter->AutoLoad("DataObject");
gInterpreter->AutoLoad("PoolDbLinkManager");
#endif
bool b1 = makeStreamer<SmartRefBase>(s);
bool b2 = makeStreamer<ContainedObject>(s);
bool b3 = makeStreamer<pool::Token>(s);
return b1 && b2 && b3;
}
return true;
}

void GaudiRoot::popCurrentDataObject | ( |  | ) |

Definition at line 39 of file RootIOHandler.cpp.

{
Gaudi::popCurrentDataObject();
resetLastLink();
}

void GaudiRoot::pushCurrentDataObject | ( | DataObject ** | pobjAddr | ) |

Definition at line 35 of file RootIOHandler.cpp.

{
Gaudi::pushCurrentDataObject(pobjAddr);
resetLastLink();
}

void GaudiRoot::resetLastLink | ( |  | ) |

Definition at line 31 of file RootIOHandler.cpp.

{
last_link_object = 0;
last_link_hint = -1;
}

## Variable Documentation

int GaudiRoot::last_link_hint = -1
| static

Definition at line 30 of file RootIOHandler.cpp.

const DataObject* GaudiRoot::last_link_object = 0
| static

Definition at line 29 of file RootIOHandler.cpp.