| 1 | < | /* | 
| 1 | > | /* | 
| 2 |  | * Copyright (c) 2005 The University of Notre Dame. All Rights Reserved. | 
| 3 |  | * | 
| 4 |  | * The University of Notre Dame grants you ("Licensee") a | 
| 46 |  |  | 
| 47 |  | #include "utils/simError.h" | 
| 48 |  | #include "math/RandNumGen.hpp" | 
| 49 | – | #ifdef IS_MPI | 
| 49 |  |  | 
| 50 |  | namespace oopse { | 
| 51 | < |  | 
| 52 | < |  | 
| 53 | < |  | 
| 54 | < | /** | 
| 55 | < | * @class ParallelRandNumGen a parallel random number generator | 
| 56 | < | * @note use SeqRandNumGen if you want a non-parallel random number generator. | 
| 57 | < | */ | 
| 58 | < | class ParallelRandNumGen : public RandNumGen{ | 
| 59 | < | public: | 
| 60 | < | typedef unsigned long uint32; | 
| 61 | < |  | 
| 62 | < | ParallelRandNumGen( const uint32& oneSeed); | 
| 63 | < |  | 
| 64 | < | ParallelRandNumGen(); | 
| 65 | < |  | 
| 66 | < | virtual void seed( const uint32 oneSeed ); | 
| 67 | < |  | 
| 68 | < | virtual void seed(); | 
| 69 | < |  | 
| 70 | < | private: | 
| 71 | < |  | 
| 72 | < | ParallelRandNumGen(const ParallelRandNumGen&); | 
| 73 | < | ParallelRandNumGen& operator =(const ParallelRandNumGen&); | 
| 74 | < |  | 
| 75 | < | static int nCreatedRNG_; /**< number of created random number of generator*/ | 
| 76 | < | int myRank_; /**@todo Fixed Me */ | 
| 77 | < | }; | 
| 78 | < |  | 
| 51 | > |  | 
| 52 | > | /** | 
| 53 | > | * @class ParallelRandNumGen a parallel random number generator | 
| 54 | > | * @note use SeqRandNumGen if you want a non-parallel random number | 
| 55 | > | * generator. | 
| 56 | > | */ | 
| 57 | > | class ParallelRandNumGen : public RandNumGen{ | 
| 58 | > | public: | 
| 59 | > | typedef unsigned long uint32; | 
| 60 | > |  | 
| 61 | > | ParallelRandNumGen( const uint32& oneSeed); | 
| 62 | > |  | 
| 63 | > | ParallelRandNumGen(); | 
| 64 | > |  | 
| 65 | > | virtual void seed( const uint32 oneSeed ); | 
| 66 | > |  | 
| 67 | > | virtual void seed(); | 
| 68 | > |  | 
| 69 | > | private: | 
| 70 | > |  | 
| 71 | > | ParallelRandNumGen(const ParallelRandNumGen&); | 
| 72 | > | ParallelRandNumGen& operator =(const ParallelRandNumGen&); | 
| 73 | > |  | 
| 74 | > | static int nCreatedRNG_; /**< number of random number | 
| 75 | > | generators created */ | 
| 76 | > | int myRank_; | 
| 77 | > | }; | 
| 78 | > |  | 
| 79 |  | } | 
| 81 | – | #endif | 
| 82 | – |  | 
| 80 |  | #endif |