[前へ] [目次へ] [次へ]

RuleProcessor (ネイティブクラス)


このクラスは事前設定したルール処理を一括して扱うクラスです。
入出力に複数の型を使用できるので、型変換にも使用することが出来ます。
入出力でビット数が異なる場合、下位ビット側の共通部のみが反映されます。

このクラスは処理条件データをルールのフィルタ値でANDした後、
ルールの条件値と一致した要素に対してのみ、
ターゲット(左辺値)に対してルールの右辺値を処理した結果に書き換えます。
入出力データは二次元配列として解釈され、
処理条件、左辺値、右辺値全ての要素が揃っている座標の要素に対してのみ、処理を行います。

このクラスで扱うデータは参照のみを保持しています。
ルールを適用する可能性がある間は関係するオブジェクト全てを維持しなければいけません。

●継承

   このクラスは継承をしていません。

●インターフェイスとインターフェイスメソッド

   このクラスはインターフェイスの実装宣言をしていません。

●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public設定メソッド SetCondInt処理条件データとして定数を設定します
public設定メソッド SetCondTileMap処理条件データとしてタイルマップを設定します
public設定メソッド SetCondBitmap処理条件データとしてビットマップ画像を設定します
public設定メソッド SetCondIntArray処理条件データとして整数配列を設定します
public設定メソッド SetCondBinary処理条件データとしてバイナリデータを設定します
public操作メソッド ResetRules設定しているルールを全て削除します
public設定メソッド AddRuleInt定数を右辺値とするルールを追加します
public設定メソッド AddRuleTileMapタイルマップを右辺値とするルールを追加します
public設定メソッド AddRuleBitmapビットマップ画像を右辺値とするルールを追加します
public設定メソッド AddRuleIntArray整数配列を右辺値とするルールを追加します
public設定メソッド AddRuleBinaryバイナリデータを右辺値とするルールを追加します
public設定メソッド SetTargetTileMapルール処理の左辺値としてタイルマップを設定します
public設定メソッド SetTargetBitmapルール処理の左辺値としてビットマップ画像を設定します
public設定メソッド SetTargetIntArrayルール処理の左辺値として整数配列を設定します
public設定メソッド SetTargetBinaryルール処理の左辺値としてバイナリデータを設定します
public操作メソッド Apply設定しているルールを適用してターゲットデータを更新します
public操作メソッド TargetFillターゲットデータに定数を設定します

●クラス共有変数

名前概要
readable SET代入
readable ADD加算
readable SUB減算
readable MUL乗算
readable DIV除算
readable MOD剰余
readable ANDビットごとのAND
readable ORビットごとのOR
readable XORビットごとのXOR

●インスタンス変数

   このクラスはインスタンス変数を持っていません。


●C++レベル追加情報

クラスID: FGES_CLASSID_RULEPROCESSOR
クラス名: FGESRuleProcessor



RuleProcessor::SetCondInt

public Bool SetCondInt( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             INativeInteger value)


   処理条件データとして定数を設定します。
   定数を設定した場合、
   (0,0)〜(0x3FFF_FFFF,0x3FFF_FFFF)の範囲に指定値(64bit)が設定された二次元配列として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
INativeInteger value :要素データとして設定する定数。

先頭へ


RuleProcessor::SetCondTileMap

public Bool SetCondTileMap( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             TileMapWindow tilemap, INativeInteger tile_layerid)


   処理条件データとしてタイルマップレイヤーを設定します。
   タイルマップレイヤーを設定した場合、
   指定したタイルマップレイヤーのタイルデータ(32bit)を二次元配列として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
TileMapWindow tilemap :要素データとして設定するタイルマップオブジェクト。
INativeInteger tile_layerid :要素データとして設定するタイルレイヤーID。

先頭へ


RuleProcessor::SetCondBitmap

public Bool SetCondBitmap( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             INativeBitmap bitmap)


   処理条件データとしてビットマップ画像を設定します。
   ビットマップ画像を設定した場合、
   指定したビットマップ画像のピクセルデータ(ARGB32/32bit)を二次元配列として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
INativeBitmap bitmap :要素データとして設定するビットマップ画像。

先頭へ


RuleProcessor::SetCondIntArray

public Bool SetCondIntArray( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             PIntArray intarray, INativeInteger ydist)


   処理条件データとして整数配列を設定します。
   整数配列を設定した場合、
   指定した整数配列を [y*ydist+x] でアクセスする二次元配列(64bit)として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
PIntArray intarray :要素データとして設定する整数配列オブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。

先頭へ


RuleProcessor::SetCondBinary

public Bool SetCondBinary( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             Binary bin, INativeInteger ydist, INativeInteger fact_size)


   処理条件データとしてバイナリデータブロックを設定します。
   バイナリデータブロックを設定した場合、
   指定したバイナリデータブロックを [y*ydist+x] でアクセスする二次元配列として扱います。
   この時の要素サイズは fact_size に依存します。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
Binary bin :要素データとして設定するバイナリデータオブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。
INativeInteger fact_size :1要素のバイト数。1/2/4/8のいずれかでなければならない。

先頭へ


RuleProcessor::ResetRules

public void ResetRules()

   このオブジェクトに登録済みのルールを全て削除します。

先頭へ


RuleProcessor::AddRuleInt

public Bool AddRuleInt( INativeInteger filter, INativeInteger cond,
             INativeInteger op_type, INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             INativeInteger value)


   定数を右辺値とするルールを追加します。
   定数を設定した場合、
   (0,0)〜(0x3FFF_FFFF,0x3FFF_FFFF)の範囲に指定値(64bit)が設定された二次元配列として扱います。

戻り値:処理に成功した場合、真を返します。

INativeInteger filter :処理条件データとANDするフィルタ値。
INativeInteger cond :処理条件データと比較する条件値。
INativeInteger op_type :条件を満たした時に行う処理の種類。以下のいずれか。
識別子意味
RuleProcessor::SET代入
RuleProcessor::ADD加算
RuleProcessor::SUB減算
RuleProcessor::MUL乗算
RuleProcessor::DIV除算
RuleProcessor::MOD剰余
RuleProcessor::ANDビットごとのAND
RuleProcessor::ORビットごとのOR
RuleProcessor::XORビットごとのXOR
INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
INativeInteger value :要素データとして設定する定数。

先頭へ


RuleProcessor::AddRuleTileMap

public Bool AddRuleTileMap( INativeInteger filter, INativeInteger cond,
             INativeInteger op_type, INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             TileMapWindow tilemap, INativeInteger tile_layerid)


   タイルマップレイヤーを右辺値とするルールを追加します。
   タイルマップレイヤーを設定した場合、
   指定したタイルマップレイヤーのタイルデータ(32bit)を二次元配列として扱います。

戻り値:処理に成功した場合、真を返します。

INativeInteger filter :処理条件データとANDするフィルタ値。
INativeInteger cond :処理条件データと比較する条件値。
INativeInteger op_type :条件を満たした時に行う処理の種類。以下のいずれか。
識別子意味
RuleProcessor::SET代入
RuleProcessor::ADD加算
RuleProcessor::SUB減算
RuleProcessor::MUL乗算
RuleProcessor::DIV除算
RuleProcessor::MOD剰余
RuleProcessor::ANDビットごとのAND
RuleProcessor::ORビットごとのOR
RuleProcessor::XORビットごとのXOR
INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
TileMapWindow tilemap :要素データとして設定するタイルマップオブジェクト。
INativeInteger tile_layerid :要素データとして設定するタイルレイヤーID。

先頭へ


RuleProcessor::AddRuleBitmap

public Bool AddRuleBitmap( INativeInteger filter, INativeInteger cond,
             INativeInteger op_type, INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             INativeBitmap bitmap)


   ビットマップ画像を右辺値とするルールを追加します。
   ビットマップ画像を設定した場合、
   指定したビットマップ画像のピクセルデータ(ARGB32/32bit)を二次元配列として扱います。

戻り値:処理に成功した場合、真を返します。

INativeInteger filter :処理条件データとANDするフィルタ値。
INativeInteger cond :処理条件データと比較する条件値。
INativeInteger op_type :条件を満たした時に行う処理の種類。以下のいずれか。
識別子意味
RuleProcessor::SET代入
RuleProcessor::ADD加算
RuleProcessor::SUB減算
RuleProcessor::MUL乗算
RuleProcessor::DIV除算
RuleProcessor::MOD剰余
RuleProcessor::ANDビットごとのAND
RuleProcessor::ORビットごとのOR
RuleProcessor::XORビットごとのXOR
INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
INativeBitmap bitmap :要素データとして設定するビットマップ画像。

先頭へ


RuleProcessor::AddRuleIntArray

public Bool AddRuleIntArray( INativeInteger filter, INativeInteger cond,
             INativeInteger op_type, INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             PIntArray intarray, INativeInteger ydist)


   整数配列を右辺値とするルールを追加します。
   整数配列を設定した場合、
   指定した整数配列を [y*ydist+x] でアクセスする二次元配列(64bit)として扱います。

戻り値:処理に成功した場合、真を返します。

INativeInteger filter :処理条件データとANDするフィルタ値。
INativeInteger cond :処理条件データと比較する条件値。
INativeInteger op_type :条件を満たした時に行う処理の種類。以下のいずれか。
識別子意味
RuleProcessor::SET代入
RuleProcessor::ADD加算
RuleProcessor::SUB減算
RuleProcessor::MUL乗算
RuleProcessor::DIV除算
RuleProcessor::MOD剰余
RuleProcessor::ANDビットごとのAND
RuleProcessor::ORビットごとのOR
RuleProcessor::XORビットごとのXOR
INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
PIntArray intarray :要素データとして設定する整数配列オブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。

先頭へ


RuleProcessor::AddRuleBinary

public Bool AddRuleBinary( INativeInteger filter, INativeInteger cond,
             INativeInteger op_type, INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             Binary bin, INativeInteger ydist, INativeInteger fact_size)


   バイナリデータブロックを右辺値とするルールを追加します。
   バイナリデータブロックを設定した場合、
   指定したバイナリデータブロックを [y*ydist+x] でアクセスする二次元配列として扱います。
   この時の要素サイズは fact_size に依存します。

戻り値:処理に成功した場合、真を返します。

INativeInteger filter :処理条件データとANDするフィルタ値。
INativeInteger cond :処理条件データと比較する条件値。
INativeInteger op_type :条件を満たした時に行う処理の種類。以下のいずれか。
識別子意味
RuleProcessor::SET代入
RuleProcessor::ADD加算
RuleProcessor::SUB減算
RuleProcessor::MUL乗算
RuleProcessor::DIV除算
RuleProcessor::MOD剰余
RuleProcessor::ANDビットごとのAND
RuleProcessor::ORビットごとのOR
RuleProcessor::XORビットごとのXOR
INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
Binary bin :要素データとして設定するバイナリデータオブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。
INativeInteger fact_size :1要素のバイト数。1/2/4/8のいずれかでなければならない。

先頭へ


RuleProcessor::SetTargetTileMap

public Bool SetTargetTileMap( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             editable TileMapWindow tilemap, INativeInteger tile_layerid)


   ターゲットデータ(左辺値)としてタイルマップレイヤーを設定します。
   タイルマップレイヤーを設定した場合、
   指定したタイルマップレイヤーのタイルデータ(32bit)を二次元配列として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
editable TileMapWindow tilemap :[入出力]要素データとして設定するタイルマップオブジェクト。
INativeInteger tile_layerid :要素データとして設定するタイルレイヤーID。

先頭へ


RuleProcessor::SetTargetBitmap

public Bool SetTargetBitmap( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             editable Bitmap bitmap)


   ターゲットデータ(左辺値)としてビットマップ画像を設定します。
   ビットマップ画像を設定した場合、
   指定したビットマップ画像のピクセルデータ(ARGB32/32bit)を二次元配列として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
editable Bitmap bitmap :[入出力]要素データとして設定するビットマップ画像。

先頭へ


RuleProcessor::SetTargetIntArray

public Bool SetTargetIntArray( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             editable PIntArray intarray, INativeInteger ydist)


   ターゲットデータ(左辺値)として整数配列を設定します。
   整数配列を設定した場合、
   指定した整数配列を [y*ydist+x] でアクセスする二次元配列(64bit)として扱います。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
editable PIntArray intarray :[入出力]要素データとして設定する整数配列オブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。

先頭へ


RuleProcessor::SetTargetBinary

public Bool SetTargetBinary( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height,
             editable Binary bin, INativeInteger ydist, INativeInteger fact_size)


   ターゲットデータ(左辺値)としてバイナリデータブロックを設定します。
   バイナリデータブロックを設定した場合、
   指定したバイナリデータブロックを [y*ydist+x] でアクセスする二次元配列として扱います。
   この時の要素サイズは fact_size に依存します。

戻り値:設定に成功した場合、真を返します。

INativeInteger x :処理対象としてマッピングする左上X座標。
INativeInteger y :処理対象としてマッピングする左上Y座標。
INativeInteger width :処理対象としてマッピングする横幅。
INativeInteger height :処理対象としてマッピングする縦幅。
editable Binary bin :[入出力]要素データとして設定するバイナリデータオブジェクト。
INativeInteger ydist :Y軸を1進めるのに必要な要素数。
INativeInteger fact_size :1要素のバイト数。1/2/4/8のいずれかでなければならない。

先頭へ


RuleProcessor::Apply

public void Apply()

   このオブジェクトに設定している各オブジェクトを使用して、
   ルールを追加した順で全て適用します。

先頭へ


RuleProcessor::TargetFill

public void TargetFill( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height, INativeInteger value)


   ターゲットデータ(左辺値)として設定されているオブジェクトの
   指定した範囲の要素全てに value を代入します。

INativeInteger x :代入範囲の左上X座標。
INativeInteger y :代入範囲の左上Y座標。
INativeInteger width :代入範囲の横幅。
INativeInteger height :代入範囲の縦幅。
INativeInteger value :代入する値。

先頭へ


RuleProcessor::SET

readable readonly Integer SET

   左辺値に右辺値を代入することを示す識別子。

先頭へ


RuleProcessor::ADD

readable readonly Integer ADD

   左辺値に右辺値を加算代入することを示す識別子。

先頭へ


RuleProcessor::SUB

readable readonly Integer SUB

   左辺値に右辺値を減算代入することを示す識別子。

先頭へ


RuleProcessor::MUL

readable readonly Integer MUL

   左辺値に右辺値を乗算代入することを示す識別子。

先頭へ


RuleProcessor::DIV

readable readonly Integer DIV

   左辺値を右辺値で除算することを示す識別子。

先頭へ


RuleProcessor::MOD

readable readonly Integer MOD

   左辺値を右辺値で剰余することを示す識別子。

先頭へ


RuleProcessor::AND

readable readonly Integer AND

   左辺値に右辺値をAND代入することを示す識別子。

先頭へ


RuleProcessor::OR

readable readonly Integer OR

   左辺値に右辺値をOR代入することを示す識別子。

先頭へ


RuleProcessor::XOR

readable readonly Integer XOR

   左辺値に右辺値をXOR代入することを示す識別子。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2018/05/30