DetCond

class DetCond

故障検出条件を表すクラス

mandatory_condition & (cube_1 | cube_2 | ... | cube_n) の形で表される. mandatory_condition, cube_i はそれぞれ AssignList で表される.

Public Types

enum Type

結果の種類

Values:

enumerator Undetected

検出できなかった.

enumerator Detected

検出された.

enumerator PartialDetected

部分的に検出された.

enumerator Overflow

繰り返し回数をオーバーした.

Public Functions

DetCond() = default

空のコンストラクタ

~DetCond() = default

デストラクタ

inline SizeType ffr_id() const

FFR 番号を返す.

inline const TpgNode &root() const

根のノードを返す.

inline Type type() const

タイプを返す.

inline const CondData &cond() const

全体の条件を得る.

inline const std::vector<CondData> &cond_list() const

個々の出力ごとの条件を得る.

inline const TpgNodeList &output_list() const

オーバーフローした出力のリスト

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

内容を出力する.

Public Static Functions

static inline DetCond undetected(SizeType id, const TpgNode &root)

Undetected を返すクラスメソッド

パラメータ:
  • id -- [in] FFR 番号

  • root -- [in] 根のノード

static inline DetCond detected(SizeType id, const TpgNode &root, const CondData &cond)

Detected タイプを返すクラスメソッド

パラメータ:
  • id -- [in] FFR 番号

  • root -- [in] 根のノード

  • cond -- [in] 全体の条件

static inline DetCond partial_detected(SizeType id, const TpgNode &root, const std::vector<CondData> &cond_list, const TpgNodeList &output_list = {})

PartialDetected を返すクラスメソッド

パラメータ:
  • id -- [in] FFR 番号

  • root -- [in] 根のノード

  • cond_list -- [in] 個々の出力ごとの条件のリスト

  • output_list -- [in] オーバーフローした出力のリスト

static inline DetCond overflow(SizeType id, const TpgNode &root, const TpgNodeList &output_list)

Overflow を返すクラスメソッド

パラメータ:
  • id -- [in] FFR 番号

  • root -- [in] 根のノード

  • output_list -- [in] オーバーフローした出力のリスト

struct CondData

条件を表す構造体

Public Members

std::vector<Literal> mand_cond

必要条件

std::vector<std::vector<Literal>> cube_list

十分条件のリスト