| 732 | |
| 733 | |
| 734 | int Scheduler::Fanout(const Deal& dl) const |
| 735 | { |
| 736 | // The fanout for a given suit and a given player is the number |
| 737 | // of bit groups, so KT982 has 3 groups. In a given suit the |
| 738 | // maximum number over all four players is 13. |
| 739 | // A void counts as the sum of the other players' groups. |
| 740 | |
| 741 | int fanout = 0; |
| 742 | int fanoutSuit, numVoids, c; |
| 743 | |
| 744 | for (int h = 0; h < DDS_HANDS; h++) |
| 745 | { |
| 746 | fanoutSuit = 0; |
| 747 | numVoids = 0; |
| 748 | for (int s = 0; s < DDS_SUITS; s++) |
| 749 | { |
| 750 | c = static_cast<int>(dl.remainCards[h][s] >> 2); |
| 751 | fanoutSuit += group_data[c].last_group_ + 1; |
| 752 | if (c == 0) |
| 753 | numVoids++; |
| 754 | } |
| 755 | fanoutSuit += numVoids * fanoutSuit; |
| 756 | fanout += fanoutSuit; |
| 757 | } |
| 758 | |
| 759 | return fanout; |
| 760 | } |
| 761 | |
| 762 | |
| 763 | schedType Scheduler::GetNumber(const int thrId) |
nothing calls this directly
no outgoing calls
no test coverage detected