示例#1
0
        public override void SetupMiner(bool minerCreation)
        {
            ActualMinerPrograms.Clear();
            MinerPrograms.Clear();
            m_MinerProgsHash.Clear();

            IMinerProgram prog = new ClaymoreCNAmd(MainCoin, DualMining, DualCoin, Name, this);

            MinerPrograms.Add(prog);
            IMinerProgram prog2 = new CCMiner(MainCoin, DualMining, DualCoin, Name, this);

            MinerPrograms.Add(prog2);
            IMinerProgram prog3 = new ClaymoreCNCpu(MainCoin, DualMining, DualCoin, Name, this);

            MinerPrograms.Add(prog3);

            m_MinerProgsHash.Add(prog.GPUType, prog);
            m_MinerProgsHash.Add(prog2.GPUType, prog2);
            m_MinerProgsHash.Add(CardMake.CPU, prog3);

            if (!minerCreation && (MinerGpuType & 1) > 0) //nvidia supported only if manually added
            {
                IMinerProgram program = m_MinerProgsHash[CardMake.Nvidia] as IMinerProgram;
                if (prog != null)
                {
                    program.Enabled = true;
                    ActualMinerPrograms.Add(program);
                }
            }
            if ((MinerGpuType & 2) > 0)
            {
                IMinerProgram program = m_MinerProgsHash[CardMake.Amd] as IMinerProgram;
                if (prog != null)
                {
                    program.Enabled = true;
                    ActualMinerPrograms.Add(program);
                }
            }
            //Add CPU miner in 2 condition
            //1. User explicitely asked to add
            //2. During creation of miner, there was no GPU miner available
            if ((MinerGpuType & 4) > 0 ||
                (minerCreation && ActualMinerPrograms.Count == 0))
            {
                //To know why 2 shits are used, refer MinerBase::ChangeGPUType. So 0 shift is 1, 1 shift is 2 and 2 shift is 4
                MinerGpuType = MinerGpuType | (1 << 2);
                IMinerProgram program = m_MinerProgsHash[CardMake.CPU] as IMinerProgram;
                if (prog != null)
                {
                    program.Enabled = true;
                    ActualMinerPrograms.Add(program);
                }
            }
        }
示例#2
0
        public override void SetupMiner()
        {
            ActualMinerPrograms.Clear();
            MinerPrograms.Clear();
            m_MinerProgsHash.Clear();

            IMinerProgram prog = new ClaymoreMiner(MainCoin, DualMining, DualCoin, Name, this);

            MinerPrograms.Add(prog);
            if (MinerGpuType >= 1 && MinerGpuType <= 3)
            {
                prog.Enabled = true;
                ActualMinerPrograms.Add(prog);
            }
            m_MinerProgsHash.Add(prog.Type, prog);
        }
示例#3
0
        public override void SetupMiner(bool minerCreation)
        {
            ActualMinerPrograms.Clear();
            MinerPrograms.Clear();
            m_MinerProgsHash.Clear();

            IMinerProgram prog = new CCMiner(MainCoin, DualMining, DualCoin, Name, this);

            MinerPrograms.Add(prog);

            //IMinerProgram prog2 = new NSGMiner(MainCoin, DualMining, DualCoin, Name, this);
            //MinerPrograms.Add(prog2);


            m_MinerProgsHash.Add(prog.GPUType, prog);

            //m_MinerProgsHash.Add(prog2.GPUType, prog2);

            if (MinerGpuType == 3)
            {
                foreach (IMinerProgram item in MinerPrograms)
                {
                    item.Enabled = true;
                    ActualMinerPrograms.Add(item);
                }
            }
            else if (MinerGpuType == 1)
            {
                IMinerProgram program = m_MinerProgsHash[CardMake.Nvidia] as IMinerProgram;
                if (prog != null)
                {
                    program.Enabled = true;
                    ActualMinerPrograms.Add(program);
                }
            }
            else if (MinerGpuType == 2)
            {
                IMinerProgram program = m_MinerProgsHash[CardMake.Amd] as IMinerProgram;
                if (prog != null)
                {
                    program.Enabled = true;
                    ActualMinerPrograms.Add(program);
                }
            }
        }