### YamlMime:ManagedReference items: - uid: MLEM.Maths.SingleRandom commentId: T:MLEM.Maths.SingleRandom id: SingleRandom parent: MLEM.Maths children: - MLEM.Maths.SingleRandom.GetRandomEntry``1(System.Collections.Generic.ICollection{``0},MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Int32},MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Single},MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Int(MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Int(System.Int32) - MLEM.Maths.SingleRandom.Int(System.Int32,MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32) - MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,System.Int32) - MLEM.Maths.SingleRandom.Single(MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Single(System.Int32) - MLEM.Maths.SingleRandom.Single(System.Single,MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Single(System.Single,System.Int32) - MLEM.Maths.SingleRandom.Single(System.Single,System.Single,MLEM.Maths.SeedSource) - MLEM.Maths.SingleRandom.Single(System.Single,System.Single,System.Int32) langs: - csharp - vb name: SingleRandom nameWithType: SingleRandom fullName: MLEM.Maths.SingleRandom type: Class source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: SingleRandom path: ../MLEM/Maths/SingleRandom.cs startLine: 9 assemblies: - MLEM namespace: MLEM.Maths summary: >- The SingleRandom class allows generating single, one-off pseudorandom numbers based on a seed or a . The types of numbers that can be generated are and , both of which can be generated with specific minimum and maximum values if desired. Methods in this class are tested to be sufficiently "random", that is, to be sufficiently distributed throughout their range, as well as sufficiently different for neighboring seeds. example: [] syntax: content: public class SingleRandom content.vb: Public Class SingleRandom inheritance: - System.Object inheritedMembers: - System.Object.ToString - System.Object.Equals(System.Object) - System.Object.Equals(System.Object,System.Object) - System.Object.ReferenceEquals(System.Object,System.Object) - System.Object.GetHashCode - System.Object.GetType - System.Object.MemberwiseClone - uid: MLEM.Maths.SingleRandom.Int(System.Int32) commentId: M:MLEM.Maths.SingleRandom.Int(System.Int32) id: Int(System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(int) nameWithType: SingleRandom.Int(int) fullName: MLEM.Maths.SingleRandom.Int(int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 17 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between 0 and based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static int Int(int seed) parameters: - id: seed type: System.Int32 description: The seed to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(seed As Integer) As Integer overload: MLEM.Maths.SingleRandom.Int* nameWithType.vb: SingleRandom.Int(Integer) fullName.vb: MLEM.Maths.SingleRandom.Int(Integer) name.vb: Int(Integer) - uid: MLEM.Maths.SingleRandom.Int(MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Int(MLEM.Maths.SeedSource) id: Int(MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(SeedSource) nameWithType: SingleRandom.Int(SeedSource) fullName: MLEM.Maths.SingleRandom.Int(MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 27 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between 0 and based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static int Int(SeedSource source) parameters: - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(source As SeedSource) As Integer overload: MLEM.Maths.SingleRandom.Int* - uid: MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32) commentId: M:MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32) id: Int(System.Int32,System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(int, int) nameWithType: SingleRandom.Int(int, int) fullName: MLEM.Maths.SingleRandom.Int(int, int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 38 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between 0 and maxValue based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static int Int(int maxValue, int seed) parameters: - id: maxValue type: System.Int32 description: The (exclusive) maximum value. - id: seed type: System.Int32 description: The seed to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(maxValue As Integer, seed As Integer) As Integer overload: MLEM.Maths.SingleRandom.Int* nameWithType.vb: SingleRandom.Int(Integer, Integer) fullName.vb: MLEM.Maths.SingleRandom.Int(Integer, Integer) name.vb: Int(Integer, Integer) - uid: MLEM.Maths.SingleRandom.Int(System.Int32,MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Int(System.Int32,MLEM.Maths.SeedSource) id: Int(System.Int32,MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(int, SeedSource) nameWithType: SingleRandom.Int(int, SeedSource) fullName: MLEM.Maths.SingleRandom.Int(int, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 49 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between 0 and maxValue based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static int Int(int maxValue, SeedSource source) parameters: - id: maxValue type: System.Int32 description: The (exclusive) maximum value. - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(maxValue As Integer, source As SeedSource) As Integer overload: MLEM.Maths.SingleRandom.Int* nameWithType.vb: SingleRandom.Int(Integer, SeedSource) fullName.vb: MLEM.Maths.SingleRandom.Int(Integer, MLEM.Maths.SeedSource) name.vb: Int(Integer, SeedSource) - uid: MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,System.Int32) commentId: M:MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,System.Int32) id: Int(System.Int32,System.Int32,System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(int, int, int) nameWithType: SingleRandom.Int(int, int, int) fullName: MLEM.Maths.SingleRandom.Int(int, int, int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 61 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between minValue and maxValue based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static int Int(int minValue, int maxValue, int seed) parameters: - id: minValue type: System.Int32 description: The (inclusive) minimum value. - id: maxValue type: System.Int32 description: The (exclusive) maximum value. - id: seed type: System.Int32 description: The seed to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(minValue As Integer, maxValue As Integer, seed As Integer) As Integer overload: MLEM.Maths.SingleRandom.Int* nameWithType.vb: SingleRandom.Int(Integer, Integer, Integer) fullName.vb: MLEM.Maths.SingleRandom.Int(Integer, Integer, Integer) name.vb: Int(Integer, Integer, Integer) - uid: MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Int(System.Int32,System.Int32,MLEM.Maths.SeedSource) id: Int(System.Int32,System.Int32,MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Int(int, int, SeedSource) nameWithType: SingleRandom.Int(int, int, SeedSource) fullName: MLEM.Maths.SingleRandom.Int(int, int, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Int path: ../MLEM/Maths/SingleRandom.cs startLine: 73 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom integer between minValue and maxValue based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static int Int(int minValue, int maxValue, SeedSource source) parameters: - id: minValue type: System.Int32 description: The (inclusive) minimum value. - id: maxValue type: System.Int32 description: The (exclusive) maximum value. - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Int32 description: The generated number. content.vb: Public Shared Function Int(minValue As Integer, maxValue As Integer, source As SeedSource) As Integer overload: MLEM.Maths.SingleRandom.Int* nameWithType.vb: SingleRandom.Int(Integer, Integer, SeedSource) fullName.vb: MLEM.Maths.SingleRandom.Int(Integer, Integer, MLEM.Maths.SeedSource) name.vb: Int(Integer, Integer, SeedSource) - uid: MLEM.Maths.SingleRandom.Single(System.Int32) commentId: M:MLEM.Maths.SingleRandom.Single(System.Int32) id: Single(System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(int) nameWithType: SingleRandom.Single(int) fullName: MLEM.Maths.SingleRandom.Single(int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 83 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between 0 and 1 based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static float Single(int seed) parameters: - id: seed type: System.Int32 description: The seed to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](seed As Integer) As Single overload: MLEM.Maths.SingleRandom.Single* nameWithType.vb: SingleRandom.Single(Integer) fullName.vb: MLEM.Maths.SingleRandom.Single(Integer) name.vb: Single(Integer) - uid: MLEM.Maths.SingleRandom.Single(MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Single(MLEM.Maths.SeedSource) id: Single(MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(SeedSource) nameWithType: SingleRandom.Single(SeedSource) fullName: MLEM.Maths.SingleRandom.Single(MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 93 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between 0 and 1 based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static float Single(SeedSource source) parameters: - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](source As SeedSource) As Single overload: MLEM.Maths.SingleRandom.Single* - uid: MLEM.Maths.SingleRandom.Single(System.Single,System.Int32) commentId: M:MLEM.Maths.SingleRandom.Single(System.Single,System.Int32) id: Single(System.Single,System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(float, int) nameWithType: SingleRandom.Single(float, int) fullName: MLEM.Maths.SingleRandom.Single(float, int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 104 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between 0 and maxValue based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static float Single(float maxValue, int seed) parameters: - id: maxValue type: System.Single description: The (exclusive) maximum value. - id: seed type: System.Int32 description: The seed to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](maxValue As Single, seed As Integer) As Single overload: MLEM.Maths.SingleRandom.Single* nameWithType.vb: SingleRandom.Single(Single, Integer) fullName.vb: MLEM.Maths.SingleRandom.Single(Single, Integer) name.vb: Single(Single, Integer) - uid: MLEM.Maths.SingleRandom.Single(System.Single,MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Single(System.Single,MLEM.Maths.SeedSource) id: Single(System.Single,MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(float, SeedSource) nameWithType: SingleRandom.Single(float, SeedSource) fullName: MLEM.Maths.SingleRandom.Single(float, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 115 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between 0 and maxValue based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static float Single(float maxValue, SeedSource source) parameters: - id: maxValue type: System.Single description: The (exclusive) maximum value. - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](maxValue As Single, source As SeedSource) As Single overload: MLEM.Maths.SingleRandom.Single* nameWithType.vb: SingleRandom.Single(Single, SeedSource) fullName.vb: MLEM.Maths.SingleRandom.Single(Single, MLEM.Maths.SeedSource) name.vb: Single(Single, SeedSource) - uid: MLEM.Maths.SingleRandom.Single(System.Single,System.Single,System.Int32) commentId: M:MLEM.Maths.SingleRandom.Single(System.Single,System.Single,System.Int32) id: Single(System.Single,System.Single,System.Int32) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(float, float, int) nameWithType: SingleRandom.Single(float, float, int) fullName: MLEM.Maths.SingleRandom.Single(float, float, int) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 127 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between minValue and maxValue based on a given seed. This method is guaranteed to return the same result for the same seed. example: [] syntax: content: public static float Single(float minValue, float maxValue, int seed) parameters: - id: minValue type: System.Single description: The (inclusive) minimum value. - id: maxValue type: System.Single description: The (exclusive) maximum value. - id: seed type: System.Int32 description: The seed to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](minValue As Single, maxValue As Single, seed As Integer) As Single overload: MLEM.Maths.SingleRandom.Single* nameWithType.vb: SingleRandom.Single(Single, Single, Integer) fullName.vb: MLEM.Maths.SingleRandom.Single(Single, Single, Integer) name.vb: Single(Single, Single, Integer) - uid: MLEM.Maths.SingleRandom.Single(System.Single,System.Single,MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.Single(System.Single,System.Single,MLEM.Maths.SeedSource) id: Single(System.Single,System.Single,MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: Single(float, float, SeedSource) nameWithType: SingleRandom.Single(float, float, SeedSource) fullName: MLEM.Maths.SingleRandom.Single(float, float, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: Single path: ../MLEM/Maths/SingleRandom.cs startLine: 139 assemblies: - MLEM namespace: MLEM.Maths summary: >- Generates a single, one-off pseudorandom floating point number between minValue and maxValue based on a given source. This method is guaranteed to return the same result for the same source. example: [] syntax: content: public static float Single(float minValue, float maxValue, SeedSource source) parameters: - id: minValue type: System.Single description: The (inclusive) minimum value. - id: maxValue type: System.Single description: The (exclusive) maximum value. - id: source type: MLEM.Maths.SeedSource description: The to use. return: type: System.Single description: The generated number. content.vb: Public Shared Function [Single](minValue As Single, maxValue As Single, source As SeedSource) As Single overload: MLEM.Maths.SingleRandom.Single* nameWithType.vb: SingleRandom.Single(Single, Single, SeedSource) fullName.vb: MLEM.Maths.SingleRandom.Single(Single, Single, MLEM.Maths.SeedSource) name.vb: Single(Single, Single, SeedSource) - uid: MLEM.Maths.SingleRandom.GetRandomEntry``1(System.Collections.Generic.ICollection{``0},MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.GetRandomEntry``1(System.Collections.Generic.ICollection{``0},MLEM.Maths.SeedSource) id: GetRandomEntry``1(System.Collections.Generic.ICollection{``0},MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: GetRandomEntry(ICollection, SeedSource) nameWithType: SingleRandom.GetRandomEntry(ICollection, SeedSource) fullName: MLEM.Maths.SingleRandom.GetRandomEntry(System.Collections.Generic.ICollection, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: GetRandomEntry path: ../MLEM/Maths/SingleRandom.cs startLine: 150 assemblies: - MLEM namespace: MLEM.Maths summary: Gets a random entry from the given collection with uniform chance. example: [] syntax: content: public static T GetRandomEntry(ICollection entries, SeedSource source) parameters: - id: entries type: System.Collections.Generic.ICollection{{T}} description: The entries to choose from - id: source type: MLEM.Maths.SeedSource description: The to use. typeParameters: - id: T description: The entries' type return: type: '{T}' description: A random entry content.vb: Public Shared Function GetRandomEntry(Of T)(entries As ICollection(Of T), source As SeedSource) As T overload: MLEM.Maths.SingleRandom.GetRandomEntry* nameWithType.vb: SingleRandom.GetRandomEntry(Of T)(ICollection(Of T), SeedSource) fullName.vb: MLEM.Maths.SingleRandom.GetRandomEntry(Of T)(System.Collections.Generic.ICollection(Of T), MLEM.Maths.SeedSource) name.vb: GetRandomEntry(Of T)(ICollection(Of T), SeedSource) - uid: MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Int32},MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Int32},MLEM.Maths.SeedSource) id: GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Int32},MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: GetRandomWeightedEntry(ICollection, Func, SeedSource) nameWithType: SingleRandom.GetRandomWeightedEntry(ICollection, Func, SeedSource) fullName: MLEM.Maths.SingleRandom.GetRandomWeightedEntry(System.Collections.Generic.ICollection, System.Func, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: GetRandomWeightedEntry path: ../MLEM/Maths/SingleRandom.cs startLine: 164 assemblies: - MLEM namespace: MLEM.Maths summary: >- Returns a random entry from the given collection based on the specified weight function. A higher weight for an entry increases its likeliness of being picked. example: [] syntax: content: public static T GetRandomWeightedEntry(ICollection entries, Func weightFunc, SeedSource source) parameters: - id: entries type: System.Collections.Generic.ICollection{{T}} description: The entries to choose from - id: weightFunc type: System.Func{{T},System.Int32} description: A function that applies weight to each entry - id: source type: MLEM.Maths.SeedSource description: The to use. typeParameters: - id: T description: The entries' type return: type: '{T}' description: A random entry, based on the entries' weight content.vb: Public Shared Function GetRandomWeightedEntry(Of T)(entries As ICollection(Of T), weightFunc As Func(Of T, Integer), source As SeedSource) As T overload: MLEM.Maths.SingleRandom.GetRandomWeightedEntry* exceptions: - type: System.IndexOutOfRangeException commentId: T:System.IndexOutOfRangeException description: If the weight function returns different weights for the same entry nameWithType.vb: SingleRandom.GetRandomWeightedEntry(Of T)(ICollection(Of T), Func(Of T, Integer), SeedSource) fullName.vb: MLEM.Maths.SingleRandom.GetRandomWeightedEntry(Of T)(System.Collections.Generic.ICollection(Of T), System.Func(Of T, Integer), MLEM.Maths.SeedSource) name.vb: GetRandomWeightedEntry(Of T)(ICollection(Of T), Func(Of T, Integer), SeedSource) - uid: MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Single},MLEM.Maths.SeedSource) commentId: M:MLEM.Maths.SingleRandom.GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Single},MLEM.Maths.SeedSource) id: GetRandomWeightedEntry``1(System.Collections.Generic.ICollection{``0},System.Func{``0,System.Single},MLEM.Maths.SeedSource) parent: MLEM.Maths.SingleRandom langs: - csharp - vb name: GetRandomWeightedEntry(ICollection, Func, SeedSource) nameWithType: SingleRandom.GetRandomWeightedEntry(ICollection, Func, SeedSource) fullName: MLEM.Maths.SingleRandom.GetRandomWeightedEntry(System.Collections.Generic.ICollection, System.Func, MLEM.Maths.SeedSource) type: Method source: remote: path: MLEM/Maths/SingleRandom.cs branch: main repo: https://github.com/Ellpeck/MLEM id: GetRandomWeightedEntry path: ../MLEM/Maths/SingleRandom.cs startLine: 169 assemblies: - MLEM namespace: MLEM.Maths summary: >- Returns a random entry from the given collection based on the specified weight function. A higher weight for an entry increases its likeliness of being picked. example: [] syntax: content: public static T GetRandomWeightedEntry(ICollection entries, Func weightFunc, SeedSource source) parameters: - id: entries type: System.Collections.Generic.ICollection{{T}} description: The entries to choose from - id: weightFunc type: System.Func{{T},System.Single} description: A function that applies weight to each entry - id: source type: MLEM.Maths.SeedSource description: The to use. typeParameters: - id: T description: The entries' type return: type: '{T}' description: A random entry, based on the entries' weight content.vb: Public Shared Function GetRandomWeightedEntry(Of T)(entries As ICollection(Of T), weightFunc As Func(Of T, Single), source As SeedSource) As T overload: MLEM.Maths.SingleRandom.GetRandomWeightedEntry* exceptions: - type: System.IndexOutOfRangeException commentId: T:System.IndexOutOfRangeException description: If the weight function returns different weights for the same entry nameWithType.vb: SingleRandom.GetRandomWeightedEntry(Of T)(ICollection(Of T), Func(Of T, Single), SeedSource) fullName.vb: MLEM.Maths.SingleRandom.GetRandomWeightedEntry(Of T)(System.Collections.Generic.ICollection(Of T), System.Func(Of T, Single), MLEM.Maths.SeedSource) name.vb: GetRandomWeightedEntry(Of T)(ICollection(Of T), Func(Of T, Single), SeedSource) references: - uid: MLEM.Maths.SeedSource commentId: T:MLEM.Maths.SeedSource parent: MLEM.Maths href: MLEM.Maths.SeedSource.html name: SeedSource nameWithType: SeedSource fullName: MLEM.Maths.SeedSource - uid: System.Int32 commentId: T:System.Int32 parent: System isExternal: true href: https://learn.microsoft.com/dotnet/api/system.int32 name: int nameWithType: int fullName: int nameWithType.vb: Integer fullName.vb: Integer name.vb: Integer - uid: System.Single commentId: T:System.Single parent: System isExternal: true href: https://learn.microsoft.com/dotnet/api/system.single name: float nameWithType: float fullName: float nameWithType.vb: Single fullName.vb: Single name.vb: Single - uid: MLEM.Maths commentId: N:MLEM.Maths href: MLEM.html name: MLEM.Maths nameWithType: MLEM.Maths fullName: MLEM.Maths spec.csharp: - uid: MLEM name: MLEM href: MLEM.html - name: . - uid: MLEM.Maths name: Maths href: MLEM.Maths.html spec.vb: - uid: MLEM name: MLEM href: MLEM.html - name: . - uid: MLEM.Maths name: Maths href: MLEM.Maths.html - uid: System.Object commentId: T:System.Object parent: System isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object name: object nameWithType: object fullName: object nameWithType.vb: Object fullName.vb: Object name.vb: Object - uid: System.Object.ToString commentId: M:System.Object.ToString parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.tostring name: ToString() nameWithType: object.ToString() fullName: object.ToString() nameWithType.vb: Object.ToString() fullName.vb: Object.ToString() spec.csharp: - uid: System.Object.ToString name: ToString isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.tostring - name: ( - name: ) spec.vb: - uid: System.Object.ToString name: ToString isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.tostring - name: ( - name: ) - uid: System.Object.Equals(System.Object) commentId: M:System.Object.Equals(System.Object) parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object) name: Equals(object) nameWithType: object.Equals(object) fullName: object.Equals(object) nameWithType.vb: Object.Equals(Object) fullName.vb: Object.Equals(Object) name.vb: Equals(Object) spec.csharp: - uid: System.Object.Equals(System.Object) name: Equals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object) - name: ( - uid: System.Object name: object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) spec.vb: - uid: System.Object.Equals(System.Object) name: Equals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object) - name: ( - uid: System.Object name: Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) - uid: System.Object.Equals(System.Object,System.Object) commentId: M:System.Object.Equals(System.Object,System.Object) parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object) name: Equals(object, object) nameWithType: object.Equals(object, object) fullName: object.Equals(object, object) nameWithType.vb: Object.Equals(Object, Object) fullName.vb: Object.Equals(Object, Object) name.vb: Equals(Object, Object) spec.csharp: - uid: System.Object.Equals(System.Object,System.Object) name: Equals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object) - name: ( - uid: System.Object name: object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ',' - name: " " - uid: System.Object name: object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) spec.vb: - uid: System.Object.Equals(System.Object,System.Object) name: Equals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object) - name: ( - uid: System.Object name: Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ',' - name: " " - uid: System.Object name: Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) - uid: System.Object.ReferenceEquals(System.Object,System.Object) commentId: M:System.Object.ReferenceEquals(System.Object,System.Object) parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals name: ReferenceEquals(object, object) nameWithType: object.ReferenceEquals(object, object) fullName: object.ReferenceEquals(object, object) nameWithType.vb: Object.ReferenceEquals(Object, Object) fullName.vb: Object.ReferenceEquals(Object, Object) name.vb: ReferenceEquals(Object, Object) spec.csharp: - uid: System.Object.ReferenceEquals(System.Object,System.Object) name: ReferenceEquals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals - name: ( - uid: System.Object name: object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ',' - name: " " - uid: System.Object name: object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) spec.vb: - uid: System.Object.ReferenceEquals(System.Object,System.Object) name: ReferenceEquals isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.referenceequals - name: ( - uid: System.Object name: Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ',' - name: " " - uid: System.Object name: Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object - name: ) - uid: System.Object.GetHashCode commentId: M:System.Object.GetHashCode parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode name: GetHashCode() nameWithType: object.GetHashCode() fullName: object.GetHashCode() nameWithType.vb: Object.GetHashCode() fullName.vb: Object.GetHashCode() spec.csharp: - uid: System.Object.GetHashCode name: GetHashCode isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode - name: ( - name: ) spec.vb: - uid: System.Object.GetHashCode name: GetHashCode isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gethashcode - name: ( - name: ) - uid: System.Object.GetType commentId: M:System.Object.GetType parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gettype name: GetType() nameWithType: object.GetType() fullName: object.GetType() nameWithType.vb: Object.GetType() fullName.vb: Object.GetType() spec.csharp: - uid: System.Object.GetType name: GetType isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gettype - name: ( - name: ) spec.vb: - uid: System.Object.GetType name: GetType isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.gettype - name: ( - name: ) - uid: System.Object.MemberwiseClone commentId: M:System.Object.MemberwiseClone parent: System.Object isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone name: MemberwiseClone() nameWithType: object.MemberwiseClone() fullName: object.MemberwiseClone() nameWithType.vb: Object.MemberwiseClone() fullName.vb: Object.MemberwiseClone() spec.csharp: - uid: System.Object.MemberwiseClone name: MemberwiseClone isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone - name: ( - name: ) spec.vb: - uid: System.Object.MemberwiseClone name: MemberwiseClone isExternal: true href: https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone - name: ( - name: ) - uid: System commentId: N:System isExternal: true href: https://learn.microsoft.com/dotnet/api/system name: System nameWithType: System fullName: System - uid: System.Int32.MaxValue commentId: F:System.Int32.MaxValue isExternal: true href: https://learn.microsoft.com/dotnet/api/system.int32.maxvalue name: MaxValue nameWithType: int.MaxValue fullName: int.MaxValue nameWithType.vb: Integer.MaxValue fullName.vb: Integer.MaxValue - uid: MLEM.Maths.SingleRandom.Int* commentId: Overload:MLEM.Maths.SingleRandom.Int href: MLEM.Maths.SingleRandom.html#MLEM_Maths_SingleRandom_Int_System_Int32_ name: Int nameWithType: SingleRandom.Int fullName: MLEM.Maths.SingleRandom.Int - uid: MLEM.Maths.SingleRandom.Single* commentId: Overload:MLEM.Maths.SingleRandom.Single href: MLEM.Maths.SingleRandom.html#MLEM_Maths_SingleRandom_Single_System_Int32_ name: Single nameWithType: SingleRandom.Single fullName: MLEM.Maths.SingleRandom.Single - uid: MLEM.Maths.SingleRandom.GetRandomEntry* commentId: Overload:MLEM.Maths.SingleRandom.GetRandomEntry href: MLEM.Maths.SingleRandom.html#MLEM_Maths_SingleRandom_GetRandomEntry__1_System_Collections_Generic_ICollection___0__MLEM_Maths_SeedSource_ name: GetRandomEntry nameWithType: SingleRandom.GetRandomEntry fullName: MLEM.Maths.SingleRandom.GetRandomEntry - uid: System.Collections.Generic.ICollection{{T}} commentId: T:System.Collections.Generic.ICollection{``0} parent: System.Collections.Generic definition: System.Collections.Generic.ICollection`1 href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 name: ICollection nameWithType: ICollection fullName: System.Collections.Generic.ICollection nameWithType.vb: ICollection(Of T) fullName.vb: System.Collections.Generic.ICollection(Of T) name.vb: ICollection(Of T) spec.csharp: - uid: System.Collections.Generic.ICollection`1 name: ICollection isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 - name: < - name: T - name: '>' spec.vb: - uid: System.Collections.Generic.ICollection`1 name: ICollection isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 - name: ( - name: Of - name: " " - name: T - name: ) - uid: '{T}' commentId: '!:T' definition: T name: T nameWithType: T fullName: T - uid: System.Collections.Generic.ICollection`1 commentId: T:System.Collections.Generic.ICollection`1 isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 name: ICollection nameWithType: ICollection fullName: System.Collections.Generic.ICollection nameWithType.vb: ICollection(Of T) fullName.vb: System.Collections.Generic.ICollection(Of T) name.vb: ICollection(Of T) spec.csharp: - uid: System.Collections.Generic.ICollection`1 name: ICollection isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 - name: < - name: T - name: '>' spec.vb: - uid: System.Collections.Generic.ICollection`1 name: ICollection isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic.icollection-1 - name: ( - name: Of - name: " " - name: T - name: ) - uid: System.Collections.Generic commentId: N:System.Collections.Generic isExternal: true href: https://learn.microsoft.com/dotnet/api/system name: System.Collections.Generic nameWithType: System.Collections.Generic fullName: System.Collections.Generic spec.csharp: - uid: System name: System isExternal: true href: https://learn.microsoft.com/dotnet/api/system - name: . - uid: System.Collections name: Collections isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections - name: . - uid: System.Collections.Generic name: Generic isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic spec.vb: - uid: System name: System isExternal: true href: https://learn.microsoft.com/dotnet/api/system - name: . - uid: System.Collections name: Collections isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections - name: . - uid: System.Collections.Generic name: Generic isExternal: true href: https://learn.microsoft.com/dotnet/api/system.collections.generic - uid: T name: T nameWithType: T fullName: T - uid: System.IndexOutOfRangeException commentId: T:System.IndexOutOfRangeException isExternal: true href: https://learn.microsoft.com/dotnet/api/system.indexoutofrangeexception name: IndexOutOfRangeException nameWithType: IndexOutOfRangeException fullName: System.IndexOutOfRangeException - uid: MLEM.Maths.SingleRandom.GetRandomWeightedEntry* commentId: Overload:MLEM.Maths.SingleRandom.GetRandomWeightedEntry href: MLEM.Maths.SingleRandom.html#MLEM_Maths_SingleRandom_GetRandomWeightedEntry__1_System_Collections_Generic_ICollection___0__System_Func___0_System_Int32__MLEM_Maths_SeedSource_ name: GetRandomWeightedEntry nameWithType: SingleRandom.GetRandomWeightedEntry fullName: MLEM.Maths.SingleRandom.GetRandomWeightedEntry - uid: System.Func{{T},System.Int32} commentId: T:System.Func{``0,System.Int32} parent: System definition: System.Func`2 href: https://learn.microsoft.com/dotnet/api/system.func-2 name: Func nameWithType: Func fullName: System.Func nameWithType.vb: Func(Of T, Integer) fullName.vb: System.Func(Of T, Integer) name.vb: Func(Of T, Integer) spec.csharp: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: < - name: T - name: ',' - name: " " - uid: System.Int32 name: int isExternal: true href: https://learn.microsoft.com/dotnet/api/system.int32 - name: '>' spec.vb: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: ( - name: Of - name: " " - name: T - name: ',' - name: " " - uid: System.Int32 name: Integer isExternal: true href: https://learn.microsoft.com/dotnet/api/system.int32 - name: ) - uid: System.Func`2 commentId: T:System.Func`2 isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 name: Func nameWithType: Func fullName: System.Func nameWithType.vb: Func(Of T, TResult) fullName.vb: System.Func(Of T, TResult) name.vb: Func(Of T, TResult) spec.csharp: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: < - name: T - name: ',' - name: " " - name: TResult - name: '>' spec.vb: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: ( - name: Of - name: " " - name: T - name: ',' - name: " " - name: TResult - name: ) - uid: System.Func{{T},System.Single} commentId: T:System.Func{``0,System.Single} parent: System definition: System.Func`2 href: https://learn.microsoft.com/dotnet/api/system.func-2 name: Func nameWithType: Func fullName: System.Func nameWithType.vb: Func(Of T, Single) fullName.vb: System.Func(Of T, Single) name.vb: Func(Of T, Single) spec.csharp: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: < - name: T - name: ',' - name: " " - uid: System.Single name: float isExternal: true href: https://learn.microsoft.com/dotnet/api/system.single - name: '>' spec.vb: - uid: System.Func`2 name: Func isExternal: true href: https://learn.microsoft.com/dotnet/api/system.func-2 - name: ( - name: Of - name: " " - name: T - name: ',' - name: " " - uid: System.Single name: Single isExternal: true href: https://learn.microsoft.com/dotnet/api/system.single - name: )