| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

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

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

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
HepRndm::Generator< TYPE > Class Template Reference

`#include <HepRndmGenerator.h>`

Inheritance diagram for HepRndm::Generator< TYPE >:
[legend]
Collaboration diagram for HepRndm::Generator< TYPE >:
[legend]

## Public Types
typedef TYPE | Parameters

## Public Member Functions
| Generator (IInterface *engine)
virtual | ~Generator ()
virtual StatusCode | initialize (const IRndmGen::Param &par)
| Initialize the generator.
virtual double | shoot () const
| Single shot.
Public Member Functions inherited from RndmGen
virtual StatusCode | finalize ()
| Initialize the generator.
virtual const InterfaceID & | type () const
| Random number generator type.
virtual long | ID () const
| Random number generator ID.
virtual const IRndmGen::Param * | parameters () const
| Access to random number generator parameters.
virtual StatusCode | shootArray (std::vector< double > &array, long howmany, long start) const
| Multiple shots returning vector with random number according to specified distribution.

## Protected Attributes
CLHEP::HepRandomEngine * | m_hepEngine
TYPE * | m_specs
Protected Attributes inherited from RndmGen
IRndmGen::Param * | m_params
| Generation parameters.
IRndmEngine * | m_engine
| Hosting service: Access must always be possible.

## Additional Inherited Members
Static Public Member Functions inherited from IInterface
static const InterfaceID & | interfaceID ()
| Return an instance of InterfaceID identifying the interface.
Protected Member Functions inherited from RndmGen
| RndmGen (IInterface *engine)
| Standard Constructor.
virtual | ~RndmGen ()
| Standard Destructor.

## Detailed Description

### template<class TYPE>
class HepRndm::Generator< TYPE >

Definition at line 27 of file HepRndmGenerator.h.

## Member Typedef Documentation

template<class TYPE >

typedef TYPE HepRndm::Generator< TYPE >::Parameters

Definition at line 29 of file HepRndmGenerator.h.

## Constructor & Destructor Documentation

template<class TYPE >

Generator< TYPE >::Generator | ( | IInterface * | engine | ) |

Definition at line 42 of file HepRndmGenerator.h.

: RndmGen (engine), m_hepEngine(0), m_specs(0) {
}
template<class TYPE >

Generator< TYPE >::~Generator | ( |  | ) |
| virtual

Definition at line 46 of file HepRndmGenerator.h.

{
}

## Member Function Documentation

template<class TYPE >

StatusCode Generator< TYPE >::initialize | ( | const IRndmGen::Param & | par | ) |
| virtual

Initialize the generator.

Reimplemented from RndmGen.

Definition at line 50 of file HepRndmGenerator.h.

{
StatusCode status = RndmGen::initialize(par);
if ( status.isSuccess() ) {
try {
m_specs = dynamic_cast<TYPE*>(m_params);
if ( 0 != m_specs ) {
BaseEngine* engine = dynamic_cast<BaseEngine*>(m_engine);
if ( 0 != engine ) {
m_hepEngine = engine->hepEngine();
if ( 0 != m_hepEngine ) {
return StatusCode::SUCCESS;
}
}
}
}
catch (...) {
}
}
return StatusCode::FAILURE;
}
template<class TYPE >

virtual double HepRndm::Generator< TYPE >::shoot | ( |  | ) | const
| virtual

Single shot.

Reimplemented from RndmGen.

## Member Data Documentation

template<class TYPE >

CLHEP::HepRandomEngine* HepRndm::Generator< TYPE >::m_hepEngine
| protected

Definition at line 31 of file HepRndmGenerator.h.

template<class TYPE >

TYPE* HepRndm::Generator< TYPE >::m_specs
| protected

Definition at line 32 of file HepRndmGenerator.h.

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v25r0/GaudiSvc/src/RndmGenSvc/HepRndmGenerator.h