[前へ]
[目次へ]
[次へ]
MPDataAdapter (ネイティブクラス)
このクラスは汎用ルール処理の対象データを扱うクラスです。
このクラスは複数の型データを
MPOperator
クラスが扱うための形に整形します。
入出力でビット数が異なる場合、下位ビット側の共通部のみが反映されます。
汎用ルール処理は
RuleProcessor
クラスよりも低速ですが、多様な記述が可能となり、
FGESが実行速度上苦手とする、データ集合に対する一括処理の一つの解として実装されています。
このクラスで扱うデータは参照のみを保持しています。
ルールを適用する可能性がある間は関係するオブジェクト全てを維持しなければいけません。
●継承
このクラスは継承をしていません。
●インターフェイスとインターフェイスメソッド
implements
INativeMPValue
(C++レベルキャスト)IFGESMPValue
●クラスメソッド
このクラスはクラスメソッドを持っていません。
●クラスメンバメソッド
名前
概要
SetInt
処理対象データとして定数を設定します
SetTileMap
処理対象データとしてタイルマップを設定します
SetBitmap
処理対象データとしてビットマップ画像を設定します
SetIntArray
処理対象データとして整数配列を設定します
SetBinary
処理対象データとしてバイナリデータを設定します
SetOperator
処理対象データとして汎用ルール演算の結果を使用するよう設定します
SetMethod
処理対象データとしてメソッドの結果を使用するよう設定します
SeOutputtTileMap
書込対象オブジェクトとしてタイルマップを設定します
SetOutputBitmap
書込対象オブジェクトとしてビットマップ画像を設定します
SetOutputIntArray
書込対象オブジェクトとして整数配列を設定します
SetOutputBinary
書込対象オブジェクトとしてバイナリデータを設定します
●クラス共有変数
このクラスはクラス共有変数を持っていません。
●インスタンス変数
このクラスはインスタンス変数を持っていません。
●C++レベル追加情報
クラスID:
FGES_CLASSID_MPDATAADAPTER
クラス名:
FGESMPDataAdapter
MPDataAdapter::SetInt
public
Bool
SetInt(
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
:要素データとして設定する定数。
先頭へ
MPDataAdapter::SetTileMap
public
Bool
SetTileMap(
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。
先頭へ
MPDataAdapter::SetBitmap
public
Bool
SetBitmap(
INativeInteger
x,
INativeInteger
y,
INativeInteger
width,
INativeInteger
height,
INativeBitmap
bitmap)
処理対象データとしてビットマップ画像を設定します。
ビットマップ画像を設定した場合、
指定したビットマップ画像のピクセルデータ(ARGB32/32bit)を二次元配列として扱います。
この設定は読み取り専用です。
この設定を行った状態で書込み処理を行っても失敗します。
戻り値:設定に成功した場合、真を返します。
INativeInteger
x
:処理対象としてマッピングする左上X座標。
INativeInteger
y
:処理対象としてマッピングする左上Y座標。
INativeInteger
width
:処理対象としてマッピングする横幅。
INativeInteger
height
:処理対象としてマッピングする縦幅。
INativeBitmap
bitmap
:要素データとして設定するビットマップ画像。
先頭へ
MPDataAdapter::SetIntArray
public
Bool
SetIntArray(
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進めるのに必要な要素数。
先頭へ
MPDataAdapter::SetBinary
public
Bool
SetBinary(
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のいずれかでなければならない。
先頭へ
MPDataAdapter::SetOperator
public
Bool
SetOperator(
INativeInteger
x,
INativeInteger
y,
INativeInteger
width,
INativeInteger
height,
MPOperator
operator_obj)
処理対象データとして汎用ルール演算の結果を使用するよう設定します。
この設定を行ったオブジェクトからデータを読み取ると、設定している汎用ルール演算が評価されます。
この時、現在の汎用ルール演算の構成内に設定している汎用ルール演算が既に含まれている場合例外が発生します。
この設定は読み取り専用です。
この設定を行った状態で書込み処理を行っても失敗します。
戻り値:設定に成功した場合、真を返します。
INativeInteger
x
:処理対象としてマッピングする左上X座標。
INativeInteger
y
:処理対象としてマッピングする左上Y座標。
INativeInteger
width
:処理対象としてマッピングする横幅。
INativeInteger
height
:処理対象としてマッピングする縦幅。
MPOperator
operator_obj
:結果として使用する汎用ルール演算。
先頭へ
MPDataAdapter::SetMethod
public
Bool
SetMethod(
INativeInteger
x,
INativeInteger
y,
INativeInteger
width,
INativeInteger
height,
INativeClosure
method_obj)
処理対象データとしてメソッドの評価値を使用するよう設定します。
この設定を行ったオブジェクトに対してデータを読み書きすると、設定しているメソッドが実行されます。
指定するメソッドは以下の形で定義されていなければいけません。
Bool(
Integer
x,
Integer
y,editable
Integer
value)
戻り値:指定された座標に対応する評価値を返した場合は真を返します。
Integer
x
:評価値を取得するX座標。
Integer
y
:評価値を取得するY座標。
editable
Integer
value
:[出力]評価値を出力するオブジェクト。
また、呼び出し時にホストオブジェクトは指定されません。
ホストオブジェクトが必要な場合は
BoundMethod
を使用してください。
ここで呼び出されるメソッドの実行時間には制限が掛けられており、
時間が掛かりすぎると例外が発生するようになっています。
処理に時間が掛かる場合は小分けにして実行するなど、制限時間に注意してください。
このメソッドの実行中、さらに汎用ルール処理を実行することはできません。
戻り値:設定に成功した場合、真を返します。
INativeInteger
x
:処理対象としてマッピングする左上X座標。
INativeInteger
y
:処理対象としてマッピングする左上Y座標。
INativeInteger
width
:処理対象としてマッピングする横幅。
INativeInteger
height
:処理対象としてマッピングする縦幅。
INativeClosure
method_obj
:評価値を設定するメソッド。
先頭へ
MPDataAdapter::SetOutputTileMap
public
Bool
SetOutputTileMap(
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。
先頭へ
MPDataAdapter::SetOutputBitmap
public
Bool
SetOutputBitmap(
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
:[入出力]要素データとして設定するビットマップ画像。
先頭へ
MPDataAdapter::SetOutputIntArray
public
Bool
SetOutputIntArray(
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進めるのに必要な要素数。
先頭へ
MPDataAdapter::SetOutputBinary
public
Bool
SetOutputBinary(
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のいずれかでなければならない。
先頭へ
[前へ]
[目次へ]
[次へ]
最終更新 2017/09/21