全細胞(全セル)を管理するクラス.
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: