Gaudi Framework, version v21r9

Home   Generated: 3 May 2010

RndmGen.h

Go to the documentation of this file.
00001 //====================================================================
00002 //      Random RndmGen class definition
00003 //--------------------------------------------------------------------
00004 //
00005 //      Package    : Gaudi/RndmGen ( The LHCb Offline System)
00006 //      Author     : M.Frank
00007 //====================================================================
00008 #ifndef GAUDI_RANDOMGENSVC_RNDMGEN_H
00009 #define GAUDI_RANDOMGENSVC_RNDMGEN_H 1
00010 
00011 // Framework include files
00012 #include "GaudiKernel/IRndmGen.h"
00013 
00014 // Forward declarations
00015 class IRndmEngine;
00016 
00039 class RndmGen : public implements1<IRndmGen> {
00040 
00041 protected:
00043   IRndmGen::Param*  m_params;
00045   IRndmEngine*      m_engine;
00046 
00048   RndmGen(IInterface* engine);
00050   virtual ~RndmGen();
00051 
00052 public:
00053 
00055 
00056   virtual StatusCode initialize(const IRndmGen::Param& par);
00058   virtual StatusCode finalize();
00060   virtual const InterfaceID& type() const    {
00061     return (m_params != 0) ? m_params->type() : IID_IRndmFlat;
00062   }
00064   virtual long ID() const    {
00065     return long(this);
00066   }
00068   virtual const IRndmGen::Param* parameters() const    {
00069     return m_params;
00070   }
00072   virtual double shoot() const;
00078   virtual StatusCode shootArray( std::vector<double>& array, long howmany, long start) const;
00079 };
00080 
00081 #endif // GAUDI_RANDOMGENSVC_RNDMGEN_H

Generated at Mon May 3 12:14:53 2010 for Gaudi Framework, version v21r9 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004