IRndmGenSvc Class Referenceabstract

Random Generator service interface definition Definition of a interface for a service to access random generators according to predefined distributions: More...

#include <GaudiKernel/IRndmGenSvc.h>

Inheritance diagram for IRndmGenSvc:
Collaboration diagram for IRndmGenSvc:

Public Member Functions

 DeclareInterfaceID (IRndmGenSvc, 2, 1)
 InterfaceID. More...
 
virtual IRndmEngineengine ()=0
 Retrieve engine. More...
 
virtual StatusCode generator (const IRndmGen::Param &par, IRndmGen *&refpGen)=0
 Add a Generator factory. More...
 
SmartIF< IRndmGengenerator (const IRndmGen::Param &par)
 
virtual ~IRndmGenSvc ()=default
 virtual destructor More...
 
 DeclareInterfaceID (IRndmGenSvc, 2, 1)
 InterfaceID. More...
 
virtual IRndmEngineengine ()=0
 Retrieve engine. More...
 
virtual StatusCode generator (const IRndmGen::Param &par, IRndmGen *&refpGen)=0
 Add a Generator factory. More...
 
SmartIF< IRndmGengenerator (const IRndmGen::Param &par)
 
virtual ~IRndmGenSvc ()=default
 virtual destructor More...
 
- Public Member Functions inherited from IService
 DeclareInterfaceID (IService, 4, 0)
 InterfaceID. More...
 
virtual StatusCode sysInitialize ()=0
 Initialize Service. More...
 
virtual StatusCode sysStart ()=0
 Start Service. More...
 
virtual StatusCode sysStop ()=0
 Stop Service. More...
 
virtual StatusCode sysFinalize ()=0
 Finalize Service. More...
 
virtual StatusCode sysReinitialize ()=0
 Re-initialize the Service. More...
 
virtual StatusCode sysRestart ()=0
 Re-start the Service. More...
 
virtual ~IService ()=default
 virtual destructor More...
 
 DeclareInterfaceID (IService, 4, 0)
 InterfaceID. More...
 
virtual StatusCode sysInitialize ()=0
 Initialize Service. More...
 
virtual StatusCode sysStart ()=0
 Start Service. More...
 
virtual StatusCode sysStop ()=0
 Stop Service. More...
 
virtual StatusCode sysFinalize ()=0
 Finalize Service. More...
 
virtual StatusCode sysReinitialize ()=0
 Re-initialize the Service. More...
 
virtual StatusCode sysRestart ()=0
 Re-start the Service. More...
 
virtual ~IService ()=default
 virtual destructor More...
 
- Public Member Functions inherited from extend_interfaces< Interfaces >
 ~extend_interfaces () override=default
 Virtual destructor. More...
 
 ~extend_interfaces () override=default
 Virtual destructor. More...
 

Additional Inherited Members

- Public Types inherited from extend_interfaces< Interfaces >
using ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type
 take union of the ext_iids of all Interfaces... More...
 
using ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type
 take union of the ext_iids of all Interfaces... More...
 
- Protected Member Functions inherited from IService
virtual void setServiceManager (ISvcManager *)=0
 
virtual void setServiceManager (ISvcManager *)=0
 

Detailed Description

Random Generator service interface definition Definition of a interface for a service to access random generators according to predefined distributions:

The Random Generator creates proper instances of requested random generators and delivers them to the user.

On request the service dumps the type and state of the random number engine to a StreamBuffer object allowing to save and to restore the exact state of the random number generator.

Author
M.Frank
Version
1.0

Definition at line 35 of file IRndmGenSvc.h.

Constructor & Destructor Documentation

virtual IRndmGenSvc::~IRndmGenSvc ( )
virtualdefault

virtual destructor

virtual IRndmGenSvc::~IRndmGenSvc ( )
virtualdefault

virtual destructor

Member Function Documentation

IRndmGenSvc::DeclareInterfaceID ( IRndmGenSvc  ,
,
 
)
IRndmGenSvc::DeclareInterfaceID ( IRndmGenSvc  ,
,
 
)
virtual IRndmEngine* IRndmGenSvc::engine ( )
pure virtual

Retrieve engine.

Returns
pointer to random number engine
virtual IRndmEngine* IRndmGenSvc::engine ( )
pure virtual

Retrieve engine.

Returns
pointer to random number engine
virtual StatusCode IRndmGenSvc::generator ( const IRndmGen::Param par,
IRndmGen *&  refpGen 
)
pure virtual

Add a Generator factory.

Parameters
facPointer to factory to be added
Returns
StatusCode indicating success or failure.
virtual StatusCode IRndmGenSvc::generator ( const IRndmGen::Param par,
IRndmGen *&  refpGen 
)
pure virtual

Add a Generator factory.

Parameters
facPointer to factory to be added
Returns
StatusCode indicating success or failure.
SmartIF<IRndmGen> IRndmGenSvc::generator ( const IRndmGen::Param par)
inline

Definition at line 50 of file IRndmGenSvc.h.

50  {
51  IRndmGen *gen = nullptr;;
52  generator(par, gen).ignore();
53  auto r = SmartIF<IRndmGen>{ gen };
54  if (gen) { gen->release(); }
55  return r;
56  }
Definition of a interface for a generic random number generators.
Definition: IRndmGen.h:35
virtual StatusCode generator(const IRndmGen::Param &par, IRndmGen *&refpGen)=0
Add a Generator factory.
virtual unsigned long release()=0
Release Interface instance.
void ignore() const
Definition: StatusCode.h:108
SmartIF<IRndmGen> IRndmGenSvc::generator ( const IRndmGen::Param par)
inline

Definition at line 50 of file IRndmGenSvc.h.

50  {
51  IRndmGen *gen = nullptr;;
52  generator(par, gen).ignore();
53  auto r = SmartIF<IRndmGen>{ gen };
54  if (gen) { gen->release(); }
55  return r;
56  }
Definition of a interface for a generic random number generators.
Definition: IRndmGen.h:35
virtual StatusCode generator(const IRndmGen::Param &par, IRndmGen *&refpGen)=0
Add a Generator factory.
virtual unsigned long release()=0
Release Interface instance.
void ignore() const
Definition: StatusCode.h:108

The documentation for this class was generated from the following file: