#ifndef _CARDPILE_H_ #define _CARDPILE_H_ #include "card.h" #include #include using std::cout; using std::endl; using std::string; struct countAndSuit { enum Suit whatSuit; int count; }; struct countAndType { char type; int count; }; class CardPile : public Card { private: /* draw pile */ Card *deck[52]; int deckCurrIndex; /* discard pile */ Card *discardPile[52]; int discardPileCurrIndex; protected: public: CardPile(void); ~CardPile(void); Card getCard(int); void printPile(void); /* used by sorting algorithm to peek at the card or to assign new card */ Card *getCardFromDeck(int); void putCardToDeck(int, Card *); void putCardToDiscardPile(Card *); Card *PopCardFromDeck(void); void resetDeck(void); }; #endif