int CHandresetDetector::BitVectorFiringHandresetMethods() { int handresetmethods_fired = 0; // Build a bit-vector of handresetmethods that fire // Highest (9th) bit is for first method handresetmethods_fired |= (IsHandresetByDealerChair() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByUserCards() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByHandNumber() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByCommunityCards() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByPotsize() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByNopponentsplaying() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByIncreasingBalance() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByChangingBlindLevel() ? 1 : 0); handresetmethods_fired <<= 1; handresetmethods_fired |= (IsHandresetByNewSmallBlind() ? 1 : 0 ); // No shift-left after the last bit write_log(preferences.debug_handreset_detector(), "[CHandresetDetector] Methods firing this heartbeat: %s\n", IntToBinaryString(handresetmethods_fired, kNumberOfHandresetMethods)); return handresetmethods_fired; }
bool CHandresetDetector::CalculateIsHandreset() { bool ishandreset = (IsHandresetByDealerChair() || IsHandresetByCards() || IsHandresetByHandNumber()); write_log(preferences.debug_handreset_detector(), "[CHandresetDetector] IsHandreset() %s\n", Bool2CString(ishandreset)); return ishandreset; }
bool CHandresetDetector::IsHandreset() { return (IsHandresetByDealerChair() || IsHandresetByCards() || IsHandresetByHandNumber()); }