The DurationFunctionExplorer type exposes the following members.
Initializes a new instance.
Gets or sets the tolerance with which to converge on duration when finding a precise crossing of a threshold. By default, this property has the value 0.005 seconds (5 milliseconds).
Gets the current duration, which is the duration of the most recent sample.
Gets a value indicating whether CurrentDuration is valid. CurrentDuration is invalid before the explorer is stepped for the first time.
Gets or sets a logger to which debugging information will be written.
Gets or sets a value indicating whether extrema should be explored if exploring those extrema could lead to additional threshold crossings being identified. Consider three sample points where the middle sampled value is higher than the other two so that the three points form two line segments with opposite slope. This configuration indicates that a local maximum exists somewhere between the three points. If all three points are below a threshold, it's possible that the local maximum, if found, will lie above the threshold. When this property is , that extremum is explored until it is found precisely, or it is determined based on ExtremaCrossingUncertaintyFactor that the extremum is unlikely to cross any threshold values. Such an extrema is explored even if FindAllExtremaPrecisely is . By default, this property has the value .
Gets or sets a value determining how finely to explore an extremum with the potential to cross a threshold. At each iteration exploring the extremum this factor is multiplied against that iteration's Error to determine the tolerance to compare against the difference between the current guess of the extrema and the closest applicable threshold value. This property is only used if FindAllExtremaPrecisely is set to and ExploreExtremaToFindCrossings is set to . By default, this property has the value PositiveInfinity which effectively causes a complete search of all extrema. If you do not desire to completely search all extrema with the potential to cross a threshold, set this to a value greater than 1.0.
Gets or sets the tolerance with which to converge on duration when precisely finding a local extremum. By default, this property has the value 0.005 seconds (5 milliseconds).
Gets or sets a value indicating whether all crossings should be found precisely. If this property is , precise crossings will only be found if FindPreciseCrossing is called during the ThresholdCrossingIndicated event. By default, this property has the value .
Gets or sets a value indicating whether all extrema should be found precisely. If this property is , precise extrema will only be found if FindPreciseExtremum is called during the ThresholdCrossingIndicated event, or if ExploreExtremaToFindCrossings is and the indicated extrema might cross the threshold. By default, this property has the value .
Gets the collection of functions to be explored.
Gets the duration of the previous sample.
Gets a value indicating whether PreviousDuration is valid. PreviousDuration is invalid before the explorer is stepped for the second time.
Gets the duration of the previous, previous sample.
Gets a value indicating whether PreviousPreviousDuration is valid. PreviousPreviousDuration is invalid before the explorer is stepped for the third time.
Gets or sets a value indicating whether extrema should be reported at the start and stop times given to Explore(Duration, Duration) when the function is not flat at those endpoints. By default, this property has the value .
Gets or sets the callback to use to determine the times at which to sample the Functions when the Explore(Duration, Duration) method is called.
Determines whether the specified object is equal to the current object.(Inherited from Object.)
Explores the function, raising events for each finding.
|Explore(Duration, Duration, ITrackCalculationProgress)|
Explores the function, raising events for each finding.
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)
Serves as the default hash function.(Inherited from Object.)
Gets the Type of the current instance.(Inherited from Object.)
Creates a shallow copy of the current Object.(Inherited from Object.)
Resets exploration. After calling this method, CurrentDurationIsValid, PreviousDurationIsValid, and PreviousPreviousDurationIsValid all return .
Explores the function through one step, raising events for any findings over the step.
Steps exploration to a specified duration. Any findings during the step are reported in an enumerable collection of DurationFunctionFindings. Events are not raised for the findings.
Returns a string that represents the current object.(Inherited from Object.)
Raised each time a function is sampled. Note that this NOT raised when the function is sampled for the purpose of precisely finding a threshold crossing or extremum.
Raised when a precise local minimum or maximum has been found. This event will only be raised if the local extremum is found precisely. Local extrema are found precisely if:
Raised when three points are found that indicate the existence of a local extremum (minimum or maximum). When this event is raised, the exact extremum has not yet been identified.
Raised when a precise threshold crossing has been found. This event will only be raised if FindAllCrossingsPrecisely is or FindPreciseCrossing is called during the handling of the ThresholdCrossingIndicated event.
Raised when two points are found that indicate a threshold was crossed. When this event is raised, the exact crossing has not yet been identified.