全細胞(全セル)を管理するクラス.
More...
#include <MatrixCell.h>
List of all members.
Public Member Functions |
| MatrixCell (long i_lColMax, long i_lRowMax) |
| コンストラクタ.
|
virtual | ~MatrixCell () |
| デストラクタ.
|
void | init (long i_lColMax, long i_lRowMax) |
| 初期化.
|
long | getColMax () const |
| セルの横最大幅を取得.
|
long | getRowMax () const |
| セルの縦最大幅を取得.
|
Cell * | getCell (long i_lCol, long i_lRow) |
| セルを取得する.
|
void | setCellState (long i_lCol, long i_lRow, CellAttribute::CELL_STATE i_eState) |
| セルの状態を設定する.
|
CellAttribute::CELL_STATE | getCellState (long i_lCol, long i_lRow) |
| セルの状態を取得する.
|
bool | refreshCell () |
| 全セルの更新を行う.
|
std::string | dispAllCellState () |
| 全セルの状態を表示.
|
std::string | dispNeighborAliveCell () |
| 隣接セルの生存数を表示.
|
Private Member Functions |
bool | makeCell () |
| セルを生成する.
|
bool | linkCell () |
| 隣接セルをリンクさせる.
|
bool | setNeighborCell (Cell *i_pcTargetCell, long i_lCol, long i_lRow) |
| 隣接セルを設定する.
|
long | check_region (long i_lValue, long i_lMax) |
| 境界値をチェックする.
|
bool | sendStateToNeighborCell () |
| 隣接セルに自分自身の状態を通知する.
|
bool | decideNextGeneration () |
| 次世代のセルを決定する.
|
void | setColMax (long i_lColMax) |
| セル横最大幅を設定.
|
bool | sendState (long i_lCol, long i_lRow, CellAttribute::CELL_STATE a_eState) |
| MatrixCellの状態を通知する.
|
void | setRowMax (long i_lRowMax) |
| セルの縦最大幅を設定.
|
Private Attributes |
long | m_lColMax |
| セルの横最大幅.
|
long | m_lRowMax |
| セルの縦最大幅.
|
std::vector< std::vector< Cell * > > | m_vecCellArray |
| セルの集合体.
|
Detailed Description
全細胞(全セル)を管理するクラス.
- Note:
- Cellを管理する.
Constructor & Destructor Documentation
MatrixCell::MatrixCell |
( |
long |
i_lColMax, |
|
|
long |
i_lRowMax |
|
) |
| [inline] |
virtual MatrixCell::~MatrixCell |
( |
| ) |
[inline, virtual] |
Member Function Documentation
long MatrixCell::check_region |
( |
long |
i_lValue, |
|
|
long |
i_lMax |
|
) |
| [private] |
境界値をチェックする.
- Parameters:
-
long | i_lValue チェックしたい値. |
long | i_lMax チェックしたい値の最大値. |
- Note:
- 引数i_lValueが境界値だった場合, 以下とする. ・最大値 = 最小値(0). つまり, 境界値は存在せず(2次元の場合)球面となる.
bool MatrixCell::decideNextGeneration |
( |
| ) |
[private] |
次世代のセルを決定する.
- Parameters:
-
- Returns:
- 通知結果.
- Return values:
-
string MatrixCell::dispAllCellState |
( |
| ) |
|
string MatrixCell::dispNeighborAliveCell |
( |
| ) |
|
Cell* MatrixCell::getCell |
( |
long |
i_lCol, |
|
|
long |
i_lRow |
|
) |
| [inline] |
セルを取得する.
- Parameters:
-
long | i_lCol 取得したいセルの横位置. |
long | i_lRow 取得したいセルの縦位置. |
- Returns:
- セル
セルの状態を取得する.
- Parameters:
-
long | i_lCol セルの座標位置(横方向) |
long | i_lRow セルの座標位置(縦方向) |
- Returns:
- セルの状態. 0:死 1:生
- Return values:
-
long MatrixCell::getColMax |
( |
| ) |
const [inline] |
セルの横最大幅を取得.
- Parameters:
-
- Returns:
- セルの横最大幅.
long MatrixCell::getRowMax |
( |
| ) |
const [inline] |
セルの縦最大幅を取得.
- Parameters:
-
- Returns:
- セルの縦最大幅.
void MatrixCell::init |
( |
long |
i_lColMax, |
|
|
long |
i_lRowMax |
|
) |
| |
初期化.
- Parameters:
-
- Returns:
- なし.
bool MatrixCell::linkCell |
( |
| ) |
[private] |
隣接セルをリンクさせる.
- Parameters:
-
- Returns:
- なし.
bool MatrixCell::makeCell |
( |
| ) |
[private] |
セルを生成する.
- Parameters:
-
- Returns:
- 処理結果を返す.
- Return values:
-
true | 全セルの生成に成功. |
false | セルの生成に失敗. |
bool MatrixCell::refreshCell |
( |
| ) |
|
全セルの更新を行う.
- Parameters:
-
- Returns:
- 更新の結果.
- Return values:
-
MatrixCellの状態を通知する.
- Parameters:
-
- Returns:
- 通知に成功/失敗を返す.
- Return values:
-
bool MatrixCell::sendStateToNeighborCell |
( |
| ) |
[private] |
隣接セルに自分自身の状態を通知する.
- Parameters:
-
- Returns:
- 通知結果.
- Return values:
-
セルの状態を設定する.
- Parameters:
-
- Returns:
- なし.
void MatrixCell::setColMax |
( |
long |
i_lColMax | ) |
[inline, private] |
セル横最大幅を設定.
- Parameters:
-
- Returns:
- なし.
- Note:
- 将来的には, セル横最大幅を可変にしたい. privateにしておくことで, プログラム実行中に変更不可としている.
bool MatrixCell::setNeighborCell |
( |
Cell * |
i_pcTargetCell, |
|
|
long |
i_lCol, |
|
|
long |
i_lRow |
|
) |
| [private] |
隣接セルを設定する.
- Parameters:
-
Cell* | i_pcTargetCell 隣接セルを設定するセル. |
long | i_lCol 設定するセルの横位置. |
long | i_lRow 設定するセルの縦位置. |
- Returns:
- 成功/失敗.
void MatrixCell::setRowMax |
( |
long |
i_lRowMax | ) |
[inline, private] |
セルの縦最大幅を設定.
- Parameters:
-
- Returns:
- なし.
- Note:
- 将来的には, セル縦最大幅を可変にしたい. privateにしておくことで, プログラム実行中に変更不可としている.
Member Data Documentation
The documentation for this class was generated from the following files: