# NewGamePhysics.Physics.AdvancedEntropyCollector Class Reference

Extracts entropy from an array of floating point values of physical processes (measurements or simulations fed by physical processes). Uses a recursive partition scheme and the AMLS unbiaser to extract random bits from the values. The submissions of the values will yield usable entropy if: if the value changes sufficiently much between submissions the submissions are independent from the value generation either the value source or the submission trigger is based on a real physical random process (i.e. uncorrelated user trigger). More...

List of all members.

## Public Member Functions
| AdvancedEntropyCollector ()
| Default constructor.
void | Reset ()
| Reset collector to initial state.
void | AddValue (double value)
| Adds a float value to the collector.
override string | ToString ()
| Return the current value pool as unbiased entropy bits in a string of 0 and 1 characters. Does not reset or modify the value pool.
## Properties
int | ValuePoolSize`[get]`
| Returns the number of collected values for entropy generation.

## Detailed Description

Extracts entropy from an array of floating point values of physical processes (measurements or simulations fed by physical processes). Uses a recursive partition scheme and the AMLS unbiaser to extract random bits from the values. The submissions of the values will yield usable entropy if: if the value changes sufficiently much between submissions the submissions are independent from the value generation either the value source or the submission trigger is based on a real physical random process (i.e. uncorrelated user trigger).

Definition at line 27 of file AdvancedEntropyCollector.cs.

## Constructor & Destructor Documentation

NewGamePhysics.Physics.AdvancedEntropyCollector.AdvancedEntropyCollector | ( |  | ) |

Default constructor.

Definition at line 42 of file AdvancedEntropyCollector.cs.

    00043         {
    00044             // Initialize value collector
    00045             this.valuePool = new List<double>();
    00046
    00047             // Create unbiaser using partitioning algorithm
    00048             this.unbiaser = new ValueUnbiaser(ValueUnbiasAlgorithm.Partition);
    00049
    00050         }

## Member Function Documentation

void NewGamePhysics.Physics.AdvancedEntropyCollector.AddValue | ( | double | value | ) |

Adds a float value to the collector.

Parameters:

  | value | Value to add.

Definition at line 73 of file AdvancedEntropyCollector.cs.

    00074         {
    00075             valuePool.Add(value);
    00076         }

void NewGamePhysics.Physics.AdvancedEntropyCollector.Reset | ( |  | ) |

Reset collector to initial state.

Definition at line 63 of file AdvancedEntropyCollector.cs.

    00064         {
    00065             // Clear value pool
    00066             valuePool.Clear();
    00067         }

override string NewGamePhysics.Physics.AdvancedEntropyCollector.ToString | ( |  | ) |

Return the current value pool as unbiased entropy bits in a string of 0 and 1 characters. Does not reset or modify the value pool.

Returns:
  The current value pool as entropy bit string.

Definition at line 84 of file AdvancedEntropyCollector.cs.

    00085         {
    00086             if (this.valuePool.Count > 2)
    00087             {
    00088                 return this.unbiaser.Extract(this.valuePool.ToArray());
    00089             }
    00090             else
    00091             {
    00092                 return string.Empty;
    00093             }
    00094
    00095         }

## Property Documentation

int NewGamePhysics.Physics.AdvancedEntropyCollector.ValuePoolSize`[get]`

Returns the number of collected values for entropy generation.

Definition at line 56 of file AdvancedEntropyCollector.cs.

The documentation for this class was generated from the following file:

- C:/Users/Andreas Schiffler/Desktop/SVN/NewGamePhysics/NewGamePhysics/Physics/AdvancedEntropyCollector.cs