30 #if ((defined(G4MULTITHREADED) && !defined(G4USE_STD11)) || \
31 !__has_feature(cxx_thread_local)) || !__has_feature(c_atomic)
32 #define CLANG_NOSTDTLS
36 #if (defined(G4MULTITHREADED) && \
37 (!defined(G4USE_STD11) || (defined(CLANG_NOSTDTLS) || defined(__INTEL_COMPILER))))
82 if ( deleteEngine ) {
delete theEngine; theEngine = 0; }
88 return theEngine->
flat();
162 theEngine = theNewEngine;
208 if (theGenerator)
return 1;
218 if (isActive)
return isActive;
223 if (!defaultEngine) {
228 if ( !theEngine ) { theEngine = defaultEngine; }
229 if ( !theGenerator ) { theGenerator =
new G4MTHepRandom( theEngine ); }
static G4long getTheSeed()
static CLHEP::HepRandomEngine * getTheEngine()
virtual void showStatus() const =0
std::shared_ptr< HepRandom > theGenerator
static G4MTHepRandom * getTheGenerator()
std::shared_ptr< HepRandomEngine > theEngine
static G4int createInstance()
static void setTheSeeds(const G4long *seeds, G4int aux=-1)
static constexpr double lux
static void setTheEngine(CLHEP::HepRandomEngine *theNewEngine)
static void saveEngineStatus(const char filename[]="Config.conf")
#define G4MUTEX_INITIALIZER
const long * getSeeds() const
static void setTheSeed(G4long seed, G4int lux=3)
static std::istream & restoreFullState(std::istream &is)
static std::ostream & saveStaticRandomStates(std::ostream &os)
static std::istream & restoreStaticRandomStates(std::istream &is)
virtual void restoreStatus(const char filename[]="Config.conf")=0
static G4int createInstanceOnce()
virtual void setSeed(long seed, int)=0
static void showEngineStatus()
static std::ostream & saveFullState(std::ostream &os)
static std::istream & restore(std::istream &is)
virtual void setSeeds(const long *seeds, int)=0
virtual std::ostream & put(std::ostream &os) const
static std::ostream & save(std::ostream &os)
static void restoreEngineStatus(const char filename[]="Config.conf")
std::ostream & operator<<(std::ostream &, const BasicVector3D< float > &)
std::istream & operator>>(std::istream &, BasicVector3D< float > &)
virtual std::istream & get(std::istream &is)
static const G4long * getTheSeeds()
virtual void saveStatus(const char filename[]="Config.conf") const =0
virtual G4double operator()()
void flatArray(const G4int size, G4double *vect)
virtual void flatArray(const int size, double *vect)=0