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

PackInt (ネイティブクラス)


このクラスは1つの64ビット整数をより小さな符号なし整数の固定長配列として扱うクラスです。
複数の整数を1つの整数に詰め込んだり展開したりビットシフト処理をすることができます。
また、各要素に名前を付けて名前でアクセスすることができます。

●継承

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

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

   values IInteger
          Get
          Set


   implements INativeInteger
          Get
          (ネイティブインターフェイス)IFGESObject::GetInt
          (ネイティブインターフェイス)IFGESObject::SetInt


●クラスメソッド

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

●クラスメンバメソッド

名前概要
public設定メソッド #operator=64ビット整数値で全要素を一斉代入します
public取得メソッドconst #operator[]指定した要素番号の値を取得します
public取得メソッドconst #operator:指定した要素名の値を取得します
public設定メソッド #operator=[]全要素を一斉代入します
public設定メソッド SetPackInfo固定長配列の名前、大きさを設定します
public設定メソッド SetBitFieldInfo固定長配列の名前、大きさ、配置を設定します
public取得メソッドconst Get指定した要素番号の値を取得します
public取得メソッドconst GetName指定した要素名の値を取得します
public設定メソッド Set指定した要素番号の要素に値を代入します
public設定メソッド SetName指定した要素名の要素に値を代入します
public設定メソッド AllSet全要素を一斉代入します
public取得メソッドconst GetCount要素数を取得します
public取得メソッドconst ToListString配列を文字列リスト化して取得します
public設定メソッド FromListString文字列リストをこの配列に展開します
public取得メソッドconst ToListString10配列を文字列リスト化して取得します
public設定メソッド FromListString10文字列リストをこの配列に展開します
public比較・判定メソッドconst IsValidIndex指定した要素番号が有効か判定します
public操作メソッドconst Packこの固定長配列の設定で各要素値を64ビット整数にまとめます
public取得メソッドconst FilterGetInt指定した要素集合の値だけを64ビット整数にまとめます
public操作メソッドconst UnPackこの固定長配列の設定で64ビット整数を各要素値に分解します
public操作メソッドconst to_i整数化した値を返します
public操作メソッドconst to_f浮動小数化した値を返します
public操作メソッドconst to_s文字列化した値を返します

●クラス共有変数

   このクラスはクラス共有変数を持っていません。

●インスタンス変数

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


●C++レベル追加情報

クラスID: FGES_CLASSID_PACKINT
クラス名: FGESPackInt



PackInt::IInteger@@Get

void IInteger@@Get(editable IInteger v)const

   このオブジェクトが持つ値を整数化して v に設定します。
   このメソッドは全要素集合を64ビット整数にまとめた値を v に設定します。

   このメソッドは最初に v に対して INativeInteger による設定を試みます。
   これに失敗した場合、 v.Set を呼び出します。

editable IInteger v :値を受け取るオブジェクト

先頭へ


PackInt::IInteger@@Set

void IInteger@@Set( IInteger v)

   このオブジェクトに v を設定します。
   このメソッドは v を各要素値に分解します。

   このメソッドは最初に v から INativeInteger による取得を試みます。
   これに失敗した場合、 v.Get を呼び出します。

IInteger v :設定する値を持つオブジェクト

先頭へ


PackInt::INativeInteger@@Get

Integer INativeInteger@@Get()const

   FGESレベルで使用できる形の値を取得します。
   このメソッドは全要素集合を64ビット整数にまとめた値を返します。

戻り値:FGESレベルで使用できる形の値。

先頭へ


PackInt::#operator=

public SelfType@ #operator=( IInteger v)

   このオブジェクトに v を代入します。
   このメソッドは v を各要素値に分解します。

   このメソッドは最初に v から INativeInteger による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値: this を返します。

IInteger v :代入する値を持つオブジェクト

先頭へ


PackInt::#operator[]

public readonly Integer #operator[]( IInteger v)const

   この配列の v 番の要素の値を返します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。

   このメソッドは最初に v から INativeInteger による取得を試みます。
   これに失敗した場合、 v.Get を呼び出します。

戻り値:指定した要素番号の値を返します。

IInteger v :取得する要素番号(0起算)

先頭へ


PackInt::#operator:

public readonly Integer #operator:( IString v)const

   この配列の v の要素名の要素の値を返します。
   このメソッドは指定した名前が無効な場合、例外が発生します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get を呼び出します。

戻り値:指定した要素名の要素の値を返します。

IString v :取得する要素名

先頭へ


PackInt::#operator=[]

public SelfType@ #operator=[](...)

   この配列に引数として渡した要素を一括して代入します。
   この配列が既に持っていた値は放棄され、引数の値だけで構成された配列になります。
   
   引数として空参照を渡した場合、その要素は0として扱います。
   設定されている要素数より引数が少ない場合、省略された要素は0として扱います。
   
   複数の要素が同じビットを共有している場合、該当ビットはORされます。
   
戻り値: this を返します。

可変長引数:代入する要素リスト。 INativeInteger で処理できる型でなければいけません。

先頭へ


PackInt::SetPackInfo

public Bool SetPackInfo(...)

   このオブジェクトを固定長配列として使うための設定を行います。
   このメソッドの引数は INativeString name, INativeInteger bits を1単位として、要素数分指定します。
   ここで name は要素名、 bits はビット数となり、0番から順に割り当てられます。
   また、全要素の bits の合計は64以下である必要があります。
   
戻り値:設定に成功すると真を返します。

可変長引数:設定リスト。指定は本文を参照してください。

先頭へ


PackInt::SetBitFieldInfo

public Bool SetBitFieldInfo(...)

   このオブジェクトを固定長配列として使うための設定を行います。
   このメソッドの引数は INativeString name, INativeInteger addr, INativeInteger bits を1単位として、要素数分指定します。
   ここで name は要素名、 addr はビット位置、 bits はビット数となり、0番から順に割り当てられます。
   ビット位置はビット0が0で、最下位ビットの位置を指定します。
   また、全要素の addr+bits は64以下である必要があります。
   
戻り値:設定に成功すると真を返します。

可変長引数:設定リスト。指定は本文を参照してください。

先頭へ


PackInt::Get

public readonly Integer Get( IInteger index)const

   この配列の index 番の要素の値を返します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。
   
   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

   このメソッドは #operator[] と同じ動作です。

戻り値:指定した要素番号の値を返します。

IInteger index :取得する要素番号(0起算)

先頭へ


PackInt::GetName

public readonly Integer GetName( IString v)const

   この配列の v の要素名の要素の値を返します。
   このメソッドは指定した名前が無効な場合、例外が発生します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get を呼び出します。

   このメソッドは #operator: と同じ動作です。

戻り値:指定した要素名の要素の値を返します。

IString v :取得する要素名

先頭へ


PackInt::Set

public SelfType@ Set( IInteger index, IInteger value)

   この配列の index 番の要素に value を代入します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。
   
戻り値: this を返します。

IInteger index :設定する要素番号(0起算)
IInteger value :設定する値

先頭へ


PackInt::SetName

public SelfType@ SetName( IString name, IInteger value)

   この配列の name の要素名の要素に value を代入します。
   このメソッドは指定した要素名が無効な場合、例外が発生します。

   このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
   これに失敗した場合、各インターフェイスの Get を呼び出します。
   
戻り値: this を返します。

IString name :設定する要素名
IInteger value :設定する値

先頭へ


PackInt::AllSet

public SelfType@ AllSet(...)

   この配列に引数として渡した要素を一括して代入します。
   この配列が既に持っていた値は放棄され、引数の値だけで構成された配列になります。
   
   引数として空参照を渡した場合、その要素は0として扱います。
   設定されている要素数より引数が少ない場合、省略された要素は0として扱います。
   
   複数の要素が同じビットを共有している場合、該当ビットはORされます。
   
   このメソッドは #operator=[] と同じ動作です。
   
戻り値: this を返します。

可変長引数:代入する要素リスト。 INativeInteger で処理できる型でなければいけません。

先頭へ


PackInt::GetCount

public Integer GetCount()const

   この配列の要素数を返します。

戻り値:この配列の要素数を返します。

先頭へ


PackInt::ToListString

public String ToListString()const

   この配列の各要素の値を16進カンマ区切りの文字列リストに変換します。

戻り値:配列の各要素の値を文字列リストに変換した文字列を返します。

先頭へ


PackInt::FromListString

public void FromListString( IString liststr)

   配列の各要素の値を16進カンマ区切りで記述した文字列リストをこの配列に展開します。
   このメソッドはこの配列に既に格納されていた要素値をクリアします。

IString liststr :展開する文字列リスト

先頭へ


PackInt::ToListString10

public String ToListString10()const

   この配列の各要素の値を10進カンマ区切りの文字列リストに変換します。

戻り値:配列の各要素の値を文字列リストに変換した文字列を返します。

先頭へ


PackInt::FromListString10

public void FromListString10( IString liststr)

   配列の各要素の値を10進カンマ区切りで記述した文字列リストをこの配列に展開します。
   このメソッドはこの配列に既に格納されていた要素値をクリアします。

IString liststr :展開する文字列リスト

先頭へ


PackInt::IsValidIndex

public Bool IsValidIndex( IInteger index)const

   index がこの配列の要素番号として有効か判定します。

   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値: index がこの配列の要素番号として有効であれば真を返します。

IInteger index :判定する要素番号。

先頭へ


PackInt::Pack

public Integer Pack(...)const

   引数として渡した要素をこの配列の設定で64ビット整数にまとめた値を生成して返します。
   この配列に格納されている値は考慮されません。
   
   このメソッドは引数として PIntArray 型のオブジェクトを一つだけ渡した場合に限り、
   その配列の内容を引数列とみなして処理を行います。
   
   引数として空参照を渡した場合、その要素は0として扱います。
   設定されている要素数より引数が少ない場合、省略された要素は0として扱います。
   
   複数の要素が同じビットを共有している場合、該当ビットはORされます。
   
戻り値:引数として渡した要素をこの配列の設定で64ビット整数にまとめた値を返します。

可変長引数:まとめる要素リスト。 INativeInteger で処理できる型でなければいけません。

先頭へ


PackInt::FilterGetInt

public Integer FilterGetInt( IInteger filter)const

   この配列の要素のうち、 filter で指定した要素のみを64ビット整数にまとめた値を生成して返します。

   このメソッドは最初に filter から INativeInteger による取得を試みます。
   これに失敗した場合、 filter.Get を呼び出します。

戻り値:指定した要素のみを64ビット整数にまとめた値を生成して返します。

IInteger filter :取得する要素集合。
      各ビットが要素番号に対応し、1になっている要素のみをまとめます。
      ビットと要素番号の対応はビット0(1)が要素0、ビット1(2)が要素1・・・で32要素まで扱えます。

先頭へ


PackInt::UnPack

public void UnPack( INativeInteger? packed_value,...)const

   packed_value の64ビット整数をこの配列の設定で分解した値または、この配列の各要素を一括取得します。
   このメソッドは packed_value が空参照であった場合、この配列に格納されている値を使用します。
   
   このメソッドは引数が2個で、第2引数として editable PIntArray 型のオブジェクトを渡した場合に限り、
   その配列にこの配列の内容を変換コピーします。
   
   このメソッドは第2引数以降に渡したオブジェクトに配列の0番から順に代入します。
   第2引数以降に空参照を渡した場合、その要素は無視されます。
   設定されている要素数より引数が少ない場合、省略された要素は無視されます。
   
INativeInteger? packed_value :分解する値。空参照の場合この配列の要素値を使用します。
可変長引数:まとめる要素リスト。 editable INativeInteger で処理できる型でなければいけません。

先頭へ


PackInt::to_i

public Integer to_i()const

   このオブジェクトを整数化した結果を返します。
   このメソッドは全要素集合を64ビット整数にまとめた値を返します。

戻り値:このオブジェクトを整数化した結果を返します。

先頭へ


PackInt::to_f

public Float to_f()const

   このオブジェクトを浮動小数化した結果を返します。
   このメソッドは全要素集合を64ビット整数にまとめた値を浮動小数化して返します。

戻り値:このオブジェクトを浮動小数化した結果を返します。

先頭へ


PackInt::to_s

public String to_s()const

   このオブジェクトを文字列化した結果を返します。
   このメソッドは全要素集合を64ビット整数にまとめた値を文字列化して返します。

戻り値:このオブジェクトを文字列化した結果を返します。

先頭へ


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

最終更新 2019/04/09