Assign

class Assign : public TpgBase

ノードに対する値の割当を表すクラス

ノード番号と時刻と値を持つ. なお,縮退故障モードのときは時刻は 1 となる.

参考

AssignList

Public Functions

Assign() = default

空のコンストラクタ

内容は不定

inline Assign(const std::shared_ptr<NetworkRep> &network, SizeType node_id, int time, bool val)

値を指定したコンストラクタ

パラメータ:
  • network -- [in] 親のネットワーク

  • node_id -- [in] ノード番号

  • time -- [in] 時刻 ( 0 or 1 )

  • val -- [in] 値

inline Assign(const TpgNode &node, int time, bool val)

ノードを指定したコンストラクタ

パラメータ:
  • node -- [in] ノード

  • time -- [in] 時刻 ( 0 or 1 )

  • val -- [in] 値

Assign(const Assign &src) = default

コピーコンストラクタ

Assign &operator=(const Assign &src) = default

コピー代入演算子

inline SizeType node_id() const

ノード番号を返す.

inline TpgNode node() const

ノードを返す.

inline int time() const

時刻を返す.

返される値は 0 か 1

inline SizeType node_time() const

ノードと時刻をパックした値を返す.

結果は等価比較のみに用いる.

inline bool val() const

値を返す.

inline Assign operator~() const

反対の割り当てを返す.

inline SizeType hash() const

ハッシュ値を返す.

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

等価関係の比較関数

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

非等価比較演算子

bool operator<(const Assign &right) const

大小関係の比較関数

inline bool operator>(const Assign &right) const

大小関係の比較関数

inline bool operator<=(const Assign &right) const

大小関係の比較関数

inline bool operator>=(const Assign &right) const

大小関係の比較関数

Public Static Functions

static inline SizeType encode(SizeType node_id, int time, bool val)

mPackVal に符号化する.

パラメータ:
  • node_id -- [in] ノード番号

  • time -- [in] 時刻 ( 0 or 1 )

  • val -- [in] 値

static inline SizeType decode_node_id(SizeType pack_val)

mPackVal からノード番号を取り出す.

static inline int decode_time(SizeType pack_val)

mPackVal から時刻を取り出す.

static inline bool decode_val(SizeType pack_val)

mPackVal から値を取り出す.