private BenchmarkRunner(BenchmarkServiceConfiguration configuration, IScoringStrategy scoringStrategy) { this.configuration = configuration; this.scoringStrategy = scoringStrategy; this.testValues = BenchmarkRunner.GetTestValues(new Random(this.configuration.Seed), this.configuration.Operations.Sum(kvp => kvp.Value) * this.configuration.TestIterationCountScalar); this.stopWatch = new Stopwatch(); }
/// <summary> /// Initializes a new instance of the <see cref="BenchmarkService" /> class. /// </summary> /// <param name="configuration">The configuration.</param> /// <param name="scoringStrategy">The scoring strategy.</param> private BenchmarkService(BenchmarkServiceConfiguration configuration, IScoringStrategy scoringStrategy) { this.configuration = configuration; this.generator = new Random(this.configuration.Seed); this.data = this.GetData(this.configuration.Cardinalities.Max()); this.runner = BenchmarkRunner.Create(configuration, scoringStrategy); }
public GameEngine( Settings settings, Game game, IScoringStrategy score ) { _settings = settings; _game = game; _score = score; }
public Fourier( IWindow Window, double ZeroPaddingFactor, double SamplingFrequency, double SpectrumPeakStdDevs, IWindow FilterWindowForResults, FourierType FourierType, IScoringStrategy ScoringStrategy) { _window = Window; _zeroPaddingFactor = ZeroPaddingFactor; _samplingFrequency = SamplingFrequency; _spectrumPeakStdDevs = SpectrumPeakStdDevs; _filterWindowForResults = FilterWindowForResults; _fourierType = FourierType; _scoringStrategy = ScoringStrategy; }
public Ehler( double Alpha, int MaxSineWaveDelay, int MaxCycleDelay, int NumPredictionDays, bool IsRecursive, int MinLength, IScoringStrategy PhaseShiftScoringStrategy, IScoringStrategy RecursiveScoringStrategy) { _alpha = Alpha; _maxSineWaveDelay = MaxSineWaveDelay; _maxCycleDelay = MaxCycleDelay; _numPredictionDays = NumPredictionDays; _isRecursive = IsRecursive; _minLength = MinLength; _phaseShiftScoringStrategy = PhaseShiftScoringStrategy; _recursiveScoringStrategy = RecursiveScoringStrategy; }
public TrendRemover(IScoringStrategy ScoringStrategy) { _scoringStrategy = ScoringStrategy; }
public League(IScoringStrategy scoringStrategy) { m_ScoringStrategy = scoringStrategy; }
public JobMatching(IScoringStrategy strategy) //Use dependency injection to pass in the scoring strategy, to easily swap out different approaches. { this.strategy = strategy; }
public GameRules(IGameOverStrategy winStrategy, IGameOverStrategy loseStrategy, IScoringStrategy scoringStrategy) { _scoringStrategy = scoringStrategy; _winStrategy = winStrategy; _loseStrategy = loseStrategy; }
/// <summary> /// Creates the specified benchmark runner. /// </summary> /// <param name="configuration">The configuration.</param> /// <param name="scoringStrategy">The scoring strategy.</param> /// <returns> /// A benchmark runner /// </returns> public static BenchmarkRunner Create(BenchmarkServiceConfiguration configuration, IScoringStrategy scoringStrategy) { return(new BenchmarkRunner(configuration, scoringStrategy)); }
public void Setup() { this.strategy = new BruteForceApproach(); }