AbyssLib 1.301
あびす謹製ノベルゲームフレームワークライブラリ

クラス CommandHeap

スクリプト命令の擬似ヒープクラスです。 [詳細]

#include <SimulatedHeap.h>

CommandHeapに対する継承グラフ
ICommandHeap

すべてのメンバ一覧

Public メソッド

 CommandHeap ()
 デフォルトコンストラクタです。
 ~CommandHeap ()
 デストラクタです。
void Initialize ()
 初期化を行います。
void SetParent (INovelEngine *Parent)
 親エンジンを設定します。
void Run ()
 スクリプト命令を実行します。
void Clear ()
 スクリプト命令リストをクリアします。
void Print (const ITextStream *Output) const
 スクリプト命令リストを出力します。
void Add (ICmd_Base *NewCommand, const CmdParam &Parameter)
 スクリプト命令リストにスクリプト命令を新規追加します。
vector< ICmd_Base * > * GetObj ()
 スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを取得します。
const vector< ICmd_Base * > * GetObj () const
 スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを取得します。
void Save (IIOStream *IOStream)
 スクリプト命令リストの保存を行います。
void Load (IIOStream *IOStream)
 スクリプト命令リストの読み込みを行います。
int GetIterator () const
 スクリプト命令のイテレータを取得します。
void AddIterator (int it)
 スクリプト命令のイテレータを加算します。
void SetIterator (int it)
 スクリプト命令のイテレータを設定します。
void PopIterator ()
 スクリプト命令のイテレータをポップします。
void ClearIterator ()
 スクリプト命令のイテレータをクリアします。
void PushIterator (int it)
 スクリプト命令のイテレータをプッシュします。
void PrintIterator (const ITextStream *Output) const
 スクリプト命令のイテレータのリストを出力します。
void SaveIterator (IIOStream *IOStream)
 スクリプト命令のイテレータの保存を行います。
void LoadIterator (IIOStream *IOStream)
 スクリプト命令のイテレータの読み込みを行います。

説明

スクリプト命令の擬似ヒープクラスです。

擬似ヒープとは、AbyssLib内の各種パラメータのことです。
AbyssLibでは本クラスを使用して、以下のパラメータを管理しています。
・スクリプト命令


コンストラクタとデストラクタ

デフォルトコンストラクタです。

デストラクタです。


関数

void Initialize ( )

初期化を行います。

void SetParent ( INovelEngine *  Parent)

親エンジンを設定します。

本クラスの親となるノベルエンジンクラスを設定します。

引数:
Parent[in]本クラスの親となるノベルエンジンクラスを指定します。
void Run ( )

スクリプト命令を実行します。

命令リストまたはイテレータが存在しない場合やイテレータが不正な位置を指している場合はランタイムエラーが発生します。
1回の実行でイテレータが指す命令クラスのRunメソッドを1回呼び出します。
よって、ループ構造の中で繰り返し呼び出す必要があります。

void Clear ( )

スクリプト命令リストをクリアします。

void Print ( const ITextStream *  Output) const [virtual]

スクリプト命令リストを出力します。

引数:
Output[in]テキスト出力ストリームを指定します。

ICommandHeapを実装しています。

void Add ( ICmd_Base *  NewCommand,
const CmdParam &  Parameter 
)

スクリプト命令リストにスクリプト命令を新規追加します。

引数:
NewCommand[in]新規追加する命令クラスを指定します。
Parameter[in]新規追加する命令クラスに引き渡すパラメータを指定します。
vector<ICmd_Base*>* GetObj ( )

スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを取得します。

戻り値:
スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを返します。
const vector<ICmd_Base*>* GetObj ( ) const

スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを取得します。

戻り値:
スクリプト命令リストの実体(vector<ICmd_Base*>)へのポインタを返します。
void Save ( IIOStream *  IOStream)

スクリプト命令リストの保存を行います。

引数:
IOStream[in]データ入出力クラスを指定します。
void Load ( IIOStream *  IOStream)

スクリプト命令リストの読み込みを行います。

引数:
IOStream[in]データ入出力クラスを指定します。
int GetIterator ( ) const [virtual]

スクリプト命令のイテレータを取得します。

イテレータとは、スクリプト命令の実行位置のことです。
スタック構造になっており、GOSUB〜RETURNの制御構造に対応しています。
イテレータが既に空で存在しない場合は、ランタイムエラーが発生します。

戻り値:
スクリプト命令のイテレータを返します。

ICommandHeapを実装しています。

void AddIterator ( int  it) [virtual]

スクリプト命令のイテレータを加算します。

イテレータとは、スクリプト命令の実行位置のことです。
スタック構造になっており、GOSUB〜RETURNの制御構造に対応しています。
イテレータが既に空で存在しない場合は、ランタイムエラーが発生します。

引数:
it[in]加算値を指定します。

ICommandHeapを実装しています。

void SetIterator ( int  it) [virtual]

スクリプト命令のイテレータを設定します。

イテレータとは、スクリプト命令の実行位置のことです。
スタック構造になっており、GOSUB〜RETURNの制御構造に対応しています。
イテレータが既に空で存在しない場合は、ランタイムエラーが発生します。

引数:
it[in]設定値を指定します。

ICommandHeapを実装しています。

void PopIterator ( ) [virtual]

スクリプト命令のイテレータをポップします。

イテレータとは、スクリプト命令の実行位置のことです。
スタック構造になっており、GOSUB〜RETURNの制御構造に対応しています。
イテレータが既に空で存在しない場合は、ランタイムエラーが発生します。

ICommandHeapを実装しています。

void ClearIterator ( )

スクリプト命令のイテレータをクリアします。

void PushIterator ( int  it) [virtual]

スクリプト命令のイテレータをプッシュします。

イテレータとは、スクリプト命令の実行位置のことです。
スタック構造になっており、GOSUB〜RETURNの制御構造に対応しています。

引数:
it[in]プッシュする値を指定します。

ICommandHeapを実装しています。

void PrintIterator ( const ITextStream *  Output) const [virtual]

スクリプト命令のイテレータのリストを出力します。

引数:
Output[in]テキスト出力ストリームを指定します。

ICommandHeapを実装しています。

void SaveIterator ( IIOStream *  IOStream)

スクリプト命令のイテレータの保存を行います。

引数:
IOStream[in]データ入出力クラスを指定します。
void LoadIterator ( IIOStream *  IOStream)

スクリプト命令のイテレータの読み込みを行います。

引数:
IOStream[in]データ入出力クラスを指定します。

このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義