The Gaudi Framework  master (da3d77e1)
IRandomGenSvc.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 #pragma once
12 
13 #include <GaudiKernel/IInterface.h>
14 
15 #include <random>
16 
18 
19  struct IRandomGenSvc : virtual IInterface {
24  virtual std::default_random_engine getEngine( unsigned long context ) const = 0;
25  };
26 
27 } // namespace Gaudi::Example::TinyExperiment
std::default_random_engine
Gaudi::Example::TinyExperiment::IRandomGenSvc::getEngine
virtual std::default_random_engine getEngine(unsigned long context) const =0
return a random engine seeded based on the given context
IInterface.h
Gaudi::Example::TinyExperiment::IRandomGenSvc::DeclareInterfaceID
DeclareInterfaceID(IRandomGenSvc, 1, 0)
IInterface
Definition: IInterface.h:239
Gaudi::Example::TinyExperiment
Definition: CheckerAlg.cpp:20
Gaudi::Example::TinyExperiment::IRandomGenSvc
Definition: IRandomGenSvc.h:19