CentralMine.NET.WorkBlock.GetSolutionString C# (CSharp) Method

GetSolutionString() public method

public GetSolutionString ( uint solution ) : string
solution uint
return string
        public string GetSolutionString(uint solution)
        {
            data[76] = (byte)(solution & 0xFF);
            data[77] = (byte)((solution & 0xFF00) >> 8);
            data[78] = (byte)((solution & 0xFF0000) >> 16);
            data[79] = (byte)((solution & 0xFF000000) >> 24);

            return Utils.ByteArrayToHexString(data);
        }

Usage Example

        public void WorkComplete(Client solver, bool solutionFound, uint solution)
        {
            mEventLog.RecordClientWork(solver);
            WorkBlock block = solver.mCurrentBlock;

            block.mHashMan.FinishBlock(solver.mHashBlock);
            solver.mHashBlock = null;

            if (solutionFound && mBlock == block)
            {
                mBlocksSubmitted++;
                bool success = mUpstream.SubmitWork(block, solution);
                //if (!success)
                //    success = mUpstream.SubmitWork(block, (uint)IPAddress.HostToNetworkOrder((int)solution));

                // Start a new block
                if (success)
                {
                    // Send email notification about this found solution

                    /*
                     * TimeSpan span = DateTime.Now - block.mHashMan.mStartTime;
                     * string hashrate = string.Format("{0:N}", block.mHashMan.mHashesDone / span.TotalSeconds);
                     * string body = "Found solution for " + block.mCurrency + " block: \n" + block.ToString() + "\n\n";
                     * body += "Solution string: " + data + "\n";
                     * body += "Block Accepted: " + success.ToString() + "\n";
                     * body += "Hashes Done: " + block.mHashMan.mHashesDone + "\n";
                     * body += "Time Spent: " + span.ToString() + "\n";
                     * body += "Hashrate: " + hashrate + "\n";
                     * body += "Clients: " + mClients.Count + "\n";
                     * body += "\n\n";
                     * //mMailer.SendEmail(body);
                     */
                    //mMailer.SendEmail("Block Accepted");

                    string data = block.GetSolutionString(solution);
                    mEventLog.RecordEvent(EventLog.EventType.Upstream, string.Format("Work accepted! solution: {0}, dataString: {1}", solution, data));

                    BeginBlock();
                    mBlocksAccepted++;
                }
                else
                {
                    string data = block.GetSolutionString(solution);
                    mEventLog.RecordEvent(EventLog.EventType.Upstream, string.Format("Work not accepted. solution: {0}, dataString: {1}", solution, data));
                }
            }
        }
All Usage Examples Of CentralMine.NET.WorkBlock::GetSolutionString