| The Gaudi Framework v27r1

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
IRndmEngine Class Referenceabstract

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

`#include <GaudiKernel/IRndmEngine.h>`

Inheritance diagram for IRndmEngine:
[legend]
Collaboration diagram for IRndmEngine:
[legend]

## Public Member Functions
| DeclareInterfaceID (IRndmEngine, 2, 0)
| InterfaceID. More...
virtual double | rndm () const =0
| Single shot returning single random number. More...
virtual StatusCode | rndmArray (std::vector< double > &array, long howmany, long start=0) const =0
| Multiple shots returning vector with flat random numbers. More...
virtual StatusCode | setSeeds (const std::vector< long > &seeds)=0
| Allow to set new seeds. More...
virtual StatusCode | seeds (std::vector< long > &seeds) const =0
| Allow to retrieve seeds. More...
Public Member Functions inherited from IInterface
virtual void * | i_cast (const InterfaceID &) const =0
| main cast function More...
virtual std::vector< std::string > | getInterfaceNames () const =0
| Returns a vector of strings containing the names of all the implemented interfaces. More...
virtual unsigned long | addRef ()=0
| Increment the reference count of Interface instance. More...
virtual unsigned long | release ()=0
| Release Interface instance. More...
virtual unsigned long | refCount () const =0
| Current reference count. More...
virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp)=0
| Set the void** to the pointer to the requested interface of the instance. More...
virtual | ~IInterface ()=default
| Virtual destructor. More...

## Additional Inherited Members
Public Types inherited from IInterface
enum | Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
| Return status. More...
using | iid = Gaudi::InterfaceId< IInterface, 0, 0 >
| Interface ID. More...
using | ext_iids = Gaudi::interface_list< iid >
| Extra interfaces. More...
Static Public Member Functions inherited from IInterface
static const InterfaceID & | interfaceID ()
| Return an instance of InterfaceID identifying the interface. More...

## 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 19 of file IRndmEngine.h.

## Member Function Documentation

IRndmEngine::DeclareInterfaceID | ( | IRndmEngine | ,
|  | 2 | ,
|  | 0 |
| ) |  |

InterfaceID.

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::seeds | ( | std::vector< long > & | seeds | ) | const
| pure virtual

Allow to retrieve seeds.

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

Allow to set new seeds.

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

- GaudiKernel/GaudiKernel/IRndmEngine.h