DiffBitsArray

class DiffBitsArray

DiffBits の配列

実際には非ゼロの出力要素ごとに PackedVal を持つ.

参考

Fsim, DiffBits

参考

PackedVal

Public Functions

DiffBitsArray() = default

コンストラクタ

~DiffBitsArray() = default

デストラクタ

inline SizeType elem_num() const

非ゼロの要素数を返す.

inline SizeType output(SizeType index) const

非ゼロの出力番号を返す.

パラメータ:

index -- [in] 位置番号( 0 <= index < elem_num() )

inline PackedVal dbits(SizeType index) const

故障伝搬ビットパタンを返す.

パラメータ:

index -- [in] 位置番号( 0 <= index < elem_num() )

inline PackedVal dbits_union() const

全ての出力のビットパタンの OR を返す.

inline DiffBits get_slice(SizeType pos) const

ビットスライスを得る.

パラメータ:

pos -- [in] ビット位置

inline DiffBitsArray masking(PackedVal mask) const

ビットマスクを行う.

inline void clear()

内容をクリアする.

inline void add_output(SizeType output, PackedVal dbits)

出力のビットパタンを追加する.

パラメータ:
  • output -- [in] 出力番号

  • dbits -- [in] 故障伝搬ビットパタン

inline void add_pat(const DiffBits &dbits, SizeType pos)

1ビット分のパタンを追加する.

パラメータ:
  • dbits -- [in] ビットパタン

  • pos -- [in] ビット位置

inline void sort()

内容をソートする.

inline DiffBitsArray sorted() const

ソートした内容を返す.

inline bool operator==(const DiffBitsArray &right) const

等価比較演算

inline bool operator!=(const DiffBitsArray &right) const

非等価比較演算

inline void print(std::ostream &s) const

内容を出力する.

inline SizeType hash() const

ハッシュ関数