Fuzzy libray for embedded targets developed by zerokol. Read more on: http://zerokol.com/product/51e93616e84c5571b7000018/2/en edit by Bruno Alfano - corrected deallocation of FuzzyOutput
Fuzzy library by Zerokol. Read more on: http://zerokol.com/product/51e93616e84c5571b7000018/2/en
edit by Bruno Alfano - corrected deallocation bug for FuzzyOutput
FuzzyRuleAntecedent.h
- Committer:
- astaff15
- Date:
- 2015-06-24
- Revision:
- 2:460b409e26e8
- Parent:
- 0:66cd67db4f1b
File content as of revision 2:460b409e26e8:
/* * Robotic Research Group (RRG) * State University of Piaui (UESPI), Brazil - Piauí - Teresina * * FuzzyRuleAntecedent.h * * Author: Msc. Marvin Lemos <marvinlemos@gmail.com> * AJ Alves <aj.alves@zerokol.com> * Co authors: Douglas S. Kridi <douglaskridi@gmail.com> * Kannya Leal <kannyal@hotmail.com> */ #ifndef FUZZYRULEANTECEDENT_H #define FUZZYRULEANTECEDENT_H // IMPORTANDO AS BIBLIOTECAS NECESSÁRIAS #include <stdlib.h> #include "FuzzySet.h" // CONSTANTES #define OP_AND 1 #define OP_OR 2 #define MODE_FS 1 #define MODE_FS_FS 2 #define MODE_FS_FRA 3 #define MODE_FRA_FRA 4 class FuzzyRuleAntecedent { public: // CONSTRUTORES FuzzyRuleAntecedent(); // MÉTODOS PÚBLICOS bool joinSingle(FuzzySet* fuzzySet); bool joinWithAND(FuzzySet* fuzzySet1, FuzzySet* fuzzySet2); bool joinWithOR(FuzzySet* fuzzySet1, FuzzySet* fuzzySet2); bool joinWithAND(FuzzySet* fuzzySet, FuzzyRuleAntecedent* fuzzyRuleAntecedent); bool joinWithAND(FuzzyRuleAntecedent* fuzzyRuleAntecedent, FuzzySet* fuzzySet); bool joinWithOR(FuzzySet* fuzzySet, FuzzyRuleAntecedent* fuzzyRuleAntecedent); bool joinWithOR(FuzzyRuleAntecedent* fuzzyRuleAntecedent, FuzzySet* fuzzySet); bool joinWithAND(FuzzyRuleAntecedent* fuzzyRuleAntecedent1, FuzzyRuleAntecedent* fuzzyRuleAntecedent2); bool joinWithOR(FuzzyRuleAntecedent* fuzzyRuleAntecedent1, FuzzyRuleAntecedent* fuzzyRuleAntecedent2); float evaluate(); private: // VARIÁVEIS PRIVADAS int op; // operador lógico int mode; FuzzySet* fuzzySet1; FuzzySet* fuzzySet2; FuzzyRuleAntecedent* fuzzyRuleAntecedent1; FuzzyRuleAntecedent* fuzzyRuleAntecedent2; }; #endif