| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

IRndmEngine Class Reference

Definition of a interface for a generic random number generator giving randomly distributed numbers in the range [0. More...

#include <GaudiKernel/IRndmEngine.h>

Inheritance diagram for IRndmEngine:

[legend]
Collaboration diagram for IRndmEngine:
[legend]
List of all members.

Public Types

 SUCCESS = 1
 Normal successful completion.
 NO_INTERFACE
 Requested interface is not available.
 VERSMISMATCH
 Requested interface version is incompatible.
 LAST_ERROR
 Last error.
enum  Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
 Return status. More...

Public Member Functions

virtual double rndm () const =0
 Single shot returning single random number.
virtual StatusCode rndmArray (std::vector< double > &array, long howmany, long start=0) const =0
 Multiple shots returning vector with flat random numbers.
virtual StatusCode setSeeds (const std::vector< long > &seeds)=0
 Allow to set new seeds.
virtual StatusCode seeds (std::vector< long > &seeds) const =0
 Allow to retrieve seeds.
virtual StatusCode setRndmState (const std::vector< unsigned long > &state)=0
 Set the internal state of the engine.
virtual StatusCode rndmState (std::vector< unsigned long > &state) const =0
 Retrieve the internal state of the engine.
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvInterface)=0
 Query interfaces of Interface.
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance.
virtual unsigned long release ()=0
 Release Interface instance.

Static Public Member Functions

static const InterfaceIDinterfaceID ()
 Retrieve interface ID.

Detailed Description

Definition of a interface for a generic random number generator giving randomly distributed numbers in the range [0.

..1] number generators.

Author:
M.Frank
Version:
1.0

Definition at line 23 of file IRndmEngine.h.


Member Enumeration Documentation

enum IInterface::Status [inherited]

Return status.

Enumerator:
SUCCESS  Normal successful completion.
NO_INTERFACE  Requested interface is not available.
VERSMISMATCH  Requested interface version is incompatible.
LAST_ERROR  Last error.

Reimplemented in IConversionSvc, IConverter, and IDataProviderSvc.

Definition at line 113 of file IInterface.h.

00113                 {
00115     SUCCESS = 1,
00117     NO_INTERFACE,
00119     VERSMISMATCH,
00121     LAST_ERROR
00122   };


Member Function Documentation

static const InterfaceID& IRndmEngine::interfaceID (  )  [inline, static]

Retrieve interface ID.

Reimplemented from IInterface.

Definition at line 26 of file IRndmEngine.h.

00026 { return IID_IRndmEngine; }

virtual double IRndmEngine::rndm (  )  const [pure virtual]

Single shot returning single random number.

virtual StatusCode IRndmEngine::rndmArray ( std::vector< double > &  array,
long  howmany,
long  start = 0 
) const [pure virtual]

Multiple shots returning vector with flat random numbers.

Parameters:
array Array containing random numbers
howmany fill 'howmany' random numbers into array
start ... starting at position start
Returns:
StatusCode indicating failure or success.

virtual StatusCode IRndmEngine::setSeeds ( const std::vector< long > &  seeds  )  [pure virtual]

Allow to set new seeds.

virtual StatusCode IRndmEngine::seeds ( std::vector< long > &  seeds  )  const [pure virtual]

Allow to retrieve seeds.

virtual StatusCode IRndmEngine::setRndmState ( const std::vector< unsigned long > &  state  )  [pure virtual]

Set the internal state of the engine.

virtual StatusCode IRndmEngine::rndmState ( std::vector< unsigned long > &  state  )  const [pure virtual]

Retrieve the internal state of the engine.

virtual StatusCode IInterface::queryInterface ( const InterfaceID riid,
void **  ppvInterface 
) [pure virtual, inherited]

Query interfaces of Interface.

Parameters:
riid ID of Interface to be retrieved
ppvInterface Pointer to Location for interface pointer

Implemented in Algorithm, AlgTool, Auditor, ConversionSvc, Converter, DataSvc, EventSelectorDataStream, MinimalEventLoopMgr, PropertyMgr, SelectStatement, and Service.

virtual unsigned long IInterface::addRef (  )  [pure virtual, inherited]

Increment the reference count of Interface instance.

Implemented in Algorithm, AlgTool, Auditor, Converter, EventSelectorDataStream, IFactory, PropertyMgr, SelectStatement, and Service.

virtual unsigned long IInterface::release (  )  [pure virtual, inherited]

Release Interface instance.

Implemented in Algorithm, AlgTool, Auditor, Converter, EventSelectorDataStream, IFactory, PropertyMgr, SelectStatement, and Service.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:57:10 2011 for GaudiKernel by doxygen 1.4.7