Scalar Generator 32<TEngine> Structure
A generator struct that adapts a 32-bit scalar engine into the IRandomGenerator interface.
Definition
Namespace: Numerics.NET.Random.Generators
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.3.0
C#
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.3.0
public struct ScalarGenerator32<TEngine> : IRandomGenerator,
IStateful
where TEngine : struct, new(), IScalarEngine<uint>, IStateful
- Implements
- IRandomGenerator, IStateful
Type Parameters
- TEngine
- The engine type, which must be a struct implementing IScalarEngine<T> for UInt32 and IStateful.
Remarks
ScalarGenerator32<TEngine> wraps a scalar 32-bit engine and provides:
- NextUInt32(): Returns the next word from the engine via engine.Next().
- NextUInt64(): Composes two 32-bit words in little-endian order.
- NextBytes(Span<Byte>): Writes bytes in 4-byte chunks (little-endian), with tail handling.
State Persistence:
Layer 2 state consists of engine state only. This generator has no additional fields.
Constructors
| Scalar | Initializes a new instance of the ScalarGenerator32<TEngine> struct with the specified engine. |
Properties
| State | Gets the number of bytes required to save/load this engine's state. |
Methods
| Equals | Indicates whether this instance and a specified object are equal. (Inherited from ValueType) |
| Fill( | Fills the specified span with random double-precision floating-point numbers. |
| Fill( | Fills the specified span with random single-precision floating-point numbers. |
| Fill( | Fills the specified span with random 32-bit unsigned integers. |
| Fill( | Fills the specified span with random 64-bit unsigned integers. |
| Get | Returns the hash code for this instance. (Inherited from ValueType) |
| Get | Gets the Type of the current instance. (Inherited from Object) |
| Load | Loads the engine's state from the source span in a stable little-endian format. |
| Next | Fills the specified span with random bytes in little-endian order. |
| Next | Generates the next double-precision floating-point number. |
| Next | Generates the next single-precision floating-point number. |
| Next | Generates the next 32-bit unsigned integer. |
| Next | Generates the next 64-bit unsigned integer. |
| Save | Saves the engine's state to the destination span in a stable little-endian format. |
| ToString | Returns the fully qualified type name of this instance. (Inherited from ValueType) |