rsesrule.h

来自「粗糙集应用软件」· C头文件 代码 · 共 96 行

H
96
字号
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Revisions.....:
//===================================================================

#ifndef __RSESRULE_H__
#define __RSESRULE_H__

#include <copyright.h>

#include <kernel/structures/rule.h>

#include <kernel/basic/vector.h>

//-------------------------------------------------------------------
// Class prototypes.
//===================================================================

class TRule;
class TReduct;

//-------------------------------------------------------------------
// Class.........: RSESRule
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Wrapper class for rule objects from the RSES library.
// Revisions.....:
//===================================================================

class RSESRule : public Rule {
private:

	//- Friend declarations,,,,........................................
	friend class RSESRules;

private:

	//- From the RSES library..........................................
	TRule              *rule_;            // Embedded rule.
	TReduct            *reduct_;          // Embedded parent reduct.

	bool                is_rule_owner_;   // Is this object the owner of the embedded rule?
	bool                is_reduct_owner_; // Is this object the owner of the embedded reduct?

protected:

  //- Copy constructor...............................................
  RSESRule(const RSESRule &in);

	//- Descriptor management..........................................
	int                 GetNoConditionValues() const;
  bool                AppendConditionValue(int value);

public:

  //- Constructors/destructor........................................
	RSESRule();
  virtual ~RSESRule();

  //- Methods inherited from Identifier..............................
	DECLAREIDMETHODS()

  //- Methods inherited from Structure...............................
  virtual Structure  *Duplicate() const;
	virtual void        Clear();

  //- Methods inherited from Rule....................................
  virtual int         GetNoConditionDescriptors() const;

  virtual int         GetConditionAttribute(int position_no) const;
  virtual int         GetConditionValue(int position_no) const;

  virtual bool        AppendConditionDescriptor(int attribute_no, int value);

	virtual int         GetDecisionAttribute() const;
	virtual bool        SetDecisionAttribute(int attribute_no);

	virtual int         GetNoDecisionValues() const;
  virtual int         GetDecisionValue(int position_no) const;
  virtual bool        AppendDecisionValue(int value, int support, double stability = 1.0);

	virtual int         GetSupport(int position_no) const;
	virtual bool        SetSupport(int position_no, int support, double stability = 1.0);

	virtual double      GetStability(int position_no) const;

	virtual int         GetSupport() const;
	virtual bool        SetSupport(int support, double stability = 1.0);
	virtual double      GetStability() const;

};

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?