[前へ]
[目次へ]
[次へ]
Binary (ネイティブクラス)
このクラスはメモリ領域をバイナリデータとして扱うクラスです。
解説中のLEはリトルエンディアン、BEはビッグエンディアンを意味します。
●継承
このクラスは継承をしていません。
●インターフェイスとインターフェイスメソッド
values
IBinary
Get
Set
implements
INativeBinary
(ネイティブインターフェイス)IFGESObject::GetBinary
(ネイティブインターフェイス)IFGESObject::SetBinary
●クラスメソッド
このクラスはクラスメソッドを持っていません。
●クラスメンバメソッド
名前
概要
#Value
値化メソッド
Alloc
メモリ領域を確保します
Free
メモリ領域を解放します
Expand
メモリ領域を拡張します
GetSize
確保しているメモリ領域のサイズを取得します
GetByte
符号なし1バイトデータを取得します
SetByte
符号なし1バイトデータを設定します
GetWORD
符号なしLE2バイトデータを取得します
SetWORD
符号なしLE2バイトデータを設定します
GetDWORD
符号なしLE4バイトデータを取得します
SetDWORD
符号なしLE4バイトデータを設定します
GetQWORD
符号なしLE8バイトデータを取得します
SetQWORD
符号なしLE8バイトデータを設定します
GetIntLE16
符号ありLE2バイトデータを取得します
SetIntLE16
符号ありLE2バイトデータを設定します
GetIntLE32
符号ありLE4バイトデータを取得します
SetIntLE32
符号ありLE4バイトデータを設定します
GetIntLE64
符号ありLE8バイトデータを取得します
SetIntLE64
符号ありLE8バイトデータを設定します
GetIntBE16
符号ありBE2バイトデータを取得します
SetIntBE16
符号ありBE2バイトデータを設定します
GetIntBE32
符号ありBE4バイトデータを取得します
SetIntBE32
符号ありBE4バイトデータを設定します
GetIntBE64
符号ありBE8バイトデータを取得します
SetIntBE64
符号ありBE8バイトデータを設定します
GetFloat
浮動小数データを取得します
SetFloat
浮動小数データを設定します
GetString
文字列データを取得します
SetString
文字列データを設定します
GetByteArray
符号なし1バイトデータ配列を取得します
SetByteArray
符号なし1バイトデータ配列を設定します
GetWORDArray
符号なしLE2バイトデータ配列を取得します
SetWORDArray
符号なしLE2バイトデータ配列を設定します
GetDWORDArray
符号なしLE4バイトデータ配列を取得します
SetDWORDArray
符号なしLE4バイトデータ配列を設定します
GetQWORDArray
符号なしLE8バイトデータ配列を取得します
SetQWORDArray
符号なしLE8バイトデータ配列を設定します
GetIntLE16Array
符号ありLE2バイトデータ配列を取得します
SetIntLE16Array
符号ありLE2バイトデータ配列を設定します
GetIntLE32Array
符号ありLE4バイトデータ配列を取得します
SetIntLE32Array
符号ありLE4バイトデータ配列を設定します
GetIntLE64Array
符号ありLE8バイトデータ配列を取得します
SetIntLE64Array
符号ありLE8バイトデータ配列を設定します
GetFloatArray
浮動小数データ配列を取得します
SetFloatArray
浮動小数データ配列を設定します
ExtractData
メモリブロックを取得します
CopyData
メモリブロックを設定します
GetHexString
メモリブロックを16進文字列化して取得します
SetHexString
16進文字列をバイナリ化して設定します
ToFile
このオブジェクトをファイルとして保存します
FromFile
ファイルをこのオブジェクトにコピーします
FromFileWithSelect
ユーザ指定のファイルをこのオブジェクトにコピーします
●クラス共有変数
このクラスはクラス共有変数を持っていません。
●インスタンス変数
このクラスはインスタンス変数を持っていません。
●C++レベル追加情報
クラスID:
FGES_CLASSID_BINARY
クラス名:
FGESBinary
Binary::IBinary@@Get
void IBinary@@Get(editable
IBinary
v)const
このオブジェクトが持つ値をバイナリ化して
v
に設定します。
このメソッドは最初に
v
に対して
INativeBinary
による設定を試みます。
これに失敗した場合、
v.Set
を呼び出します。
editable
IBinary
v
:値を受け取るオブジェクト
先頭へ
Binary::IBinary@@Set
void IBinary@@Set(
IBinary
v)
このオブジェクトに
v
を設定します。
このメソッドは最初に
v
から
INativeBinary
による取得を試みます。
これに失敗した場合、
v.Get
を呼び出します。
IBinary
v
:設定する値を持つオブジェクト
先頭へ
Binary::#Value
public #Value(
IBinary
v)
このオブジェクトに
v
を設定します。
このメソッドは最初に
v
から
INativeBinary
による取得を試みます。
これに失敗した場合、
v.Get
を呼び出します。
IBinary
v
:設定する値を持つオブジェクト
先頭へ
Binary::Alloc
public SelfType@ Alloc(
IInteger
size)
このオブジェクトで使用するメモリを割り当てます。
割り当てたメモリはこのオブジェクトが消滅する時に解放されます。
また、既にメモリを割り当て済みの場合例外が発生します。
このメソッドは最初に
size
から
INativeInteger
による取得を試みます。
これに失敗した場合、
size.Get
を呼び出します。
メモリを再割り当てするには
Free
で解放してから呼び出します。
割り当て済みのメモリ領域を拡張するには
Expand
を使います。
メモリの確保に失敗した場合、例外が発生します。
戻り値:
this
を返します。
IInteger
size
:確保するバイト数。1GB未満である必要があります。
先頭へ
Binary::Free
public SelfType@ Free()
このオブジェクトに割り当てているメモリを解放します。
このオブジェクトにメモリを割り当てていない場合何も起こりません。
戻り値:
this
を返します。
先頭へ
Binary::Expand
public SelfType@ Expand(
IInteger
size)
このオブジェクトで使用するメモリを拡張します。
既にこのオブジェクトに割り当てられているメモリサイズよりも
size
が小さい場合、何も起こりません。
このオブジェクトにメモリを割り当てていない場合、
Alloc
と同じ動作をします。
このメソッドは最初に
size
から
INativeInteger
による取得を試みます。
これに失敗した場合、
size.Get
を呼び出します。
メモリの確保に失敗した場合、例外が発生します。
戻り値:
this
を返します。
IInteger
size
:確保するバイト数。1GB未満である必要があります。
先頭へ
Binary::GetSize
public
Integer
GetSize()const
このオブジェクトに割り当てているメモリサイズを返します。
戻り値:現在このオブジェクトに割り当てられているメモリのバイト数を返します。
先頭へ
Binary::GetByte
public
Integer
GetByte(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号なし1バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は0〜255です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetByte
public SelfType@ SetByte(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号なし1バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は0〜255です。
先頭へ
Binary::GetWORD
public
Integer
GetWORD(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号なしLE2バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は0〜65535です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetWORD
public SelfType@ SetWORD(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号なしLE2バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は0〜65535です。
先頭へ
Binary::GetDWORD
public
Integer
GetDWORD(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号なしLE4バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は0〜4294967295です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetDWORD
public SelfType@ SetDWORD(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号なしLE4バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は0〜4294967295です。
先頭へ
Binary::GetQWORD
public
Integer
GetQWORD(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号なしLE8バイトデータを取得します。
ただし、0x8000000000000000以上の値は
Integer
型が扱えないため、負数化します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-9223372036854775808〜9223372036854775807です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetQWORD
public SelfType@ SetQWORD(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号なしLE8バイトデータを保存します。
ただし、0x8000000000000000以上の値は
Integer
型が扱えないため、値域外となります。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は0〜9223372036854775807です。
先頭へ
Binary::GetIntLE16
public
Integer
GetIntLE16(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありLE2バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-32768〜32767です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntLE16
public SelfType@ SetIntLE16(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありLE2バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-32768〜32767です。
先頭へ
Binary::GetIntLE32
public
Integer
GetIntLE32(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありLE4バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-2147483648〜2147483647です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntLE32
public SelfType@ SetIntLE32(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありLE4バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-2147483648〜2147483647です。
先頭へ
Binary::GetIntLE64
public
Integer
GetIntLE64(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありLE8バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-9223372036854775808〜9223372036854775807です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntLE64
public SelfType@ SetIntLE64(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありLE8バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-9223372036854775808〜9223372036854775807です。
先頭へ
Binary::GetIntBE16
public
Integer
GetIntBE16(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありBE2バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-32768〜32767です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntBE16
public SelfType@ SetIntBE16(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありBE2バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-32768〜32767です。
先頭へ
Binary::GetIntBE32
public
Integer
GetIntBE32(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありBE4バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-2147483648〜2147483647です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntBE32
public SelfType@ SetIntBE32(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありBE4バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-2147483648〜2147483647です。
先頭へ
Binary::GetIntBE64
public
Integer
GetIntBE64(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から
符号ありBE8バイトデータを取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。値域は-9223372036854775808〜9223372036854775807です。
IInteger
index
:取得する位置。
先頭へ
Binary::SetIntBE64
public SelfType@ SetIntBE64(
IInteger
index,
IInteger
val)
このオブジェクトに割り当てられているメモリ領域に
符号ありBE8バイトデータを保存します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
val
:設定する値。値域は-9223372036854775808〜9223372036854775807です。
先頭へ
Binary::GetFloat
public
Float
GetFloat(
IInteger
index)const
このオブジェクトに割り当てられているメモリ領域から浮動小数データを取得します。
浮動小数データのサイズやデータ形式はFGES VM自体をコンパイルした環境の
double
型に依存します。
異なるFGES VMではデータの互換性がない可能性があります。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
戻り値:取得した値を返します。
IInteger
index
:取得する位置。
先頭へ
Binary::SetFloat
public SelfType@ SetFloat(
IInteger
index,
IFloat
val)
このオブジェクトに割り当てられているメモリ領域に浮動小数データを保存します。
浮動小数データのサイズやデータ形式はFGES VM自体をコンパイルした環境の
double
型に依存します。
異なるFGES VMではデータの互換性がない可能性があります。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
これに失敗した場合、各インターフェイスの
Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IFloat
val
:設定する値。
先頭へ
Binary::GetString
public
String
GetString(
IInteger
index,
IInteger
size)const
このオブジェクトに割り当てられているメモリ領域から文字列データを取得します。
文字コードはShiftJISとして扱います。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:取得した文字列を返します。
IInteger
index
:取得する位置。
IInteger
size
:アクセスする最大バイト数。
先頭へ
Binary::SetString
public SelfType@ SetString(
IInteger
index,
IString
val,
IInteger
size)
このオブジェクトに割り当てられているメモリ領域に文字列データを保存します。
文字コードはShiftJISで、
val
が
size
に収まらない場合は入る範囲に打ち切られます。
打ち切られると困る場合は事前に
String::GetLength
で収まることを確認してください。
文字列の設定後、
size
が余っている場合は00で埋められます。
このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
これに失敗した場合、各インターフェイスの
Get
を呼び出します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IString
val
:設定する文字列。
IInteger
size
:設定するバイト数。
先頭へ
Binary::GetByteArray
public SelfType@ GetByteArray(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号なし1バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetByteArray
public SelfType@ SetByteArray(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号なし1バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetWORDArray
public SelfType@ GetWORDArray(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号なし2バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetWORDArray
public SelfType@ SetWORDArray(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号なし2バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetDWORDArray
public SelfType@ GetDWORDArray(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号なし4バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetDWORDArray
public SelfType@ SetDWORDArray(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号なし4バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetQWORDArray
public SelfType@ GetQWORDArray(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号なし8バイトデータ配列を取得します。
ただし、0x8000000000000000以上の値は
Integer
型が扱えないため、負数化します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetQWORDArray
public SelfType@ SetQWORDArray(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号なし8バイトデータ配列を保存します。
ただし、0x8000000000000000以上の値は
Integer
型が扱えないため、値域外となります。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetIntLE16Array
public SelfType@ GetIntLE16Array(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号あり2バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetIntLE16Array
public SelfType@ SetIntLE16Array(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号あり2バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetIntLE32Array
public SelfType@ GetIntLE32Array(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号あり4バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetIntLE32Array
public SelfType@ SetIntLE32Array(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号あり4バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetIntLE64Array
public SelfType@ GetIntLE64Array(
IInteger
index,
IInteger
count,
editable
PIntArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から
符号あり8バイトデータ配列を取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PIntArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetIntLE64Array
public SelfType@ SetIntLE64Array(
IInteger
index,
IInteger
count,
PIntArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に
符号あり8バイトデータ配列を保存します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PIntArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::GetFloatArray
public SelfType@ GetFloatArray(
IInteger
index,
IInteger
count,
editable
PFloatArray
out_array,
IInteger
? out_index=NULL)const
このオブジェクトに割り当てられているメモリ領域から浮動小数データを取得します。
浮動小数データのサイズやデータ形式はFGES VM自体をコンパイルした環境の
double
型に依存します。
異なるFGES VMではデータの互換性がない可能性があります。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは
out_array
の指定した領域に取得したデータを書き込みます。
書き込み先の領域はこのメソッドを呼び出す前に確保済みでなければいけません。
確保されていない領域へ書き込みを試行した場合は例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:取得する位置。
IInteger
count
:取得する要素数。
editable
PFloatArray
out_array
:[出力]取得したデータを格納する配列オブジェクト。
IInteger
? out_index=NULL
:
out_array
の書き込み開始要素番号。
取得したデータは
out_index
〜
out_index+count-1
番の要素に格納されます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::SetFloatArray
public SelfType@ SetFloatArray(
IInteger
index,
IInteger
count,
PFloatArray
src_array,
IInteger
? src_index=NULL)
このオブジェクトに割り当てられているメモリ領域に浮動小数データを保存します。
浮動小数データのサイズやデータ形式はFGES VM自体をコンパイルした環境の
double
型に依存します。
異なるFGES VMではデータの互換性がない可能性があります。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:
this
を返します。
IInteger
index
:設定する位置。
IInteger
count
:設定する要素数。
PFloatArray
src_array
:設定するデータを読み取る配列オブジェクト。
IInteger
? src_index=NULL
:
src_array
の読み取り開始要素番号。
設定するデータは
src_index
〜
src_index+count-1
番の要素から読み取られます。
空参照を指定した場合は0を指定したものとして扱います。
先頭へ
Binary::ExtractData
public
Bool
ExtractData(
IInteger
index,editable
INativeBinary
dst,
IInteger
size)const
このオブジェクトに割り当てられているメモリ領域の一部をダンプコピーします。
dst
のメモリ領域は再割り当てされ、データは上書きされます。
このメソッドは最初に
index
から
INativeInteger
による取得を試みます。
これに失敗した場合、
index.Get
を呼び出します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは引数に
this
と同じオブジェクトを使用すると例外が発生します。
戻り値:処理に成功すると真を返します。
IInteger
index
:抽出する位置。
editable
INativeBinary
dst
:抽出したデータを保存するオブジェクト。
IInteger
size
:抽出するバイト数。
先頭へ
Binary::CopyData
public
Bool
CopyData(
IInteger
index,
IBinary
src,
IInteger
src_index,
IInteger
size)
このオブジェクトに割り当てられているメモリ領域に、
src
のメモリ領域の指定した範囲をダンプコピーします。
このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
これに失敗した場合、各インターフェイスの
Get
を呼び出します。
index src_index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
戻り値:処理に成功すると真を返します。
IInteger
index
:書き込む位置。
IBinary
src
:コピー元のオブジェクト。
IInteger
src_index
:
src
上の読み取り位置。
IInteger
size
:コピーするバイト数。
先頭へ
Binary::GetHexString
public
String
GetHexString(
IInteger
index,
IInteger
size)const
このオブジェクトに割り当てられているメモリ領域を16進文字列化して取得します。
index
は0起算のバイト単位インデックスです。
また、領域外へのアクセスは例外を発生します。
このメソッドは最初に各引数から
INativeInteger
による取得を試みます。
これに失敗した場合、
IInteger@@Get
を呼び出します。
戻り値:16進文字列化した文字列を返します。
IInteger
index
:取得する位置。
IInteger
size
:取得するバイト数。
先頭へ
Binary::SetHexString
public
Integer
SetHexString(
IInteger
index,
IString
val,
IInteger
size)
このオブジェクトに割り当てられているメモリ領域に16進文字列をバイナリ化して保存します。
16進文字列は半角の文字列で、2桁1バイト単位で処理されます。
バイト単位で切れている場所で16進文字列として解釈できない文字がある場合は読み飛ばします。
このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
これに失敗した場合、各インターフェイスの
Get
を呼び出します。
index
は0起算のバイト単位インデックスです。
また、
val
が値域外の場合や、領域外へのアクセスは例外を発生します。
戻り値:変換されオブジェクトに設定されたバイト数を返します。
IInteger
index
:設定する位置。
IString
val
:設定する16進文字列。
IInteger
size
:設定する最大バイト数。
先頭へ
Binary::ToFile
public
Integer
ToFile(
IString
fname,
IInteger
size)const
このオブジェクトの内容をバイナリファイルとして保存します。
FGES VM
が
Protected Mode
で動作している場合、ファイル名にパスは使用できません。
このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
これに失敗した場合、各インターフェイスの
Get
を呼び出します。
ファイルの書き込みに成功した場合、書き込めたバイト数を返します。
ファイルを書き込みモードで開けない場合、-1を返します。
それ以外のエラーが発生した場合、例外が発生します。
戻り値:書き込めたバイト数を返します。ファイルを開けない場合、-1を返します。
IString
fname
:保存するファイル名。
IInteger
size
:保存する上限バイト数。
先頭へ
Binary::FromFile
public
Integer
FromFile(
IString
fname)
指定したファイルの内容をこのオブジェクトにダンプコピーします。
FGES VM
が
Protected Mode
で動作している場合、ファイル名にパスは使用できません。
ファイルの読み取りに成功した場合、読み込めたバイト数を返します。
ファイルを読み取りモードで開けない場合、-1を返します。
それ以外のエラーが発生した場合、例外が発生します。
このメソッドは最初に
fname
から
INativeString
による取得を試みます。
これに失敗した場合、
fname.Get
を呼び出します。
戻り値:読み込めたバイト数を返します。ファイルを開けない場合、-1を返します。
IString
fname
:読み取るファイル名。
先頭へ
Binary::FromFileWithSelect
public
Integer
FromFileWithSelect(
INativeString
typelabel,
INativeString
typeext,
INativeString
? title=NULL)
ファイル選択ダイアログを表示し、ユーザーが選択したファイルの内容をこのオブジェクトにダンプコピーします。
このメソッドは
FGES VM
が
Protected Mode
で動作している場合でも、任意の場所のファイルを読み込めます。
ファイルの読み取りに成功した場合、読み込めたバイト数を返します。
ファイルを読み取りモードで開けない場合、-1を返します。
ファイル選択がキャンセルされた場合、-2を返します。
それ以外のエラーが発生した場合、例外が発生します。
このメソッドはFGSPlayerおよびFGSEditorで追加されているメソッドです。
標準のFGES With FGLには含まれていません。
戻り値:読み込めたバイト数を返します。
ファイルを開けない場合、-1を返します。
ファイル選択がキャンセルされた場合、-2を返します。
INativeString
typelabel
:読み込むファイルの種類として表示するラベル。
INativeString
typeext
:読み込むファイルの拡張子。
INativeString
? title=NULL
:ファイル選択ダイアログのタイトル。
空参照を指定した場合は '開く' が指定されたものとして扱います。
先頭へ
[前へ]
[目次へ]
[次へ]
最終更新 2023/09/17