The Gaudi Framework  v30r3 (a5ef0a68)
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
 Helper functions to set/get the application return code.
 

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

#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:277
string s
Definition: gaudirun.py:253

Definition at line 265 of file Bootstrap.cpp.

#define PyHelper (   x)    py_bootstrap_##x

Definition at line 236 of file Bootstrap.cpp.

Function Documentation

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

Definition at line 258 of file Bootstrap.cpp.

259 {
260  auto jos = SmartIF<IJobOptionsSvc>( p );
261  return jos && jos->addPropertyToCatalogue( comp, Gaudi::Property<std::string>( name, value ) ).isSuccess();
262 }
Implementation of property with value of concrete type.
Definition: Property.h:381
bool isSuccess() const
Definition: StatusCode.h:287
virtual StatusCode addPropertyToCatalogue(const std::string &client, const Gaudi::Details::PropertyBase &property)=0
Add a property into the JobOptions catalog.
bool PyHelper() configureApp ( IInterface app)

Definition at line 253 of file Bootstrap.cpp.

254 {
255  auto ui = SmartIF<IAppMgrUI>( app );
256  return ui && ui->configure().isSuccess();
257 }
bool isSuccess() const
Definition: StatusCode.h:287
virtual StatusCode configure()=0
Configure the job.
IInterface* PyHelper() createApplicationMgr ( )

Definition at line 237 of file Bootstrap.cpp.

237 { return Gaudi::createApplicationMgr(); }
GAUDI_API IAppMgrUI * createApplicationMgr(const std::string &dllname, const std::string &factname)
return ep&& ep executeRun ( maxevt  )
const char* PyHelper() getProperty ( IInterface p,
char *  name 
)

Definition at line 248 of file Bootstrap.cpp.

249 {
250  auto prop = SmartIF<IProperty>( p );
251  return prop ? prop->getProperty( name ).toString().c_str() : nullptr;
252 }
virtual StatusCode getProperty(Gaudi::Details::PropertyBase *p) const =0
Get the property by property.
IInterface* PyHelper() getService ( IInterface app,
char *  name 
)

Definition at line 238 of file Bootstrap.cpp.

239 {
240  auto svcloc = SmartIF<ISvcLocator>( app );
241  return svcloc ? svcloc->service<IInterface>( name ).get() : nullptr;
242 }
StatusCode service(const Gaudi::Utils::TypeNameString &name, T *&svc, bool createIf=true)
Templated method to access a service by name.
Definition: ISvcLocator.h:79
Definition of the basic interface.
Definition: IInterface.h:277
PyFSMHelper ( configure  )
final
int PyHelper() ROOT_VERSION_CODE ( )

Definition at line 263 of file Bootstrap.cpp.

263 { return ROOT_VERSION_CODE; }
int PyHelper() ROOT_VERSION_CODE()
Definition: Bootstrap.cpp:263
bool PyHelper() setProperty ( IInterface p,
char *  name,
char *  value 
)

Definition at line 243 of file Bootstrap.cpp.

244 {
245  auto prop = SmartIF<IProperty>( p );
246  return prop && prop->setProperty( name, value ).isSuccess();
247 }
bool isSuccess() const
Definition: StatusCode.h:287
virtual StatusCode setProperty(const Gaudi::Details::PropertyBase &p)=0
Set the property by property.

Variable Documentation

int maxevt
Initial value:

Definition at line 276 of file Bootstrap.cpp.