summaryrefslogtreecommitdiff
path: root/src/Model/Cell.hpp
blob: cb4bc217d9f2f1ed529e3b412d68f27dfeef13bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#ifndef DEF_CELL
#define DEF_CELL

/* Cell.h
 * Defines the class Cell
 * A cell represents a cell in the grid
 * Creators : krilius, manzerbredes
 * Date : 29/04/2015 */

#include <iostream>


template<class T> class Cell
{
	private:
		T*  m_Element;

	public:

		//Constructor
		Cell(std::string value)
		{
			m_Element=new T();
			m_Element->setValue(value);
		}


		//Destructor
		~Cell()
		{
			delete m_Element;
		}

		//Test if the cell is empty
		bool isEmpty()
		{
		    return true;
		}

		T getElement(){
			return this->m_Element;
		}

		bool equals(Cell<T> *cell){
			/*if(cell->getElement() == this->m_Element){
				return true;
			}*/
			return true;
		}

		//Return the element value
		std::string getElementValue()
		{
		    return m_Element->getValue();
		}

		
		// Description
		std::string description()
		{
			return m_Element->description();
		}
		
};



template<class T> 
bool operator==(Cell<T> a, Cell<T> b){
	return true;
}

#endif