X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/46d81c873f84bc8161d0162aebc3a5405ea4824c..b745e5b5a5f85947c7e08266c6dbdbbf9f563918:/include/xbt/RngStream.h diff --git a/include/xbt/RngStream.h b/include/xbt/RngStream.h new file mode 100644 index 0000000000..ecbd493cd2 --- /dev/null +++ b/include/xbt/RngStream.h @@ -0,0 +1,65 @@ + +/* RngStream.h for ANSI C */ +#ifndef RNGSTREAM_H +#define RNGSTREAM_H + + + +typedef struct RngStream_InfoState * RngStream; + +struct RngStream_InfoState { + double Cg[6], Bg[6], Ig[6]; + int Anti; + int IncPrec; + char *name; +}; + + +int RngStream_SetPackageSeed (unsigned long seed[6]); + + +RngStream RngStream_CreateStream (const char name[]); + + +void RngStream_DeleteStream (RngStream *pg); + + +void RngStream_ResetStartStream (RngStream g); + + +void RngStream_ResetStartSubstream (RngStream g); + + +void RngStream_ResetNextSubstream (RngStream g); + + +void RngStream_SetAntithetic (RngStream g, int a); + + +void RngStream_IncreasedPrecis (RngStream g, int incp); + + +int RngStream_SetSeed (RngStream g, unsigned long seed[6]); + + +void RngStream_AdvanceState (RngStream g, long e, long c); + + +void RngStream_GetState (RngStream g, unsigned long seed[6]); + + +void RngStream_WriteState (RngStream g); + + +void RngStream_WriteStateFull (RngStream g); + + +double RngStream_RandU01 (RngStream g); + + +int RngStream_RandInt (RngStream g, int i, int j); + + +#endif + +