The Gaudi Framework
master (37c0b60a)
RndmEngine.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
//====================================================================
12
// Random Engine definition
13
//--------------------------------------------------------------------
14
//
15
// Package : Gaudi/RndmGenSvc ( The LHCb Offline System)
16
// Author : M.Frank
17
//====================================================================
18
#ifndef GAUDI_RNDMGENSVC_RNDMENGINE_H
19
#define GAUDI_RNDMGENSVC_RNDMENGINE_H 1
20
21
// STL include files
22
#include <vector>
23
24
// Framework include files
25
#include <
GaudiKernel/IRndmEngine.h
>
26
#include <
GaudiKernel/ISerialize.h
>
27
#include <
GaudiKernel/Service.h
>
28
52
class
RndmEngine
:
public
extends
<Service, IRndmEngine, ISerialize> {
53
protected
:
55
using
extends::extends;
56
57
public
:
59
double
rndm
()
const override
;
66
StatusCode
rndmArray
(
std::vector<double>
&
array
,
long
howmany,
long
start
= 0 )
const override
;
71
StreamBuffer
&
serialize
(
StreamBuffer
& str )
override
;
76
StreamBuffer
&
serialize
(
StreamBuffer
& str )
const override
;
77
};
78
79
#endif // GAUDI_RNDMGENSVC_RNDMENGINE_H
RndmEngine::serialize
StreamBuffer & serialize(StreamBuffer &str) override
Input serialization from stream buffer.
Definition:
RndmEngine.cpp:42
Service::start
StatusCode start() override
Definition:
Service.cpp:187
std::vector< double >
StreamBuffer
Definition:
StreamBuffer.h:52
IRndmEngine.h
StatusCode
Definition:
StatusCode.h:65
ISerialize.h
RndmEngine::rndmArray
StatusCode rndmArray(std::vector< double > &array, long howmany, long start=0) const override
Multiple shots returning vector with flat random numbers.
Definition:
RndmEngine.cpp:56
extends
Base class used to extend a class implementing other interfaces.
Definition:
extends.h:20
Service.h
Containers::array
struct GAUDI_API array
Parametrisation class for redirection array - like implementation.
Definition:
KeyedObjectManager.h:37
RndmEngine::rndm
double rndm() const override
Single shot returning single random number.
Definition:
RndmEngine.cpp:48
RndmEngine
Random Generator engine definition.
Definition:
RndmEngine.h:52
GaudiSvc
src
RndmGenSvc
RndmEngine.h
Generated on Thu Dec 19 2024 15:35:06 for The Gaudi Framework by
1.8.18