Gaudi Framework, version v23r2

Home   Generated: Thu Jun 28 2012
Public Member Functions | Protected Member Functions | Protected Attributes

RndmEngine Class Reference

Random Generator engine definition. More...

#include <RndmEngine.h>

Inheritance diagram for RndmEngine:
Inheritance graph
[legend]
Collaboration diagram for RndmEngine:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual StatusCode initialize ()
 Service override: initialization.
virtual StatusCode finalize ()
 Service override: finalization.
virtual double rndm () const
 Single shot returning single random number.
virtual StatusCode rndmArray (std::vector< double > &array, long howmany, long start=0) const
 Multiple shots returning vector with flat random numbers.
virtual StreamBufferserialize (StreamBuffer &str)
 Input serialization from stream buffer.
virtual StreamBufferserialize (StreamBuffer &str) const
 Output serialization to stream buffer.
virtual void handle (const Incident &inc)
 Inform that a new incident has occurred.

Protected Member Functions

 RndmEngine (const std::string &name, ISvcLocator *loc)
 Standard Constructor.
virtual ~RndmEngine ()
 Standard Destructor.

Protected Attributes

SmartIF< IIncidentSvcm_pIncidentSvc
 Reference to the incident service.

Detailed Description

Random Generator engine definition.

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

Dependencies:

History :

    +---------+----------------------------------------------+--------+
    |    Date |                 Comment                      | Who    |
    +---------+----------------------------------------------+--------+
    | 21/04/99| Initial version.                             | MF     |
    +---------+----------------------------------------------+--------+
    

Author: M.Frank Version: 1.0

Definition at line 46 of file RndmEngine.h.


Constructor & Destructor Documentation

RndmEngine::RndmEngine ( const std::string name,
ISvcLocator loc 
) [protected]

Standard Constructor.

Standard Service constructor.

Definition at line 31 of file RndmEngine.cpp.

: base_class(name, loc)
{
}
RndmEngine::~RndmEngine (  ) [protected, virtual]

Standard Destructor.

Standard Service destructor.

Definition at line 37 of file RndmEngine.cpp.

                          {
}

Member Function Documentation

StatusCode RndmEngine::finalize (  ) [virtual]

Service override: finalization.

Reimplemented from Service.

Reimplemented in HepRndm::Engine< TYPE >.

Definition at line 56 of file RndmEngine.cpp.

                                  {
  m_pIncidentSvc = 0; // release
  return Service::finalize();
}
void RndmEngine::handle ( const Incident inc ) [virtual]

Inform that a new incident has occurred.

Single shot returning single random number.

Definition at line 78 of file RndmEngine.cpp.

                                                      {
}
StatusCode RndmEngine::initialize (  ) [virtual]

Service override: initialization.

Reimplemented from Service.

Reimplemented in HepRndm::Engine< TYPE >.

Definition at line 41 of file RndmEngine.cpp.

                                    {
  StatusCode status = Service::initialize();
  if ( status.isSuccess() )   {
    status = setProperties();
    if ( status.isSuccess() )   {
      m_pIncidentSvc = serviceLocator()->service("IncidentSvc");
      if (!m_pIncidentSvc.isValid()) {
        status = StatusCode::FAILURE;
      }
    }
  }
  return status;
}
double RndmEngine::rndm (  ) const [virtual]

Single shot returning single random number.

Reimplemented in HepRndm::Engine< TYPE >.

Definition at line 73 of file RndmEngine.cpp.

                                {
  return DBL_MAX;
}
StatusCode RndmEngine::rndmArray ( std::vector< double > &  array,
long  howmany,
long  start = 0 
) const [virtual]

Multiple shots returning vector with flat random numbers.

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

Definition at line 87 of file RndmEngine.cpp.

                                                                                            {
  long cnt = start;
  array.resize(start+howmany);
  for ( long i = start, num = start+howmany; i < num; i++ )     {
    array[cnt++] = rndm();
  }
  return StatusCode::SUCCESS;
}
StreamBuffer & RndmEngine::serialize ( StreamBuffer str ) [virtual]

Input serialization from stream buffer.

IRndmEngine interface implementation.

Restores the status of the object.

Parameters:
strReference to Streambuffer to be filled
Returns:
Reference to filled stream buffer

Input serialization from stream buffer. Restores the status of the generator engine.

Definition at line 63 of file RndmEngine.cpp.

                                                        {
  return str;
}
StreamBuffer & RndmEngine::serialize ( StreamBuffer str ) const [virtual]

Output serialization to stream buffer.

Output serialization to stream buffer. Saves the status of the generator engine.

Saves the status of the object.

Parameters:
strReference to Streambuffer to be read
Returns:
Reference to read stream buffer

Definition at line 68 of file RndmEngine.cpp.

                                                              {
  return str;
}

Member Data Documentation

Reference to the incident service.

Definition at line 50 of file RndmEngine.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Thu Jun 28 2012 23:27:44 for Gaudi Framework, version v23r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004