#ifndef __SWINE_HPP__ #define __SWINE_HPP__ #include #include #include #include "diceroll.hpp" using std::vector; using std::bitset; namespace cs427_527 { class SwineGame; class SwineScoresheet { public: SwineScoresheet(const SwineGame& g); bool isFinished() const; void update(int cat, int score); int getScore(int cat) const; void output(std::ostream& os) const; private: const SwineGame& game; vector scores; }; std::ostream& operator<<(std::ostream& os, const SwineScoresheet& sheet); class SwineGame { public: SwineGame(int t); int countCategories() const; int targetScore() const; int categoryScore(const DiceRoll& roll, int cat) const; SwineScoresheet blankSheet() const; private: int target; vector> scoringDice; }; } #endif