/*
Programmer: Jennifer Leopold
Date: April 6, 2018
File: cardDeck.h
Purpose: This file contains the definition of a CardDeck
class.
*/
#ifndef CARD_DECK_H
#define CARD_DECK_H
#include <iostream>
#include <fstream>
#include "card.h"
#include "rescue.h"
using namespace std;
const char DANGER_CARD_FILE[12] = "cards.dat";
class CardDeck
{
private:
static const unsigned int MAX_NUM_CARDS = 50;
static const int DANGER_CARD_FILE_SENTINEL = -1;
static const char DANGER_CARD_FILE_DELIMITER = '\t';
unsigned int m_numCards;
Card m_card[MAX_NUM_CARDS];
public:
CardDeck() { m_numCards = 0; }
unsigned int getNumCards() const { return(m_numCards); }
void initializeFromFile();
void shuffleCards();
Card getNextCard();
friend ostream& operator <<(ostream& outs, const CardDeck& d);
};
#endif