/* JNI interface to C RngStream code */
-/* Copyright (c) 2006-2014. The SimGrid Team.
+/* Copyright (c) 2006-2019. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
*/
private long bind;
/**
- * Creates and returns a new stream without identifier.
+ * Creates and returns a new stream without identifier.
* This procedure reserves space to keep the information relative to
* the RngStream, initializes its seed Ig , sets Bg and Cg equal to Ig , sets its antithetic and
* precision switches to 0. The seed Ig is equal to the initial seed of the package given by
create("");
}
/**
- * Creates and returns a new stream with identifier "name".
+ * Creates and returns a new stream with identifier "name".
* This procedure reserves space to keep the information relative to
* the RngStream, initializes its seed Ig , sets Bg and Cg equal to Ig , sets its antithetic and
* precision switches to 0. The seed Ig is equal to the initial seed of the package given by
* The natively implemented method to create a C RngStream object.
*/
private native void create(String name);
+
@Override
- protected void finalize() {
- try {
- nativeFinalize();
- } catch (Throwable e) {
- e.printStackTrace();
- }
+ protected void finalize() throws Throwable{
+ nativeFinalize();
}
/**
* Release the C RngStream object
* must all be less than m1 = 4294967087, and not all 0; and the last 3 values must all be less
* than m2 = 4294944443, and not all 0. Returns false for invalid seeds, and true otherwise.
*/
- public static native boolean setPackageSeed(int seed[]);
+ public static native boolean setPackageSeed(int[] seed);
/**
* Reinitializes the stream g to its initial state: Cg and Bg are set to Ig .
*/
* the initial seeds of the streams are no longer spaced Z values apart. We discourage the use of
* this procedure. Returns false for invalid seeds, and true otherwise.
*/
- public native boolean setSeed(int seed[]);
+ public native boolean setSeed(int[] seed);
/**
* Advances the state of the stream by k values, without modifying the states of other streams (as
* in RngStream_SetSeed), nor the values of Bg and Ig associated with this stream. If e > 0, then
* k = 2e + c; if e < 0, then k = -2-e + c; and if e = 0, then k = c. Note: c is allowed to take
- * negative values. We discourage the use of this procedure.
+ * negative values. We discourage the use of this procedure.
*/
public native void advanceState(int e, int g);