示例#1
0
        public void LoadDBData()
        {
            //Todo:loda core from the db
            DB db = Factory.Instance.Model.Data;

            //1. Load mineralgos and miner programs
            if (db.Miners.Count == 0)
            {
                //load default ether miner
                IHashAlgorithm algo  = Factory.Instance.DefaultAlgorithm;
                IMiner         miner = algo.DefaultMiner();
                if (miner != null)
                {
                    List <GpuData> gpus        = ((MinerBase)miner).GetGpuList();
                    bool           atLeast1GPu = false;
                    foreach (GpuData gpuData in gpus)
                    {
                        if (gpuData.Make == CardMake.Nvidia || gpuData.Make == CardMake.Amd)
                        {
                            atLeast1GPu = true;
                        }
                    }
                    if (!atLeast1GPu)
                    {
                        //add a cpu monero miner
                        //IHashAlgorithm cryptonight = new DigibyteMiner
                        //miner = cryptonight.DefaultMiner();
                    }
                    Miners.Add(miner);
                    SelectedMiner = miner;
                }
            }
            else
            {
                IMiner miner = null;
                foreach (IMinerData item in db.Miners)
                {
                    IHashAlgorithm algo = Factory.Instance.CreateAlgoObject(item.Algorithm);
                    miner = algo.RegenerateMiner(item);
                    if (miner != null)
                    {
                        Miners.Add(miner);
                        if (miner.Id == db.CurrentMinerId)
                        {
                            SelectedMiner = miner;
                        }
                    }
                }
                if (SelectedMiner == null)
                {
                    SelectedMiner = miner;
                }
            }
            //2. load configured miners
        }
示例#2
0
        public void LoadDBData()
        {
            //Todo:loda core from the db
            DB db = Factory.Instance.Model.Data;

            //1. Load mineralgos and miner programs
            if (db.Miners.Count == 0)
            {
                //load default ether miner
                IHashAlgorithm algo  = Factory.Instance.DefaultAlgorithm;
                IMiner         miner = algo.DefaultMiner();
                if (miner != null)
                {
                    Miners.Add(miner);
                }
                SelectedMiner = miner;
            }
            else
            {
                IMiner miner = null;
                foreach (IMinerData item in db.Miners)
                {
                    IHashAlgorithm algo = Factory.Instance.CreateAlgoObject(item.Algorithm);
                    miner = algo.RegenerateMiner(item);
                    if (miner != null)
                    {
                        Miners.Add(miner);
                        if (miner.Id == db.CurrentMinerId)
                        {
                            SelectedMiner = miner;
                        }
                    }
                }
                if (SelectedMiner == null)
                {
                    SelectedMiner = miner;
                }
            }
            //2. load configured miners
        }