PokerSource Java API

org.pokersource.game
Class Deck

java.lang.Object
  extended by org.pokersource.game.Deck

public class Deck
extends java.lang.Object

Some utilities for working with cards and cardmasks in a way that is consistent with all decks used by the poker-eval C library. We use the joker deck because it is a superset of the other decks.

Author:
Michael Maurer <mjmaurer@yahoo.com>

Field Summary
static int RANK_2
           
static int RANK_3
           
static int RANK_4
           
static int RANK_5
           
static int RANK_6
           
static int RANK_7
           
static int RANK_8
           
static int RANK_9
           
static int RANK_ACE
           
static int RANK_COUNT
           
static int RANK_JACK
           
static int RANK_JOKER
           
static int RANK_KING
           
static int RANK_QUEEN
           
static int RANK_TEN
           
static int SUIT_CLUBS
           
static int SUIT_COUNT
           
static int SUIT_DIAMONDS
           
static int SUIT_HEARTS
           
static int SUIT_JOKER
           
static int SUIT_SPADES
           
 
Method Summary
static java.lang.String cardMaskString(long mask)
          Returns a string like "Ac Td 2h" representing the cards in mask.
static java.lang.String cardMaskString(long mask, java.lang.String delim)
          Returns a string like "Ac Td 2h" representing the cards in mask.
static java.lang.String cardString(int rank, int suit)
          Returns a string like "Ac", "Td", or "2h" representing the card.
static int createCardIndex(int rank, int suit)
          Returns a number between 0 and 52 denoting the card index within the deck.
static long createCardMask(int[] ranks, int[] suits)
          Returns a long integer with one bit set for each card present in the ranks/suits arrays.
static long createCardMask(int rank, int suit)
          Returns a long integer with one bit set corresponding to the card index.
static int numCards(long mask)
           
static long parseCardMask(java.lang.String maskstr)
          Returns a long integer with one bit set for each card present in the input string.
static int parseRank(java.lang.String rankstr)
           
static int parseSuit(java.lang.String suitstr)
           
static java.lang.String rankString(int rank)
           
static java.lang.String suitString(int suit)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SUIT_HEARTS

public static int SUIT_HEARTS

SUIT_DIAMONDS

public static int SUIT_DIAMONDS

SUIT_CLUBS

public static int SUIT_CLUBS

SUIT_SPADES

public static int SUIT_SPADES

SUIT_COUNT

public static int SUIT_COUNT

RANK_2

public static int RANK_2

RANK_3

public static int RANK_3

RANK_4

public static int RANK_4

RANK_5

public static int RANK_5

RANK_6

public static int RANK_6

RANK_7

public static int RANK_7

RANK_8

public static int RANK_8

RANK_9

public static int RANK_9

RANK_TEN

public static int RANK_TEN

RANK_JACK

public static int RANK_JACK

RANK_QUEEN

public static int RANK_QUEEN

RANK_KING

public static int RANK_KING

RANK_ACE

public static int RANK_ACE

RANK_COUNT

public static int RANK_COUNT

RANK_JOKER

public static int RANK_JOKER

SUIT_JOKER

public static int SUIT_JOKER
Method Detail

createCardIndex

public static int createCardIndex(int rank,
                                  int suit)
Returns a number between 0 and 52 denoting the card index within the deck. Consistent with all of StdDeck, JokerDeck, and AStudDeck in the poker-eval C library.

Parameters:
rank - The rank of the card
suit - The suit of the card
Returns:
index between 0 and 52

createCardMask

public static long createCardMask(int rank,
                                  int suit)
Returns a long integer with one bit set corresponding to the card index. Consistent with all of StdDeck, JokerDeck, and AStudDeck in the poker-eval C library.

Parameters:
rank - The rank of the card
suit - The suit of the card
Returns:
bitmask with one bit set between bits 0 and 52

createCardMask

public static long createCardMask(int[] ranks,
                                  int[] suits)
Returns a long integer with one bit set for each card present in the ranks/suits arrays. Consistent with all of StdDeck, JokerDeck, and AStudDeck in the poker-eval C library.

Parameters:
ranks - ranks[i] is the rank of the ith card
suits - suits[i] is the suit of the ith card
Returns:
bitmask of cards

parseCardMask

public static long parseCardMask(java.lang.String maskstr)
Returns a long integer with one bit set for each card present in the input string. Consistent with all of StdDeck, JokerDeck, and AStudDeck in the poker-eval C library.

Parameters:
maskstr - One or more cards, e.g., "Ac Td 2h" (whitespace optional)
Returns:
bitmask of cards

cardString

public static java.lang.String cardString(int rank,
                                          int suit)
Returns a string like "Ac", "Td", or "2h" representing the card.

Parameters:
rank - The rank of the card
suit - The suit of the card
Returns:
string representation of the card

parseRank

public static int parseRank(java.lang.String rankstr)

parseSuit

public static int parseSuit(java.lang.String suitstr)

rankString

public static java.lang.String rankString(int rank)

suitString

public static java.lang.String suitString(int suit)

cardMaskString

public static java.lang.String cardMaskString(long mask,
                                              java.lang.String delim)
Returns a string like "Ac Td 2h" representing the cards in mask.

Parameters:
mask - The bitmask of cards in the hand (from createCardMask())
delim - Delimiter to insert between each card (example above uses " ")
Returns:
string representation of the cards

cardMaskString

public static java.lang.String cardMaskString(long mask)
Returns a string like "Ac Td 2h" representing the cards in mask.

Parameters:
mask - The bitmask of cards in the hand (from createCardMask())
Returns:
string representation of the cards

numCards

public static int numCards(long mask)

PokerSource Java API

PokerSource Home Page - Learn how you can contribute!