00001 00005 #ifndef __MATRIXCELL_ATTRIBUTE_H__ 00006 #define __MATRIXCELL_ATTRIBUTE_H__ 00007 00008 #include "Observer.h" 00009 #include "CellAttribute.h" 00010 00018 class MatrixCellAttribute : public Information 00019 { 00020 public: 00026 MatrixCellAttribute() 00027 { 00028 this->m_cCellAttribute.setState(CellAttribute::DEAD); 00029 this->m_lCol = -1; 00030 this->m_lRow = -1; 00031 } 00032 00038 MatrixCellAttribute(long i_lCol, long i_lRow, CellAttribute::CELL_STATE i_eState) 00039 { 00040 this->m_cCellAttribute.setState(i_eState); 00041 this->m_lCol = i_lCol; 00042 this->m_lRow = i_lRow; 00043 } 00044 00051 CellAttribute::CELL_STATE getState() const { return m_cCellAttribute.getState(); } 00052 00059 void setState(CellAttribute::CELL_STATE i_eState){ m_cCellAttribute.setState(i_eState); } 00060 00066 long getCol() const { return this->m_lCol; } 00067 00073 void setCol(long i_lCol) { this->m_lCol = i_lCol; } 00074 00080 long getRow() const { return this->m_lRow; } 00081 00087 void setRow(long i_lRow) { this->m_lRow = i_lRow; } 00088 00089 private: 00094 CellAttribute m_cCellAttribute; 00095 00099 long m_lCol; 00100 00104 long m_lRow; 00105 }; 00106 00107 #endif // __MATRIXCELL_ATTRIBUTE_H__