public VardiffManager(string pool, IShareManager shareManager, IVardiffConfig vardiffConfig) { _logger = Log.ForContext<VardiffManager>().ForContext("Component", pool); Config = vardiffConfig; if (!Config.Enabled) return; shareManager.ShareSubmitted += OnShare; var variance = vardiffConfig.TargetTime*((float)vardiffConfig.VariancePercent/100); _bufferSize = vardiffConfig.RetargetTime/vardiffConfig.TargetTime*4; _tMin = vardiffConfig.TargetTime - variance; _tMax = vardiffConfig.TargetTime + variance; }
public StratumServerConfig(dynamic config) { try { // load the config data. Enabled = config.enabled; BindInterface = string.IsNullOrEmpty(config.bind) ? "0.0.0.0" : config.bind; Port = config.port; Diff = config.diff == 0 ? 16 : (float)config.diff; Vardiff = new VardiffConfig(config.vardiff); Valid = true; } catch (Exception e) { Valid = false; Log.Logger.ForContext <StratumServerConfig>().Error(e, "Error loading stratum server configuration"); } }
public VardiffManager(IPoolConfig poolConfig, IShareManager shareManager) { _logger = Log.ForContext <VardiffManager>().ForContext("Component", poolConfig.Coin.Name); Config = poolConfig.Stratum.Vardiff; if (!Config.Enabled) { return; } shareManager.ShareSubmitted += OnShare; var variance = Config.TargetTime * ((float)Config.VariancePercent / 100); _bufferSize = Config.RetargetTime / Config.TargetTime * 4; _tMin = Config.TargetTime - variance; _tMax = Config.TargetTime + variance; }
public IVardiffManager GetVardiffManager(string pool, IShareManager shareManager, IVardiffConfig vardiffConfig) { var @params = new NamedParameterOverloads { {"pool", pool}, {"shareManager", shareManager}, {"vardiffConfig", vardiffConfig}, }; return _applicationContext.Container.Resolve<IVardiffManager>(@params); }