The Gaudi Framework  v33r1 (b1225454)
Bootstrap.cpp File Reference
Include dependency graph for Bootstrap.cpp:

Go to the source code of this file.

Classes

class  Gaudi::BootSvcLocator
 A dual-stage boostrap mechanism is used to ensure an orderly startup of the ApplicationMgr. More...
 

Namespaces

 Gaudi
 Header file for std:chrono::duration-based Counters.
 

Macros

#define PyHelper(x)   py_bootstrap_##x
 
#define PyFSMHelper(s)
 

Functions

IInterface *PyHelper() createApplicationMgr ()
 
IInterface *PyHelper() getService (IInterface *app, char *name)
 
bool PyHelper() setProperty (IInterface *p, char *name, char *value)
 
const char *PyHelper() getProperty (IInterface *p, char *name)
 
bool PyHelper() configureApp (IInterface *app)
 
bool PyHelper() addPropertyToCatalogue (IInterface *p, char *comp, char *name, char *value)
 
int PyHelper() ROOT_VERSION_CODE ()
 
 PyFSMHelper (configure) PyFSMHelper(initialize) PyFSMHelper(start) PyFSMHelper(stop) PyFSMHelper(final ize) PyFSMHelper(terminate) bool py_bootstrap_app_run(IInterface *i
 
return ep &&ep executeRun (maxevt).isSuccess()
 

Variables

int maxevt
 

Macro Definition Documentation

◆ PyFSMHelper

#define PyFSMHelper (   s)
Value:
bool py_bootstrap_fsm_##s( IInterface* i ) { \
auto fsm = SmartIF<IStateful>( i ); \
return fsm && fsm->s().isSuccess(); \
}
Definition of the basic interface.
Definition: IInterface.h:254
string s
Definition: gaudirun.py:328

Definition at line 261 of file Bootstrap.cpp.

◆ PyHelper

#define PyHelper (   x)    py_bootstrap_##x

Definition at line 237 of file Bootstrap.cpp.

Function Documentation

◆ addPropertyToCatalogue()

bool PyHelper() addPropertyToCatalogue ( IInterface p,
char *  comp,
char *  name,
char *  value 
)

Definition at line 255 of file Bootstrap.cpp.

255  {
256  auto jos = SmartIF<IJobOptionsSvc>( p );
257  return jos && jos->addPropertyToCatalogue( comp, Gaudi::Property<std::string>( name, value ) ).isSuccess();
258 }
Implementation of property with value of concrete type.
Definition: Property.h:370

◆ configureApp()

bool PyHelper() configureApp ( IInterface app)

Definition at line 251 of file Bootstrap.cpp.

251  {
252  auto ui = SmartIF<IAppMgrUI>( app );
253  return ui && ui->configure().isSuccess();
254 }

◆ createApplicationMgr()

IInterface* PyHelper() createApplicationMgr ( )

Definition at line 238 of file Bootstrap.cpp.

238 { return Gaudi::createApplicationMgr(); }
GAUDI_API IAppMgrUI * createApplicationMgr(const std::string &dllname, const std::string &factname)

◆ executeRun()

return ep&& ep executeRun ( maxevt  )

◆ getProperty()

const char* PyHelper() getProperty ( IInterface p,
char *  name 
)

Definition at line 247 of file Bootstrap.cpp.

247  {
248  auto prop = SmartIF<IProperty>( p );
249  return prop ? prop->getProperty( name ).toString().c_str() : nullptr;
250 }

◆ getService()

IInterface* PyHelper() getService ( IInterface app,
char *  name 
)

Definition at line 239 of file Bootstrap.cpp.

239  {
240  auto svcloc = SmartIF<ISvcLocator>( app );
241  return svcloc ? svcloc->service<IInterface>( std::string_view{name} ).get() : nullptr;
242 }
auto get(const Handle &handle, const Algo &, const EventContext &) -> decltype(details::deref(handle.get()))
Definition of the basic interface.
Definition: IInterface.h:254

◆ PyFSMHelper()

PyFSMHelper ( configure  )
final

◆ ROOT_VERSION_CODE()

int PyHelper() ROOT_VERSION_CODE ( )

Definition at line 259 of file Bootstrap.cpp.

259 { return ROOT_VERSION_CODE; }
int PyHelper() ROOT_VERSION_CODE()
Definition: Bootstrap.cpp:259

◆ setProperty()

bool PyHelper() setProperty ( IInterface p,
char *  name,
char *  value 
)

Definition at line 243 of file Bootstrap.cpp.

243  {
244  auto prop = SmartIF<IProperty>( p );
245  return prop && prop->setProperty( name, value ).isSuccess();
246 }

Variable Documentation

◆ maxevt

int maxevt
Initial value:

Definition at line 270 of file Bootstrap.cpp.