biquadris / display.h
display.h
Raw
/*
    BiquadrisDisplay class module
    
    abstract class for concrete displays (TextDisplay and GraphicDisplay)
	more documentation on textdisplay.h and graphicdisplay.h
*/

#ifndef _DISPLAY_H_
#define _DISPLAY_H_

#include <ostream>
#include <string>

class BiquadrisDisplay {
	protected:
		int amount, width, height, highScore;
	public:
		BiquadrisDisplay(int amount, int width, int height);
		virtual ~BiquadrisDisplay();
		virtual void update(int _highScore) = 0;
		virtual void update(int boardId, int score) = 0;
		virtual void update(int boardId, int level, char nextBlock) = 0;
		virtual void update(int boardId, int row, int col, char type) = 0;
		virtual void setHint(std::string hint) = 0;
		virtual void playerLoses() = 0;
		virtual bool printable() = 0;
		virtual void print(std::ostream &out);
};

#endif