commit 2cf90d6ea538b459e837f5c62393b6b16293e950 Author: Justin Hammond Date: Sun Jul 20 00:01:00 2014 +0800 Initial Commit of Fuzzylite 4.0 diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..04c7183 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,139 @@ +cmake_minimum_required(VERSION 2.8) + +#in windows, cmake . -G "NMake Makefiles" +#in unix, cmake . -G "Unix Makefiles" +project(fuzzylite CXX) + +set(CMAKE_VERBOSE_MAKEFILE true) + + +if(WIN32) + message("Windows") + add_definitions(-DFL_WINDOWS) +endif() + +if (UNIX) + message("Unix") + add_definitions(-DFL_UNIX) +endif() + +if (APPLE) + message("Apple") + add_definitions(-DFL_APPLE) +endif() + + +set(FL_VERSION 4.0) +add_definitions(-DFL_VERSION="${FL_VERSION}") + +set(FL_DATE "1401") +add_definitions(-DFL_DATE="1401") + +option(FL_USE_FLOAT "Use fl::scalar as float" OFF) +option(FL_DEBUG "Enable additional debugging information" OFF) +option(FL_BACKTRACE "Provide backtrace information in case of errors" ON) + + +if(FL_DEBUG) + add_definitions(-DFL_DEBUG=true) + set(CMAKE_BUILD_TYPE Debug) + set(FL_CONF -dbg) +else() + set(CMAKE_BUILD_TYPE Release) + set(FL_CONF) +endif(FL_DEBUG) + + + +add_definitions(-DFL_BUILD_PATH="${CMAKE_SOURCE_DIR}") #used to determine FL__FILE__ + +set(EXECUTABLE_OUTPUT_PATH bin) +set(LIBRARY_OUTPUT_PATH bin) + +set(FL_LIBS) + +if(UNIX) + set(CMAKE_CXX_FLAGS "-Werror -Wall -Wextra") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") +if(NOT APPLE) + set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined") #apple does not recognise these +endif() + +elseif(WIN32) + #http://msdn.microsoft.com/en-us/library/thxezb7y.aspx + set(CMAKE_CXX_FLAGS " /WX /W4 /EHsc") + set(FL_LIBS dbghelp) +endif() + + +if(FL_USE_FLOAT) + add_definitions(-DFL_USE_FLOAT) +endif(FL_USE_FLOAT) + +if(NOT FL_BACKTRACE) + add_definitions(-DFL_BACKTRACE_OFF) +endif() + +include_directories(.) + +file(STRINGS FL_HEADERS fl-headers) +file(STRINGS FL_SOURCES fl-sources) + +string(REGEX REPLACE "\n" " " ${fl-headers} ${fl-headers}) +string(REGEX REPLACE "\n" " " ${fl-sources} ${fl-sources}) + +message("${exepath}") + + +set(CMAKE_DEBUG_POSTFIX -dbg) + +add_library(fl-shared SHARED ${fl-headers} ${fl-sources}) +set_target_properties(fl-shared PROPERTIES OUTPUT_NAME fuzzylite) +target_link_libraries(fl-shared ${FL_LIBS}) + +add_library(fl-static STATIC ${fl-headers} ${fl-sources}) +set_target_properties(fl-static PROPERTIES OUTPUT_NAME fuzzylite-static) +target_link_libraries(fl-static ${FL_LIBS}) + +add_executable(fl-bin fl/Console.h src/Console.cpp src/main.cpp) +set_target_properties(fl-bin PROPERTIES OUTPUT_NAME fuzzylite) +set_target_properties(fl-bin PROPERTIES OUTPUT_NAME fuzzylite IMPORT_PREFIX _) #To prevent LNK1149 in Windows +set_target_properties(fl-bin PROPERTIES DEBUG_POSTFIX -dbg) +target_link_libraries(fl-bin fl-shared ${FL_LIBS}) + + +install(TARGETS fl-bin fl-shared fl-static + RUNTIME DESTINATION bin + LIBRARY DESTINATION bin + ARCHIVE DESTINATION bin + ) + +install(DIRECTORY fl/ DESTINATION include/fl) + +#if(WIN32) +# set(fl-suffix) +# add_custom_command(TARGET fl-bin POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E copy_if_different +# "${CMAKE_SOURCE_DIR}/lib/fuzzylite${FL_CONF}.dll" +# ${CMAKE_SOURCE_DIR}/bin) # <--this is out-file path +#endif() + +message("=====================================") +message("fuzzylite v.${FL_VERSION}b${FL_DATE}\n") +message("FL_DEBUG=${FL_DEBUG}") +message("FL_USE_FLOAT=${FL_USE_FLOAT}") +message("FL_BACKTRACE=${FL_BACKTRACE}") +message("=====================================\n") + +# uninstall target +#configure_file( + #"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" + #"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + #IMMEDIATE @ONLY) + +#add_custom_target(uninstall + #COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/uninstall.cmake) + +#unix uninstall +#xargs rm < install_manifest.txt diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..0b0e351 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,58 @@ +Version 4.0 +* FuzzyRule merged with Rule, and FuzzyRule deleted. +* FuzzyAntecedent merged with Antecedent, and FuzzyAntecedent deleted +* FuzzyConsequent merged with Consequent, and FuzzyConsequent deleted +* FuzzyExpression renamed Expression +* Renamed Rule::get/setUnparsedRule to get/setText +* Renamed RuleBlock::get/set(Tnorm|Snorm) to get/set(Conjunction|Disjunction) +* Renamed RuleBlock::fireRules to activate +* Renamed Rule::fireStrength to activationDegree, fire to activate +* Renamed Consequent::fire to modify +* Created IntegralDefuzzifier to extract divisions from Defuzzifier +* Renamed divisions from IntegralDefuzzifier to resolution, FL_DIVISIONS to FL_RESOLUTION +* Deleted MaximumDefuzzifier +* Centroid, Bisector, and Largest/Smallest/Mean Defuzzifiers inherit from IntegralDefuzzifier +* Changed names of arithmetic operations in fl::Operation +* Renamed Function::get/set(Infix) to get/set(Formula) +* Renamed InputVariable::get/set(Input) to get/set(InputValue) +* Renamed Antecedent::firingStrength to activationDegree +* Renamed Antecedent::toString/(Prefix,Infix,Postfix) to to/(Prefix,Infix,Postfix) +* Renamed Rule::FL_ASSIGN to Rule::FL_EQUALS +* New method restart in Engine +* New methods Engine::setInputValue(name, value), scalar Engine::getOutputValue(name) +* Renamed Op::str(vector/varargs) to Op::join(vector/varargs) +* Refactored associtativity, unary and binary properties in Element within Function +* Removed unnecessary Hedges creation upon importing engines, now is automatic via Factories +* Created the JavaExporter +* Renamed methods within Fis/Fcl/CppExporter to toString(*); +* Extracted TNorms and SNorms from TNorm.h/cpp and SNorm.h/cpp +* Created proper Factories with registration of classes and constructors +* Renamed method Factory::create to Factory::createInstance +* Added static constructor method to every Defuzzifier, Hedge, TNorm, and SNorm +* Removed FL_PRECISION, FL_DECIMALS as Macros, and created static variables in fuzzylite.h +* Renamed FL_PRECISION to macheps, i.e., machine epsilon to differentiate real numbers +* Removed FL_DEBUG and created a static variable in fuzzylite.h +* Removed FL_NO_LOG as it is now controlled with fuzzylite::logging(), previously named logEnabled() +* Libraries and Console application are both built in folder bin/ (previously libraries were at lib/) +* Removed Engine::toStringFis/Fcl/Cpp to encourage use of Fcl/Fis/CppExporters instead +* Renamed Op::logical_and to Op::logicalAnd, Op::logical_or to Op::logicalOr +* Added support to Fis/FclImporters to treat comments (%,#,//,/*) in fis and fcl files +* Created the Console application instead of previous demo +* Added Variable::range() to return (maximum - minimum) +* Removed Variable::isEmpty, use Variable::terms().empty() +* Removed RuleBlock::isEmpty, use RuleBlock::rules().empty() +* Created method Op::makeValidId to ensure names are valid +* Engine, Variable and Term::toString return FllExport::toString +* Created Term::parameters to return list of parameter values as string separated by spaces +* Created Term::configure to configure from Term::parameters +* FclImEx import and export terms using Term::parameters +* Created the FuzzyLite Language in FllImporter and FllExporter +* Created the FuzzyLite Dataset FldExporter +* Added property Enable to Engine, Variable and RuleBlock +* Extended FCL and FIS to consider Enabled properties +* Changed Engine::defuzzify() to consider enabled variables +* Changed Engine::process() to consider enabled rule blocks +* Changed OutputVariable::output() to OutputVariable::fuzzyOutput() +* Renamed Rectangle::minimum/maximum to Rectangle::start/end +* Renamed fuzzylite::shortVersion to fuzzylite::version +* Improved accuracy of Triangle and Trapezoid diff --git a/FL_HEADERS b/FL_HEADERS new file mode 100644 index 0000000..fa71e94 --- /dev/null +++ b/FL_HEADERS @@ -0,0 +1,85 @@ +fl/Headers.h +fl/fuzzylite.h +fl/Console.h +fl/defuzzifier/Defuzzifier.h +fl/defuzzifier/IntegralDefuzzifier.h +fl/defuzzifier/Bisector.h +fl/defuzzifier/Centroid.h +fl/defuzzifier/SmallestOfMaximum.h +fl/defuzzifier/LargestOfMaximum.h +fl/defuzzifier/MeanOfMaximum.h +fl/defuzzifier/Tsukamoto.h +fl/defuzzifier/WeightedAverage.h +fl/defuzzifier/WeightedSum.h +fl/Engine.h +fl/Exception.h +fl/factory/Factory.h +fl/factory/FactoryManager.h +fl/factory/DefuzzifierFactory.h +fl/factory/SNormFactory.h +fl/factory/TNormFactory.h +fl/factory/HedgeFactory.h +fl/factory/TermFactory.h +fl/hedge/Somewhat.h +fl/hedge/Very.h +fl/hedge/Any.h +fl/hedge/Not.h +fl/hedge/Hedge.h +fl/hedge/Extremely.h +fl/hedge/Seldom.h +fl/imex/Exporter.h +fl/imex/FisImporter.h +fl/imex/FisExporter.h +fl/imex/FclExporter.h +fl/imex/FclImporter.h +fl/imex/FldExporter.h +fl/imex/FllExporter.h +fl/imex/FllImporter.h +fl/imex/CppExporter.h +fl/imex/JavaExporter.h +fl/imex/Importer.h +fl/norm/Norm.h +fl/norm/SNorm.h +fl/norm/TNorm.h +fl/norm/s/AlgebraicSum.h +fl/norm/s/BoundedSum.h +fl/norm/s/DrasticSum.h +fl/norm/s/EinsteinSum.h +fl/norm/s/HamacherSum.h +fl/norm/s/Maximum.h +fl/norm/s/NormalizedSum.h +fl/norm/t/AlgebraicProduct.h +fl/norm/t/BoundedDifference.h +fl/norm/t/DrasticProduct.h +fl/norm/t/EinsteinProduct.h +fl/norm/t/HamacherProduct.h +fl/norm/t/Minimum.h +fl/Operation.h +fl/rule/Antecedent.h +fl/rule/Consequent.h +fl/rule/Expression.h +fl/rule/RuleBlock.h +fl/rule/Rule.h +fl/term/Constant.h +fl/term/Linear.h +fl/term/Function.h +fl/term/Thresholded.h +fl/term/SShape.h +fl/term/Ramp.h +fl/term/GaussianProduct.h +fl/term/SigmoidProduct.h +fl/term/Triangle.h +fl/term/Rectangle.h +fl/term/Trapezoid.h +fl/term/Accumulated.h +fl/term/SigmoidDifference.h +fl/term/Gaussian.h +fl/term/PiShape.h +fl/term/Sigmoid.h +fl/term/Bell.h +fl/term/Discrete.h +fl/term/Term.h +fl/term/ZShape.h +fl/variable/InputVariable.h +fl/variable/Variable.h +fl/variable/OutputVariable.h \ No newline at end of file diff --git a/FL_SOURCES b/FL_SOURCES new file mode 100644 index 0000000..e3463d3 --- /dev/null +++ b/FL_SOURCES @@ -0,0 +1,77 @@ +src/fuzzylite.cpp +src/Console.cpp +src/defuzzifier/IntegralDefuzzifier.cpp +src/defuzzifier/Bisector.cpp +src/defuzzifier/Centroid.cpp +src/defuzzifier/SmallestOfMaximum.cpp +src/defuzzifier/LargestOfMaximum.cpp +src/defuzzifier/MeanOfMaximum.cpp +src/defuzzifier/Tsukamoto.cpp +src/defuzzifier/WeightedAverage.cpp +src/defuzzifier/WeightedSum.cpp +src/Exception.cpp +src/Engine.cpp +src/factory/TNormFactory.cpp +src/factory/DefuzzifierFactory.cpp +src/factory/TermFactory.cpp +src/factory/SNormFactory.cpp +src/factory/Factory.cpp +src/factory/FactoryManager.cpp +src/factory/HedgeFactory.cpp +src/hedge/Somewhat.cpp +src/hedge/Any.cpp +src/hedge/Seldom.cpp +src/hedge/Not.cpp +src/hedge/Extremely.cpp +src/hedge/Very.cpp +src/imex/FclExporter.cpp +src/imex/FclImporter.cpp +src/imex/FisImporter.cpp +src/imex/FisExporter.cpp +src/imex/FldExporter.cpp +src/imex/FllExporter.cpp +src/imex/FllImporter.cpp +src/imex/CppExporter.cpp +src/imex/JavaExporter.cpp +src/norm/s/AlgebraicSum.cpp +src/norm/s/BoundedSum.cpp +src/norm/s/DrasticSum.cpp +src/norm/s/EinsteinSum.cpp +src/norm/s/HamacherSum.cpp +src/norm/s/Maximum.cpp +src/norm/s/NormalizedSum.cpp +src/norm/t/AlgebraicProduct.cpp +src/norm/t/BoundedDifference.cpp +src/norm/t/DrasticProduct.cpp +src/norm/t/EinsteinProduct.cpp +src/norm/t/HamacherProduct.cpp +src/norm/t/Minimum.cpp +src/Operation.cpp +src/rule/Antecedent.cpp +src/rule/Consequent.cpp +src/rule/Expression.cpp +src/rule/RuleBlock.cpp +src/rule/Rule.cpp +src/term/Term.cpp +src/term/Constant.cpp +src/term/Linear.cpp +src/term/Function.cpp +src/term/Discrete.cpp +src/term/Sigmoid.cpp +src/term/Triangle.cpp +src/term/Trapezoid.cpp +src/term/Accumulated.cpp +src/term/SShape.cpp +src/term/ZShape.cpp +src/term/Thresholded.cpp +src/term/SigmoidDifference.cpp +src/term/Bell.cpp +src/term/SigmoidProduct.cpp +src/term/GaussianProduct.cpp +src/term/Gaussian.cpp +src/term/Rectangle.cpp +src/term/PiShape.cpp +src/term/Ramp.cpp +src/variable/Variable.cpp +src/variable/OutputVariable.cpp +src/variable/InputVariable.cpp diff --git a/clean.sh b/clean.sh new file mode 100755 index 0000000..c9e93a6 --- /dev/null +++ b/clean.sh @@ -0,0 +1,4 @@ +#!/bin/bash +make -f Makefile clean +rm -rf bin lib build CMakeFiles Makefile CMakeCache.txt cmake_install.cmake + diff --git a/docs/html/Accumulated_8cpp.html b/docs/html/Accumulated_8cpp.html new file mode 100644 index 0000000..68c2fc3 --- /dev/null +++ b/docs/html/Accumulated_8cpp.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: src/term/Accumulated.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Accumulated.cpp File Reference
+
+
+
#include "fl/term/Accumulated.h"
+#include "fl/norm/SNorm.h"
+#include "fl/imex/FllExporter.h"
+#include <sstream>
+
+Include dependency graph for Accumulated.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Accumulated_8cpp__incl.map b/docs/html/Accumulated_8cpp__incl.map new file mode 100644 index 0000000..6e02ec5 --- /dev/null +++ b/docs/html/Accumulated_8cpp__incl.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/docs/html/Accumulated_8cpp__incl.md5 b/docs/html/Accumulated_8cpp__incl.md5 new file mode 100644 index 0000000..4731c74 --- /dev/null +++ b/docs/html/Accumulated_8cpp__incl.md5 @@ -0,0 +1 @@ +a4e5b59423f753c96c4e2ae5215f33c6 \ No newline at end of file diff --git a/docs/html/Accumulated_8cpp__incl.png b/docs/html/Accumulated_8cpp__incl.png new file mode 100644 index 0000000..e19dffa Binary files /dev/null and b/docs/html/Accumulated_8cpp__incl.png differ diff --git a/docs/html/Accumulated_8h.html b/docs/html/Accumulated_8h.html new file mode 100644 index 0000000..11653b5 --- /dev/null +++ b/docs/html/Accumulated_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/term/Accumulated.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Accumulated.h File Reference
+
+
+
#include "fl/term/Term.h"
+#include <vector>
+
+Include dependency graph for Accumulated.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Accumulated
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Accumulated_8h__dep__incl.map b/docs/html/Accumulated_8h__dep__incl.map new file mode 100644 index 0000000..67033e8 --- /dev/null +++ b/docs/html/Accumulated_8h__dep__incl.map @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Accumulated_8h__dep__incl.md5 b/docs/html/Accumulated_8h__dep__incl.md5 new file mode 100644 index 0000000..8508b4f --- /dev/null +++ b/docs/html/Accumulated_8h__dep__incl.md5 @@ -0,0 +1 @@ +e913dadaca4a7a8ec0223551b05984fa \ No newline at end of file diff --git a/docs/html/Accumulated_8h__dep__incl.png b/docs/html/Accumulated_8h__dep__incl.png new file mode 100644 index 0000000..ebfee80 Binary files /dev/null and b/docs/html/Accumulated_8h__dep__incl.png differ diff --git a/docs/html/Accumulated_8h__incl.map b/docs/html/Accumulated_8h__incl.map new file mode 100644 index 0000000..9570284 --- /dev/null +++ b/docs/html/Accumulated_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Accumulated_8h__incl.md5 b/docs/html/Accumulated_8h__incl.md5 new file mode 100644 index 0000000..abc5285 --- /dev/null +++ b/docs/html/Accumulated_8h__incl.md5 @@ -0,0 +1 @@ +fee7cdc5ca91cb0145521b8fb0f1bc05 \ No newline at end of file diff --git a/docs/html/Accumulated_8h__incl.png b/docs/html/Accumulated_8h__incl.png new file mode 100644 index 0000000..5994ba8 Binary files /dev/null and b/docs/html/Accumulated_8h__incl.png differ diff --git a/docs/html/Accumulated_8h_source.html b/docs/html/Accumulated_8h_source.html new file mode 100644 index 0000000..7348250 --- /dev/null +++ b/docs/html/Accumulated_8h_source.html @@ -0,0 +1,197 @@ + + + + + + +fuzzylite: fl/term/Accumulated.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Accumulated.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Accumulated.h
+
18  *
+
19  * Created on: 30/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_ACCUMULATED_H
+
24 #define FL_ACCUMULATED_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 #include <vector>
+
29 
+
30 namespace fl {
+
31 
+
32  class SNorm;
+
33 
+
34  class FL_EXPORT Accumulated : public Term {
+
35  protected:
+
36  std::vector<const Term*> _terms;
+
37  scalar _minimum, _maximum;
+ +
39  public:
+
40  Accumulated(const std::string& name = "",
+
41  scalar minimum = -fl::inf,
+
42  scalar maximum = fl::inf,
+
43  const SNorm* accumulation = NULL);
+
44  virtual ~Accumulated();
+
45 
+
46  virtual std::string className() const;
+
47  virtual std::string parameters() const;
+
48  virtual void configure(const std::string& parameters);
+
49 
+
50  virtual Accumulated* copy() const;
+
51 
+
52  virtual scalar membership(scalar x) const;
+
53 
+
54 
+
55  virtual void setMinimum(scalar minimum);
+
56  virtual scalar getMinimum() const;
+
57 
+
58  virtual void setMaximum(scalar maximum);
+
59  virtual scalar getMaximum() const;
+
60 
+
61  virtual void setAccumulation(const SNorm* accumulation);
+
62  virtual const SNorm* getAccumulation() const;
+
63 
+
67  virtual void addTerm(const Term* term);
+
68  virtual const Term* getTerm(int index) const;
+
69  virtual const Term* removeTerm(int index);
+
70  virtual int numberOfTerms() const;
+
71  virtual const std::vector<const Term*>& terms() const;
+
72  virtual bool isEmpty() const;
+
73  virtual void clear();
+
74  };
+
75 
+
76 }
+
77 #endif /* FL_ACCUMULATED_H */
+
+
+ + + + diff --git a/docs/html/AlgebraicProduct_8cpp.html b/docs/html/AlgebraicProduct_8cpp.html new file mode 100644 index 0000000..8b3a6d4 --- /dev/null +++ b/docs/html/AlgebraicProduct_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/AlgebraicProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
AlgebraicProduct.cpp File Reference
+
+
+
+Include dependency graph for AlgebraicProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/AlgebraicProduct_8cpp__incl.map b/docs/html/AlgebraicProduct_8cpp__incl.map new file mode 100644 index 0000000..9e8b3b0 --- /dev/null +++ b/docs/html/AlgebraicProduct_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/AlgebraicProduct_8cpp__incl.md5 b/docs/html/AlgebraicProduct_8cpp__incl.md5 new file mode 100644 index 0000000..c04b3ce --- /dev/null +++ b/docs/html/AlgebraicProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +8b3f763a692f467dbf49ff0bd0ffe8ad \ No newline at end of file diff --git a/docs/html/AlgebraicProduct_8cpp__incl.png b/docs/html/AlgebraicProduct_8cpp__incl.png new file mode 100644 index 0000000..f870c10 Binary files /dev/null and b/docs/html/AlgebraicProduct_8cpp__incl.png differ diff --git a/docs/html/AlgebraicProduct_8h.html b/docs/html/AlgebraicProduct_8h.html new file mode 100644 index 0000000..5f41455 --- /dev/null +++ b/docs/html/AlgebraicProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/AlgebraicProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
AlgebraicProduct.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for AlgebraicProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::AlgebraicProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/AlgebraicProduct_8h__dep__incl.map b/docs/html/AlgebraicProduct_8h__dep__incl.map new file mode 100644 index 0000000..1799d75 --- /dev/null +++ b/docs/html/AlgebraicProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/AlgebraicProduct_8h__dep__incl.md5 b/docs/html/AlgebraicProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..aa95d76 --- /dev/null +++ b/docs/html/AlgebraicProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +1440856ce4277b261a715486140118e8 \ No newline at end of file diff --git a/docs/html/AlgebraicProduct_8h__dep__incl.png b/docs/html/AlgebraicProduct_8h__dep__incl.png new file mode 100644 index 0000000..b4f2d71 Binary files /dev/null and b/docs/html/AlgebraicProduct_8h__dep__incl.png differ diff --git a/docs/html/AlgebraicProduct_8h__incl.map b/docs/html/AlgebraicProduct_8h__incl.map new file mode 100644 index 0000000..367b2d0 --- /dev/null +++ b/docs/html/AlgebraicProduct_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/AlgebraicProduct_8h__incl.md5 b/docs/html/AlgebraicProduct_8h__incl.md5 new file mode 100644 index 0000000..49aecba --- /dev/null +++ b/docs/html/AlgebraicProduct_8h__incl.md5 @@ -0,0 +1 @@ +94509929186f6cfad00ac185ff6aa4f7 \ No newline at end of file diff --git a/docs/html/AlgebraicProduct_8h__incl.png b/docs/html/AlgebraicProduct_8h__incl.png new file mode 100644 index 0000000..4ed9c92 Binary files /dev/null and b/docs/html/AlgebraicProduct_8h__incl.png differ diff --git a/docs/html/AlgebraicProduct_8h_source.html b/docs/html/AlgebraicProduct_8h_source.html new file mode 100644 index 0000000..84bb1e7 --- /dev/null +++ b/docs/html/AlgebraicProduct_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/t/AlgebraicProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
AlgebraicProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: AlgebraicProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:47 AM
+
21  */
+
22 
+
23 #ifndef FL_ALGEBRAICPRODUCT_H
+
24 #define FL_ALGEBRAICPRODUCT_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT AlgebraicProduct : public TNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 
+
38 }
+
39 
+
40 #endif /* FL_ALGEBRAICPRODUCT_H */
+
41 
+
+
+ + + + diff --git a/docs/html/AlgebraicSum_8cpp.html b/docs/html/AlgebraicSum_8cpp.html new file mode 100644 index 0000000..3bb93c6 --- /dev/null +++ b/docs/html/AlgebraicSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/AlgebraicSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
AlgebraicSum.cpp File Reference
+
+
+
+Include dependency graph for AlgebraicSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/AlgebraicSum_8cpp__incl.map b/docs/html/AlgebraicSum_8cpp__incl.map new file mode 100644 index 0000000..8771183 --- /dev/null +++ b/docs/html/AlgebraicSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/AlgebraicSum_8cpp__incl.md5 b/docs/html/AlgebraicSum_8cpp__incl.md5 new file mode 100644 index 0000000..06c10ea --- /dev/null +++ b/docs/html/AlgebraicSum_8cpp__incl.md5 @@ -0,0 +1 @@ +baa552194a6130d86c47b6f6e4f923f6 \ No newline at end of file diff --git a/docs/html/AlgebraicSum_8cpp__incl.png b/docs/html/AlgebraicSum_8cpp__incl.png new file mode 100644 index 0000000..d03a7b8 Binary files /dev/null and b/docs/html/AlgebraicSum_8cpp__incl.png differ diff --git a/docs/html/AlgebraicSum_8h.html b/docs/html/AlgebraicSum_8h.html new file mode 100644 index 0000000..494fd5f --- /dev/null +++ b/docs/html/AlgebraicSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/AlgebraicSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
AlgebraicSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for AlgebraicSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::AlgebraicSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/AlgebraicSum_8h__dep__incl.map b/docs/html/AlgebraicSum_8h__dep__incl.map new file mode 100644 index 0000000..4543661 --- /dev/null +++ b/docs/html/AlgebraicSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/AlgebraicSum_8h__dep__incl.md5 b/docs/html/AlgebraicSum_8h__dep__incl.md5 new file mode 100644 index 0000000..1eec2fc --- /dev/null +++ b/docs/html/AlgebraicSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +8f08d8abe5dd4f97b5ad9e6a85c32061 \ No newline at end of file diff --git a/docs/html/AlgebraicSum_8h__dep__incl.png b/docs/html/AlgebraicSum_8h__dep__incl.png new file mode 100644 index 0000000..121923d Binary files /dev/null and b/docs/html/AlgebraicSum_8h__dep__incl.png differ diff --git a/docs/html/AlgebraicSum_8h__incl.map b/docs/html/AlgebraicSum_8h__incl.map new file mode 100644 index 0000000..fdc70fa --- /dev/null +++ b/docs/html/AlgebraicSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/AlgebraicSum_8h__incl.md5 b/docs/html/AlgebraicSum_8h__incl.md5 new file mode 100644 index 0000000..5bba74c --- /dev/null +++ b/docs/html/AlgebraicSum_8h__incl.md5 @@ -0,0 +1 @@ +7dd9671391c9ff3f278ad8615d75f50d \ No newline at end of file diff --git a/docs/html/AlgebraicSum_8h__incl.png b/docs/html/AlgebraicSum_8h__incl.png new file mode 100644 index 0000000..4e1fb54 Binary files /dev/null and b/docs/html/AlgebraicSum_8h__incl.png differ diff --git a/docs/html/AlgebraicSum_8h_source.html b/docs/html/AlgebraicSum_8h_source.html new file mode 100644 index 0000000..85678ee --- /dev/null +++ b/docs/html/AlgebraicSum_8h_source.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: fl/norm/s/AlgebraicSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
AlgebraicSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: AlgebraicSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:07 AM
+
21  */
+
22 
+
23 #ifndef FL_ALGEBRAICSUM_H
+
24 #define FL_ALGEBRAICSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 
+
29 namespace fl {
+
30 
+
31  class FL_EXPORT AlgebraicSum : public SNorm {
+
32  public:
+
33  std::string className() const;
+
34  scalar compute(scalar a, scalar b) const;
+
35 
+
36  static SNorm* constructor();
+
37  };
+
38 
+
39 
+
40 }
+
41 
+
42 #endif /* FL_ALGEBRAICSUM_H */
+
43 
+
+
+ + + + diff --git a/docs/html/Antecedent_8cpp.html b/docs/html/Antecedent_8cpp.html new file mode 100644 index 0000000..6664f55 --- /dev/null +++ b/docs/html/Antecedent_8cpp.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: src/rule/Antecedent.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Antecedent.cpp File Reference
+
+
+
#include "fl/rule/Antecedent.h"
+#include "fl/rule/Expression.h"
+#include "fl/Engine.h"
+#include "fl/variable/InputVariable.h"
+#include "fl/hedge/Hedge.h"
+#include "fl/hedge/Any.h"
+#include "fl/term/Term.h"
+#include "fl/rule/Rule.h"
+#include "fl/norm/TNorm.h"
+#include "fl/norm/SNorm.h"
+#include "fl/term/Function.h"
+#include "fl/factory/FactoryManager.h"
+#include "fl/factory/HedgeFactory.h"
+#include <stack>
+#include <algorithm>
+
+Include dependency graph for Antecedent.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Antecedent_8cpp__incl.map b/docs/html/Antecedent_8cpp__incl.map new file mode 100644 index 0000000..1e746fd --- /dev/null +++ b/docs/html/Antecedent_8cpp__incl.map @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Antecedent_8cpp__incl.md5 b/docs/html/Antecedent_8cpp__incl.md5 new file mode 100644 index 0000000..fb324ec --- /dev/null +++ b/docs/html/Antecedent_8cpp__incl.md5 @@ -0,0 +1 @@ +e79b07c1db2303dd0ba387e2ca56b548 \ No newline at end of file diff --git a/docs/html/Antecedent_8cpp__incl.png b/docs/html/Antecedent_8cpp__incl.png new file mode 100644 index 0000000..56feab2 Binary files /dev/null and b/docs/html/Antecedent_8cpp__incl.png differ diff --git a/docs/html/Antecedent_8h.html b/docs/html/Antecedent_8h.html new file mode 100644 index 0000000..72ccb0c --- /dev/null +++ b/docs/html/Antecedent_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/rule/Antecedent.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Antecedent.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Antecedent.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Antecedent
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Antecedent_8h__dep__incl.map b/docs/html/Antecedent_8h__dep__incl.map new file mode 100644 index 0000000..cbfd9a5 --- /dev/null +++ b/docs/html/Antecedent_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Antecedent_8h__dep__incl.md5 b/docs/html/Antecedent_8h__dep__incl.md5 new file mode 100644 index 0000000..b60725c --- /dev/null +++ b/docs/html/Antecedent_8h__dep__incl.md5 @@ -0,0 +1 @@ +5c6b92cb46c77ca3359af3a10f6c49a5 \ No newline at end of file diff --git a/docs/html/Antecedent_8h__dep__incl.png b/docs/html/Antecedent_8h__dep__incl.png new file mode 100644 index 0000000..692650c Binary files /dev/null and b/docs/html/Antecedent_8h__dep__incl.png differ diff --git a/docs/html/Antecedent_8h__incl.map b/docs/html/Antecedent_8h__incl.map new file mode 100644 index 0000000..2db6c32 --- /dev/null +++ b/docs/html/Antecedent_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Antecedent_8h__incl.md5 b/docs/html/Antecedent_8h__incl.md5 new file mode 100644 index 0000000..a546e9b --- /dev/null +++ b/docs/html/Antecedent_8h__incl.md5 @@ -0,0 +1 @@ +25c038e53ff61389a867fec80a248771 \ No newline at end of file diff --git a/docs/html/Antecedent_8h__incl.png b/docs/html/Antecedent_8h__incl.png new file mode 100644 index 0000000..db847a0 Binary files /dev/null and b/docs/html/Antecedent_8h__incl.png differ diff --git a/docs/html/Antecedent_8h_source.html b/docs/html/Antecedent_8h_source.html new file mode 100644 index 0000000..8b3c7e9 --- /dev/null +++ b/docs/html/Antecedent_8h_source.html @@ -0,0 +1,185 @@ + + + + + + +fuzzylite: fl/rule/Antecedent.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Antecedent.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Antecedent.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_ANTECEDENT_H
+
24 #define FL_ANTECEDENT_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 
+
30 namespace fl {
+
31  class Engine;
+
32  class TNorm;
+
33  class SNorm;
+
34  class Expression;
+
35 
+ +
37  protected:
+ +
39 
+
40  public:
+
41  Antecedent();
+
42  virtual ~Antecedent();
+
43 
+
44  virtual Expression* getRoot() const;
+
45 
+
46  virtual void load(const std::string& antecedent, const Engine* engine);
+
47 
+
48  virtual scalar activationDegree(const TNorm* conjunction, const SNorm* disjunction,
+
49  const Expression* node) const;
+
50 
+
51  virtual scalar activationDegree(const TNorm* conjunction, const SNorm* disjunction) const;
+
52 
+
53  virtual std::string toString() const;
+
54 
+
55  virtual std::string toPrefix(const Expression* node = NULL) const;
+
56  virtual std::string toInfix(const Expression* node = NULL) const;
+
57  virtual std::string toPostfix(const Expression* node = NULL) const;
+
58  };
+
59 
+
60 }
+
61 
+
62 #endif /* FL_ANTECEDENT_H */
+
+
+ + + + diff --git a/docs/html/Any_8cpp.html b/docs/html/Any_8cpp.html new file mode 100644 index 0000000..aabeeec --- /dev/null +++ b/docs/html/Any_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/hedge/Any.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Any.cpp File Reference
+
+
+
#include "fl/hedge/Any.h"
+
+Include dependency graph for Any.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Any_8cpp__incl.map b/docs/html/Any_8cpp__incl.map new file mode 100644 index 0000000..16e3d9a --- /dev/null +++ b/docs/html/Any_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Any_8cpp__incl.md5 b/docs/html/Any_8cpp__incl.md5 new file mode 100644 index 0000000..d853b46 --- /dev/null +++ b/docs/html/Any_8cpp__incl.md5 @@ -0,0 +1 @@ +40d18057da19376b72e8fa1db077f789 \ No newline at end of file diff --git a/docs/html/Any_8cpp__incl.png b/docs/html/Any_8cpp__incl.png new file mode 100644 index 0000000..0e37dfc Binary files /dev/null and b/docs/html/Any_8cpp__incl.png differ diff --git a/docs/html/Any_8h.html b/docs/html/Any_8h.html new file mode 100644 index 0000000..3a93d00 --- /dev/null +++ b/docs/html/Any_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Any.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Any.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Any.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Any
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Any_8h__dep__incl.map b/docs/html/Any_8h__dep__incl.map new file mode 100644 index 0000000..e3b44e5 --- /dev/null +++ b/docs/html/Any_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Any_8h__dep__incl.md5 b/docs/html/Any_8h__dep__incl.md5 new file mode 100644 index 0000000..571b9f6 --- /dev/null +++ b/docs/html/Any_8h__dep__incl.md5 @@ -0,0 +1 @@ +d1cc448ba697334b09272a7c4dcef22e \ No newline at end of file diff --git a/docs/html/Any_8h__dep__incl.png b/docs/html/Any_8h__dep__incl.png new file mode 100644 index 0000000..cec509b Binary files /dev/null and b/docs/html/Any_8h__dep__incl.png differ diff --git a/docs/html/Any_8h__incl.map b/docs/html/Any_8h__incl.map new file mode 100644 index 0000000..22a4fa8 --- /dev/null +++ b/docs/html/Any_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Any_8h__incl.md5 b/docs/html/Any_8h__incl.md5 new file mode 100644 index 0000000..70e5282 --- /dev/null +++ b/docs/html/Any_8h__incl.md5 @@ -0,0 +1 @@ +5aca38b5c3272100affbeeb0f073c097 \ No newline at end of file diff --git a/docs/html/Any_8h__incl.png b/docs/html/Any_8h__incl.png new file mode 100644 index 0000000..c9d55b0 Binary files /dev/null and b/docs/html/Any_8h__incl.png differ diff --git a/docs/html/Any_8h_source.html b/docs/html/Any_8h_source.html new file mode 100644 index 0000000..92753cf --- /dev/null +++ b/docs/html/Any_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Any.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Any.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Any.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_ANY_H
+
24 #define FL_ANY_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Any : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_ANY_H */
+
+
+ + + + diff --git a/docs/html/Bell_8cpp.html b/docs/html/Bell_8cpp.html new file mode 100644 index 0000000..d1a243e --- /dev/null +++ b/docs/html/Bell_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/term/Bell.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Bell.cpp File Reference
+
+
+
#include "fl/term/Bell.h"
+#include <cmath>
+#include <sstream>
+
+Include dependency graph for Bell.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Bell_8cpp__incl.map b/docs/html/Bell_8cpp__incl.map new file mode 100644 index 0000000..2f3bddd --- /dev/null +++ b/docs/html/Bell_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Bell_8cpp__incl.md5 b/docs/html/Bell_8cpp__incl.md5 new file mode 100644 index 0000000..0738584 --- /dev/null +++ b/docs/html/Bell_8cpp__incl.md5 @@ -0,0 +1 @@ +b4a91f25ee81395435f4ed4384afc0b1 \ No newline at end of file diff --git a/docs/html/Bell_8cpp__incl.png b/docs/html/Bell_8cpp__incl.png new file mode 100644 index 0000000..0116324 Binary files /dev/null and b/docs/html/Bell_8cpp__incl.png differ diff --git a/docs/html/Bell_8h.html b/docs/html/Bell_8h.html new file mode 100644 index 0000000..079a384 --- /dev/null +++ b/docs/html/Bell_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Bell.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Bell.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Bell.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Bell
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Bell_8h__dep__incl.map b/docs/html/Bell_8h__dep__incl.map new file mode 100644 index 0000000..8c39511 --- /dev/null +++ b/docs/html/Bell_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Bell_8h__dep__incl.md5 b/docs/html/Bell_8h__dep__incl.md5 new file mode 100644 index 0000000..ab71e38 --- /dev/null +++ b/docs/html/Bell_8h__dep__incl.md5 @@ -0,0 +1 @@ +08a3a5c4c1fcd0753b797dc3c73c6ecb \ No newline at end of file diff --git a/docs/html/Bell_8h__dep__incl.png b/docs/html/Bell_8h__dep__incl.png new file mode 100644 index 0000000..5cf589a Binary files /dev/null and b/docs/html/Bell_8h__dep__incl.png differ diff --git a/docs/html/Bell_8h__incl.map b/docs/html/Bell_8h__incl.map new file mode 100644 index 0000000..0f99d72 --- /dev/null +++ b/docs/html/Bell_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Bell_8h__incl.md5 b/docs/html/Bell_8h__incl.md5 new file mode 100644 index 0000000..3a7ba23 --- /dev/null +++ b/docs/html/Bell_8h__incl.md5 @@ -0,0 +1 @@ +a4cd71eea2ea98e6d925687077b877ec \ No newline at end of file diff --git a/docs/html/Bell_8h__incl.png b/docs/html/Bell_8h__incl.png new file mode 100644 index 0000000..75029da Binary files /dev/null and b/docs/html/Bell_8h__incl.png differ diff --git a/docs/html/Bell_8h_source.html b/docs/html/Bell_8h_source.html new file mode 100644 index 0000000..49743d0 --- /dev/null +++ b/docs/html/Bell_8h_source.html @@ -0,0 +1,187 @@ + + + + + + +fuzzylite: fl/term/Bell.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Bell.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Bell.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_BELL_H
+
24 #define FL_BELL_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Bell : public Term {
+
31  protected:
+ + + +
35  public:
+
36  Bell(const std::string& name = "",
+
37  scalar center = fl::nan,
+
38  scalar width = fl::nan,
+
39  scalar slope = fl::nan);
+
40  virtual ~Bell();
+
41 
+
42  virtual std::string className() const;
+
43  virtual std::string parameters() const;
+
44  virtual void configure(const std::string& parameters);
+
45 
+
46  virtual scalar membership(scalar x) const;
+
47 
+
48  virtual void setCenter(scalar center);
+
49  virtual scalar getCenter() const;
+
50 
+
51  virtual void setWidth(scalar width);
+
52  virtual scalar getWidth() const;
+
53 
+
54  virtual void setSlope(scalar slope);
+
55  virtual scalar getSlope() const;
+
56 
+
57  virtual Bell* copy() const;
+
58 
+
59  static Term* constructor();
+
60 
+
61  };
+
62 
+
63 }
+
64 #endif /* FL_BELL_H */
+
+
+ + + + diff --git a/docs/html/Bisector_8cpp.html b/docs/html/Bisector_8cpp.html new file mode 100644 index 0000000..267c7f1 --- /dev/null +++ b/docs/html/Bisector_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/defuzzifier/Bisector.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Bisector.cpp File Reference
+
+
+
+Include dependency graph for Bisector.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Bisector_8cpp__incl.map b/docs/html/Bisector_8cpp__incl.map new file mode 100644 index 0000000..27f7696 --- /dev/null +++ b/docs/html/Bisector_8cpp__incl.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/Bisector_8cpp__incl.md5 b/docs/html/Bisector_8cpp__incl.md5 new file mode 100644 index 0000000..9e1de3e --- /dev/null +++ b/docs/html/Bisector_8cpp__incl.md5 @@ -0,0 +1 @@ +d5e32e670ab4f6dba74fe60ccdef7c14 \ No newline at end of file diff --git a/docs/html/Bisector_8cpp__incl.png b/docs/html/Bisector_8cpp__incl.png new file mode 100644 index 0000000..8d7b893 Binary files /dev/null and b/docs/html/Bisector_8cpp__incl.png differ diff --git a/docs/html/Bisector_8h.html b/docs/html/Bisector_8h.html new file mode 100644 index 0000000..fb64c12 --- /dev/null +++ b/docs/html/Bisector_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/Bisector.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Bisector.h File Reference
+
+
+
+Include dependency graph for Bisector.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Bisector
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Bisector_8h__dep__incl.map b/docs/html/Bisector_8h__dep__incl.map new file mode 100644 index 0000000..7da8baf --- /dev/null +++ b/docs/html/Bisector_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Bisector_8h__dep__incl.md5 b/docs/html/Bisector_8h__dep__incl.md5 new file mode 100644 index 0000000..42edb5e --- /dev/null +++ b/docs/html/Bisector_8h__dep__incl.md5 @@ -0,0 +1 @@ +c9dc07dbd92717fbbee9c5c55d1d1d5b \ No newline at end of file diff --git a/docs/html/Bisector_8h__dep__incl.png b/docs/html/Bisector_8h__dep__incl.png new file mode 100644 index 0000000..e9e1d94 Binary files /dev/null and b/docs/html/Bisector_8h__dep__incl.png differ diff --git a/docs/html/Bisector_8h__incl.map b/docs/html/Bisector_8h__incl.map new file mode 100644 index 0000000..cd86a34 --- /dev/null +++ b/docs/html/Bisector_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Bisector_8h__incl.md5 b/docs/html/Bisector_8h__incl.md5 new file mode 100644 index 0000000..a33d9b8 --- /dev/null +++ b/docs/html/Bisector_8h__incl.md5 @@ -0,0 +1 @@ +eeb6fc368f15d261b1be934b12398cc4 \ No newline at end of file diff --git a/docs/html/Bisector_8h__incl.png b/docs/html/Bisector_8h__incl.png new file mode 100644 index 0000000..56d7bc4 Binary files /dev/null and b/docs/html/Bisector_8h__incl.png differ diff --git a/docs/html/Bisector_8h_source.html b/docs/html/Bisector_8h_source.html new file mode 100644 index 0000000..f9a4cd3 --- /dev/null +++ b/docs/html/Bisector_8h_source.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: fl/defuzzifier/Bisector.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Bisector.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Bisector.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 25 April 2013, 3:55 PM
+
21  */
+
22 
+
23 #ifndef FL_BISECTOR_H
+
24 #define FL_BISECTOR_H
+
25 
+ +
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  Bisector(int resolution = defaultResolution());
+
33 
+
34  std::string className() const;
+
35  scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const;
+
36 
+
37  static Defuzzifier* constructor();
+
38  };
+
39 
+
40 }
+
41 
+
42 #endif /* FL_BISECTOR_H */
+
43 
+
+
+ + + + diff --git a/docs/html/BoundedDifference_8cpp.html b/docs/html/BoundedDifference_8cpp.html new file mode 100644 index 0000000..0e0b4db --- /dev/null +++ b/docs/html/BoundedDifference_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/BoundedDifference.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
BoundedDifference.cpp File Reference
+
+
+
+Include dependency graph for BoundedDifference.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/BoundedDifference_8cpp__incl.map b/docs/html/BoundedDifference_8cpp__incl.map new file mode 100644 index 0000000..d73f607 --- /dev/null +++ b/docs/html/BoundedDifference_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/BoundedDifference_8cpp__incl.md5 b/docs/html/BoundedDifference_8cpp__incl.md5 new file mode 100644 index 0000000..dc7bd31 --- /dev/null +++ b/docs/html/BoundedDifference_8cpp__incl.md5 @@ -0,0 +1 @@ +5f7599c1801ab6b8198529672fead45f \ No newline at end of file diff --git a/docs/html/BoundedDifference_8cpp__incl.png b/docs/html/BoundedDifference_8cpp__incl.png new file mode 100644 index 0000000..54f2c91 Binary files /dev/null and b/docs/html/BoundedDifference_8cpp__incl.png differ diff --git a/docs/html/BoundedDifference_8h.html b/docs/html/BoundedDifference_8h.html new file mode 100644 index 0000000..7e815d8 --- /dev/null +++ b/docs/html/BoundedDifference_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/BoundedDifference.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
BoundedDifference.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for BoundedDifference.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::BoundedDifference
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/BoundedDifference_8h__dep__incl.map b/docs/html/BoundedDifference_8h__dep__incl.map new file mode 100644 index 0000000..c18168e --- /dev/null +++ b/docs/html/BoundedDifference_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/BoundedDifference_8h__dep__incl.md5 b/docs/html/BoundedDifference_8h__dep__incl.md5 new file mode 100644 index 0000000..87c4161 --- /dev/null +++ b/docs/html/BoundedDifference_8h__dep__incl.md5 @@ -0,0 +1 @@ +b0e9ea27720de8b8c1edd4fab7c7b19f \ No newline at end of file diff --git a/docs/html/BoundedDifference_8h__dep__incl.png b/docs/html/BoundedDifference_8h__dep__incl.png new file mode 100644 index 0000000..f29869a Binary files /dev/null and b/docs/html/BoundedDifference_8h__dep__incl.png differ diff --git a/docs/html/BoundedDifference_8h__incl.map b/docs/html/BoundedDifference_8h__incl.map new file mode 100644 index 0000000..2f653ac --- /dev/null +++ b/docs/html/BoundedDifference_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/BoundedDifference_8h__incl.md5 b/docs/html/BoundedDifference_8h__incl.md5 new file mode 100644 index 0000000..20f0099 --- /dev/null +++ b/docs/html/BoundedDifference_8h__incl.md5 @@ -0,0 +1 @@ +0182a6df17c7e9129df7132f755fa152 \ No newline at end of file diff --git a/docs/html/BoundedDifference_8h__incl.png b/docs/html/BoundedDifference_8h__incl.png new file mode 100644 index 0000000..2c16231 Binary files /dev/null and b/docs/html/BoundedDifference_8h__incl.png differ diff --git a/docs/html/BoundedDifference_8h_source.html b/docs/html/BoundedDifference_8h_source.html new file mode 100644 index 0000000..6863b62 --- /dev/null +++ b/docs/html/BoundedDifference_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/norm/t/BoundedDifference.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
BoundedDifference.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: BoundedDifference.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:47 AM
+
21  */
+
22 
+
23 #ifndef FL_BOUNDEDDIFFERENCE_H
+
24 #define FL_BOUNDEDDIFFERENCE_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 }
+
38 
+
39 #endif /* FL_BOUNDEDDIFFERENCE_H */
+
40 
+
+
+ + + + diff --git a/docs/html/BoundedSum_8cpp.html b/docs/html/BoundedSum_8cpp.html new file mode 100644 index 0000000..712837b --- /dev/null +++ b/docs/html/BoundedSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/BoundedSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
BoundedSum.cpp File Reference
+
+
+
+Include dependency graph for BoundedSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/BoundedSum_8cpp__incl.map b/docs/html/BoundedSum_8cpp__incl.map new file mode 100644 index 0000000..8f968b7 --- /dev/null +++ b/docs/html/BoundedSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/BoundedSum_8cpp__incl.md5 b/docs/html/BoundedSum_8cpp__incl.md5 new file mode 100644 index 0000000..2ac7d46 --- /dev/null +++ b/docs/html/BoundedSum_8cpp__incl.md5 @@ -0,0 +1 @@ +bb719913eef4641e8337d6abe846519e \ No newline at end of file diff --git a/docs/html/BoundedSum_8cpp__incl.png b/docs/html/BoundedSum_8cpp__incl.png new file mode 100644 index 0000000..8333f0a Binary files /dev/null and b/docs/html/BoundedSum_8cpp__incl.png differ diff --git a/docs/html/BoundedSum_8h.html b/docs/html/BoundedSum_8h.html new file mode 100644 index 0000000..69424e6 --- /dev/null +++ b/docs/html/BoundedSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/BoundedSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
BoundedSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for BoundedSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::BoundedSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/BoundedSum_8h__dep__incl.map b/docs/html/BoundedSum_8h__dep__incl.map new file mode 100644 index 0000000..ee764b2 --- /dev/null +++ b/docs/html/BoundedSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/BoundedSum_8h__dep__incl.md5 b/docs/html/BoundedSum_8h__dep__incl.md5 new file mode 100644 index 0000000..4ef5de7 --- /dev/null +++ b/docs/html/BoundedSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +347daf6aeada6b0a60cf783a735d6dc6 \ No newline at end of file diff --git a/docs/html/BoundedSum_8h__dep__incl.png b/docs/html/BoundedSum_8h__dep__incl.png new file mode 100644 index 0000000..bb454a7 Binary files /dev/null and b/docs/html/BoundedSum_8h__dep__incl.png differ diff --git a/docs/html/BoundedSum_8h__incl.map b/docs/html/BoundedSum_8h__incl.map new file mode 100644 index 0000000..28483d7 --- /dev/null +++ b/docs/html/BoundedSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/BoundedSum_8h__incl.md5 b/docs/html/BoundedSum_8h__incl.md5 new file mode 100644 index 0000000..ece253e --- /dev/null +++ b/docs/html/BoundedSum_8h__incl.md5 @@ -0,0 +1 @@ +80dc230764474a58de4a1294d1a563cd \ No newline at end of file diff --git a/docs/html/BoundedSum_8h__incl.png b/docs/html/BoundedSum_8h__incl.png new file mode 100644 index 0000000..2809414 Binary files /dev/null and b/docs/html/BoundedSum_8h__incl.png differ diff --git a/docs/html/BoundedSum_8h_source.html b/docs/html/BoundedSum_8h_source.html new file mode 100644 index 0000000..f7bf606 --- /dev/null +++ b/docs/html/BoundedSum_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/norm/s/BoundedSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
BoundedSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: BoundedSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:09 AM
+
21  */
+
22 
+
23 #ifndef FL_BOUNDEDSUM_H
+
24 #define FL_BOUNDEDSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT BoundedSum : public SNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34 
+
35  static SNorm* constructor();
+
36  };
+
37 }
+
38 
+
39 #endif /* FL_BOUNDEDSUM_H */
+
40 
+
+
+ + + + diff --git a/docs/html/Centroid_8cpp.html b/docs/html/Centroid_8cpp.html new file mode 100644 index 0000000..58fd01f --- /dev/null +++ b/docs/html/Centroid_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/defuzzifier/Centroid.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Centroid.cpp File Reference
+
+
+
+Include dependency graph for Centroid.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Centroid_8cpp__incl.map b/docs/html/Centroid_8cpp__incl.map new file mode 100644 index 0000000..355a880 --- /dev/null +++ b/docs/html/Centroid_8cpp__incl.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/Centroid_8cpp__incl.md5 b/docs/html/Centroid_8cpp__incl.md5 new file mode 100644 index 0000000..b8033aa --- /dev/null +++ b/docs/html/Centroid_8cpp__incl.md5 @@ -0,0 +1 @@ +e6bdb10bb5d0fdcdd5e446dae0cc76ac \ No newline at end of file diff --git a/docs/html/Centroid_8cpp__incl.png b/docs/html/Centroid_8cpp__incl.png new file mode 100644 index 0000000..ad889f4 Binary files /dev/null and b/docs/html/Centroid_8cpp__incl.png differ diff --git a/docs/html/Centroid_8h.html b/docs/html/Centroid_8h.html new file mode 100644 index 0000000..dd8810a --- /dev/null +++ b/docs/html/Centroid_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/Centroid.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Centroid.h File Reference
+
+
+
+Include dependency graph for Centroid.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Centroid
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Centroid_8h__dep__incl.map b/docs/html/Centroid_8h__dep__incl.map new file mode 100644 index 0000000..f815470 --- /dev/null +++ b/docs/html/Centroid_8h__dep__incl.map @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Centroid_8h__dep__incl.md5 b/docs/html/Centroid_8h__dep__incl.md5 new file mode 100644 index 0000000..861241e --- /dev/null +++ b/docs/html/Centroid_8h__dep__incl.md5 @@ -0,0 +1 @@ +d2aec56a7bcd78f5c512ef7e261e790d \ No newline at end of file diff --git a/docs/html/Centroid_8h__dep__incl.png b/docs/html/Centroid_8h__dep__incl.png new file mode 100644 index 0000000..816b03f Binary files /dev/null and b/docs/html/Centroid_8h__dep__incl.png differ diff --git a/docs/html/Centroid_8h__incl.map b/docs/html/Centroid_8h__incl.map new file mode 100644 index 0000000..ce1c3a4 --- /dev/null +++ b/docs/html/Centroid_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Centroid_8h__incl.md5 b/docs/html/Centroid_8h__incl.md5 new file mode 100644 index 0000000..2b914cb --- /dev/null +++ b/docs/html/Centroid_8h__incl.md5 @@ -0,0 +1 @@ +2161da9a141badc8a07b6101c841d3df \ No newline at end of file diff --git a/docs/html/Centroid_8h__incl.png b/docs/html/Centroid_8h__incl.png new file mode 100644 index 0000000..d06f7f2 Binary files /dev/null and b/docs/html/Centroid_8h__incl.png differ diff --git a/docs/html/Centroid_8h_source.html b/docs/html/Centroid_8h_source.html new file mode 100644 index 0000000..c0e9b69 --- /dev/null +++ b/docs/html/Centroid_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/defuzzifier/Centroid.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Centroid.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Centroid.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_CENTROID_H
+
24 #define FL_CENTROID_H
+
25 
+ +
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  Centroid(int resolution = defaultResolution());
+
33 
+
34  std::string className() const;
+
35  scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const;
+
36 
+
37  static Defuzzifier* constructor();
+
38  };
+
39 
+
40 }
+
41 #endif /* FL_CENTROID_H */
+
+
+ + + + diff --git a/docs/html/Consequent_8cpp.html b/docs/html/Consequent_8cpp.html new file mode 100644 index 0000000..5768ba3 --- /dev/null +++ b/docs/html/Consequent_8cpp.html @@ -0,0 +1,150 @@ + + + + + + +fuzzylite: src/rule/Consequent.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Consequent.cpp File Reference
+
+
+
#include "fl/rule/Consequent.h"
+#include "fl/rule/Expression.h"
+#include "fl/rule/Rule.h"
+#include "fl/Engine.h"
+#include "fl/variable/OutputVariable.h"
+#include "fl/hedge/Hedge.h"
+#include "fl/norm/TNorm.h"
+#include "fl/term/Thresholded.h"
+#include "fl/term/Accumulated.h"
+#include "fl/factory/FactoryManager.h"
+#include "fl/factory/HedgeFactory.h"
+#include <algorithm>
+
+Include dependency graph for Consequent.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Consequent_8cpp__incl.map b/docs/html/Consequent_8cpp__incl.map new file mode 100644 index 0000000..662ee94 --- /dev/null +++ b/docs/html/Consequent_8cpp__incl.map @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Consequent_8cpp__incl.md5 b/docs/html/Consequent_8cpp__incl.md5 new file mode 100644 index 0000000..038bcaa --- /dev/null +++ b/docs/html/Consequent_8cpp__incl.md5 @@ -0,0 +1 @@ +9022b84ceda87453a07abc2cc2775123 \ No newline at end of file diff --git a/docs/html/Consequent_8cpp__incl.png b/docs/html/Consequent_8cpp__incl.png new file mode 100644 index 0000000..20c8de4 Binary files /dev/null and b/docs/html/Consequent_8cpp__incl.png differ diff --git a/docs/html/Consequent_8h.html b/docs/html/Consequent_8h.html new file mode 100644 index 0000000..a295a3d --- /dev/null +++ b/docs/html/Consequent_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/rule/Consequent.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Consequent.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+#include <vector>
+
+Include dependency graph for Consequent.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Consequent
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Consequent_8h__dep__incl.map b/docs/html/Consequent_8h__dep__incl.map new file mode 100644 index 0000000..ff1133d --- /dev/null +++ b/docs/html/Consequent_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Consequent_8h__dep__incl.md5 b/docs/html/Consequent_8h__dep__incl.md5 new file mode 100644 index 0000000..acafc72 --- /dev/null +++ b/docs/html/Consequent_8h__dep__incl.md5 @@ -0,0 +1 @@ +04f6830e64938d2878f5b6ce82f36827 \ No newline at end of file diff --git a/docs/html/Consequent_8h__dep__incl.png b/docs/html/Consequent_8h__dep__incl.png new file mode 100644 index 0000000..b1bff0e Binary files /dev/null and b/docs/html/Consequent_8h__dep__incl.png differ diff --git a/docs/html/Consequent_8h__incl.map b/docs/html/Consequent_8h__incl.map new file mode 100644 index 0000000..b4c5738 --- /dev/null +++ b/docs/html/Consequent_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Consequent_8h__incl.md5 b/docs/html/Consequent_8h__incl.md5 new file mode 100644 index 0000000..ace1b7b --- /dev/null +++ b/docs/html/Consequent_8h__incl.md5 @@ -0,0 +1 @@ +d8d6db5b8e87d9269596d71c7f222675 \ No newline at end of file diff --git a/docs/html/Consequent_8h__incl.png b/docs/html/Consequent_8h__incl.png new file mode 100644 index 0000000..25f0157 Binary files /dev/null and b/docs/html/Consequent_8h__incl.png differ diff --git a/docs/html/Consequent_8h_source.html b/docs/html/Consequent_8h_source.html new file mode 100644 index 0000000..690247c --- /dev/null +++ b/docs/html/Consequent_8h_source.html @@ -0,0 +1,178 @@ + + + + + + +fuzzylite: fl/rule/Consequent.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Consequent.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Consequent.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_CONSEQUENT_H
+
24 #define FL_CONSEQUENT_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 #include <vector>
+
30 
+
31 namespace fl {
+
32  class Engine;
+
33  class Proposition;
+
34  class TNorm;
+
35 
+ +
37  protected:
+
38  std::vector<Proposition*> _conclusions;
+
39 
+
40  public:
+
41  Consequent();
+
42  virtual ~Consequent();
+
43 
+
44  virtual std::vector<Proposition*> conclusions() const;
+
45 
+
46  virtual void load(const std::string& consequent, const Engine* engine);
+
47 
+
48  virtual void modify(scalar strength, const TNorm* activation);
+
49 
+
50  virtual std::string toString() const;
+
51  };
+
52 
+
53 }
+
54 
+
55 #endif /* FL_CONSEQUENT_H */
+
+
+ + + + diff --git a/docs/html/Console_8cpp.html b/docs/html/Console_8cpp.html new file mode 100644 index 0000000..920c79e --- /dev/null +++ b/docs/html/Console_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/Console.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Console.cpp File Reference
+
+
+
#include "fl/Console.h"
+#include "fl/Headers.h"
+#include <vector>
+#include <utility>
+#include <stdlib.h>
+#include <fstream>
+
+Include dependency graph for Console.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Console_8cpp__incl.map b/docs/html/Console_8cpp__incl.map new file mode 100644 index 0000000..ae100b8 --- /dev/null +++ b/docs/html/Console_8cpp__incl.map @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Console_8cpp__incl.md5 b/docs/html/Console_8cpp__incl.md5 new file mode 100644 index 0000000..863243e --- /dev/null +++ b/docs/html/Console_8cpp__incl.md5 @@ -0,0 +1 @@ +c4e300ccc12be912a30d0826dca42381 \ No newline at end of file diff --git a/docs/html/Console_8cpp__incl.png b/docs/html/Console_8cpp__incl.png new file mode 100644 index 0000000..82d2079 Binary files /dev/null and b/docs/html/Console_8cpp__incl.png differ diff --git a/docs/html/Console_8h.html b/docs/html/Console_8h.html new file mode 100644 index 0000000..86b35b5 --- /dev/null +++ b/docs/html/Console_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/Console.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Console.h File Reference
+
+
+
#include <string>
+#include <map>
+
+Include dependency graph for Console.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Console
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Console_8h__dep__incl.map b/docs/html/Console_8h__dep__incl.map new file mode 100644 index 0000000..eccd7ba --- /dev/null +++ b/docs/html/Console_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/Console_8h__dep__incl.md5 b/docs/html/Console_8h__dep__incl.md5 new file mode 100644 index 0000000..4657b37 --- /dev/null +++ b/docs/html/Console_8h__dep__incl.md5 @@ -0,0 +1 @@ +c74fa0fc66189c990a6a54d50c26a3f3 \ No newline at end of file diff --git a/docs/html/Console_8h__dep__incl.png b/docs/html/Console_8h__dep__incl.png new file mode 100644 index 0000000..5f798e0 Binary files /dev/null and b/docs/html/Console_8h__dep__incl.png differ diff --git a/docs/html/Console_8h__incl.map b/docs/html/Console_8h__incl.map new file mode 100644 index 0000000..5bc57ff --- /dev/null +++ b/docs/html/Console_8h__incl.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/Console_8h__incl.md5 b/docs/html/Console_8h__incl.md5 new file mode 100644 index 0000000..9297c16 --- /dev/null +++ b/docs/html/Console_8h__incl.md5 @@ -0,0 +1 @@ +a0db0253796ce35989de5999be4f5e38 \ No newline at end of file diff --git a/docs/html/Console_8h__incl.png b/docs/html/Console_8h__incl.png new file mode 100644 index 0000000..de03ced Binary files /dev/null and b/docs/html/Console_8h__incl.png differ diff --git a/docs/html/Console_8h_source.html b/docs/html/Console_8h_source.html new file mode 100644 index 0000000..81c471d --- /dev/null +++ b/docs/html/Console_8h_source.html @@ -0,0 +1,171 @@ + + + + + + +fuzzylite: fl/Console.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Console.h
+
+
+Go to the documentation of this file.
1 /*
+
2  * File: Console.h
+
3  * Author: jcrada
+
4  *
+
5  * Created on 30 November 2013, 10:54 AM
+
6  */
+
7 
+
8 #ifndef FL_CONSOLE_H
+
9 #define FL_CONSOLE_H
+
10 
+
11 #include <string>
+
12 #include <map>
+
13 
+
14 namespace fl {
+
15  class Engine;
+
16 
+
17  class Console {
+
18  public:
+
19  static const std::string KW_INPUT_FILE;
+
20  static const std::string KW_INPUT_FORMAT;
+
21  static const std::string KW_OUTPUT_FILE;
+
22  static const std::string KW_OUTPUT_FORMAT;
+
23  static const std::string KW_EXAMPLE;
+
24  static const std::string KW_DATA_RESOLUTION_VARIABLE;
+
25  static const std::string KW_DATA_MAXIMUM;
+
26  static const std::string KW_DATA_SEPARATOR;
+
27 
+
28  static Engine* mamdani();
+
29  static Engine* takagiSugeno();
+
30 
+
31  protected:
+
32  static std::map<std::string, std::string> parse(int argc, char** argv);
+
33  static void process(const std::map<std::string, std::string>& options);
+
34 
+
35  template <typename T>
+
36  static void process(const std::string& input, T& writer,
+
37  const std::string& inputFormat, const std::string& outputFormat,
+
38  const std::map<std::string, std::string>& options);
+
39 
+
40  public:
+
41  static std::string usage();
+
42  static int main(int argc, char** argv);
+
43  };
+
44 
+
45 }
+
46 
+
47 #endif /* FL_CONSOLE_H */
+
48 
+
+
+ + + + diff --git a/docs/html/Constant_8cpp.html b/docs/html/Constant_8cpp.html new file mode 100644 index 0000000..a7fbd45 --- /dev/null +++ b/docs/html/Constant_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/Constant.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Constant.cpp File Reference
+
+
+
#include "fl/term/Constant.h"
+
+Include dependency graph for Constant.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Constant_8cpp__incl.map b/docs/html/Constant_8cpp__incl.map new file mode 100644 index 0000000..e095c77 --- /dev/null +++ b/docs/html/Constant_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Constant_8cpp__incl.md5 b/docs/html/Constant_8cpp__incl.md5 new file mode 100644 index 0000000..315184a --- /dev/null +++ b/docs/html/Constant_8cpp__incl.md5 @@ -0,0 +1 @@ +7710b2a2d8d34437dcd9aa7cb083f812 \ No newline at end of file diff --git a/docs/html/Constant_8cpp__incl.png b/docs/html/Constant_8cpp__incl.png new file mode 100644 index 0000000..52b3e12 Binary files /dev/null and b/docs/html/Constant_8cpp__incl.png differ diff --git a/docs/html/Constant_8h.html b/docs/html/Constant_8h.html new file mode 100644 index 0000000..f9af68a --- /dev/null +++ b/docs/html/Constant_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Constant.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Constant.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Constant.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Constant
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Constant_8h__dep__incl.map b/docs/html/Constant_8h__dep__incl.map new file mode 100644 index 0000000..a84bc6f --- /dev/null +++ b/docs/html/Constant_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Constant_8h__dep__incl.md5 b/docs/html/Constant_8h__dep__incl.md5 new file mode 100644 index 0000000..a71531c --- /dev/null +++ b/docs/html/Constant_8h__dep__incl.md5 @@ -0,0 +1 @@ +edeedaa108a2e52b53e4582efdc7178d \ No newline at end of file diff --git a/docs/html/Constant_8h__dep__incl.png b/docs/html/Constant_8h__dep__incl.png new file mode 100644 index 0000000..4201b30 Binary files /dev/null and b/docs/html/Constant_8h__dep__incl.png differ diff --git a/docs/html/Constant_8h__incl.map b/docs/html/Constant_8h__incl.map new file mode 100644 index 0000000..d278597 --- /dev/null +++ b/docs/html/Constant_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Constant_8h__incl.md5 b/docs/html/Constant_8h__incl.md5 new file mode 100644 index 0000000..a617f44 --- /dev/null +++ b/docs/html/Constant_8h__incl.md5 @@ -0,0 +1 @@ +1e8008657598330ca28f30fecf76e8a9 \ No newline at end of file diff --git a/docs/html/Constant_8h__incl.png b/docs/html/Constant_8h__incl.png new file mode 100644 index 0000000..32f7516 Binary files /dev/null and b/docs/html/Constant_8h__incl.png differ diff --git a/docs/html/Constant_8h_source.html b/docs/html/Constant_8h_source.html new file mode 100644 index 0000000..8b6f781 --- /dev/null +++ b/docs/html/Constant_8h_source.html @@ -0,0 +1,178 @@ + + + + + + +fuzzylite: fl/term/Constant.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Constant.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Constant.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 8:21 PM
+
21  */
+
22 
+
23 #ifndef FL_CONSTANT_H
+
24 #define FL_CONSTANT_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Constant : public Term {
+
31  protected:
+ +
33 
+
34  public:
+
35  Constant(const std::string& name = "",
+
36  scalar value = fl::nan);
+
37  virtual ~Constant();
+
38 
+
39  virtual std::string className() const;
+
40  virtual std::string parameters() const;
+
41  virtual void configure(const std::string& parameters);
+
42 
+
43  virtual scalar membership(scalar x) const;
+
44 
+
45  virtual void setValue(scalar value);
+
46  virtual scalar getValue() const;
+
47 
+
48  virtual Constant* copy() const;
+
49 
+
50  static Term* constructor();
+
51  };
+
52 }
+
53 
+
54 #endif /* FL_CONSTANT_H */
+
55 
+
+
+ + + + diff --git a/docs/html/CppExporter_8cpp.html b/docs/html/CppExporter_8cpp.html new file mode 100644 index 0000000..452eac1 --- /dev/null +++ b/docs/html/CppExporter_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/imex/CppExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
CppExporter.cpp File Reference
+
+
+
#include "fl/imex/CppExporter.h"
+#include "fl/Headers.h"
+#include <algorithm>
+
+Include dependency graph for CppExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/CppExporter_8cpp__incl.map b/docs/html/CppExporter_8cpp__incl.map new file mode 100644 index 0000000..5578d18 --- /dev/null +++ b/docs/html/CppExporter_8cpp__incl.map @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/CppExporter_8cpp__incl.md5 b/docs/html/CppExporter_8cpp__incl.md5 new file mode 100644 index 0000000..c6561bc --- /dev/null +++ b/docs/html/CppExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +0026b25ff8ecaf76a09870c14b85950d \ No newline at end of file diff --git a/docs/html/CppExporter_8cpp__incl.png b/docs/html/CppExporter_8cpp__incl.png new file mode 100644 index 0000000..cf63e4d Binary files /dev/null and b/docs/html/CppExporter_8cpp__incl.png differ diff --git a/docs/html/CppExporter_8h.html b/docs/html/CppExporter_8h.html new file mode 100644 index 0000000..b00e6c1 --- /dev/null +++ b/docs/html/CppExporter_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/imex/CppExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
CppExporter.h File Reference
+
+
+
#include "fl/imex/Exporter.h"
+
+Include dependency graph for CppExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::CppExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/CppExporter_8h__dep__incl.map b/docs/html/CppExporter_8h__dep__incl.map new file mode 100644 index 0000000..8b58384 --- /dev/null +++ b/docs/html/CppExporter_8h__dep__incl.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/docs/html/CppExporter_8h__dep__incl.md5 b/docs/html/CppExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..2fc52f5 --- /dev/null +++ b/docs/html/CppExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +0cdb34802f8e7def4aae48191a8981f6 \ No newline at end of file diff --git a/docs/html/CppExporter_8h__dep__incl.png b/docs/html/CppExporter_8h__dep__incl.png new file mode 100644 index 0000000..f5cd93b Binary files /dev/null and b/docs/html/CppExporter_8h__dep__incl.png differ diff --git a/docs/html/CppExporter_8h__incl.map b/docs/html/CppExporter_8h__incl.map new file mode 100644 index 0000000..9cc9d27 --- /dev/null +++ b/docs/html/CppExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/CppExporter_8h__incl.md5 b/docs/html/CppExporter_8h__incl.md5 new file mode 100644 index 0000000..1751e17 --- /dev/null +++ b/docs/html/CppExporter_8h__incl.md5 @@ -0,0 +1 @@ +983e597f08cd1d333fd963b110abb6a9 \ No newline at end of file diff --git a/docs/html/CppExporter_8h__incl.png b/docs/html/CppExporter_8h__incl.png new file mode 100644 index 0000000..7f4d96a Binary files /dev/null and b/docs/html/CppExporter_8h__incl.png differ diff --git a/docs/html/CppExporter_8h_source.html b/docs/html/CppExporter_8h_source.html new file mode 100644 index 0000000..8569ae3 --- /dev/null +++ b/docs/html/CppExporter_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/imex/CppExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
CppExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: CppExporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 1 January 2013, 2:41 PM
+
21  */
+
22 
+
23 #ifndef FL_CPPEXPORTER_H
+
24 #define FL_CPPEXPORTER_H
+
25 
+
26 #include "fl/imex/Exporter.h"
+
27 
+
28 namespace fl {
+
29  class Engine;
+
30  class InputVariable;
+
31  class OutputVariable;
+
32  class Term;
+
33  class RuleBlock;
+
34  class Norm;
+
35  class Defuzzifier;
+
36  class Hedge;
+
37 
+
38  class FL_EXPORT CppExporter : public Exporter {
+
39  public:
+
40  CppExporter();
+
41  virtual ~CppExporter();
+
42  virtual std::string name() const;
+
43  virtual std::string toString(const Engine* engine) const;
+
44 
+
45  virtual std::string toString(const InputVariable* inputVariable, const Engine* engine) const;
+
46  virtual std::string toString(const OutputVariable* outputVariable, const Engine* engine) const;
+
47  virtual std::string toString(const RuleBlock* ruleBlock, const Engine* engine) const;
+
48  virtual std::string toString(scalar value) const;
+
49 
+
50  virtual std::string toString(const Hedge* hedge) const;
+
51  virtual std::string toString(const Term* term) const;
+
52  virtual std::string toString(const Norm* op) const;
+
53  virtual std::string toString(const Defuzzifier* defuzzifier) const;
+
54 
+
55  };
+
56 }
+
57 #endif /* FL_CPPEXPORTER_H */
+
58 
+
+
+ + + + diff --git a/docs/html/DefuzzifierFactory_8cpp.html b/docs/html/DefuzzifierFactory_8cpp.html new file mode 100644 index 0000000..ebc93b6 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8cpp.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: src/factory/DefuzzifierFactory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DefuzzifierFactory.cpp File Reference
+
+
+
+Include dependency graph for DefuzzifierFactory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DefuzzifierFactory_8cpp__incl.map b/docs/html/DefuzzifierFactory_8cpp__incl.map new file mode 100644 index 0000000..f5d53d9 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8cpp__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/DefuzzifierFactory_8cpp__incl.md5 b/docs/html/DefuzzifierFactory_8cpp__incl.md5 new file mode 100644 index 0000000..87a4eae --- /dev/null +++ b/docs/html/DefuzzifierFactory_8cpp__incl.md5 @@ -0,0 +1 @@ +d4bb7a437b771835cfb48a2a467dd4af \ No newline at end of file diff --git a/docs/html/DefuzzifierFactory_8cpp__incl.png b/docs/html/DefuzzifierFactory_8cpp__incl.png new file mode 100644 index 0000000..e79ff60 Binary files /dev/null and b/docs/html/DefuzzifierFactory_8cpp__incl.png differ diff --git a/docs/html/DefuzzifierFactory_8h.html b/docs/html/DefuzzifierFactory_8h.html new file mode 100644 index 0000000..ae14dd0 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: fl/factory/DefuzzifierFactory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DefuzzifierFactory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/factory/Factory.h"
+#include <string>
+#include <vector>
+
+Include dependency graph for DefuzzifierFactory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::DefuzzifierFactory
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DefuzzifierFactory_8h__dep__incl.map b/docs/html/DefuzzifierFactory_8h__dep__incl.map new file mode 100644 index 0000000..d1a1019 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/DefuzzifierFactory_8h__dep__incl.md5 b/docs/html/DefuzzifierFactory_8h__dep__incl.md5 new file mode 100644 index 0000000..924bcd4 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h__dep__incl.md5 @@ -0,0 +1 @@ +30be935735036a645374bede409f5901 \ No newline at end of file diff --git a/docs/html/DefuzzifierFactory_8h__dep__incl.png b/docs/html/DefuzzifierFactory_8h__dep__incl.png new file mode 100644 index 0000000..792c97f Binary files /dev/null and b/docs/html/DefuzzifierFactory_8h__dep__incl.png differ diff --git a/docs/html/DefuzzifierFactory_8h__incl.map b/docs/html/DefuzzifierFactory_8h__incl.map new file mode 100644 index 0000000..a353d10 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/DefuzzifierFactory_8h__incl.md5 b/docs/html/DefuzzifierFactory_8h__incl.md5 new file mode 100644 index 0000000..0c62750 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h__incl.md5 @@ -0,0 +1 @@ +57839c0907c4ce00efea63fa0f04f1e4 \ No newline at end of file diff --git a/docs/html/DefuzzifierFactory_8h__incl.png b/docs/html/DefuzzifierFactory_8h__incl.png new file mode 100644 index 0000000..d97762d Binary files /dev/null and b/docs/html/DefuzzifierFactory_8h__incl.png differ diff --git a/docs/html/DefuzzifierFactory_8h_source.html b/docs/html/DefuzzifierFactory_8h_source.html new file mode 100644 index 0000000..4af8a67 --- /dev/null +++ b/docs/html/DefuzzifierFactory_8h_source.html @@ -0,0 +1,167 @@ + + + + + + +fuzzylite: fl/factory/DefuzzifierFactory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
DefuzzifierFactory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: DefuzzifierFactory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 January 2013, 11:17 PM
+
21  */
+
22 
+
23 #ifndef FL_DEFUZZIFIERFACTORY_H
+
24 #define FL_DEFUZZIFIERFACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/factory/Factory.h"
+
29 
+
30 #include <string>
+
31 #include <vector>
+
32 
+
33 namespace fl {
+
34  class Defuzzifier;
+
35 
+
36  class FL_EXPORT DefuzzifierFactory : public Factory<Defuzzifier*>{
+
37  public:
+ +
39  virtual ~DefuzzifierFactory();
+
40 
+
41  };
+
42 }
+
43 #endif /* DEFUZZIFIERFACTORY_H */
+
44 
+
+
+ + + + diff --git a/docs/html/Defuzzifier_8h.html b/docs/html/Defuzzifier_8h.html new file mode 100644 index 0000000..d0ad113 --- /dev/null +++ b/docs/html/Defuzzifier_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/defuzzifier/Defuzzifier.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Defuzzifier.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Defuzzifier.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Defuzzifier
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Defuzzifier_8h__dep__incl.map b/docs/html/Defuzzifier_8h__dep__incl.map new file mode 100644 index 0000000..e44c3f9 --- /dev/null +++ b/docs/html/Defuzzifier_8h__dep__incl.map @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Defuzzifier_8h__dep__incl.md5 b/docs/html/Defuzzifier_8h__dep__incl.md5 new file mode 100644 index 0000000..ed0f7ef --- /dev/null +++ b/docs/html/Defuzzifier_8h__dep__incl.md5 @@ -0,0 +1 @@ +2318719a82d1393b4ff8fd44a4187f74 \ No newline at end of file diff --git a/docs/html/Defuzzifier_8h__dep__incl.png b/docs/html/Defuzzifier_8h__dep__incl.png new file mode 100644 index 0000000..2280d3f Binary files /dev/null and b/docs/html/Defuzzifier_8h__dep__incl.png differ diff --git a/docs/html/Defuzzifier_8h__incl.map b/docs/html/Defuzzifier_8h__incl.map new file mode 100644 index 0000000..58566c2 --- /dev/null +++ b/docs/html/Defuzzifier_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Defuzzifier_8h__incl.md5 b/docs/html/Defuzzifier_8h__incl.md5 new file mode 100644 index 0000000..09d99c2 --- /dev/null +++ b/docs/html/Defuzzifier_8h__incl.md5 @@ -0,0 +1 @@ +b8cdd23788741bb1467b49907680eed8 \ No newline at end of file diff --git a/docs/html/Defuzzifier_8h__incl.png b/docs/html/Defuzzifier_8h__incl.png new file mode 100644 index 0000000..d5c808c Binary files /dev/null and b/docs/html/Defuzzifier_8h__incl.png differ diff --git a/docs/html/Defuzzifier_8h_source.html b/docs/html/Defuzzifier_8h_source.html new file mode 100644 index 0000000..63c237b --- /dev/null +++ b/docs/html/Defuzzifier_8h_source.html @@ -0,0 +1,173 @@ + + + + + + +fuzzylite: fl/defuzzifier/Defuzzifier.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Defuzzifier.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Defuzzifier.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 
+
24 //TODO Check http://en.wikipedia.org/wiki/Defuzzification for other defuzzifiers.
+
25 
+
26 #ifndef FL_DEFUZZIFIER_H
+
27 #define FL_DEFUZZIFIER_H
+
28 
+
29 #include "fl/fuzzylite.h"
+
30 #include <string>
+
31 
+
32 namespace fl {
+
33  class Term;
+
34 
+ +
36  public:
+
37 
+ +
39  }
+
40 
+
41  virtual ~Defuzzifier() {
+
42  }
+
43 
+
44  virtual std::string className() const = 0;
+
45  virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const = 0;
+
46 
+
47  };
+
48 
+
49 }
+
50 #endif /* FL_DEFUZZIFIER_H */
+
+
+ + + + diff --git a/docs/html/Discrete_8cpp.html b/docs/html/Discrete_8cpp.html new file mode 100644 index 0000000..e15bb9a --- /dev/null +++ b/docs/html/Discrete_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Discrete.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Discrete.cpp File Reference
+
+
+
#include "fl/term/Discrete.h"
+#include <cstdarg>
+
+Include dependency graph for Discrete.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Discrete_8cpp__incl.map b/docs/html/Discrete_8cpp__incl.map new file mode 100644 index 0000000..348fcc4 --- /dev/null +++ b/docs/html/Discrete_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Discrete_8cpp__incl.md5 b/docs/html/Discrete_8cpp__incl.md5 new file mode 100644 index 0000000..2315827 --- /dev/null +++ b/docs/html/Discrete_8cpp__incl.md5 @@ -0,0 +1 @@ +2bd9a0c520eeb330a0a03c43b7942b5c \ No newline at end of file diff --git a/docs/html/Discrete_8cpp__incl.png b/docs/html/Discrete_8cpp__incl.png new file mode 100644 index 0000000..2bb4357 Binary files /dev/null and b/docs/html/Discrete_8cpp__incl.png differ diff --git a/docs/html/Discrete_8h.html b/docs/html/Discrete_8h.html new file mode 100644 index 0000000..68f7540 --- /dev/null +++ b/docs/html/Discrete_8h.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: fl/term/Discrete.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Discrete.h File Reference
+
+
+
#include "fl/term/Term.h"
+#include "fl/Exception.h"
+#include <vector>
+#include <utility>
+
+Include dependency graph for Discrete.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Discrete
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Discrete_8h__dep__incl.map b/docs/html/Discrete_8h__dep__incl.map new file mode 100644 index 0000000..ea69242 --- /dev/null +++ b/docs/html/Discrete_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Discrete_8h__dep__incl.md5 b/docs/html/Discrete_8h__dep__incl.md5 new file mode 100644 index 0000000..355a7e2 --- /dev/null +++ b/docs/html/Discrete_8h__dep__incl.md5 @@ -0,0 +1 @@ +3a439364a9bf813f87ea7b475b9e34ba \ No newline at end of file diff --git a/docs/html/Discrete_8h__dep__incl.png b/docs/html/Discrete_8h__dep__incl.png new file mode 100644 index 0000000..60fb269 Binary files /dev/null and b/docs/html/Discrete_8h__dep__incl.png differ diff --git a/docs/html/Discrete_8h__incl.map b/docs/html/Discrete_8h__incl.map new file mode 100644 index 0000000..4e8e079 --- /dev/null +++ b/docs/html/Discrete_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Discrete_8h__incl.md5 b/docs/html/Discrete_8h__incl.md5 new file mode 100644 index 0000000..27c9693 --- /dev/null +++ b/docs/html/Discrete_8h__incl.md5 @@ -0,0 +1 @@ +119265001ce528d5d0bb3fa7a27f8c07 \ No newline at end of file diff --git a/docs/html/Discrete_8h__incl.png b/docs/html/Discrete_8h__incl.png new file mode 100644 index 0000000..99ad190 Binary files /dev/null and b/docs/html/Discrete_8h__incl.png differ diff --git a/docs/html/Discrete_8h_source.html b/docs/html/Discrete_8h_source.html new file mode 100644 index 0000000..74b6587 --- /dev/null +++ b/docs/html/Discrete_8h_source.html @@ -0,0 +1,192 @@ + + + + + + +fuzzylite: fl/term/Discrete.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Discrete.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Discrete.h
+
18  *
+
19  * Created on: 5/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_DISCRETE_H
+
24 #define FL_DISCRETE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 #include "fl/Exception.h"
+
29 
+
30 #include <vector>
+
31 #include <utility>
+
32 
+
33 namespace fl {
+
34 
+
35  class FL_EXPORT Discrete : public Term {
+
36  public:
+
37  std::vector<scalar> x;
+
38  std::vector<scalar> y;
+
39 
+
40  Discrete(const std::string& name = "");
+
41 
+
42  Discrete(const std::string& name,
+
43  const std::vector<scalar>& x,
+
44  const std::vector<scalar>& y);
+
45 
+
46  Discrete(const std::string& name,
+
47  const std::vector<std::pair<scalar, scalar> >& xy);
+
48 
+
49  virtual ~Discrete();
+
50 
+
51  virtual std::string className() const;
+
52  virtual std::string parameters() const;
+
53  virtual void configure(const std::string& parameters);
+
54 
+
55  //Warning: this method is unsafe. Make sure you use it correctly.
+
56  template <typename T>
+
57  static Discrete* create(const std::string& name, int argc,
+
58  T x1, T y1, ...) throw (fl::Exception);
+
59 
+
60  virtual scalar membership(scalar x) const;
+
61 
+
62  virtual Discrete* copy() const;
+
63 
+
64  static Term* constructor();
+
65 
+
66  };
+
67 
+
68 }
+
69 #endif /* FL_DISCRETE_H */
+
+
+ + + + diff --git a/docs/html/DrasticProduct_8cpp.html b/docs/html/DrasticProduct_8cpp.html new file mode 100644 index 0000000..5ffe382 --- /dev/null +++ b/docs/html/DrasticProduct_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/DrasticProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DrasticProduct.cpp File Reference
+
+
+
+Include dependency graph for DrasticProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DrasticProduct_8cpp__incl.map b/docs/html/DrasticProduct_8cpp__incl.map new file mode 100644 index 0000000..01d846d --- /dev/null +++ b/docs/html/DrasticProduct_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/DrasticProduct_8cpp__incl.md5 b/docs/html/DrasticProduct_8cpp__incl.md5 new file mode 100644 index 0000000..9ac2a5e --- /dev/null +++ b/docs/html/DrasticProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +d6c77e2ee285066612e9a155b79b8db1 \ No newline at end of file diff --git a/docs/html/DrasticProduct_8cpp__incl.png b/docs/html/DrasticProduct_8cpp__incl.png new file mode 100644 index 0000000..586f89b Binary files /dev/null and b/docs/html/DrasticProduct_8cpp__incl.png differ diff --git a/docs/html/DrasticProduct_8h.html b/docs/html/DrasticProduct_8h.html new file mode 100644 index 0000000..c8b940c --- /dev/null +++ b/docs/html/DrasticProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/DrasticProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DrasticProduct.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for DrasticProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::DrasticProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DrasticProduct_8h__dep__incl.map b/docs/html/DrasticProduct_8h__dep__incl.map new file mode 100644 index 0000000..96016b5 --- /dev/null +++ b/docs/html/DrasticProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/DrasticProduct_8h__dep__incl.md5 b/docs/html/DrasticProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..5e46280 --- /dev/null +++ b/docs/html/DrasticProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +eaa31fe9629e16e4978551eb8e0c407b \ No newline at end of file diff --git a/docs/html/DrasticProduct_8h__dep__incl.png b/docs/html/DrasticProduct_8h__dep__incl.png new file mode 100644 index 0000000..a5293d5 Binary files /dev/null and b/docs/html/DrasticProduct_8h__dep__incl.png differ diff --git a/docs/html/DrasticProduct_8h__incl.map b/docs/html/DrasticProduct_8h__incl.map new file mode 100644 index 0000000..8437d4b --- /dev/null +++ b/docs/html/DrasticProduct_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/DrasticProduct_8h__incl.md5 b/docs/html/DrasticProduct_8h__incl.md5 new file mode 100644 index 0000000..6460f7b --- /dev/null +++ b/docs/html/DrasticProduct_8h__incl.md5 @@ -0,0 +1 @@ +0604415719ffd3a4f7b15b0a4c7aeff9 \ No newline at end of file diff --git a/docs/html/DrasticProduct_8h__incl.png b/docs/html/DrasticProduct_8h__incl.png new file mode 100644 index 0000000..e058a8b Binary files /dev/null and b/docs/html/DrasticProduct_8h__incl.png differ diff --git a/docs/html/DrasticProduct_8h_source.html b/docs/html/DrasticProduct_8h_source.html new file mode 100644 index 0000000..64b5dc7 --- /dev/null +++ b/docs/html/DrasticProduct_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/t/DrasticProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
DrasticProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: DrasticProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:47 AM
+
21  */
+
22 
+
23 #ifndef FL_DRASTICPRODUCT_H
+
24 #define FL_DRASTICPRODUCT_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT DrasticProduct : public TNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 
+
38 }
+
39 
+
40 #endif /* FL_DRASTICPRODUCT_H */
+
41 
+
+
+ + + + diff --git a/docs/html/DrasticSum_8cpp.html b/docs/html/DrasticSum_8cpp.html new file mode 100644 index 0000000..21a74d0 --- /dev/null +++ b/docs/html/DrasticSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/DrasticSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DrasticSum.cpp File Reference
+
+
+
+Include dependency graph for DrasticSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DrasticSum_8cpp__incl.map b/docs/html/DrasticSum_8cpp__incl.map new file mode 100644 index 0000000..0eaa043 --- /dev/null +++ b/docs/html/DrasticSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/DrasticSum_8cpp__incl.md5 b/docs/html/DrasticSum_8cpp__incl.md5 new file mode 100644 index 0000000..cbea3d9 --- /dev/null +++ b/docs/html/DrasticSum_8cpp__incl.md5 @@ -0,0 +1 @@ +c2e764d16594ea199ef3d27c477912f5 \ No newline at end of file diff --git a/docs/html/DrasticSum_8cpp__incl.png b/docs/html/DrasticSum_8cpp__incl.png new file mode 100644 index 0000000..1dd7fd4 Binary files /dev/null and b/docs/html/DrasticSum_8cpp__incl.png differ diff --git a/docs/html/DrasticSum_8h.html b/docs/html/DrasticSum_8h.html new file mode 100644 index 0000000..29f4b1e --- /dev/null +++ b/docs/html/DrasticSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/DrasticSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
DrasticSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for DrasticSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::DrasticSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/DrasticSum_8h__dep__incl.map b/docs/html/DrasticSum_8h__dep__incl.map new file mode 100644 index 0000000..11606fd --- /dev/null +++ b/docs/html/DrasticSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/DrasticSum_8h__dep__incl.md5 b/docs/html/DrasticSum_8h__dep__incl.md5 new file mode 100644 index 0000000..f524f93 --- /dev/null +++ b/docs/html/DrasticSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +9c8e24a7c9511b6fdb68ccfdae78323c \ No newline at end of file diff --git a/docs/html/DrasticSum_8h__dep__incl.png b/docs/html/DrasticSum_8h__dep__incl.png new file mode 100644 index 0000000..97e6bcb Binary files /dev/null and b/docs/html/DrasticSum_8h__dep__incl.png differ diff --git a/docs/html/DrasticSum_8h__incl.map b/docs/html/DrasticSum_8h__incl.map new file mode 100644 index 0000000..bcaa61a --- /dev/null +++ b/docs/html/DrasticSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/DrasticSum_8h__incl.md5 b/docs/html/DrasticSum_8h__incl.md5 new file mode 100644 index 0000000..97f589c --- /dev/null +++ b/docs/html/DrasticSum_8h__incl.md5 @@ -0,0 +1 @@ +0f5921ab0a016328428398a89986f208 \ No newline at end of file diff --git a/docs/html/DrasticSum_8h__incl.png b/docs/html/DrasticSum_8h__incl.png new file mode 100644 index 0000000..071b03e Binary files /dev/null and b/docs/html/DrasticSum_8h__incl.png differ diff --git a/docs/html/DrasticSum_8h_source.html b/docs/html/DrasticSum_8h_source.html new file mode 100644 index 0000000..9daadf9 --- /dev/null +++ b/docs/html/DrasticSum_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/norm/s/DrasticSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
DrasticSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: DrasticSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:10 AM
+
21  */
+
22 
+
23 #ifndef FL_DRASTICSUM_H
+
24 #define FL_DRASTICSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 namespace fl {
+
28 
+
29  class FL_EXPORT DrasticSum : public SNorm {
+
30  public:
+
31  std::string className() const;
+
32  scalar compute(scalar a, scalar b) const;
+
33 
+
34  static SNorm* constructor();
+
35  };
+
36 
+
37 }
+
38 
+
39 #endif /* FL_DRASTICSUM_H */
+
40 
+
+
+ + + + diff --git a/docs/html/EinsteinProduct_8cpp.html b/docs/html/EinsteinProduct_8cpp.html new file mode 100644 index 0000000..3de5a12 --- /dev/null +++ b/docs/html/EinsteinProduct_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/EinsteinProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
EinsteinProduct.cpp File Reference
+
+
+
+Include dependency graph for EinsteinProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/EinsteinProduct_8cpp__incl.map b/docs/html/EinsteinProduct_8cpp__incl.map new file mode 100644 index 0000000..9b04851 --- /dev/null +++ b/docs/html/EinsteinProduct_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/EinsteinProduct_8cpp__incl.md5 b/docs/html/EinsteinProduct_8cpp__incl.md5 new file mode 100644 index 0000000..0ce09d0 --- /dev/null +++ b/docs/html/EinsteinProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +649e8ba298202337db57a03aaff5e3c2 \ No newline at end of file diff --git a/docs/html/EinsteinProduct_8cpp__incl.png b/docs/html/EinsteinProduct_8cpp__incl.png new file mode 100644 index 0000000..2f1c492 Binary files /dev/null and b/docs/html/EinsteinProduct_8cpp__incl.png differ diff --git a/docs/html/EinsteinProduct_8h.html b/docs/html/EinsteinProduct_8h.html new file mode 100644 index 0000000..68d5557 --- /dev/null +++ b/docs/html/EinsteinProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/EinsteinProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
EinsteinProduct.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for EinsteinProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::EinsteinProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/EinsteinProduct_8h__dep__incl.map b/docs/html/EinsteinProduct_8h__dep__incl.map new file mode 100644 index 0000000..34bc1ef --- /dev/null +++ b/docs/html/EinsteinProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/EinsteinProduct_8h__dep__incl.md5 b/docs/html/EinsteinProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..ab8fb30 --- /dev/null +++ b/docs/html/EinsteinProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +68f9711493298f7878b0b0467b8e974b \ No newline at end of file diff --git a/docs/html/EinsteinProduct_8h__dep__incl.png b/docs/html/EinsteinProduct_8h__dep__incl.png new file mode 100644 index 0000000..4db7ca4 Binary files /dev/null and b/docs/html/EinsteinProduct_8h__dep__incl.png differ diff --git a/docs/html/EinsteinProduct_8h__incl.map b/docs/html/EinsteinProduct_8h__incl.map new file mode 100644 index 0000000..909be0b --- /dev/null +++ b/docs/html/EinsteinProduct_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/EinsteinProduct_8h__incl.md5 b/docs/html/EinsteinProduct_8h__incl.md5 new file mode 100644 index 0000000..745e4f9 --- /dev/null +++ b/docs/html/EinsteinProduct_8h__incl.md5 @@ -0,0 +1 @@ +b5849ada43711467065aff8462413700 \ No newline at end of file diff --git a/docs/html/EinsteinProduct_8h__incl.png b/docs/html/EinsteinProduct_8h__incl.png new file mode 100644 index 0000000..74d1a54 Binary files /dev/null and b/docs/html/EinsteinProduct_8h__incl.png differ diff --git a/docs/html/EinsteinProduct_8h_source.html b/docs/html/EinsteinProduct_8h_source.html new file mode 100644 index 0000000..1b9a57a --- /dev/null +++ b/docs/html/EinsteinProduct_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/t/EinsteinProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
EinsteinProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: EinsteinProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:48 AM
+
21  */
+
22 
+
23 #ifndef FL_EINSTEINPRODUCT_H
+
24 #define FL_EINSTEINPRODUCT_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT EinsteinProduct : public TNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 
+
38 }
+
39 
+
40 #endif /* FL_EINSTEINPRODUCT_H */
+
41 
+
+
+ + + + diff --git a/docs/html/EinsteinSum_8cpp.html b/docs/html/EinsteinSum_8cpp.html new file mode 100644 index 0000000..bb587ec --- /dev/null +++ b/docs/html/EinsteinSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/EinsteinSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
EinsteinSum.cpp File Reference
+
+
+
+Include dependency graph for EinsteinSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/EinsteinSum_8cpp__incl.map b/docs/html/EinsteinSum_8cpp__incl.map new file mode 100644 index 0000000..1428ffe --- /dev/null +++ b/docs/html/EinsteinSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/EinsteinSum_8cpp__incl.md5 b/docs/html/EinsteinSum_8cpp__incl.md5 new file mode 100644 index 0000000..756af5d --- /dev/null +++ b/docs/html/EinsteinSum_8cpp__incl.md5 @@ -0,0 +1 @@ +22aedd8ce9f28d81371faf0bb97183a5 \ No newline at end of file diff --git a/docs/html/EinsteinSum_8cpp__incl.png b/docs/html/EinsteinSum_8cpp__incl.png new file mode 100644 index 0000000..ce81d78 Binary files /dev/null and b/docs/html/EinsteinSum_8cpp__incl.png differ diff --git a/docs/html/EinsteinSum_8h.html b/docs/html/EinsteinSum_8h.html new file mode 100644 index 0000000..fc03242 --- /dev/null +++ b/docs/html/EinsteinSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/EinsteinSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
EinsteinSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for EinsteinSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::EinsteinSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/EinsteinSum_8h__dep__incl.map b/docs/html/EinsteinSum_8h__dep__incl.map new file mode 100644 index 0000000..028f8e3 --- /dev/null +++ b/docs/html/EinsteinSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/EinsteinSum_8h__dep__incl.md5 b/docs/html/EinsteinSum_8h__dep__incl.md5 new file mode 100644 index 0000000..586616f --- /dev/null +++ b/docs/html/EinsteinSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +24a1be5844352f6795b3986bcc4460d3 \ No newline at end of file diff --git a/docs/html/EinsteinSum_8h__dep__incl.png b/docs/html/EinsteinSum_8h__dep__incl.png new file mode 100644 index 0000000..767cb7d Binary files /dev/null and b/docs/html/EinsteinSum_8h__dep__incl.png differ diff --git a/docs/html/EinsteinSum_8h__incl.map b/docs/html/EinsteinSum_8h__incl.map new file mode 100644 index 0000000..75d4bb2 --- /dev/null +++ b/docs/html/EinsteinSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/EinsteinSum_8h__incl.md5 b/docs/html/EinsteinSum_8h__incl.md5 new file mode 100644 index 0000000..b7cc1ba --- /dev/null +++ b/docs/html/EinsteinSum_8h__incl.md5 @@ -0,0 +1 @@ +d8001dc57bdd4450a7430d3890d1a0c7 \ No newline at end of file diff --git a/docs/html/EinsteinSum_8h__incl.png b/docs/html/EinsteinSum_8h__incl.png new file mode 100644 index 0000000..a74e17c Binary files /dev/null and b/docs/html/EinsteinSum_8h__incl.png differ diff --git a/docs/html/EinsteinSum_8h_source.html b/docs/html/EinsteinSum_8h_source.html new file mode 100644 index 0000000..3a62ba3 --- /dev/null +++ b/docs/html/EinsteinSum_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/s/EinsteinSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
EinsteinSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: EinsteinSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:11 AM
+
21  */
+
22 
+
23 #ifndef FL_EINSTEINSUM_H
+
24 #define FL_EINSTEINSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT EinsteinSum : public SNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34 
+
35  static SNorm* constructor();
+
36  };
+
37 
+
38 }
+
39 
+
40 #endif /* FL_EINSTEINSUM_H */
+
41 
+
+
+ + + + diff --git a/docs/html/Engine_8cpp.html b/docs/html/Engine_8cpp.html new file mode 100644 index 0000000..767afd5 --- /dev/null +++ b/docs/html/Engine_8cpp.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: src/Engine.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Engine.cpp File Reference
+
+
+
+Include dependency graph for Engine.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Engine_8cpp__incl.map b/docs/html/Engine_8cpp__incl.map new file mode 100644 index 0000000..9ae8a97 --- /dev/null +++ b/docs/html/Engine_8cpp__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Engine_8cpp__incl.md5 b/docs/html/Engine_8cpp__incl.md5 new file mode 100644 index 0000000..8d24dab --- /dev/null +++ b/docs/html/Engine_8cpp__incl.md5 @@ -0,0 +1 @@ +9f0eb75fe0991e9a81bb3427ce016526 \ No newline at end of file diff --git a/docs/html/Engine_8cpp__incl.png b/docs/html/Engine_8cpp__incl.png new file mode 100644 index 0000000..348f39a Binary files /dev/null and b/docs/html/Engine_8cpp__incl.png differ diff --git a/docs/html/Engine_8h.html b/docs/html/Engine_8h.html new file mode 100644 index 0000000..51697e0 --- /dev/null +++ b/docs/html/Engine_8h.html @@ -0,0 +1,158 @@ + + + + + + +fuzzylite: fl/Engine.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Engine.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/defuzzifier/IntegralDefuzzifier.h"
+#include <vector>
+#include <string>
+
+Include dependency graph for Engine.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  fl::Engine
 A fuzzy engine. More...
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Engine_8h__dep__incl.map b/docs/html/Engine_8h__dep__incl.map new file mode 100644 index 0000000..1099991 --- /dev/null +++ b/docs/html/Engine_8h__dep__incl.map @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Engine_8h__dep__incl.md5 b/docs/html/Engine_8h__dep__incl.md5 new file mode 100644 index 0000000..795f43a --- /dev/null +++ b/docs/html/Engine_8h__dep__incl.md5 @@ -0,0 +1 @@ +bf79285cd82a8c3d232becd9af47605b \ No newline at end of file diff --git a/docs/html/Engine_8h__dep__incl.png b/docs/html/Engine_8h__dep__incl.png new file mode 100644 index 0000000..7b2eb14 Binary files /dev/null and b/docs/html/Engine_8h__dep__incl.png differ diff --git a/docs/html/Engine_8h__incl.map b/docs/html/Engine_8h__incl.map new file mode 100644 index 0000000..2f4beef --- /dev/null +++ b/docs/html/Engine_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Engine_8h__incl.md5 b/docs/html/Engine_8h__incl.md5 new file mode 100644 index 0000000..0c7701f --- /dev/null +++ b/docs/html/Engine_8h__incl.md5 @@ -0,0 +1 @@ +61dfc98c4b8e069d1c6c7c398760cd52 \ No newline at end of file diff --git a/docs/html/Engine_8h__incl.png b/docs/html/Engine_8h__incl.png new file mode 100644 index 0000000..9d6a77e Binary files /dev/null and b/docs/html/Engine_8h__incl.png differ diff --git a/docs/html/Engine_8h_source.html b/docs/html/Engine_8h_source.html new file mode 100644 index 0000000..8ff2b9a --- /dev/null +++ b/docs/html/Engine_8h_source.html @@ -0,0 +1,240 @@ + + + + + + +fuzzylite: fl/Engine.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Engine.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Engine.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_ENGINE_H
+
24 #define FL_ENGINE_H
+
25 
+
26 #include "fl/fuzzylite.h"
+ +
28 
+
29 #include <vector>
+
30 #include <string>
+
31 
+
39 namespace fl {
+
40 
+
41  class InputVariable;
+
42  class OutputVariable;
+
43  class RuleBlock;
+
44  class Hedge;
+
45  class TNorm;
+
46  class SNorm;
+
47  class Defuzzifier;
+
48 
+
49  class FL_EXPORT Engine {
+
50  protected:
+
52  std::string _name;
+
54  std::vector<InputVariable*> _inputVariables;
+
56  std::vector<OutputVariable*> _outputVariables;
+
58  std::vector<RuleBlock*> _ruleblocks;
+
60  std::vector<Hedge*> _hedges;
+
61 
+
62  public:
+
63  Engine(const std::string& name = "");
+
64  virtual ~Engine();
+
65 
+
66  virtual void configure(const std::string& conjunctionT = "Minimum",
+
67  const std::string& disjunctionS = "Maximum",
+
68  const std::string& activationT = "Minimum",
+
69  const std::string& accumulationS = "Maximum",
+
70  const std::string& defuzzifier = "Centroid",
+
71  int resolution = IntegralDefuzzifier::defaultResolution());
+
72 
+
73  virtual bool isReady(std::string* status = NULL) const;
+
74 
+
75  virtual void process();
+
76 
+
77  virtual void restart();
+
78 
+
79  virtual void setName(const std::string& name);
+
80  virtual std::string getName() const;
+
81 
+
82  virtual void setInputValue(const std::string& name, scalar value);
+
83  virtual scalar getOutputValue(const std::string& name);
+
84 
+
85  virtual std::string toString() const;
+
89  virtual void addInputVariable(InputVariable* inputVariable);
+
90  virtual void insertInputVariable(InputVariable* inputVariable, int index);
+
91  virtual InputVariable* getInputVariable(int index) const;
+
92  virtual InputVariable* getInputVariable(const std::string& name) const;
+
93  virtual InputVariable* removeInputVariable(int index);
+
94  virtual InputVariable* removeInputVariable(const std::string& name);
+
95  virtual bool hasInputVariable(const std::string& name) const;
+
96  virtual int numberOfInputVariables() const;
+
97  virtual const std::vector<InputVariable*>& inputVariables() const;
+
98 
+
102  virtual void addOutputVariable(OutputVariable* outputVariable);
+
103  virtual void insertOutputVariable(OutputVariable* outputVariable, int index);
+
104  virtual OutputVariable* getOutputVariable(int index) const;
+
105  virtual OutputVariable* getOutputVariable(const std::string& name) const;
+
106  virtual bool hasOutputVariable(const std::string& name) const;
+
107  virtual OutputVariable* removeOutputVariable(int index);
+
108  virtual OutputVariable* removeOutputVariable(const std::string& name);
+
109  virtual int numberOfOutputVariables() const;
+
110  virtual const std::vector<OutputVariable*>& outputVariables() const;
+
111 
+
115  virtual void addRuleBlock(RuleBlock* ruleblock);
+
116  virtual void insertRuleBlock(RuleBlock* ruleblock, int index);
+
117  virtual RuleBlock* getRuleBlock(int index) const;
+
118  virtual RuleBlock* getRuleBlock(const std::string& name) const;
+
119  virtual bool hasRuleBlock(const std::string& name) const;
+
120  virtual RuleBlock* removeRuleBlock(int index);
+
121  virtual RuleBlock* removeRuleBlock(const std::string& name);
+
122  virtual int numberOfRuleBlocks() const;
+
123  virtual const std::vector<RuleBlock*>& ruleBlocks() const;
+
124 
+
128  virtual void addHedge(Hedge* hedge);
+
129  virtual void insertHedge(Hedge* hedge, int index);
+
130  virtual Hedge* getHedge(int index) const;
+
131  virtual Hedge* getHedge(const std::string& name) const;
+
132  virtual bool hasHedge(const std::string& name) const;
+
133  virtual Hedge* removeHedge(int index);
+
134  virtual Hedge* removeHedge(const std::string& name);
+
135  virtual int numberOfHedges() const;
+
136  virtual const std::vector<Hedge*>& hedges() const;
+
137 
+
138  };
+
139 
+
140 }
+
141 #endif /* FL_ENGINE_H */
+
+
+ + + + diff --git a/docs/html/Exception_8cpp.html b/docs/html/Exception_8cpp.html new file mode 100644 index 0000000..c1590f2 --- /dev/null +++ b/docs/html/Exception_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/Exception.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Exception.cpp File Reference
+
+
+
#include "fl/Exception.h"
+#include <stdlib.h>
+
+Include dependency graph for Exception.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Exception_8cpp__incl.map b/docs/html/Exception_8cpp__incl.map new file mode 100644 index 0000000..7bfc3c9 --- /dev/null +++ b/docs/html/Exception_8cpp__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Exception_8cpp__incl.md5 b/docs/html/Exception_8cpp__incl.md5 new file mode 100644 index 0000000..8b41758 --- /dev/null +++ b/docs/html/Exception_8cpp__incl.md5 @@ -0,0 +1 @@ +0ae7cd04bbc86c8bdd2bfbc54975c510 \ No newline at end of file diff --git a/docs/html/Exception_8cpp__incl.png b/docs/html/Exception_8cpp__incl.png new file mode 100644 index 0000000..87e40b9 Binary files /dev/null and b/docs/html/Exception_8cpp__incl.png differ diff --git a/docs/html/Exception_8h.html b/docs/html/Exception_8h.html new file mode 100644 index 0000000..f8ff177 --- /dev/null +++ b/docs/html/Exception_8h.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: fl/Exception.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Exception.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <exception>
+#include <string>
+#include <vector>
+
+Include dependency graph for Exception.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Exception
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Exception_8h__dep__incl.map b/docs/html/Exception_8h__dep__incl.map new file mode 100644 index 0000000..c0d8ab2 --- /dev/null +++ b/docs/html/Exception_8h__dep__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Exception_8h__dep__incl.md5 b/docs/html/Exception_8h__dep__incl.md5 new file mode 100644 index 0000000..ab98dcc --- /dev/null +++ b/docs/html/Exception_8h__dep__incl.md5 @@ -0,0 +1 @@ +2896e02828a1b9790f2f410963660178 \ No newline at end of file diff --git a/docs/html/Exception_8h__dep__incl.png b/docs/html/Exception_8h__dep__incl.png new file mode 100644 index 0000000..a57ceca Binary files /dev/null and b/docs/html/Exception_8h__dep__incl.png differ diff --git a/docs/html/Exception_8h__incl.map b/docs/html/Exception_8h__incl.map new file mode 100644 index 0000000..872fdbf --- /dev/null +++ b/docs/html/Exception_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Exception_8h__incl.md5 b/docs/html/Exception_8h__incl.md5 new file mode 100644 index 0000000..199c41a --- /dev/null +++ b/docs/html/Exception_8h__incl.md5 @@ -0,0 +1 @@ +88cea266e30db2a1a54bee9d61825284 \ No newline at end of file diff --git a/docs/html/Exception_8h__incl.png b/docs/html/Exception_8h__incl.png new file mode 100644 index 0000000..ff6668b Binary files /dev/null and b/docs/html/Exception_8h__incl.png differ diff --git a/docs/html/Exception_8h_source.html b/docs/html/Exception_8h_source.html new file mode 100644 index 0000000..3a20300 --- /dev/null +++ b/docs/html/Exception_8h_source.html @@ -0,0 +1,182 @@ + + + + + + +fuzzylite: fl/Exception.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Exception.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Exception.h
+
18  *
+
19  * Created on: 14/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_EXCEPTION_H
+
24 #define FL_EXCEPTION_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <exception>
+
29 #include <string>
+
30 #include <vector>
+
31 
+
32 namespace fl {
+
33 
+
34  class FL_EXPORT Exception : public std::exception {
+
35  protected:
+
36  std::string _what;
+
37  public:
+
38  Exception(const std::string& what, const std::string& file, int line,
+
39  const std::string& function);
+
40  virtual ~Exception() throw ();
+
41 
+
42  virtual void setWhat(const std::string& what);
+
43  virtual std::string getWhat() const;
+
44  virtual const char* what() const throw ();
+
45 
+
46  virtual void append(const std::string& whatElse);
+
47  virtual void append(const std::string& file, int line, const std::string& function);
+
48  virtual void append(const std::string& whatElse,
+
49  const std::string& file, int line, const std::string& function);
+
50 
+
51  static std::string btCallStack(const int maxCalls = 30);
+
52 
+
53  static void signalHandler(int signal);
+
54 
+
55  static void terminate();
+
56  };
+
57 
+
58 }
+
59 #endif /* FL_EXCEPTION_H */
+
+
+ + + + diff --git a/docs/html/Exporter_8h.html b/docs/html/Exporter_8h.html new file mode 100644 index 0000000..8e1375f --- /dev/null +++ b/docs/html/Exporter_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/imex/Exporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Exporter.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Exporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Exporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Exporter_8h__dep__incl.map b/docs/html/Exporter_8h__dep__incl.map new file mode 100644 index 0000000..8c108dc --- /dev/null +++ b/docs/html/Exporter_8h__dep__incl.map @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Exporter_8h__dep__incl.md5 b/docs/html/Exporter_8h__dep__incl.md5 new file mode 100644 index 0000000..34be4d6 --- /dev/null +++ b/docs/html/Exporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +51568ab4ebda769650faadb293cb53de \ No newline at end of file diff --git a/docs/html/Exporter_8h__dep__incl.png b/docs/html/Exporter_8h__dep__incl.png new file mode 100644 index 0000000..9f38fd5 Binary files /dev/null and b/docs/html/Exporter_8h__dep__incl.png differ diff --git a/docs/html/Exporter_8h__incl.map b/docs/html/Exporter_8h__incl.map new file mode 100644 index 0000000..d852715 --- /dev/null +++ b/docs/html/Exporter_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Exporter_8h__incl.md5 b/docs/html/Exporter_8h__incl.md5 new file mode 100644 index 0000000..bf038f8 --- /dev/null +++ b/docs/html/Exporter_8h__incl.md5 @@ -0,0 +1 @@ +1c9f96ec43e3f364f2ff9f0a8071f409 \ No newline at end of file diff --git a/docs/html/Exporter_8h__incl.png b/docs/html/Exporter_8h__incl.png new file mode 100644 index 0000000..f304257 Binary files /dev/null and b/docs/html/Exporter_8h__incl.png differ diff --git a/docs/html/Exporter_8h_source.html b/docs/html/Exporter_8h_source.html new file mode 100644 index 0000000..94988bb --- /dev/null +++ b/docs/html/Exporter_8h_source.html @@ -0,0 +1,168 @@ + + + + + + +fuzzylite: fl/imex/Exporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Exporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Exporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 25 December 2012, 11:40 PM
+
21  */
+
22 
+
23 #ifndef FL_EXPORTER_H
+
24 #define FL_EXPORTER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 
+
30 namespace fl {
+
31  class Engine;
+ +
33  public:
+ +
35  virtual ~Exporter(){}
+
36 
+
37  virtual std::string name() const = 0;
+
38  virtual std::string toString(const Engine* engine) const = 0;
+
39 
+
40  };
+
41 
+
42 }
+
43 
+
44 #endif /* FL_EXPORTER_H */
+
45 
+
+
+ + + + diff --git a/docs/html/Expression_8cpp.html b/docs/html/Expression_8cpp.html new file mode 100644 index 0000000..d8a19a4 --- /dev/null +++ b/docs/html/Expression_8cpp.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: src/rule/Expression.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Expression.cpp File Reference
+
+
+
#include "fl/rule/Expression.h"
+#include "fl/variable/Variable.h"
+#include "fl/hedge/Hedge.h"
+#include "fl/term/Term.h"
+#include "fl/rule/Rule.h"
+
+Include dependency graph for Expression.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Expression_8cpp__incl.map b/docs/html/Expression_8cpp__incl.map new file mode 100644 index 0000000..559d4cb --- /dev/null +++ b/docs/html/Expression_8cpp__incl.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/docs/html/Expression_8cpp__incl.md5 b/docs/html/Expression_8cpp__incl.md5 new file mode 100644 index 0000000..fe1ecdb --- /dev/null +++ b/docs/html/Expression_8cpp__incl.md5 @@ -0,0 +1 @@ +ab0930d4717afa2e8acb6af8645882b1 \ No newline at end of file diff --git a/docs/html/Expression_8cpp__incl.png b/docs/html/Expression_8cpp__incl.png new file mode 100644 index 0000000..f4dd3d0 Binary files /dev/null and b/docs/html/Expression_8cpp__incl.png differ diff --git a/docs/html/Expression_8h.html b/docs/html/Expression_8h.html new file mode 100644 index 0000000..96a3aa9 --- /dev/null +++ b/docs/html/Expression_8h.html @@ -0,0 +1,160 @@ + + + + + + +fuzzylite: fl/rule/Expression.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Expression.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+#include <vector>
+
+Include dependency graph for Expression.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  fl::Expression
 
class  fl::Proposition
 
class  fl::Operator
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Expression_8h__dep__incl.map b/docs/html/Expression_8h__dep__incl.map new file mode 100644 index 0000000..c1b9d08 --- /dev/null +++ b/docs/html/Expression_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Expression_8h__dep__incl.md5 b/docs/html/Expression_8h__dep__incl.md5 new file mode 100644 index 0000000..0168ee8 --- /dev/null +++ b/docs/html/Expression_8h__dep__incl.md5 @@ -0,0 +1 @@ +840178f613851424e5d7f4cbbcb74a25 \ No newline at end of file diff --git a/docs/html/Expression_8h__dep__incl.png b/docs/html/Expression_8h__dep__incl.png new file mode 100644 index 0000000..617ab0d Binary files /dev/null and b/docs/html/Expression_8h__dep__incl.png differ diff --git a/docs/html/Expression_8h__incl.map b/docs/html/Expression_8h__incl.map new file mode 100644 index 0000000..f6a9d2e --- /dev/null +++ b/docs/html/Expression_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Expression_8h__incl.md5 b/docs/html/Expression_8h__incl.md5 new file mode 100644 index 0000000..36843db --- /dev/null +++ b/docs/html/Expression_8h__incl.md5 @@ -0,0 +1 @@ +979cb25b5b0f788214c5ef8b21df5ed9 \ No newline at end of file diff --git a/docs/html/Expression_8h__incl.png b/docs/html/Expression_8h__incl.png new file mode 100644 index 0000000..21098cd Binary files /dev/null and b/docs/html/Expression_8h__incl.png differ diff --git a/docs/html/Expression_8h_source.html b/docs/html/Expression_8h_source.html new file mode 100644 index 0000000..46aca10 --- /dev/null +++ b/docs/html/Expression_8h_source.html @@ -0,0 +1,196 @@ + + + + + + +fuzzylite: fl/rule/Expression.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Expression.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Expression.h
+
18  *
+
19  * Created on: 7/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_EXPRESSION_H
+
24 #define FL_EXPRESSION_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 #include <vector>
+
30 
+
31 
+
32 
+
33 namespace fl {
+
34  class Variable;
+
35  class Hedge;
+
36  class Term;
+
37 
+ +
39  public:
+
40  bool isOperator;
+
41 
+
42  Expression(bool isOperator);
+
43  virtual ~Expression();
+
44 
+
45  virtual std::string toString() const = 0;
+
46  };
+
47 
+
48  class FL_EXPORT Proposition : public Expression {
+
49  public:
+ +
51  std::vector<Hedge*> hedges;
+ +
53 
+
54  Proposition();
+
55 
+
56  std::string toString() const;
+
57  };
+
58 
+
59 
+
60  class FL_EXPORT Operator : public Expression {
+
61  public:
+
62  std::string name;
+ + +
65 
+
66  Operator();
+
67  ~Operator();
+
68 
+
69  std::string toString() const;
+
70  };
+
71 
+
72 }
+
73 #endif /* FL_FUZZYEXPRESSION_H */
+
+
+ + + + diff --git a/docs/html/Extremely_8cpp.html b/docs/html/Extremely_8cpp.html new file mode 100644 index 0000000..44aaee8 --- /dev/null +++ b/docs/html/Extremely_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/hedge/Extremely.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Extremely.cpp File Reference
+
+
+
#include "fl/hedge/Extremely.h"
+#include "fl/Operation.h"
+
+Include dependency graph for Extremely.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Extremely_8cpp__incl.map b/docs/html/Extremely_8cpp__incl.map new file mode 100644 index 0000000..c203992 --- /dev/null +++ b/docs/html/Extremely_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Extremely_8cpp__incl.md5 b/docs/html/Extremely_8cpp__incl.md5 new file mode 100644 index 0000000..b65e348 --- /dev/null +++ b/docs/html/Extremely_8cpp__incl.md5 @@ -0,0 +1 @@ +dd43ca37575ce9ff37b0756b5281f58e \ No newline at end of file diff --git a/docs/html/Extremely_8cpp__incl.png b/docs/html/Extremely_8cpp__incl.png new file mode 100644 index 0000000..517a3a7 Binary files /dev/null and b/docs/html/Extremely_8cpp__incl.png differ diff --git a/docs/html/Extremely_8h.html b/docs/html/Extremely_8h.html new file mode 100644 index 0000000..adcc13a --- /dev/null +++ b/docs/html/Extremely_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Extremely.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Extremely.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Extremely.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Extremely
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Extremely_8h__dep__incl.map b/docs/html/Extremely_8h__dep__incl.map new file mode 100644 index 0000000..93c9ebb --- /dev/null +++ b/docs/html/Extremely_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Extremely_8h__dep__incl.md5 b/docs/html/Extremely_8h__dep__incl.md5 new file mode 100644 index 0000000..c821fa8 --- /dev/null +++ b/docs/html/Extremely_8h__dep__incl.md5 @@ -0,0 +1 @@ +18ab1f917ab8f1c987e4fa4799987a02 \ No newline at end of file diff --git a/docs/html/Extremely_8h__dep__incl.png b/docs/html/Extremely_8h__dep__incl.png new file mode 100644 index 0000000..874dd21 Binary files /dev/null and b/docs/html/Extremely_8h__dep__incl.png differ diff --git a/docs/html/Extremely_8h__incl.map b/docs/html/Extremely_8h__incl.map new file mode 100644 index 0000000..539b15a --- /dev/null +++ b/docs/html/Extremely_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Extremely_8h__incl.md5 b/docs/html/Extremely_8h__incl.md5 new file mode 100644 index 0000000..f79b1ca --- /dev/null +++ b/docs/html/Extremely_8h__incl.md5 @@ -0,0 +1 @@ +a35b7790b0ce39fe658c1132c050270a \ No newline at end of file diff --git a/docs/html/Extremely_8h__incl.png b/docs/html/Extremely_8h__incl.png new file mode 100644 index 0000000..149bc91 Binary files /dev/null and b/docs/html/Extremely_8h__incl.png differ diff --git a/docs/html/Extremely_8h_source.html b/docs/html/Extremely_8h_source.html new file mode 100644 index 0000000..2ee5ae8 --- /dev/null +++ b/docs/html/Extremely_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Extremely.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Extremely.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Extremely.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_EXTREMELY_H
+
24 #define FL_EXTREMELY_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Extremely : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_EXTREMELY_H */
+
+
+ + + + diff --git a/docs/html/FactoryManager_8cpp.html b/docs/html/FactoryManager_8cpp.html new file mode 100644 index 0000000..8afcd51 --- /dev/null +++ b/docs/html/FactoryManager_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/factory/FactoryManager.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FactoryManager.cpp File Reference
+
+
+
+Include dependency graph for FactoryManager.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FactoryManager_8cpp__incl.map b/docs/html/FactoryManager_8cpp__incl.map new file mode 100644 index 0000000..b2310b0 --- /dev/null +++ b/docs/html/FactoryManager_8cpp__incl.map @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/html/FactoryManager_8cpp__incl.md5 b/docs/html/FactoryManager_8cpp__incl.md5 new file mode 100644 index 0000000..06e24fb --- /dev/null +++ b/docs/html/FactoryManager_8cpp__incl.md5 @@ -0,0 +1 @@ +e49555c169d697dc8010144c572c3055 \ No newline at end of file diff --git a/docs/html/FactoryManager_8cpp__incl.png b/docs/html/FactoryManager_8cpp__incl.png new file mode 100644 index 0000000..baa6c5b Binary files /dev/null and b/docs/html/FactoryManager_8cpp__incl.png differ diff --git a/docs/html/FactoryManager_8h.html b/docs/html/FactoryManager_8h.html new file mode 100644 index 0000000..fcca91a --- /dev/null +++ b/docs/html/FactoryManager_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/factory/FactoryManager.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FactoryManager.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+
+Include dependency graph for FactoryManager.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FactoryManager
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FactoryManager_8h__dep__incl.map b/docs/html/FactoryManager_8h__dep__incl.map new file mode 100644 index 0000000..06beb88 --- /dev/null +++ b/docs/html/FactoryManager_8h__dep__incl.map @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/html/FactoryManager_8h__dep__incl.md5 b/docs/html/FactoryManager_8h__dep__incl.md5 new file mode 100644 index 0000000..6ebbe94 --- /dev/null +++ b/docs/html/FactoryManager_8h__dep__incl.md5 @@ -0,0 +1 @@ +7391d7ffe227c4270f44aa3bf3734b16 \ No newline at end of file diff --git a/docs/html/FactoryManager_8h__dep__incl.png b/docs/html/FactoryManager_8h__dep__incl.png new file mode 100644 index 0000000..15b40ef Binary files /dev/null and b/docs/html/FactoryManager_8h__dep__incl.png differ diff --git a/docs/html/FactoryManager_8h__incl.map b/docs/html/FactoryManager_8h__incl.map new file mode 100644 index 0000000..9194f29 --- /dev/null +++ b/docs/html/FactoryManager_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/FactoryManager_8h__incl.md5 b/docs/html/FactoryManager_8h__incl.md5 new file mode 100644 index 0000000..13dfa5f --- /dev/null +++ b/docs/html/FactoryManager_8h__incl.md5 @@ -0,0 +1 @@ +d41770e090cd3d8fcabf91b9dc2730f7 \ No newline at end of file diff --git a/docs/html/FactoryManager_8h__incl.png b/docs/html/FactoryManager_8h__incl.png new file mode 100644 index 0000000..362c9ba Binary files /dev/null and b/docs/html/FactoryManager_8h__incl.png differ diff --git a/docs/html/FactoryManager_8h_source.html b/docs/html/FactoryManager_8h_source.html new file mode 100644 index 0000000..c5dc433 --- /dev/null +++ b/docs/html/FactoryManager_8h_source.html @@ -0,0 +1,192 @@ + + + + + + +fuzzylite: fl/factory/FactoryManager.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FactoryManager.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Factory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 January 2013, 11:10 PM
+
21  */
+
22 
+
23 #ifndef FL_FACTORYMANAGER_H
+
24 #define FL_FACTORYMANAGER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 namespace fl {
+
29  class TNormFactory;
+
30  class SNormFactory;
+
31  class DefuzzifierFactory;
+
32  class TermFactory;
+
33  class HedgeFactory;
+
34 
+ +
36  protected:
+ +
38 
+ + + + + +
44 
+ +
46  virtual ~FactoryManager();
+
47 
+
48  public:
+
49  static FactoryManager* instance();
+
50 
+
51  virtual void setTnorm(TNormFactory* tnorm);
+
52  virtual TNormFactory* tnorm() const;
+
53 
+
54  virtual void setSnorm(SNormFactory* snorm);
+
55  virtual SNormFactory* snorm() const;
+
56 
+
57  virtual void setDefuzzifier(DefuzzifierFactory* defuzzifier);
+
58  virtual DefuzzifierFactory* defuzzifier() const;
+
59 
+
60  virtual void setTerm(TermFactory* term);
+
61  virtual TermFactory* term() const;
+
62 
+
63  virtual void setHedge(HedgeFactory* hedge);
+
64  virtual HedgeFactory* hedge() const;
+
65 
+
66  };
+
67 }
+
68 #endif /* FL_FACTORYMANAGER_H */
+
69 
+
+
+ + + + diff --git a/docs/html/Factory_8cpp.html b/docs/html/Factory_8cpp.html new file mode 100644 index 0000000..131adb8 --- /dev/null +++ b/docs/html/Factory_8cpp.html @@ -0,0 +1,145 @@ + + + + + + +fuzzylite: src/factory/Factory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Factory.cpp File Reference
+
+
+
#include "fl/factory/Factory.h"
+#include "fl/Exception.h"
+#include "fl/defuzzifier/Defuzzifier.h"
+#include "fl/hedge/Hedge.h"
+#include "fl/norm/SNorm.h"
+#include "fl/norm/TNorm.h"
+#include "fl/term/Term.h"
+
+Include dependency graph for Factory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Factory_8cpp__incl.map b/docs/html/Factory_8cpp__incl.map new file mode 100644 index 0000000..70a0c89 --- /dev/null +++ b/docs/html/Factory_8cpp__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/Factory_8cpp__incl.md5 b/docs/html/Factory_8cpp__incl.md5 new file mode 100644 index 0000000..4b3a188 --- /dev/null +++ b/docs/html/Factory_8cpp__incl.md5 @@ -0,0 +1 @@ +44ff5edf08c9aa09c9903d5fc3928209 \ No newline at end of file diff --git a/docs/html/Factory_8cpp__incl.png b/docs/html/Factory_8cpp__incl.png new file mode 100644 index 0000000..a4f95cf Binary files /dev/null and b/docs/html/Factory_8cpp__incl.png differ diff --git a/docs/html/Factory_8h.html b/docs/html/Factory_8h.html new file mode 100644 index 0000000..7313fb8 --- /dev/null +++ b/docs/html/Factory_8h.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: fl/factory/Factory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Factory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <map>
+#include <string>
+#include <vector>
+
+Include dependency graph for Factory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Factory< T >
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Factory_8h__dep__incl.map b/docs/html/Factory_8h__dep__incl.map new file mode 100644 index 0000000..e51b6dc --- /dev/null +++ b/docs/html/Factory_8h__dep__incl.map @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Factory_8h__dep__incl.md5 b/docs/html/Factory_8h__dep__incl.md5 new file mode 100644 index 0000000..b40aff4 --- /dev/null +++ b/docs/html/Factory_8h__dep__incl.md5 @@ -0,0 +1 @@ +6bb503b627e60af01b7dd66368ce8875 \ No newline at end of file diff --git a/docs/html/Factory_8h__dep__incl.png b/docs/html/Factory_8h__dep__incl.png new file mode 100644 index 0000000..da95a06 Binary files /dev/null and b/docs/html/Factory_8h__dep__incl.png differ diff --git a/docs/html/Factory_8h__incl.map b/docs/html/Factory_8h__incl.map new file mode 100644 index 0000000..99764d2 --- /dev/null +++ b/docs/html/Factory_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Factory_8h__incl.md5 b/docs/html/Factory_8h__incl.md5 new file mode 100644 index 0000000..1c5fec0 --- /dev/null +++ b/docs/html/Factory_8h__incl.md5 @@ -0,0 +1 @@ +abb35987ed1e1b9113beeb26031b7a96 \ No newline at end of file diff --git a/docs/html/Factory_8h__incl.png b/docs/html/Factory_8h__incl.png new file mode 100644 index 0000000..8f87c8a Binary files /dev/null and b/docs/html/Factory_8h__incl.png differ diff --git a/docs/html/Factory_8h_source.html b/docs/html/Factory_8h_source.html new file mode 100644 index 0000000..706cd70 --- /dev/null +++ b/docs/html/Factory_8h_source.html @@ -0,0 +1,179 @@ + + + + + + +fuzzylite: fl/factory/Factory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Factory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Factory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 29 November 2013, 7:15 AM
+
21  */
+
22 
+
23 #ifndef FL_FACTORY_H
+
24 #define FL_FACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <map>
+
29 #include <string>
+
30 #include <vector>
+
31 
+
32 namespace fl {
+
33 
+
34  template <typename T>
+ +
36  public:
+
37  typedef T(*Creator)();
+
38 
+
39  protected:
+
40  std::map<std::string, Creator> map;
+
41 
+
42  public:
+
43  Factory();
+
44  virtual ~Factory();
+
45 
+
46  virtual void registerClass(const std::string& key, Creator creator);
+
47  virtual void deregisterClass(const std::string& key);
+
48  virtual bool hasRegisteredClass(const std::string& key) const;
+
49  virtual std::vector<std::string> available() const;
+
50  virtual T createInstance(const std::string& key) const;
+
51  };
+
52 
+
53 }
+
54 
+
55 #endif /* FL_FACTORY_H */
+
56 
+
+
+ + + + diff --git a/docs/html/FclExporter_8cpp.html b/docs/html/FclExporter_8cpp.html new file mode 100644 index 0000000..ce9da3f --- /dev/null +++ b/docs/html/FclExporter_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/imex/FclExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FclExporter.cpp File Reference
+
+
+
#include "fl/imex/FclExporter.h"
+#include "fl/Headers.h"
+#include <sstream>
+
+Include dependency graph for FclExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FclExporter_8cpp__incl.map b/docs/html/FclExporter_8cpp__incl.map new file mode 100644 index 0000000..50e6eb5 --- /dev/null +++ b/docs/html/FclExporter_8cpp__incl.map @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FclExporter_8cpp__incl.md5 b/docs/html/FclExporter_8cpp__incl.md5 new file mode 100644 index 0000000..b322a26 --- /dev/null +++ b/docs/html/FclExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +243128de93107745110d36b4c388ad72 \ No newline at end of file diff --git a/docs/html/FclExporter_8cpp__incl.png b/docs/html/FclExporter_8cpp__incl.png new file mode 100644 index 0000000..f8f3f19 Binary files /dev/null and b/docs/html/FclExporter_8cpp__incl.png differ diff --git a/docs/html/FclExporter_8h.html b/docs/html/FclExporter_8h.html new file mode 100644 index 0000000..12de5e3 --- /dev/null +++ b/docs/html/FclExporter_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/imex/FclExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FclExporter.h File Reference
+
+
+
#include "fl/imex/Exporter.h"
+
+Include dependency graph for FclExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FclExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FclExporter_8h__dep__incl.map b/docs/html/FclExporter_8h__dep__incl.map new file mode 100644 index 0000000..723ef7d --- /dev/null +++ b/docs/html/FclExporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/FclExporter_8h__dep__incl.md5 b/docs/html/FclExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..605729f --- /dev/null +++ b/docs/html/FclExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +75fb8167e8fb37f24598f9c6c0faed04 \ No newline at end of file diff --git a/docs/html/FclExporter_8h__dep__incl.png b/docs/html/FclExporter_8h__dep__incl.png new file mode 100644 index 0000000..b4bdcd1 Binary files /dev/null and b/docs/html/FclExporter_8h__dep__incl.png differ diff --git a/docs/html/FclExporter_8h__incl.map b/docs/html/FclExporter_8h__incl.map new file mode 100644 index 0000000..ac5ea9c --- /dev/null +++ b/docs/html/FclExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FclExporter_8h__incl.md5 b/docs/html/FclExporter_8h__incl.md5 new file mode 100644 index 0000000..40c07b8 --- /dev/null +++ b/docs/html/FclExporter_8h__incl.md5 @@ -0,0 +1 @@ +a74ac870f71adf7d9a0388b565bbdcc1 \ No newline at end of file diff --git a/docs/html/FclExporter_8h__incl.png b/docs/html/FclExporter_8h__incl.png new file mode 100644 index 0000000..c93230a Binary files /dev/null and b/docs/html/FclExporter_8h__incl.png differ diff --git a/docs/html/FclExporter_8h_source.html b/docs/html/FclExporter_8h_source.html new file mode 100644 index 0000000..5423a11 --- /dev/null +++ b/docs/html/FclExporter_8h_source.html @@ -0,0 +1,178 @@ + + + + + + +fuzzylite: fl/imex/FclExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FclExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * FclExporter.h
+
18  *
+
19  * Created on: 8/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_FCLEXPORTER_H
+
24 #define FL_FCLEXPORTER_H
+
25 
+
26 #include "fl/imex/Exporter.h"
+
27 
+
28 namespace fl {
+
29  class TNorm;
+
30  class SNorm;
+
31  class Defuzzifier;
+
32  class Term;
+
33 
+
34  class FL_EXPORT FclExporter : public Exporter {
+
35  protected:
+
36  std::string _indent;
+
37 
+
38  public:
+
39  FclExporter(const std::string& indent = " ");
+
40  virtual ~FclExporter();
+
41 
+
42  virtual void setIndent(const std::string& indent);
+
43  virtual std::string getIndent() const;
+
44 
+
45  virtual std::string name() const;
+
46  virtual std::string toString(const Engine* engine) const;
+
47 
+
48  virtual std::string toString(const TNorm* tnorm) const;
+
49  virtual std::string toString(const SNorm* snorm) const;
+
50  virtual std::string toString(const Defuzzifier* defuzzifier) const;
+
51  virtual std::string toString(const Term* term) const;
+
52  };
+
53 
+
54 }
+
55 #endif /* FL_FCLEXPORTER_H */
+
+
+ + + + diff --git a/docs/html/FclImporter_8cpp.html b/docs/html/FclImporter_8cpp.html new file mode 100644 index 0000000..f1d81c8 --- /dev/null +++ b/docs/html/FclImporter_8cpp.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: src/imex/FclImporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FclImporter.cpp File Reference
+
+
+
#include "fl/imex/FclImporter.h"
+#include "fl/Headers.h"
+#include <sstream>
+#include <iostream>
+
+Include dependency graph for FclImporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FclImporter_8cpp__incl.map b/docs/html/FclImporter_8cpp__incl.map new file mode 100644 index 0000000..19031dc --- /dev/null +++ b/docs/html/FclImporter_8cpp__incl.map @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FclImporter_8cpp__incl.md5 b/docs/html/FclImporter_8cpp__incl.md5 new file mode 100644 index 0000000..7303246 --- /dev/null +++ b/docs/html/FclImporter_8cpp__incl.md5 @@ -0,0 +1 @@ +3038424c42971fc344089a6ba9ea80a8 \ No newline at end of file diff --git a/docs/html/FclImporter_8cpp__incl.png b/docs/html/FclImporter_8cpp__incl.png new file mode 100644 index 0000000..ec16494 Binary files /dev/null and b/docs/html/FclImporter_8cpp__incl.png differ diff --git a/docs/html/FclImporter_8h.html b/docs/html/FclImporter_8h.html new file mode 100644 index 0000000..aa5eebc --- /dev/null +++ b/docs/html/FclImporter_8h.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: fl/imex/FclImporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FclImporter.h File Reference
+
+
+
#include "fl/imex/Importer.h"
+#include <string>
+#include <vector>
+#include <utility>
+
+Include dependency graph for FclImporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FclImporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FclImporter_8h__dep__incl.map b/docs/html/FclImporter_8h__dep__incl.map new file mode 100644 index 0000000..9803c0b --- /dev/null +++ b/docs/html/FclImporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/FclImporter_8h__dep__incl.md5 b/docs/html/FclImporter_8h__dep__incl.md5 new file mode 100644 index 0000000..02dd6d0 --- /dev/null +++ b/docs/html/FclImporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +2d832cf148201722c42a1975847cdfff \ No newline at end of file diff --git a/docs/html/FclImporter_8h__dep__incl.png b/docs/html/FclImporter_8h__dep__incl.png new file mode 100644 index 0000000..fb6d32c Binary files /dev/null and b/docs/html/FclImporter_8h__dep__incl.png differ diff --git a/docs/html/FclImporter_8h__incl.map b/docs/html/FclImporter_8h__incl.map new file mode 100644 index 0000000..0b08ce6 --- /dev/null +++ b/docs/html/FclImporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FclImporter_8h__incl.md5 b/docs/html/FclImporter_8h__incl.md5 new file mode 100644 index 0000000..85ad33d --- /dev/null +++ b/docs/html/FclImporter_8h__incl.md5 @@ -0,0 +1 @@ +fca4639ab73c394bbfffd64aff56288d \ No newline at end of file diff --git a/docs/html/FclImporter_8h__incl.png b/docs/html/FclImporter_8h__incl.png new file mode 100644 index 0000000..d596d68 Binary files /dev/null and b/docs/html/FclImporter_8h__incl.png differ diff --git a/docs/html/FclImporter_8h_source.html b/docs/html/FclImporter_8h_source.html new file mode 100644 index 0000000..99ec87d --- /dev/null +++ b/docs/html/FclImporter_8h_source.html @@ -0,0 +1,195 @@ + + + + + + +fuzzylite: fl/imex/FclImporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FclImporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * FclImporter.h
+
18  *
+
19  * Created on: 8/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_FCLIMPORTER_H
+
24 #define FL_FCLIMPORTER_H
+
25 
+
26 #include "fl/imex/Importer.h"
+
27 
+
28 
+
29 
+
30 #include <string>
+
31 #include <vector>
+
32 #include <utility>
+
33 
+
34 namespace fl {
+
35  class Norm;
+
36  class TNorm;
+
37  class SNorm;
+
38  class Term;
+
39  class Defuzzifier;
+
40 
+
41  class FL_EXPORT FclImporter : public Importer {
+
42  protected:
+
43  virtual void processBlock(const std::string& tag, const std::string& block, Engine* engine) const;
+
44  virtual void processVar(const std::string& var, const std::string& block, Engine* engine)const;
+
45  virtual void processFuzzify(const std::string& block, Engine* engine)const;
+
46  virtual void processDefuzzify(const std::string& block, Engine* engine)const;
+
47  virtual void processRuleBlock(const std::string& block, Engine* engine)const;
+
48 
+
49  virtual TNorm* extractTNorm(const std::string& line) const;
+
50  virtual SNorm* extractSNorm(const std::string& line) const;
+
51 
+
52  virtual Term* extractTerm(const std::string& line) const;
+
53  virtual Term* prepareTerm(Term* term, const Engine* engine) const;
+
54 
+
55  virtual Defuzzifier* extractDefuzzifier(const std::string& line) const;
+
56  virtual std::pair<scalar, bool> extractDefaultValue(const std::string& line) const;
+
57  virtual std::pair<scalar, scalar> extractRange(const std::string& line) const;
+
58  virtual std::pair<bool, bool> extractLocksOutputRange(const std::string& line) const;
+
59  virtual bool extractEnabled(const std::string& line) const;
+
60 
+
61  public:
+
62  FclImporter();
+
63  virtual ~FclImporter();
+
64 
+
65  virtual std::string name() const;
+
66 
+
67  virtual Engine* fromString(const std::string& fcl) const;
+
68 
+
69  };
+
70 
+
71 }
+
72 #endif /* FL_FCLIMPORTER_H */
+
+
+ + + + diff --git a/docs/html/FisExporter_8cpp.html b/docs/html/FisExporter_8cpp.html new file mode 100644 index 0000000..1b551e3 --- /dev/null +++ b/docs/html/FisExporter_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/imex/FisExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FisExporter.cpp File Reference
+
+
+
#include "fl/imex/FisExporter.h"
+#include "fl/Headers.h"
+#include <queue>
+
+Include dependency graph for FisExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FisExporter_8cpp__incl.map b/docs/html/FisExporter_8cpp__incl.map new file mode 100644 index 0000000..3f4583f --- /dev/null +++ b/docs/html/FisExporter_8cpp__incl.map @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FisExporter_8cpp__incl.md5 b/docs/html/FisExporter_8cpp__incl.md5 new file mode 100644 index 0000000..c4ee4e1 --- /dev/null +++ b/docs/html/FisExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +49ec179e519bcaac868663635962a8cb \ No newline at end of file diff --git a/docs/html/FisExporter_8cpp__incl.png b/docs/html/FisExporter_8cpp__incl.png new file mode 100644 index 0000000..5d69440 Binary files /dev/null and b/docs/html/FisExporter_8cpp__incl.png differ diff --git a/docs/html/FisExporter_8h.html b/docs/html/FisExporter_8h.html new file mode 100644 index 0000000..3d041b6 --- /dev/null +++ b/docs/html/FisExporter_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/imex/FisExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FisExporter.h File Reference
+
+
+
#include "fl/imex/Exporter.h"
+#include <vector>
+
+Include dependency graph for FisExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FisExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FisExporter_8h__dep__incl.map b/docs/html/FisExporter_8h__dep__incl.map new file mode 100644 index 0000000..ee3a9bc --- /dev/null +++ b/docs/html/FisExporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/FisExporter_8h__dep__incl.md5 b/docs/html/FisExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..c5fa981 --- /dev/null +++ b/docs/html/FisExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +d6d74679468e148c6eec0c723b543473 \ No newline at end of file diff --git a/docs/html/FisExporter_8h__dep__incl.png b/docs/html/FisExporter_8h__dep__incl.png new file mode 100644 index 0000000..afa0a63 Binary files /dev/null and b/docs/html/FisExporter_8h__dep__incl.png differ diff --git a/docs/html/FisExporter_8h__incl.map b/docs/html/FisExporter_8h__incl.map new file mode 100644 index 0000000..242c694 --- /dev/null +++ b/docs/html/FisExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FisExporter_8h__incl.md5 b/docs/html/FisExporter_8h__incl.md5 new file mode 100644 index 0000000..9d2721c --- /dev/null +++ b/docs/html/FisExporter_8h__incl.md5 @@ -0,0 +1 @@ +eb2c91fb7c3a59f8d77a320048eeeaf7 \ No newline at end of file diff --git a/docs/html/FisExporter_8h__incl.png b/docs/html/FisExporter_8h__incl.png new file mode 100644 index 0000000..3e7ac2f Binary files /dev/null and b/docs/html/FisExporter_8h__incl.png differ diff --git a/docs/html/FisExporter_8h_source.html b/docs/html/FisExporter_8h_source.html new file mode 100644 index 0000000..6ff1bb0 --- /dev/null +++ b/docs/html/FisExporter_8h_source.html @@ -0,0 +1,190 @@ + + + + + + +fuzzylite: fl/imex/FisExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FisExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: FisExporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 5:52 PM
+
21  */
+
22 
+
23 #ifndef FL_FISEXPORTER_H
+
24 #define FL_FISEXPORTER_H
+
25 
+
26 #include "fl/imex/Exporter.h"
+
27 
+
28 #include <vector>
+
29 
+
30 namespace fl {
+
31  class TNorm;
+
32  class SNorm;
+
33  class Defuzzifier;
+
34  class Term;
+
35  class Rule;
+
36  class Proposition;
+
37  class Variable;
+
38 
+
39  class FL_EXPORT FisExporter : public Exporter {
+
40  protected:
+
41 
+
42  std::string translate(const std::vector<Proposition*>& propositions,
+
43  const std::vector<Variable*> variables) const;
+
44 
+
45  public:
+
46  FisExporter();
+
47  virtual ~FisExporter();
+
48 
+
49  virtual std::string name() const;
+
50  virtual std::string toString(const Engine* engine) const;
+
51 
+
52  std::string toString(const TNorm* tnorm) const;
+
53  std::string toString(const SNorm* snorm) const;
+
54  std::string toString(const Defuzzifier* defuzzifier) const;
+
55  std::string toString(const Term* term) const;
+
56 
+
57  std::string exportSystem(const Engine* engine) const;
+
58  std::string exportInputs(const Engine* engine) const;
+
59  std::string exportOutputs(const Engine* engine) const;
+
60  std::string exportRules(const Engine* engine) const;
+
61  std::string exportRule(const Rule* rule, const Engine* engine) const;
+
62  };
+
63 
+
64 }
+
65 
+
66 #endif /* FL_FISEXPORTER_H */
+
67 
+
+
+ + + + diff --git a/docs/html/FisImporter_8cpp.html b/docs/html/FisImporter_8cpp.html new file mode 100644 index 0000000..4e00214 --- /dev/null +++ b/docs/html/FisImporter_8cpp.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: src/imex/FisImporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FisImporter.cpp File Reference
+
+
+
#include "fl/imex/FisImporter.h"
+#include "fl/Headers.h"
+#include <sstream>
+#include <iostream>
+#include <cctype>
+
+Include dependency graph for FisImporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FisImporter_8cpp__incl.map b/docs/html/FisImporter_8cpp__incl.map new file mode 100644 index 0000000..f04bc49 --- /dev/null +++ b/docs/html/FisImporter_8cpp__incl.map @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FisImporter_8cpp__incl.md5 b/docs/html/FisImporter_8cpp__incl.md5 new file mode 100644 index 0000000..57d9521 --- /dev/null +++ b/docs/html/FisImporter_8cpp__incl.md5 @@ -0,0 +1 @@ +60c79a46574247a97a937e1b43662b15 \ No newline at end of file diff --git a/docs/html/FisImporter_8cpp__incl.png b/docs/html/FisImporter_8cpp__incl.png new file mode 100644 index 0000000..90e9a74 Binary files /dev/null and b/docs/html/FisImporter_8cpp__incl.png differ diff --git a/docs/html/FisImporter_8h.html b/docs/html/FisImporter_8h.html new file mode 100644 index 0000000..6f33c06 --- /dev/null +++ b/docs/html/FisImporter_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/imex/FisImporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FisImporter.h File Reference
+
+
+
#include "fl/imex/Importer.h"
+#include <vector>
+#include <utility>
+
+Include dependency graph for FisImporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FisImporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FisImporter_8h__dep__incl.map b/docs/html/FisImporter_8h__dep__incl.map new file mode 100644 index 0000000..02d978f --- /dev/null +++ b/docs/html/FisImporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/FisImporter_8h__dep__incl.md5 b/docs/html/FisImporter_8h__dep__incl.md5 new file mode 100644 index 0000000..1decea6 --- /dev/null +++ b/docs/html/FisImporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +4b8815a6bcab8a7b5a0e60aa6ee645fb \ No newline at end of file diff --git a/docs/html/FisImporter_8h__dep__incl.png b/docs/html/FisImporter_8h__dep__incl.png new file mode 100644 index 0000000..713909a Binary files /dev/null and b/docs/html/FisImporter_8h__dep__incl.png differ diff --git a/docs/html/FisImporter_8h__incl.map b/docs/html/FisImporter_8h__incl.map new file mode 100644 index 0000000..ce70f99 --- /dev/null +++ b/docs/html/FisImporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FisImporter_8h__incl.md5 b/docs/html/FisImporter_8h__incl.md5 new file mode 100644 index 0000000..0f01b9c --- /dev/null +++ b/docs/html/FisImporter_8h__incl.md5 @@ -0,0 +1 @@ +88c263459848e1febafdf9c61c43253d \ No newline at end of file diff --git a/docs/html/FisImporter_8h__incl.png b/docs/html/FisImporter_8h__incl.png new file mode 100644 index 0000000..1d11a0a Binary files /dev/null and b/docs/html/FisImporter_8h__incl.png differ diff --git a/docs/html/FisImporter_8h_source.html b/docs/html/FisImporter_8h_source.html new file mode 100644 index 0000000..faf0120 --- /dev/null +++ b/docs/html/FisImporter_8h_source.html @@ -0,0 +1,196 @@ + + + + + + +fuzzylite: fl/imex/FisImporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FisImporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: FisImporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 5:53 PM
+
21  */
+
22 
+
23 #ifndef FL_FISIMPORTER_H
+
24 #define FL_FISIMPORTER_H
+
25 
+
26 #include "fl/imex/Importer.h"
+
27 
+
28 #include <vector>
+
29 #include <utility>
+
30 
+
31 namespace fl {
+
32  class Norm;
+
33  class TNorm;
+
34  class SNorm;
+
35  class Term;
+
36  class Defuzzifier;
+
37  class Variable;
+
38 
+
39  class FL_EXPORT FisImporter : public Importer {
+
40  protected:
+
41 
+
42  virtual void importSystem(const std::string& section, Engine* engine,
+
43  std::string& andMethod, std::string& orMethod,
+
44  std::string& impMethod, std::string& aggMethod,
+
45  std::string& defuzzMethod) const;
+
46  virtual void importInput(const std::string& section, Engine* engine) const;
+
47  virtual void importOutput(const std::string& section, Engine* engine) const;
+
48  virtual void importRules(const std::string& section, Engine* engine) const;
+
49  virtual std::string translateProposition(scalar code, Variable* variable) const;
+
50 
+
51  virtual std::string tnorm(const std::string& tnorm) const;
+
52  virtual std::string snorm(const std::string& tnorm) const;
+
53  virtual std::string defuzzifier(const std::string& tnorm) const;
+
54 
+
55 
+
56  virtual Term* extractTerm(const std::string& line) const;
+
57  virtual Term* prepareTerm(Term* term, const Engine* engine) const ;
+
58  virtual Term* createInstance(const std::string& termClass, const std::string& name,
+
59  const std::vector<std::string>& params) const;
+
60  virtual std::pair<scalar,scalar> extractRange(const std::string& range) const;
+
61 
+
62  public:
+
63  FisImporter();
+
64  virtual ~FisImporter();
+
65 
+
66  virtual std::string name() const;
+
67 
+
68  virtual Engine* fromString(const std::string& fcl) const;
+
69  };
+
70 
+
71 }
+
72 #endif /* FL_FISIMPORTER_H */
+
73 
+
+
+ + + + diff --git a/docs/html/FldExporter_8cpp.html b/docs/html/FldExporter_8cpp.html new file mode 100644 index 0000000..b06ba88 --- /dev/null +++ b/docs/html/FldExporter_8cpp.html @@ -0,0 +1,146 @@ + + + + + + +fuzzylite: src/imex/FldExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FldExporter.cpp File Reference
+
+
+
#include "fl/imex/FldExporter.h"
+#include "fl/Engine.h"
+#include "fl/variable/Variable.h"
+#include "fl/variable/InputVariable.h"
+#include "fl/variable/OutputVariable.h"
+#include <cmath>
+#include <fstream>
+#include <vector>
+
+Include dependency graph for FldExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FldExporter_8cpp__incl.map b/docs/html/FldExporter_8cpp__incl.map new file mode 100644 index 0000000..47add02 --- /dev/null +++ b/docs/html/FldExporter_8cpp__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/FldExporter_8cpp__incl.md5 b/docs/html/FldExporter_8cpp__incl.md5 new file mode 100644 index 0000000..cb62455 --- /dev/null +++ b/docs/html/FldExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +f089a354e288cdabfd5d7d6f3f365a65 \ No newline at end of file diff --git a/docs/html/FldExporter_8cpp__incl.png b/docs/html/FldExporter_8cpp__incl.png new file mode 100644 index 0000000..e917514 Binary files /dev/null and b/docs/html/FldExporter_8cpp__incl.png differ diff --git a/docs/html/FldExporter_8h.html b/docs/html/FldExporter_8h.html new file mode 100644 index 0000000..a1215a7 --- /dev/null +++ b/docs/html/FldExporter_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/imex/FldExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FldExporter.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/imex/Exporter.h"
+
+Include dependency graph for FldExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FldExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FldExporter_8h__dep__incl.map b/docs/html/FldExporter_8h__dep__incl.map new file mode 100644 index 0000000..244b411 --- /dev/null +++ b/docs/html/FldExporter_8h__dep__incl.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/docs/html/FldExporter_8h__dep__incl.md5 b/docs/html/FldExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..a35b63c --- /dev/null +++ b/docs/html/FldExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +ab4f28e0f28683292b92a6234d2a6c7c \ No newline at end of file diff --git a/docs/html/FldExporter_8h__dep__incl.png b/docs/html/FldExporter_8h__dep__incl.png new file mode 100644 index 0000000..a7f3502 Binary files /dev/null and b/docs/html/FldExporter_8h__dep__incl.png differ diff --git a/docs/html/FldExporter_8h__incl.map b/docs/html/FldExporter_8h__incl.map new file mode 100644 index 0000000..c399f37 --- /dev/null +++ b/docs/html/FldExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FldExporter_8h__incl.md5 b/docs/html/FldExporter_8h__incl.md5 new file mode 100644 index 0000000..8f6461f --- /dev/null +++ b/docs/html/FldExporter_8h__incl.md5 @@ -0,0 +1 @@ +f3c71011250213072063bcbfc81e8a6a \ No newline at end of file diff --git a/docs/html/FldExporter_8h__incl.png b/docs/html/FldExporter_8h__incl.png new file mode 100644 index 0000000..2fdc2f1 Binary files /dev/null and b/docs/html/FldExporter_8h__incl.png differ diff --git a/docs/html/FldExporter_8h_source.html b/docs/html/FldExporter_8h_source.html new file mode 100644 index 0000000..4f65624 --- /dev/null +++ b/docs/html/FldExporter_8h_source.html @@ -0,0 +1,183 @@ + + + + + + +fuzzylite: fl/imex/FldExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FldExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: FldExporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 9:52 AM
+
21  */
+
22 
+
23 #ifndef FL_FLDEXPORTER_H
+
24 #define FL_FLDEXPORTER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 #include "fl/imex/Exporter.h"
+
28 
+
29 namespace fl {
+
30  class Engine;
+
31 
+
32  class FL_EXPORT FldExporter : public Exporter {
+
33  protected:
+
34  std::string _separator;
+
35  int _maximum;
+
36  public:
+
37  FldExporter(const std::string& separator = " ", int maximum = 1024);
+
38  virtual ~FldExporter();
+
39 
+
40  virtual std::string name() const;
+
41 
+
42  virtual void setSeparator(const std::string& separator);
+
43  virtual std::string getSeparator() const;
+
44 
+
45  virtual void setMaximum(int maximum);
+
46  virtual int getMaximum() const;
+
47 
+
48  //WARNING: The engine will be const_casted, restarted, processed!
+
49  virtual std::string toString(const Engine* mutableEngine) const;
+
50 
+
51  template<typename T>
+
52  void toWriter(Engine* engine, T& writer,
+
53  const std::string& separator, int resolution) const;
+
54 
+
55 
+
56  };
+
57 }
+
58 
+
59 #endif /* FL_FLDEXPORTER_H */
+
60 
+
+
+ + + + diff --git a/docs/html/FllExporter_8cpp.html b/docs/html/FllExporter_8cpp.html new file mode 100644 index 0000000..f1ce406 --- /dev/null +++ b/docs/html/FllExporter_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/imex/FllExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FllExporter.cpp File Reference
+
+
+
#include "fl/imex/FllExporter.h"
+#include "fl/Headers.h"
+
+Include dependency graph for FllExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FllExporter_8cpp__incl.map b/docs/html/FllExporter_8cpp__incl.map new file mode 100644 index 0000000..19ca222 --- /dev/null +++ b/docs/html/FllExporter_8cpp__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FllExporter_8cpp__incl.md5 b/docs/html/FllExporter_8cpp__incl.md5 new file mode 100644 index 0000000..caf7784 --- /dev/null +++ b/docs/html/FllExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +12067312ca15ec2a685e198fca5d14c0 \ No newline at end of file diff --git a/docs/html/FllExporter_8cpp__incl.png b/docs/html/FllExporter_8cpp__incl.png new file mode 100644 index 0000000..a2a2e2f Binary files /dev/null and b/docs/html/FllExporter_8cpp__incl.png differ diff --git a/docs/html/FllExporter_8h.html b/docs/html/FllExporter_8h.html new file mode 100644 index 0000000..b591ec0 --- /dev/null +++ b/docs/html/FllExporter_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/imex/FllExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FllExporter.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/imex/Exporter.h"
+
+Include dependency graph for FllExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FllExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FllExporter_8h__dep__incl.map b/docs/html/FllExporter_8h__dep__incl.map new file mode 100644 index 0000000..3c74fbf --- /dev/null +++ b/docs/html/FllExporter_8h__dep__incl.map @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FllExporter_8h__dep__incl.md5 b/docs/html/FllExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..6a84e05 --- /dev/null +++ b/docs/html/FllExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +f759fe8850714af4698c76f7c63db364 \ No newline at end of file diff --git a/docs/html/FllExporter_8h__dep__incl.png b/docs/html/FllExporter_8h__dep__incl.png new file mode 100644 index 0000000..7b3975e Binary files /dev/null and b/docs/html/FllExporter_8h__dep__incl.png differ diff --git a/docs/html/FllExporter_8h__incl.map b/docs/html/FllExporter_8h__incl.map new file mode 100644 index 0000000..d4ef363 --- /dev/null +++ b/docs/html/FllExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FllExporter_8h__incl.md5 b/docs/html/FllExporter_8h__incl.md5 new file mode 100644 index 0000000..a734e02 --- /dev/null +++ b/docs/html/FllExporter_8h__incl.md5 @@ -0,0 +1 @@ +e75272f14663c7a6453329e3e431c170 \ No newline at end of file diff --git a/docs/html/FllExporter_8h__incl.png b/docs/html/FllExporter_8h__incl.png new file mode 100644 index 0000000..f44ac7c Binary files /dev/null and b/docs/html/FllExporter_8h__incl.png differ diff --git a/docs/html/FllExporter_8h_source.html b/docs/html/FllExporter_8h_source.html new file mode 100644 index 0000000..7ed31d7 --- /dev/null +++ b/docs/html/FllExporter_8h_source.html @@ -0,0 +1,194 @@ + + + + + + +fuzzylite: fl/imex/FllExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FllExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: FllExporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 18 December 2013, 8:53 AM
+
21  */
+
22 
+
23 #ifndef FL_FLLEXPORTER_H
+
24 #define FL_FLLEXPORTER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 #include "fl/imex/Exporter.h"
+
28 
+
29 namespace fl {
+
30  class Variable;
+
31  class InputVariable;
+
32  class OutputVariable;
+
33  class RuleBlock;
+
34  class Rule;
+
35  class Norm;
+
36  class Defuzzifier;
+
37  class Term;
+
38 
+
39  class FL_EXPORT FllExporter : public Exporter {
+
40  protected:
+
41  std::string _indent;
+
42  std::string _separator;
+
43  public:
+
44  FllExporter(const std::string& indent = " ", const std::string& separator = "\n");
+
45  virtual ~FllExporter();
+
46 
+
47  virtual std::string name() const;
+
48 
+
49  virtual void setIndent(const std::string& indent);
+
50  virtual std::string getIndent() const;
+
51 
+
52  virtual void setSeparator(const std::string& separator);
+
53  virtual std::string getSeparator() const;
+
54 
+
55  virtual std::string toString(const Engine* engine) const;
+
56 
+
57  virtual std::string toString(const Variable* variable) const;
+
58  virtual std::string toString(const InputVariable* inputVariable) const;
+
59  virtual std::string toString(const OutputVariable* outputVariable) const;
+
60  virtual std::string toString(const RuleBlock* ruleBlock) const;
+
61  virtual std::string toString(const Rule* rule) const;
+
62 
+
63  virtual std::string toString(const Norm* norm) const;
+
64  virtual std::string toString(const Defuzzifier* defuzzifier) const;
+
65  virtual std::string toString(const Term* term) const;
+
66  };
+
67 
+
68 }
+
69 
+
70 #endif /* FL_FLLEXPORTER_H */
+
71 
+
+
+ + + + diff --git a/docs/html/FllImporter_8cpp.html b/docs/html/FllImporter_8cpp.html new file mode 100644 index 0000000..eab8a57 --- /dev/null +++ b/docs/html/FllImporter_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/imex/FllImporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FllImporter.cpp File Reference
+
+
+
#include "fl/imex/FllImporter.h"
+#include "fl/Headers.h"
+#include <queue>
+
+Include dependency graph for FllImporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FllImporter_8cpp__incl.map b/docs/html/FllImporter_8cpp__incl.map new file mode 100644 index 0000000..796bed6 --- /dev/null +++ b/docs/html/FllImporter_8cpp__incl.map @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/FllImporter_8cpp__incl.md5 b/docs/html/FllImporter_8cpp__incl.md5 new file mode 100644 index 0000000..ba594e8 --- /dev/null +++ b/docs/html/FllImporter_8cpp__incl.md5 @@ -0,0 +1 @@ +2c0565afdce203338e86ed033fe7b70b \ No newline at end of file diff --git a/docs/html/FllImporter_8cpp__incl.png b/docs/html/FllImporter_8cpp__incl.png new file mode 100644 index 0000000..d7067ec Binary files /dev/null and b/docs/html/FllImporter_8cpp__incl.png differ diff --git a/docs/html/FllImporter_8h.html b/docs/html/FllImporter_8h.html new file mode 100644 index 0000000..9126e80 --- /dev/null +++ b/docs/html/FllImporter_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/imex/FllImporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FllImporter.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/imex/Importer.h"
+#include <utility>
+
+Include dependency graph for FllImporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::FllImporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/FllImporter_8h__dep__incl.map b/docs/html/FllImporter_8h__dep__incl.map new file mode 100644 index 0000000..126215b --- /dev/null +++ b/docs/html/FllImporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/FllImporter_8h__dep__incl.md5 b/docs/html/FllImporter_8h__dep__incl.md5 new file mode 100644 index 0000000..84aa491 --- /dev/null +++ b/docs/html/FllImporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +5518a8d24607ff7716c3ef4ac9b6bfa7 \ No newline at end of file diff --git a/docs/html/FllImporter_8h__dep__incl.png b/docs/html/FllImporter_8h__dep__incl.png new file mode 100644 index 0000000..1f8108e Binary files /dev/null and b/docs/html/FllImporter_8h__dep__incl.png differ diff --git a/docs/html/FllImporter_8h__incl.map b/docs/html/FllImporter_8h__incl.map new file mode 100644 index 0000000..9459c71 --- /dev/null +++ b/docs/html/FllImporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/FllImporter_8h__incl.md5 b/docs/html/FllImporter_8h__incl.md5 new file mode 100644 index 0000000..26a2352 --- /dev/null +++ b/docs/html/FllImporter_8h__incl.md5 @@ -0,0 +1 @@ +6d5e004fbe9143aa5f95ab9a083e063e \ No newline at end of file diff --git a/docs/html/FllImporter_8h__incl.png b/docs/html/FllImporter_8h__incl.png new file mode 100644 index 0000000..19b8026 Binary files /dev/null and b/docs/html/FllImporter_8h__incl.png differ diff --git a/docs/html/FllImporter_8h_source.html b/docs/html/FllImporter_8h_source.html new file mode 100644 index 0000000..8bec997 --- /dev/null +++ b/docs/html/FllImporter_8h_source.html @@ -0,0 +1,196 @@ + + + + + + +fuzzylite: fl/imex/FllImporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
FllImporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: FllImporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 18 December 2013, 8:53 AM
+
21  */
+
22 
+
23 #ifndef FL_FLLIMPORTER_H
+
24 #define FL_FLLIMPORTER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 #include "fl/imex/Importer.h"
+
28 
+
29 #include <utility>
+
30 
+
31 namespace fl {
+
32  class TNorm;
+
33  class SNorm;
+
34  class Term;
+
35  class Defuzzifier;
+
36 
+
37  class FL_EXPORT FllImporter : public Importer {
+
38  protected:
+
39  std::string _separator;
+
40  public:
+
41  FllImporter(const std::string& separator = "\n");
+
42  virtual ~FllImporter();
+
43 
+
44  virtual void setSeparator(const std::string& separator);
+
45  virtual std::string getSeparator() const;
+
46 
+
47  virtual std::string name() const;
+
48  virtual Engine* fromString(const std::string& fll) const;
+
49 
+
50  protected:
+
51  virtual void process(const std::string& tag, const std::string& block, Engine* engine) const;
+
52  virtual void processInputVariable(const std::string& block, Engine* engine) const;
+
53  virtual void processOutputVariable(const std::string& block, Engine* engine) const;
+
54  virtual void processRuleBlock(const std::string& block, Engine* engine) const;
+
55 
+
56  virtual TNorm* parseTNorm(const std::string& name) const;
+
57  virtual SNorm* parseSNorm(const std::string& name) const;
+
58 
+
59  virtual Term* parseTerm(const std::string& text, Engine* engine) const;
+
60 
+
61  virtual Defuzzifier* parseDefuzzifier(const std::string& line) const;
+
62  virtual std::pair<scalar, scalar> parseRange(const std::string& line) const;
+
63  virtual bool parseBoolean(const std::string& boolean) const;
+
64 
+
65  virtual std::pair<std::string, std::string> parseKeyValue(const std::string& text,
+
66  char separator = ':') const;
+
67  virtual std::string clean(const std::string& line) const;
+
68 
+
69  };
+
70 }
+
71 
+
72 #endif /* FL_FLLIMPORTER_H */
+
73 
+
+
+ + + + diff --git a/docs/html/Function_8cpp.html b/docs/html/Function_8cpp.html new file mode 100644 index 0000000..440a244 --- /dev/null +++ b/docs/html/Function_8cpp.html @@ -0,0 +1,148 @@ + + + + + + +fuzzylite: src/term/Function.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Function.cpp File Reference
+
+
+
#include "fl/term/Function.h"
+#include "fl/Engine.h"
+#include "fl/variable/InputVariable.h"
+#include "fl/variable/OutputVariable.h"
+#include "fl/rule/Rule.h"
+#include <functional>
+#include <queue>
+#include <stack>
+#include <signal.h>
+#include <cctype>
+
+Include dependency graph for Function.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Function_8cpp__incl.map b/docs/html/Function_8cpp__incl.map new file mode 100644 index 0000000..25469d9 --- /dev/null +++ b/docs/html/Function_8cpp__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Function_8cpp__incl.md5 b/docs/html/Function_8cpp__incl.md5 new file mode 100644 index 0000000..992af41 --- /dev/null +++ b/docs/html/Function_8cpp__incl.md5 @@ -0,0 +1 @@ +6e3ca633ab6f0ea53b0503c47ab6fefc \ No newline at end of file diff --git a/docs/html/Function_8cpp__incl.png b/docs/html/Function_8cpp__incl.png new file mode 100644 index 0000000..78208eb Binary files /dev/null and b/docs/html/Function_8cpp__incl.png differ diff --git a/docs/html/Function_8h.html b/docs/html/Function_8h.html new file mode 100644 index 0000000..eb87928 --- /dev/null +++ b/docs/html/Function_8h.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/term/Function.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Function.h File Reference
+
+
+
#include "fl/term/Term.h"
+#include <map>
+#include <string>
+
+Include dependency graph for Function.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + +

+Classes

class  fl::Function
 
struct  fl::Function::Element
 
struct  fl::Function::Operator
 
struct  fl::Function::BuiltInFunction
 
struct  fl::Function::Node
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Function_8h__dep__incl.map b/docs/html/Function_8h__dep__incl.map new file mode 100644 index 0000000..d6f9fdc --- /dev/null +++ b/docs/html/Function_8h__dep__incl.map @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/html/Function_8h__dep__incl.md5 b/docs/html/Function_8h__dep__incl.md5 new file mode 100644 index 0000000..030f27d --- /dev/null +++ b/docs/html/Function_8h__dep__incl.md5 @@ -0,0 +1 @@ +de8d17c5a76dbe9563ad5644ee2c5617 \ No newline at end of file diff --git a/docs/html/Function_8h__dep__incl.png b/docs/html/Function_8h__dep__incl.png new file mode 100644 index 0000000..8b6d875 Binary files /dev/null and b/docs/html/Function_8h__dep__incl.png differ diff --git a/docs/html/Function_8h__incl.map b/docs/html/Function_8h__incl.map new file mode 100644 index 0000000..0be3fb4 --- /dev/null +++ b/docs/html/Function_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Function_8h__incl.md5 b/docs/html/Function_8h__incl.md5 new file mode 100644 index 0000000..58b59e8 --- /dev/null +++ b/docs/html/Function_8h__incl.md5 @@ -0,0 +1 @@ +8ca34792f7dd31ae219ce6a611dd76cf \ No newline at end of file diff --git a/docs/html/Function_8h__incl.png b/docs/html/Function_8h__incl.png new file mode 100644 index 0000000..1eb5727 Binary files /dev/null and b/docs/html/Function_8h__incl.png differ diff --git a/docs/html/Function_8h_source.html b/docs/html/Function_8h_source.html new file mode 100644 index 0000000..a17569e --- /dev/null +++ b/docs/html/Function_8h_source.html @@ -0,0 +1,300 @@ + + + + + + +fuzzylite: fl/term/Function.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Function.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Function.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 March 2013, 1:13 PM
+
21  */
+
22 
+
23 #ifndef FL_FUNCTION_H
+
24 #define FL_FUNCTION_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 #include <map>
+
29 #include <string>
+
30 
+
31 namespace fl {
+
32 
+
33  class Engine;
+
34 
+
35  class FL_EXPORT Function : public Term {
+
36  public:
+
37 
+
38  /****************************
+
39  * Parsing Elements
+
40  ****************************/
+
41 
+
42  public:
+
43  typedef double(*Unary)(double);
+
44  typedef double(*Binary)(double, double);
+
45 
+
46  struct FL_EXPORT Element {
+
47  std::string name;
+
48  Unary unary;
+
49  Binary binary;
+
50  short arity;
+ +
52  Element(const std::string& name);
+
53  Element(const std::string& name, Unary unary, short associativity = -1);
+
54  Element(const std::string& name, Binary binary, short associativity = -1);
+
55  virtual ~Element();
+
56 
+
57  virtual std::string toString() const = 0;
+
58 
+
59  };
+
60 
+
61  struct FL_EXPORT Operator : public Element {
+
62  short precedence;
+
63 
+
64  Operator(const std::string& name, Unary unary, short precedence = 0, short associativity = -1);
+
65  Operator(const std::string& name, Binary unary, short precedence = 0, short associativity = -1);
+
66 
+
67  std::string toString() const;
+
68  };
+
69 
+
70  struct FL_EXPORT BuiltInFunction : public Element {
+
71  BuiltInFunction(const std::string& name, Unary functionPointer, short associativity = -1);
+
72  BuiltInFunction(const std::string& name, Binary functionPointer, short associativity = -1);
+
73  std::string toString() const;
+
74  };
+
75 
+
76  /**************************
+
77  * Tree elements, wrap Elements into Nodes.
+
78  **************************/
+
79 
+
80  struct FL_EXPORT Node {
+ +
82  BuiltInFunction* function;
+
83  std::string variable;
+ + + +
87 
+
88  Node(Operator* foperator, Node* left = NULL, Node* right = NULL);
+
89  Node(BuiltInFunction* function, Node* left = NULL, Node* right = NULL);
+
90  Node(const std::string& variable);
+
91  Node(scalar value);
+
92 
+
93  scalar evaluate(const std::map<std::string, scalar>*
+
94  variables = NULL) const;
+
95 
+
96  std::string toString() const;
+
97  std::string toPrefix(const Node* node = NULL) const;
+
98  std::string toInfix(const Node* node = NULL) const;
+
99  std::string toPostfix(const Node* node = NULL) const;
+
100  };
+
101 
+
102 
+
103 
+
104 
+
105  /******************************
+
106  * Term
+
107  ******************************/
+
108 
+
109  private:
+
110  virtual void loadOperators();
+
111 
+
112  protected:
+
113  std::string _formula;
+
114  const Engine* _engine;
+
115 
+
120  Operator* getOperator(const std::string& key) const;
+
121 
+
122  BuiltInFunction* getBuiltInFunction(const std::string& key) const;
+
123 
+
124 
+
125  public:
+ +
127  std::map<std::string, scalar> variables;
+
128  std::map<std::string, Operator*> operators;
+
129  std::map<std::string, BuiltInFunction*> functions;
+
130  Function(const std::string& name = "",
+
131  const std::string& formula = "", const Engine* engine = NULL);
+
132  virtual ~Function();
+
133 
+
134  static Function* create(const std::string& name,
+
135  const std::string& formula,
+
136  const Engine* engine = NULL,
+
137  bool requiresFunctions = true) throw (fl::Exception);
+
138 
+
139  virtual scalar membership(scalar x) const;
+
140 
+
141  virtual scalar evaluate(const std::map<std::string, scalar>* variables) const;
+
142 
+
143  virtual std::string className() const;
+
144  virtual std::string parameters() const;
+
145  virtual void configure(const std::string& parameters);
+
146 
+
147  virtual void setFormula(const std::string& formula);
+
148  virtual std::string getFormula() const;
+
149 
+
150  virtual void setEngine(const Engine* engine);
+
151  virtual const Engine* getEngine() const;
+
152 
+
153  virtual void load() throw (fl::Exception);
+
154 
+
155  virtual void load(const std::string& formula,
+
156  const Engine* engine = NULL) throw (fl::Exception);
+
157 
+
158  virtual void loadBuiltInFunctions();
+
159 
+
160  virtual Node* parse(const std::string& formula) throw (fl::Exception);
+
161 
+
162  virtual std::string toPostfix(const std::string& formula) const throw (fl::Exception);
+
163 
+
164  virtual std::string space(const std::string& formula) const;
+
165 
+
166  virtual bool isOperand(const std::string& token) const;
+
167  virtual bool isBuiltInFunction(const std::string& token) const;
+
168  virtual bool isOperator(const std::string& token) const;
+
169 
+
170  virtual Function* copy() const;
+
171 
+
172  static Term* constructor();
+
173 
+
174  static void main();
+
175 
+
176  };
+
177 
+
178 }
+
179 
+
180 #endif /* FL_FUNCTION_H */
+
181 
+
+
+ + + + diff --git a/docs/html/GaussianProduct_8cpp.html b/docs/html/GaussianProduct_8cpp.html new file mode 100644 index 0000000..069ddd9 --- /dev/null +++ b/docs/html/GaussianProduct_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/GaussianProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
GaussianProduct.cpp File Reference
+
+
+
+Include dependency graph for GaussianProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/GaussianProduct_8cpp__incl.map b/docs/html/GaussianProduct_8cpp__incl.map new file mode 100644 index 0000000..75d6f5c --- /dev/null +++ b/docs/html/GaussianProduct_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/GaussianProduct_8cpp__incl.md5 b/docs/html/GaussianProduct_8cpp__incl.md5 new file mode 100644 index 0000000..86f217d --- /dev/null +++ b/docs/html/GaussianProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +1ad605d122b085a358580f0d8af753d0 \ No newline at end of file diff --git a/docs/html/GaussianProduct_8cpp__incl.png b/docs/html/GaussianProduct_8cpp__incl.png new file mode 100644 index 0000000..4646cb6 Binary files /dev/null and b/docs/html/GaussianProduct_8cpp__incl.png differ diff --git a/docs/html/GaussianProduct_8h.html b/docs/html/GaussianProduct_8h.html new file mode 100644 index 0000000..c66ec87 --- /dev/null +++ b/docs/html/GaussianProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/GaussianProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
GaussianProduct.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for GaussianProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::GaussianProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/GaussianProduct_8h__dep__incl.map b/docs/html/GaussianProduct_8h__dep__incl.map new file mode 100644 index 0000000..8707514 --- /dev/null +++ b/docs/html/GaussianProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/GaussianProduct_8h__dep__incl.md5 b/docs/html/GaussianProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..9d638a8 --- /dev/null +++ b/docs/html/GaussianProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +2aa06c98bd79f91b3b97f029752b3688 \ No newline at end of file diff --git a/docs/html/GaussianProduct_8h__dep__incl.png b/docs/html/GaussianProduct_8h__dep__incl.png new file mode 100644 index 0000000..cae1906 Binary files /dev/null and b/docs/html/GaussianProduct_8h__dep__incl.png differ diff --git a/docs/html/GaussianProduct_8h__incl.map b/docs/html/GaussianProduct_8h__incl.map new file mode 100644 index 0000000..a2ec0e6 --- /dev/null +++ b/docs/html/GaussianProduct_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/GaussianProduct_8h__incl.md5 b/docs/html/GaussianProduct_8h__incl.md5 new file mode 100644 index 0000000..a5a6a9a --- /dev/null +++ b/docs/html/GaussianProduct_8h__incl.md5 @@ -0,0 +1 @@ +8b08bb35a1bf66a9995181043994fa1e \ No newline at end of file diff --git a/docs/html/GaussianProduct_8h__incl.png b/docs/html/GaussianProduct_8h__incl.png new file mode 100644 index 0000000..9a88ad0 Binary files /dev/null and b/docs/html/GaussianProduct_8h__incl.png differ diff --git a/docs/html/GaussianProduct_8h_source.html b/docs/html/GaussianProduct_8h_source.html new file mode 100644 index 0000000..3db255a --- /dev/null +++ b/docs/html/GaussianProduct_8h_source.html @@ -0,0 +1,192 @@ + + + + + + +fuzzylite: fl/term/GaussianProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
GaussianProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: GaussianProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 December 2012, 6:05 PM
+
21  */
+
22 
+
23 #ifndef FL_GAUSSIANPRODUCT_H
+
24 #define FL_GAUSSIANPRODUCT_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT GaussianProduct : public Term {
+
31  protected:
+ + + + +
36 
+
37  public:
+
38  GaussianProduct(const std::string& name = "",
+
39  scalar meanA = fl::nan,
+
40  scalar standardDeviationA = fl::nan,
+
41  scalar meanB = fl::nan,
+
42  scalar standardDeviationB = fl::nan);
+
43 
+
44  virtual ~GaussianProduct();
+
45 
+
46  virtual std::string className() const;
+
47  virtual std::string parameters() const;
+
48  virtual void configure(const std::string& parameters);
+
49 
+
50  virtual scalar membership(scalar x) const;
+
51 
+
52  virtual void setMeanA(scalar meanA);
+
53  virtual scalar getMeanA() const;
+
54 
+
55  virtual void setStandardDeviationA(scalar sigmaA);
+
56  virtual scalar getStandardDeviationA() const;
+
57 
+
58  virtual void setMeanB(scalar meanB);
+
59  virtual scalar getMeanB() const;
+
60 
+
61  virtual void setStandardDeviationB(scalar sigmaB);
+
62  virtual scalar getStandardDeviationB() const;
+
63 
+
64  virtual GaussianProduct* copy() const;
+
65  static Term* constructor();
+
66  };
+
67 }
+
68 #endif /* FL_GAUSSIANPRODUCT_H */
+
69 
+
+
+ + + + diff --git a/docs/html/Gaussian_8cpp.html b/docs/html/Gaussian_8cpp.html new file mode 100644 index 0000000..d244736 --- /dev/null +++ b/docs/html/Gaussian_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/term/Gaussian.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Gaussian.cpp File Reference
+
+
+
#include "fl/term/Gaussian.h"
+#include <cmath>
+#include <sstream>
+
+Include dependency graph for Gaussian.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Gaussian_8cpp__incl.map b/docs/html/Gaussian_8cpp__incl.map new file mode 100644 index 0000000..6428da6 --- /dev/null +++ b/docs/html/Gaussian_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Gaussian_8cpp__incl.md5 b/docs/html/Gaussian_8cpp__incl.md5 new file mode 100644 index 0000000..020269c --- /dev/null +++ b/docs/html/Gaussian_8cpp__incl.md5 @@ -0,0 +1 @@ +a57bb13af19dae754c8b622af150a95d \ No newline at end of file diff --git a/docs/html/Gaussian_8cpp__incl.png b/docs/html/Gaussian_8cpp__incl.png new file mode 100644 index 0000000..7258cd7 Binary files /dev/null and b/docs/html/Gaussian_8cpp__incl.png differ diff --git a/docs/html/Gaussian_8h.html b/docs/html/Gaussian_8h.html new file mode 100644 index 0000000..1dc4cc8 --- /dev/null +++ b/docs/html/Gaussian_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Gaussian.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Gaussian.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Gaussian.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Gaussian
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Gaussian_8h__dep__incl.map b/docs/html/Gaussian_8h__dep__incl.map new file mode 100644 index 0000000..1fb6936 --- /dev/null +++ b/docs/html/Gaussian_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Gaussian_8h__dep__incl.md5 b/docs/html/Gaussian_8h__dep__incl.md5 new file mode 100644 index 0000000..9b33912 --- /dev/null +++ b/docs/html/Gaussian_8h__dep__incl.md5 @@ -0,0 +1 @@ +b3e9cb0f671c997ea6205ed39a3ee67f \ No newline at end of file diff --git a/docs/html/Gaussian_8h__dep__incl.png b/docs/html/Gaussian_8h__dep__incl.png new file mode 100644 index 0000000..3164501 Binary files /dev/null and b/docs/html/Gaussian_8h__dep__incl.png differ diff --git a/docs/html/Gaussian_8h__incl.map b/docs/html/Gaussian_8h__incl.map new file mode 100644 index 0000000..4d879d7 --- /dev/null +++ b/docs/html/Gaussian_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Gaussian_8h__incl.md5 b/docs/html/Gaussian_8h__incl.md5 new file mode 100644 index 0000000..70cbb60 --- /dev/null +++ b/docs/html/Gaussian_8h__incl.md5 @@ -0,0 +1 @@ +2a166773ab97301419bacb4481c40da0 \ No newline at end of file diff --git a/docs/html/Gaussian_8h__incl.png b/docs/html/Gaussian_8h__incl.png new file mode 100644 index 0000000..0a0ab63 Binary files /dev/null and b/docs/html/Gaussian_8h__incl.png differ diff --git a/docs/html/Gaussian_8h_source.html b/docs/html/Gaussian_8h_source.html new file mode 100644 index 0000000..37c981f --- /dev/null +++ b/docs/html/Gaussian_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/term/Gaussian.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Gaussian.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Gaussian.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_GAUSSIAN_H
+
24 #define FL_GAUSSIAN_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Gaussian : public Term {
+
31  protected:
+ + +
34 
+
35  public:
+
36  Gaussian(const std::string& name = "",
+
37  scalar mean = fl::nan,
+
38  scalar standardDeviation = fl::nan);
+
39  virtual ~Gaussian();
+
40 
+
41  virtual std::string className() const;
+
42  virtual std::string parameters() const;
+
43  virtual void configure(const std::string& parameters);
+
44 
+
45  virtual scalar membership(scalar x) const;
+
46 
+
47  virtual void setMean(scalar c);
+
48  virtual scalar getMean() const;
+
49 
+
50  virtual void setStandardDeviation(scalar sigma);
+
51  virtual scalar getStandardDeviation() const;
+
52 
+
53  virtual Gaussian* copy() const;
+
54  static Term* constructor();
+
55  };
+
56 
+
57 }
+
58 #endif /* FL_GAUSSIAN_H */
+
+
+ + + + diff --git a/docs/html/HamacherProduct_8cpp.html b/docs/html/HamacherProduct_8cpp.html new file mode 100644 index 0000000..d2696a5 --- /dev/null +++ b/docs/html/HamacherProduct_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/HamacherProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HamacherProduct.cpp File Reference
+
+
+
+Include dependency graph for HamacherProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HamacherProduct_8cpp__incl.map b/docs/html/HamacherProduct_8cpp__incl.map new file mode 100644 index 0000000..ad03dd0 --- /dev/null +++ b/docs/html/HamacherProduct_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/HamacherProduct_8cpp__incl.md5 b/docs/html/HamacherProduct_8cpp__incl.md5 new file mode 100644 index 0000000..afd7221 --- /dev/null +++ b/docs/html/HamacherProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +0e9b1cd6c4c6942ea5202032d5170e0d \ No newline at end of file diff --git a/docs/html/HamacherProduct_8cpp__incl.png b/docs/html/HamacherProduct_8cpp__incl.png new file mode 100644 index 0000000..4de1c64 Binary files /dev/null and b/docs/html/HamacherProduct_8cpp__incl.png differ diff --git a/docs/html/HamacherProduct_8h.html b/docs/html/HamacherProduct_8h.html new file mode 100644 index 0000000..7b3fe35 --- /dev/null +++ b/docs/html/HamacherProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/HamacherProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HamacherProduct.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for HamacherProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::HamacherProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HamacherProduct_8h__dep__incl.map b/docs/html/HamacherProduct_8h__dep__incl.map new file mode 100644 index 0000000..3a1b559 --- /dev/null +++ b/docs/html/HamacherProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/HamacherProduct_8h__dep__incl.md5 b/docs/html/HamacherProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..4edbb8d --- /dev/null +++ b/docs/html/HamacherProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +ae7db0b0cf45c826aa5a3c4a92d6b603 \ No newline at end of file diff --git a/docs/html/HamacherProduct_8h__dep__incl.png b/docs/html/HamacherProduct_8h__dep__incl.png new file mode 100644 index 0000000..722453c Binary files /dev/null and b/docs/html/HamacherProduct_8h__dep__incl.png differ diff --git a/docs/html/HamacherProduct_8h__incl.map b/docs/html/HamacherProduct_8h__incl.map new file mode 100644 index 0000000..56db0bb --- /dev/null +++ b/docs/html/HamacherProduct_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/HamacherProduct_8h__incl.md5 b/docs/html/HamacherProduct_8h__incl.md5 new file mode 100644 index 0000000..6539e25 --- /dev/null +++ b/docs/html/HamacherProduct_8h__incl.md5 @@ -0,0 +1 @@ +7014ba784e4200d451734857bdb707f3 \ No newline at end of file diff --git a/docs/html/HamacherProduct_8h__incl.png b/docs/html/HamacherProduct_8h__incl.png new file mode 100644 index 0000000..c1888e2 Binary files /dev/null and b/docs/html/HamacherProduct_8h__incl.png differ diff --git a/docs/html/HamacherProduct_8h_source.html b/docs/html/HamacherProduct_8h_source.html new file mode 100644 index 0000000..d19c076 --- /dev/null +++ b/docs/html/HamacherProduct_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/norm/t/HamacherProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
HamacherProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: HamacherProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:48 AM
+
21  */
+
22 
+
23 #ifndef FL_HAMACHERPRODUCT_H
+
24 #define FL_HAMACHERPRODUCT_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT HamacherProduct : public TNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 }
+
38 
+
39 #endif /* FL_HAMACHERPRODUCT_H */
+
40 
+
+
+ + + + diff --git a/docs/html/HamacherSum_8cpp.html b/docs/html/HamacherSum_8cpp.html new file mode 100644 index 0000000..aef83e4 --- /dev/null +++ b/docs/html/HamacherSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/HamacherSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HamacherSum.cpp File Reference
+
+
+
+Include dependency graph for HamacherSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HamacherSum_8cpp__incl.map b/docs/html/HamacherSum_8cpp__incl.map new file mode 100644 index 0000000..c9a1525 --- /dev/null +++ b/docs/html/HamacherSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/HamacherSum_8cpp__incl.md5 b/docs/html/HamacherSum_8cpp__incl.md5 new file mode 100644 index 0000000..6236a54 --- /dev/null +++ b/docs/html/HamacherSum_8cpp__incl.md5 @@ -0,0 +1 @@ +a120d7b0c717d9a6bfc90c2eb2eb4e2a \ No newline at end of file diff --git a/docs/html/HamacherSum_8cpp__incl.png b/docs/html/HamacherSum_8cpp__incl.png new file mode 100644 index 0000000..27aa8d9 Binary files /dev/null and b/docs/html/HamacherSum_8cpp__incl.png differ diff --git a/docs/html/HamacherSum_8h.html b/docs/html/HamacherSum_8h.html new file mode 100644 index 0000000..2942457 --- /dev/null +++ b/docs/html/HamacherSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/HamacherSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HamacherSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for HamacherSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::HamacherSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HamacherSum_8h__dep__incl.map b/docs/html/HamacherSum_8h__dep__incl.map new file mode 100644 index 0000000..0a11df9 --- /dev/null +++ b/docs/html/HamacherSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/HamacherSum_8h__dep__incl.md5 b/docs/html/HamacherSum_8h__dep__incl.md5 new file mode 100644 index 0000000..dc7e6a0 --- /dev/null +++ b/docs/html/HamacherSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +25ad543fe1f9658ad2fd51df964f065d \ No newline at end of file diff --git a/docs/html/HamacherSum_8h__dep__incl.png b/docs/html/HamacherSum_8h__dep__incl.png new file mode 100644 index 0000000..e4d76f2 Binary files /dev/null and b/docs/html/HamacherSum_8h__dep__incl.png differ diff --git a/docs/html/HamacherSum_8h__incl.map b/docs/html/HamacherSum_8h__incl.map new file mode 100644 index 0000000..8262c0d --- /dev/null +++ b/docs/html/HamacherSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/HamacherSum_8h__incl.md5 b/docs/html/HamacherSum_8h__incl.md5 new file mode 100644 index 0000000..59dc6e3 --- /dev/null +++ b/docs/html/HamacherSum_8h__incl.md5 @@ -0,0 +1 @@ +b1191511160419890fcfed2e39b10d54 \ No newline at end of file diff --git a/docs/html/HamacherSum_8h__incl.png b/docs/html/HamacherSum_8h__incl.png new file mode 100644 index 0000000..f025d79 Binary files /dev/null and b/docs/html/HamacherSum_8h__incl.png differ diff --git a/docs/html/HamacherSum_8h_source.html b/docs/html/HamacherSum_8h_source.html new file mode 100644 index 0000000..7d35a6c --- /dev/null +++ b/docs/html/HamacherSum_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/s/HamacherSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
HamacherSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: HamacherSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:11 AM
+
21  */
+
22 
+
23 #ifndef FL_HAMACHERSUM_H
+
24 #define FL_HAMACHERSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT HamacherSum : public SNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34 
+
35  static SNorm* constructor();
+
36  };
+
37 
+
38 }
+
39 
+
40 #endif /* FL_HAMACHERSUM_H */
+
41 
+
+
+ + + + diff --git a/docs/html/Headers_8h.html b/docs/html/Headers_8h.html new file mode 100644 index 0000000..8cdd442 --- /dev/null +++ b/docs/html/Headers_8h.html @@ -0,0 +1,213 @@ + + + + + + +fuzzylite: fl/Headers.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Headers.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/Console.h"
+#include "fl/Engine.h"
+#include "fl/Exception.h"
+#include "fl/defuzzifier/Bisector.h"
+#include "fl/defuzzifier/Centroid.h"
+#include "fl/defuzzifier/Defuzzifier.h"
+#include "fl/defuzzifier/IntegralDefuzzifier.h"
+#include "fl/defuzzifier/SmallestOfMaximum.h"
+#include "fl/defuzzifier/LargestOfMaximum.h"
+#include "fl/defuzzifier/MeanOfMaximum.h"
+#include "fl/defuzzifier/WeightedAverage.h"
+#include "fl/defuzzifier/WeightedSum.h"
+#include "fl/factory/Factory.h"
+#include "fl/factory/FactoryManager.h"
+#include "fl/factory/DefuzzifierFactory.h"
+#include "fl/factory/HedgeFactory.h"
+#include "fl/factory/SNormFactory.h"
+#include "fl/factory/TNormFactory.h"
+#include "fl/factory/TermFactory.h"
+#include "fl/imex/CppExporter.h"
+#include "fl/imex/FclImporter.h"
+#include "fl/imex/FclExporter.h"
+#include "fl/imex/FisImporter.h"
+#include "fl/imex/FisExporter.h"
+#include "fl/imex/FldExporter.h"
+#include "fl/imex/FllImporter.h"
+#include "fl/imex/FllExporter.h"
+#include "fl/imex/JavaExporter.h"
+#include "fl/hedge/Any.h"
+#include "fl/hedge/Extremely.h"
+#include "fl/hedge/Hedge.h"
+#include "fl/hedge/Not.h"
+#include "fl/hedge/Seldom.h"
+#include "fl/hedge/Somewhat.h"
+#include "fl/hedge/Very.h"
+#include "fl/Operation.h"
+#include "fl/norm/Norm.h"
+#include "fl/norm/SNorm.h"
+#include "fl/norm/TNorm.h"
+#include "fl/norm/s/AlgebraicSum.h"
+#include "fl/norm/s/BoundedSum.h"
+#include "fl/norm/s/DrasticSum.h"
+#include "fl/norm/s/EinsteinSum.h"
+#include "fl/norm/s/HamacherSum.h"
+#include "fl/norm/s/Maximum.h"
+#include "fl/norm/s/NormalizedSum.h"
+#include "fl/norm/t/AlgebraicProduct.h"
+#include "fl/norm/t/BoundedDifference.h"
+#include "fl/norm/t/DrasticProduct.h"
+#include "fl/norm/t/EinsteinProduct.h"
+#include "fl/norm/t/HamacherProduct.h"
+#include "fl/norm/t/Minimum.h"
+#include "fl/rule/Antecedent.h"
+#include "fl/rule/Consequent.h"
+#include "fl/rule/Rule.h"
+#include "fl/rule/RuleBlock.h"
+#include "fl/rule/Expression.h"
+#include "fl/term/Accumulated.h"
+#include "fl/term/Bell.h"
+#include "fl/term/Constant.h"
+#include "fl/term/Discrete.h"
+#include "fl/term/Function.h"
+#include "fl/term/Gaussian.h"
+#include "fl/term/GaussianProduct.h"
+#include "fl/term/Linear.h"
+#include "fl/term/PiShape.h"
+#include "fl/term/Ramp.h"
+#include "fl/term/Rectangle.h"
+#include "fl/term/SShape.h"
+#include "fl/term/Sigmoid.h"
+#include "fl/term/SigmoidDifference.h"
+#include "fl/term/SigmoidProduct.h"
+#include "fl/term/Term.h"
+#include "fl/term/Thresholded.h"
+#include "fl/term/Trapezoid.h"
+#include "fl/term/Triangle.h"
+#include "fl/term/ZShape.h"
+#include "fl/variable/InputVariable.h"
+#include "fl/variable/OutputVariable.h"
+#include "fl/variable/Variable.h"
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+
+
+ + + + diff --git a/docs/html/Headers_8h__dep__incl.map b/docs/html/Headers_8h__dep__incl.map new file mode 100644 index 0000000..7f7e087 --- /dev/null +++ b/docs/html/Headers_8h__dep__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/Headers_8h__dep__incl.md5 b/docs/html/Headers_8h__dep__incl.md5 new file mode 100644 index 0000000..609b7f0 --- /dev/null +++ b/docs/html/Headers_8h__dep__incl.md5 @@ -0,0 +1 @@ +5564d7d7cf128ee46273beab7d1cdf44 \ No newline at end of file diff --git a/docs/html/Headers_8h__dep__incl.png b/docs/html/Headers_8h__dep__incl.png new file mode 100644 index 0000000..7bf7e2e Binary files /dev/null and b/docs/html/Headers_8h__dep__incl.png differ diff --git a/docs/html/Headers_8h_source.html b/docs/html/Headers_8h_source.html new file mode 100644 index 0000000..3fd29f7 --- /dev/null +++ b/docs/html/Headers_8h_source.html @@ -0,0 +1,244 @@ + + + + + + +fuzzylite: fl/Headers.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Headers.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Headers.h
+
18  *
+
19  * Created on: 30/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_HEADERS_H
+
24 #define FL_HEADERS_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/Console.h"
+
29 #include "fl/Engine.h"
+
30 #include "fl/Exception.h"
+
31 
+ + + + + + + + + +
41 
+
42 #include "fl/factory/Factory.h"
+ + + + + +
48 #include "fl/factory/TermFactory.h"
+
49 
+
50 #include "fl/imex/CppExporter.h"
+
51 #include "fl/imex/FclImporter.h"
+
52 #include "fl/imex/FclExporter.h"
+
53 #include "fl/imex/FisImporter.h"
+
54 #include "fl/imex/FisExporter.h"
+
55 #include "fl/imex/FldExporter.h"
+
56 #include "fl/imex/FllImporter.h"
+
57 #include "fl/imex/FllExporter.h"
+
58 #include "fl/imex/JavaExporter.h"
+
59 
+
60 #include "fl/hedge/Any.h"
+
61 #include "fl/hedge/Extremely.h"
+
62 #include "fl/hedge/Hedge.h"
+
63 #include "fl/hedge/Not.h"
+
64 #include "fl/hedge/Seldom.h"
+
65 #include "fl/hedge/Somewhat.h"
+
66 #include "fl/hedge/Very.h"
+
67 
+
68 #include "fl/Operation.h"
+
69 #include "fl/norm/Norm.h"
+
70 #include "fl/norm/SNorm.h"
+
71 #include "fl/norm/TNorm.h"
+
72 
+
73 #include "fl/norm/s/AlgebraicSum.h"
+
74 #include "fl/norm/s/BoundedSum.h"
+
75 #include "fl/norm/s/DrasticSum.h"
+
76 #include "fl/norm/s/EinsteinSum.h"
+
77 #include "fl/norm/s/HamacherSum.h"
+
78 #include "fl/norm/s/Maximum.h"
+ +
80 
+ + + + + +
86 #include "fl/norm/t/Minimum.h"
+
87 
+
88 #include "fl/rule/Antecedent.h"
+
89 #include "fl/rule/Consequent.h"
+
90 #include "fl/rule/Rule.h"
+
91 #include "fl/rule/RuleBlock.h"
+
92 #include "fl/rule/Expression.h"
+
93 
+
94 
+
95 #include "fl/term/Accumulated.h"
+
96 #include "fl/term/Bell.h"
+
97 #include "fl/term/Constant.h"
+
98 #include "fl/term/Discrete.h"
+
99 #include "fl/term/Function.h"
+
100 #include "fl/term/Gaussian.h"
+
101 #include "fl/term/GaussianProduct.h"
+
102 #include "fl/term/Linear.h"
+
103 #include "fl/term/PiShape.h"
+
104 #include "fl/term/Ramp.h"
+
105 #include "fl/term/Rectangle.h"
+
106 #include "fl/term/SShape.h"
+
107 #include "fl/term/Sigmoid.h"
+ +
109 #include "fl/term/SigmoidProduct.h"
+
110 #include "fl/term/Term.h"
+
111 #include "fl/term/Thresholded.h"
+
112 #include "fl/term/Trapezoid.h"
+
113 #include "fl/term/Triangle.h"
+
114 #include "fl/term/ZShape.h"
+
115 
+ + +
118 #include "fl/variable/Variable.h"
+
119 
+
120 
+
121 #endif /* FL_HEADERS_H */
+
+
+ + + + diff --git a/docs/html/HedgeFactory_8cpp.html b/docs/html/HedgeFactory_8cpp.html new file mode 100644 index 0000000..6c4e0cf --- /dev/null +++ b/docs/html/HedgeFactory_8cpp.html @@ -0,0 +1,145 @@ + + + + + + +fuzzylite: src/factory/HedgeFactory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HedgeFactory.cpp File Reference
+
+
+
#include "fl/factory/HedgeFactory.h"
+#include "fl/hedge/Any.h"
+#include "fl/hedge/Extremely.h"
+#include "fl/hedge/Not.h"
+#include "fl/hedge/Seldom.h"
+#include "fl/hedge/Somewhat.h"
+#include "fl/hedge/Very.h"
+
+Include dependency graph for HedgeFactory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HedgeFactory_8cpp__incl.map b/docs/html/HedgeFactory_8cpp__incl.map new file mode 100644 index 0000000..29abf63 --- /dev/null +++ b/docs/html/HedgeFactory_8cpp__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/HedgeFactory_8cpp__incl.md5 b/docs/html/HedgeFactory_8cpp__incl.md5 new file mode 100644 index 0000000..a8481ff --- /dev/null +++ b/docs/html/HedgeFactory_8cpp__incl.md5 @@ -0,0 +1 @@ +c502296a6101adb0acaba4193da5d86a \ No newline at end of file diff --git a/docs/html/HedgeFactory_8cpp__incl.png b/docs/html/HedgeFactory_8cpp__incl.png new file mode 100644 index 0000000..b0adf04 Binary files /dev/null and b/docs/html/HedgeFactory_8cpp__incl.png differ diff --git a/docs/html/HedgeFactory_8h.html b/docs/html/HedgeFactory_8h.html new file mode 100644 index 0000000..12973fe --- /dev/null +++ b/docs/html/HedgeFactory_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/factory/HedgeFactory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
HedgeFactory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/factory/Factory.h"
+#include "fl/hedge/Hedge.h"
+
+Include dependency graph for HedgeFactory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::HedgeFactory
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/HedgeFactory_8h__dep__incl.map b/docs/html/HedgeFactory_8h__dep__incl.map new file mode 100644 index 0000000..9adcf6a --- /dev/null +++ b/docs/html/HedgeFactory_8h__dep__incl.map @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/html/HedgeFactory_8h__dep__incl.md5 b/docs/html/HedgeFactory_8h__dep__incl.md5 new file mode 100644 index 0000000..999b358 --- /dev/null +++ b/docs/html/HedgeFactory_8h__dep__incl.md5 @@ -0,0 +1 @@ +3109f8778b9bece7c50c16e50f85579c \ No newline at end of file diff --git a/docs/html/HedgeFactory_8h__dep__incl.png b/docs/html/HedgeFactory_8h__dep__incl.png new file mode 100644 index 0000000..03ab7b6 Binary files /dev/null and b/docs/html/HedgeFactory_8h__dep__incl.png differ diff --git a/docs/html/HedgeFactory_8h__incl.map b/docs/html/HedgeFactory_8h__incl.map new file mode 100644 index 0000000..7726834 --- /dev/null +++ b/docs/html/HedgeFactory_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/HedgeFactory_8h__incl.md5 b/docs/html/HedgeFactory_8h__incl.md5 new file mode 100644 index 0000000..507d0d7 --- /dev/null +++ b/docs/html/HedgeFactory_8h__incl.md5 @@ -0,0 +1 @@ +cc234835aed437e1f862ba844579b6fa \ No newline at end of file diff --git a/docs/html/HedgeFactory_8h__incl.png b/docs/html/HedgeFactory_8h__incl.png new file mode 100644 index 0000000..07eb9f2 Binary files /dev/null and b/docs/html/HedgeFactory_8h__incl.png differ diff --git a/docs/html/HedgeFactory_8h_source.html b/docs/html/HedgeFactory_8h_source.html new file mode 100644 index 0000000..97c7094 --- /dev/null +++ b/docs/html/HedgeFactory_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/factory/HedgeFactory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
HedgeFactory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: HedgeFactory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 11 January 2013, 8:51 PM
+
21  */
+
22 
+
23 #ifndef FL_HEDGEFACTORY_H
+
24 #define FL_HEDGEFACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/factory/Factory.h"
+
29 #include "fl/hedge/Hedge.h"
+
30 
+
31 namespace fl {
+
32 
+
33  class FL_EXPORT HedgeFactory : public Factory<Hedge*>{
+
34  public:
+
35  HedgeFactory();
+
36  virtual ~HedgeFactory();
+
37 
+
38  };
+
39 }
+
40 #endif /* FL_HEDGEFACTORY_H */
+
41 
+
+
+ + + + diff --git a/docs/html/Hedge_8h.html b/docs/html/Hedge_8h.html new file mode 100644 index 0000000..80fd05a --- /dev/null +++ b/docs/html/Hedge_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/hedge/Hedge.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Hedge.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Hedge.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Hedge
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Hedge_8h__dep__incl.map b/docs/html/Hedge_8h__dep__incl.map new file mode 100644 index 0000000..21e0731 --- /dev/null +++ b/docs/html/Hedge_8h__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Hedge_8h__dep__incl.md5 b/docs/html/Hedge_8h__dep__incl.md5 new file mode 100644 index 0000000..0e871f2 --- /dev/null +++ b/docs/html/Hedge_8h__dep__incl.md5 @@ -0,0 +1 @@ +d22752543408926aada38ec459898e30 \ No newline at end of file diff --git a/docs/html/Hedge_8h__dep__incl.png b/docs/html/Hedge_8h__dep__incl.png new file mode 100644 index 0000000..c55d97e Binary files /dev/null and b/docs/html/Hedge_8h__dep__incl.png differ diff --git a/docs/html/Hedge_8h__incl.map b/docs/html/Hedge_8h__incl.map new file mode 100644 index 0000000..d3545be --- /dev/null +++ b/docs/html/Hedge_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Hedge_8h__incl.md5 b/docs/html/Hedge_8h__incl.md5 new file mode 100644 index 0000000..5fe91d4 --- /dev/null +++ b/docs/html/Hedge_8h__incl.md5 @@ -0,0 +1 @@ +b6a7abaeace49d70ab59fc3f8e84fbc8 \ No newline at end of file diff --git a/docs/html/Hedge_8h__incl.png b/docs/html/Hedge_8h__incl.png new file mode 100644 index 0000000..8920930 Binary files /dev/null and b/docs/html/Hedge_8h__incl.png differ diff --git a/docs/html/Hedge_8h_source.html b/docs/html/Hedge_8h_source.html new file mode 100644 index 0000000..e61ee14 --- /dev/null +++ b/docs/html/Hedge_8h_source.html @@ -0,0 +1,170 @@ + + + + + + +fuzzylite: fl/hedge/Hedge.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Hedge.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Hedge.h
+
18  *
+
19  * Created on: 3/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_HEDGE_H
+
24 #define FL_HEDGE_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 
+
29 
+
30 #include <string>
+
31 
+
32 namespace fl {
+
33 
+
34  class FL_EXPORT Hedge {
+
35  public:
+
36 
+
37  Hedge() { }
+
38 
+
39  virtual ~Hedge() { }
+
40 
+
41  virtual std::string name() const = 0;
+
42  virtual scalar hedge(scalar x) const = 0;
+
43 
+
44  };
+
45 }
+
46 
+
47 #endif /* FL_HEDGE_H */
+
+
+ + + + diff --git a/docs/html/Importer_8h.html b/docs/html/Importer_8h.html new file mode 100644 index 0000000..3b440eb --- /dev/null +++ b/docs/html/Importer_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/imex/Importer.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Importer.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Importer.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Importer
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Importer_8h__dep__incl.map b/docs/html/Importer_8h__dep__incl.map new file mode 100644 index 0000000..a972948 --- /dev/null +++ b/docs/html/Importer_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Importer_8h__dep__incl.md5 b/docs/html/Importer_8h__dep__incl.md5 new file mode 100644 index 0000000..905a247 --- /dev/null +++ b/docs/html/Importer_8h__dep__incl.md5 @@ -0,0 +1 @@ +32d326066495bb6a8dc5513e2338ad0f \ No newline at end of file diff --git a/docs/html/Importer_8h__dep__incl.png b/docs/html/Importer_8h__dep__incl.png new file mode 100644 index 0000000..14b3965 Binary files /dev/null and b/docs/html/Importer_8h__dep__incl.png differ diff --git a/docs/html/Importer_8h__incl.map b/docs/html/Importer_8h__incl.map new file mode 100644 index 0000000..0fc33c0 --- /dev/null +++ b/docs/html/Importer_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Importer_8h__incl.md5 b/docs/html/Importer_8h__incl.md5 new file mode 100644 index 0000000..a4a16d3 --- /dev/null +++ b/docs/html/Importer_8h__incl.md5 @@ -0,0 +1 @@ +599de33bb117517fd6375d086209f017 \ No newline at end of file diff --git a/docs/html/Importer_8h__incl.png b/docs/html/Importer_8h__incl.png new file mode 100644 index 0000000..4f2f9b5 Binary files /dev/null and b/docs/html/Importer_8h__incl.png differ diff --git a/docs/html/Importer_8h_source.html b/docs/html/Importer_8h_source.html new file mode 100644 index 0000000..cdcffb2 --- /dev/null +++ b/docs/html/Importer_8h_source.html @@ -0,0 +1,172 @@ + + + + + + +fuzzylite: fl/imex/Importer.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Importer.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Importer.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 25 December 2012, 11:43 PM
+
21  */
+
22 
+
23 #ifndef FL_IMPORTER_H
+
24 #define FL_IMPORTER_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 
+
30 namespace fl {
+
31  class Engine;
+
32 
+ +
34  public:
+
35 
+ +
37  }
+
38 
+
39  virtual ~Importer() {
+
40  }
+
41 
+
42  virtual std::string name() const = 0;
+
43  virtual Engine* fromString(const std::string& s) const = 0;
+
44  };
+
45 
+
46 }
+
47 
+
48 #endif /* IMPORTER_H */
+
49 
+
+
+ + + + diff --git a/docs/html/InputVariable_8cpp.html b/docs/html/InputVariable_8cpp.html new file mode 100644 index 0000000..c015e39 --- /dev/null +++ b/docs/html/InputVariable_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/variable/InputVariable.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
InputVariable.cpp File Reference
+
+
+
#include "fl/variable/InputVariable.h"
+#include "fl/imex/FllExporter.h"
+#include <sstream>
+
+Include dependency graph for InputVariable.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/InputVariable_8cpp__incl.map b/docs/html/InputVariable_8cpp__incl.map new file mode 100644 index 0000000..d0705f8 --- /dev/null +++ b/docs/html/InputVariable_8cpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/InputVariable_8cpp__incl.md5 b/docs/html/InputVariable_8cpp__incl.md5 new file mode 100644 index 0000000..61403aa --- /dev/null +++ b/docs/html/InputVariable_8cpp__incl.md5 @@ -0,0 +1 @@ +136977ef0edc39d3f4aacd534de9ebea \ No newline at end of file diff --git a/docs/html/InputVariable_8cpp__incl.png b/docs/html/InputVariable_8cpp__incl.png new file mode 100644 index 0000000..0382683 Binary files /dev/null and b/docs/html/InputVariable_8cpp__incl.png differ diff --git a/docs/html/InputVariable_8h.html b/docs/html/InputVariable_8h.html new file mode 100644 index 0000000..2934bb1 --- /dev/null +++ b/docs/html/InputVariable_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/variable/InputVariable.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
InputVariable.h File Reference
+
+
+
+Include dependency graph for InputVariable.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::InputVariable
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/InputVariable_8h__dep__incl.map b/docs/html/InputVariable_8h__dep__incl.map new file mode 100644 index 0000000..5c14179 --- /dev/null +++ b/docs/html/InputVariable_8h__dep__incl.map @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/InputVariable_8h__dep__incl.md5 b/docs/html/InputVariable_8h__dep__incl.md5 new file mode 100644 index 0000000..763bfe1 --- /dev/null +++ b/docs/html/InputVariable_8h__dep__incl.md5 @@ -0,0 +1 @@ +f339538ff63434490b4d568a9e0521d1 \ No newline at end of file diff --git a/docs/html/InputVariable_8h__dep__incl.png b/docs/html/InputVariable_8h__dep__incl.png new file mode 100644 index 0000000..43602b1 Binary files /dev/null and b/docs/html/InputVariable_8h__dep__incl.png differ diff --git a/docs/html/InputVariable_8h__incl.map b/docs/html/InputVariable_8h__incl.map new file mode 100644 index 0000000..a585129 --- /dev/null +++ b/docs/html/InputVariable_8h__incl.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/InputVariable_8h__incl.md5 b/docs/html/InputVariable_8h__incl.md5 new file mode 100644 index 0000000..1e5b1a9 --- /dev/null +++ b/docs/html/InputVariable_8h__incl.md5 @@ -0,0 +1 @@ +363ab4915879b375a2d093800040e19e \ No newline at end of file diff --git a/docs/html/InputVariable_8h__incl.png b/docs/html/InputVariable_8h__incl.png new file mode 100644 index 0000000..4b16ef6 Binary files /dev/null and b/docs/html/InputVariable_8h__incl.png differ diff --git a/docs/html/InputVariable_8h_source.html b/docs/html/InputVariable_8h_source.html new file mode 100644 index 0000000..b2c0ff7 --- /dev/null +++ b/docs/html/InputVariable_8h_source.html @@ -0,0 +1,169 @@ + + + + + + +fuzzylite: fl/variable/InputVariable.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
InputVariable.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * InputVariable.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_INPUTVARIABLE_H
+
24 #define FL_INPUTVARIABLE_H
+
25 
+
26 #include "fl/variable/Variable.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT InputVariable : public Variable {
+
31  protected:
+ +
33  public:
+
34  InputVariable(const std::string& name = "",
+
35  scalar minimum = -fl::inf,
+
36  scalar maximum = fl::inf);
+
37  virtual ~InputVariable();
+
38 
+
39  virtual void setInputValue(scalar inputValue);
+
40  virtual scalar getInputValue() const;
+
41 
+
42  virtual std::string toString() const;
+
43  };
+
44 
+
45 }
+
46 #endif /* FL_INPUTVARIABLE_H */
+
+
+ + + + diff --git a/docs/html/IntegralDefuzzifier_8cpp.html b/docs/html/IntegralDefuzzifier_8cpp.html new file mode 100644 index 0000000..c613475 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/defuzzifier/IntegralDefuzzifier.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
IntegralDefuzzifier.cpp File Reference
+
+
+
+Include dependency graph for IntegralDefuzzifier.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/IntegralDefuzzifier_8cpp__incl.map b/docs/html/IntegralDefuzzifier_8cpp__incl.map new file mode 100644 index 0000000..81be560 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/IntegralDefuzzifier_8cpp__incl.md5 b/docs/html/IntegralDefuzzifier_8cpp__incl.md5 new file mode 100644 index 0000000..f1420c5 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8cpp__incl.md5 @@ -0,0 +1 @@ +90deee6f6d52967933470c3a7eb09b79 \ No newline at end of file diff --git a/docs/html/IntegralDefuzzifier_8cpp__incl.png b/docs/html/IntegralDefuzzifier_8cpp__incl.png new file mode 100644 index 0000000..6bdc6e3 Binary files /dev/null and b/docs/html/IntegralDefuzzifier_8cpp__incl.png differ diff --git a/docs/html/IntegralDefuzzifier_8h.html b/docs/html/IntegralDefuzzifier_8h.html new file mode 100644 index 0000000..204d5c0 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/IntegralDefuzzifier.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
IntegralDefuzzifier.h File Reference
+
+
+
+Include dependency graph for IntegralDefuzzifier.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::IntegralDefuzzifier
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/IntegralDefuzzifier_8h__dep__incl.map b/docs/html/IntegralDefuzzifier_8h__dep__incl.map new file mode 100644 index 0000000..5852c4e --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h__dep__incl.map @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/IntegralDefuzzifier_8h__dep__incl.md5 b/docs/html/IntegralDefuzzifier_8h__dep__incl.md5 new file mode 100644 index 0000000..892b00c --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h__dep__incl.md5 @@ -0,0 +1 @@ +c086870c5cc1a9f17efe98c7c8e34887 \ No newline at end of file diff --git a/docs/html/IntegralDefuzzifier_8h__dep__incl.png b/docs/html/IntegralDefuzzifier_8h__dep__incl.png new file mode 100644 index 0000000..d9af79a Binary files /dev/null and b/docs/html/IntegralDefuzzifier_8h__dep__incl.png differ diff --git a/docs/html/IntegralDefuzzifier_8h__incl.map b/docs/html/IntegralDefuzzifier_8h__incl.map new file mode 100644 index 0000000..35f0e76 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/IntegralDefuzzifier_8h__incl.md5 b/docs/html/IntegralDefuzzifier_8h__incl.md5 new file mode 100644 index 0000000..e323fc1 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h__incl.md5 @@ -0,0 +1 @@ +ad1aa99d46d627f59cbb6bc51024d5d3 \ No newline at end of file diff --git a/docs/html/IntegralDefuzzifier_8h__incl.png b/docs/html/IntegralDefuzzifier_8h__incl.png new file mode 100644 index 0000000..519cfdf Binary files /dev/null and b/docs/html/IntegralDefuzzifier_8h__incl.png differ diff --git a/docs/html/IntegralDefuzzifier_8h_source.html b/docs/html/IntegralDefuzzifier_8h_source.html new file mode 100644 index 0000000..2ca74e9 --- /dev/null +++ b/docs/html/IntegralDefuzzifier_8h_source.html @@ -0,0 +1,175 @@ + + + + + + +fuzzylite: fl/defuzzifier/IntegralDefuzzifier.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
IntegralDefuzzifier.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: IntegralDefuzzifier.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 2 November 2013, 9:18 AM
+
21  */
+
22 
+
23 #ifndef FL_INTEGRALDEFUZZIFIER_H
+
24 #define FL_INTEGRALDEFUZZIFIER_H
+
25 
+ +
27 
+
28 namespace fl {
+
29  //TODO: check http://en.wikipedia.org/wiki/Adaptive_quadrature
+
30 
+ +
32  protected:
+ +
34  public:
+
35 
+
36  static int defaultResolution() {
+
37  return 200;
+
38  }
+
39 
+
40  IntegralDefuzzifier(int resolution = defaultResolution());
+
41  virtual ~IntegralDefuzzifier();
+
42 
+
43  virtual void setResolution(int resolution);
+
44  virtual int getResolution() const;
+
45 
+
46 
+
47  };
+
48 
+
49 }
+
50 
+
51 #endif /* INTEGRALDEFUZZIFIER_H */
+
52 
+
+
+ + + + diff --git a/docs/html/JavaExporter_8cpp.html b/docs/html/JavaExporter_8cpp.html new file mode 100644 index 0000000..cdb6931 --- /dev/null +++ b/docs/html/JavaExporter_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/imex/JavaExporter.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
JavaExporter.cpp File Reference
+
+
+
#include "fl/imex/JavaExporter.h"
+#include "fl/Headers.h"
+#include <algorithm>
+
+Include dependency graph for JavaExporter.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/JavaExporter_8cpp__incl.map b/docs/html/JavaExporter_8cpp__incl.map new file mode 100644 index 0000000..6550240 --- /dev/null +++ b/docs/html/JavaExporter_8cpp__incl.map @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/JavaExporter_8cpp__incl.md5 b/docs/html/JavaExporter_8cpp__incl.md5 new file mode 100644 index 0000000..7962ca6 --- /dev/null +++ b/docs/html/JavaExporter_8cpp__incl.md5 @@ -0,0 +1 @@ +71927bacd600463993cdacdad1162017 \ No newline at end of file diff --git a/docs/html/JavaExporter_8cpp__incl.png b/docs/html/JavaExporter_8cpp__incl.png new file mode 100644 index 0000000..a45f977 Binary files /dev/null and b/docs/html/JavaExporter_8cpp__incl.png differ diff --git a/docs/html/JavaExporter_8h.html b/docs/html/JavaExporter_8h.html new file mode 100644 index 0000000..a94c4ca --- /dev/null +++ b/docs/html/JavaExporter_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/imex/JavaExporter.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
JavaExporter.h File Reference
+
+
+
#include "fl/imex/Exporter.h"
+
+Include dependency graph for JavaExporter.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::JavaExporter
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/JavaExporter_8h__dep__incl.map b/docs/html/JavaExporter_8h__dep__incl.map new file mode 100644 index 0000000..13f351d --- /dev/null +++ b/docs/html/JavaExporter_8h__dep__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/JavaExporter_8h__dep__incl.md5 b/docs/html/JavaExporter_8h__dep__incl.md5 new file mode 100644 index 0000000..2cc27aa --- /dev/null +++ b/docs/html/JavaExporter_8h__dep__incl.md5 @@ -0,0 +1 @@ +a06bf1845d631812d2cf1f8e3d1fcc8b \ No newline at end of file diff --git a/docs/html/JavaExporter_8h__dep__incl.png b/docs/html/JavaExporter_8h__dep__incl.png new file mode 100644 index 0000000..8f6bcb1 Binary files /dev/null and b/docs/html/JavaExporter_8h__dep__incl.png differ diff --git a/docs/html/JavaExporter_8h__incl.map b/docs/html/JavaExporter_8h__incl.map new file mode 100644 index 0000000..046c04b --- /dev/null +++ b/docs/html/JavaExporter_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/JavaExporter_8h__incl.md5 b/docs/html/JavaExporter_8h__incl.md5 new file mode 100644 index 0000000..9ba235e --- /dev/null +++ b/docs/html/JavaExporter_8h__incl.md5 @@ -0,0 +1 @@ +82f1bf99b93861f58abf2762a0382d10 \ No newline at end of file diff --git a/docs/html/JavaExporter_8h__incl.png b/docs/html/JavaExporter_8h__incl.png new file mode 100644 index 0000000..93d0cfb Binary files /dev/null and b/docs/html/JavaExporter_8h__incl.png differ diff --git a/docs/html/JavaExporter_8h_source.html b/docs/html/JavaExporter_8h_source.html new file mode 100644 index 0000000..fe44208 --- /dev/null +++ b/docs/html/JavaExporter_8h_source.html @@ -0,0 +1,182 @@ + + + + + + +fuzzylite: fl/imex/JavaExporter.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
JavaExporter.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: JavaExporter.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 28 November 2013, 10:20 PM
+
21  */
+
22 
+
23 #ifndef FL_JAVAEXPORTER_H
+
24 #define FL_JAVAEXPORTER_H
+
25 
+
26 #include "fl/imex/Exporter.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class Engine;
+
31  class InputVariable;
+
32  class OutputVariable;
+
33  class RuleBlock;
+
34  class Term;
+
35  class Defuzzifier;
+
36  class Norm;
+
37 
+
38  class FL_EXPORT JavaExporter : public Exporter {
+
39  public:
+
40  JavaExporter();
+
41  virtual ~JavaExporter();
+
42 
+
43  virtual std::string name() const;
+
44 
+
45  virtual std::string toString(const Engine* engine) const;
+
46  virtual std::string toString(const InputVariable* inputVariable, const Engine* engine) const;
+
47  virtual std::string toString(const OutputVariable* outputVariable, const Engine* engine) const;
+
48  virtual std::string toString(const RuleBlock* ruleBlock, const Engine* engine) const;
+
49  virtual std::string toString(const Term* term) const;
+
50  virtual std::string toString(const Defuzzifier* defuzzifier) const;
+
51  virtual std::string toString(const Norm* norm) const;
+
52  virtual std::string toString(scalar value) const;
+
53 
+
54  };
+
55 
+
56 }
+
57 
+
58 #endif /* FL_JAVAEXPORTER_H */
+
59 
+
+
+ + + + diff --git a/docs/html/LargestOfMaximum_8cpp.html b/docs/html/LargestOfMaximum_8cpp.html new file mode 100644 index 0000000..f898816 --- /dev/null +++ b/docs/html/LargestOfMaximum_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/defuzzifier/LargestOfMaximum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
LargestOfMaximum.cpp File Reference
+
+
+
+Include dependency graph for LargestOfMaximum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/LargestOfMaximum_8cpp__incl.map b/docs/html/LargestOfMaximum_8cpp__incl.map new file mode 100644 index 0000000..78e5d50 --- /dev/null +++ b/docs/html/LargestOfMaximum_8cpp__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/LargestOfMaximum_8cpp__incl.md5 b/docs/html/LargestOfMaximum_8cpp__incl.md5 new file mode 100644 index 0000000..1ec4806 --- /dev/null +++ b/docs/html/LargestOfMaximum_8cpp__incl.md5 @@ -0,0 +1 @@ +3e9688260756c0de28c99c7596385f82 \ No newline at end of file diff --git a/docs/html/LargestOfMaximum_8cpp__incl.png b/docs/html/LargestOfMaximum_8cpp__incl.png new file mode 100644 index 0000000..056e525 Binary files /dev/null and b/docs/html/LargestOfMaximum_8cpp__incl.png differ diff --git a/docs/html/LargestOfMaximum_8h.html b/docs/html/LargestOfMaximum_8h.html new file mode 100644 index 0000000..b2cfef1 --- /dev/null +++ b/docs/html/LargestOfMaximum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/LargestOfMaximum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
LargestOfMaximum.h File Reference
+
+
+
+Include dependency graph for LargestOfMaximum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::LargestOfMaximum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/LargestOfMaximum_8h__dep__incl.map b/docs/html/LargestOfMaximum_8h__dep__incl.map new file mode 100644 index 0000000..fe7ee17 --- /dev/null +++ b/docs/html/LargestOfMaximum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/LargestOfMaximum_8h__dep__incl.md5 b/docs/html/LargestOfMaximum_8h__dep__incl.md5 new file mode 100644 index 0000000..079d5f6 --- /dev/null +++ b/docs/html/LargestOfMaximum_8h__dep__incl.md5 @@ -0,0 +1 @@ +e89addc294a30cfcab44f0aab3f7b142 \ No newline at end of file diff --git a/docs/html/LargestOfMaximum_8h__dep__incl.png b/docs/html/LargestOfMaximum_8h__dep__incl.png new file mode 100644 index 0000000..f017747 Binary files /dev/null and b/docs/html/LargestOfMaximum_8h__dep__incl.png differ diff --git a/docs/html/LargestOfMaximum_8h__incl.map b/docs/html/LargestOfMaximum_8h__incl.map new file mode 100644 index 0000000..049c37a --- /dev/null +++ b/docs/html/LargestOfMaximum_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/LargestOfMaximum_8h__incl.md5 b/docs/html/LargestOfMaximum_8h__incl.md5 new file mode 100644 index 0000000..b9af11d --- /dev/null +++ b/docs/html/LargestOfMaximum_8h__incl.md5 @@ -0,0 +1 @@ +5717d1007858290831384fd0b64c2b48 \ No newline at end of file diff --git a/docs/html/LargestOfMaximum_8h__incl.png b/docs/html/LargestOfMaximum_8h__incl.png new file mode 100644 index 0000000..6d196d8 Binary files /dev/null and b/docs/html/LargestOfMaximum_8h__incl.png differ diff --git a/docs/html/LargestOfMaximum_8h_source.html b/docs/html/LargestOfMaximum_8h_source.html new file mode 100644 index 0000000..fa57322 --- /dev/null +++ b/docs/html/LargestOfMaximum_8h_source.html @@ -0,0 +1,165 @@ + + + + + + +fuzzylite: fl/defuzzifier/LargestOfMaximum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
LargestOfMaximum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: LargestOfMaximum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 6:38 PM
+
21  */
+
22 
+
23 #ifndef FL_LARGESTOFMAXIMUM_H
+
24 #define FL_LARGESTOFMAXIMUM_H
+
25 
+ +
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  LargestOfMaximum(int resolution = defaultResolution());
+
33  virtual ~LargestOfMaximum();
+
34 
+
35  virtual std::string className() const;
+
36  virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const;
+
37 
+
38  static Defuzzifier* constructor();
+
39  };
+
40 }
+
41 #endif /* FL_LARGESTOFMAXIMUM_H */
+
42 
+
+
+ + + + diff --git a/docs/html/Linear_8cpp.html b/docs/html/Linear_8cpp.html new file mode 100644 index 0000000..27af938 --- /dev/null +++ b/docs/html/Linear_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Linear.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Linear.cpp File Reference
+
+
+
#include "fl/term/Linear.h"
+#include <cstdarg>
+
+Include dependency graph for Linear.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Linear_8cpp__incl.map b/docs/html/Linear_8cpp__incl.map new file mode 100644 index 0000000..efb0678 --- /dev/null +++ b/docs/html/Linear_8cpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/Linear_8cpp__incl.md5 b/docs/html/Linear_8cpp__incl.md5 new file mode 100644 index 0000000..3733f81 --- /dev/null +++ b/docs/html/Linear_8cpp__incl.md5 @@ -0,0 +1 @@ +df0c7725b5d7b51f0c4483205b45c8d3 \ No newline at end of file diff --git a/docs/html/Linear_8cpp__incl.png b/docs/html/Linear_8cpp__incl.png new file mode 100644 index 0000000..03aebb1 Binary files /dev/null and b/docs/html/Linear_8cpp__incl.png differ diff --git a/docs/html/Linear_8h.html b/docs/html/Linear_8h.html new file mode 100644 index 0000000..11c54f6 --- /dev/null +++ b/docs/html/Linear_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/term/Linear.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Linear.h File Reference
+
+
+
+Include dependency graph for Linear.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Linear
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Linear_8h__dep__incl.map b/docs/html/Linear_8h__dep__incl.map new file mode 100644 index 0000000..bd4ade1 --- /dev/null +++ b/docs/html/Linear_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Linear_8h__dep__incl.md5 b/docs/html/Linear_8h__dep__incl.md5 new file mode 100644 index 0000000..d2c94b2 --- /dev/null +++ b/docs/html/Linear_8h__dep__incl.md5 @@ -0,0 +1 @@ +095e8b248d3c2b0e899558ddc65888bc \ No newline at end of file diff --git a/docs/html/Linear_8h__dep__incl.png b/docs/html/Linear_8h__dep__incl.png new file mode 100644 index 0000000..46cc10c Binary files /dev/null and b/docs/html/Linear_8h__dep__incl.png differ diff --git a/docs/html/Linear_8h__incl.map b/docs/html/Linear_8h__incl.map new file mode 100644 index 0000000..2e1f9ae --- /dev/null +++ b/docs/html/Linear_8h__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/Linear_8h__incl.md5 b/docs/html/Linear_8h__incl.md5 new file mode 100644 index 0000000..ef5bfcd --- /dev/null +++ b/docs/html/Linear_8h__incl.md5 @@ -0,0 +1 @@ +6d57bbc549a6b122932ac209f9f911b2 \ No newline at end of file diff --git a/docs/html/Linear_8h__incl.png b/docs/html/Linear_8h__incl.png new file mode 100644 index 0000000..d557751 Binary files /dev/null and b/docs/html/Linear_8h__incl.png differ diff --git a/docs/html/Linear_8h_source.html b/docs/html/Linear_8h_source.html new file mode 100644 index 0000000..1fac975 --- /dev/null +++ b/docs/html/Linear_8h_source.html @@ -0,0 +1,187 @@ + + + + + + +fuzzylite: fl/term/Linear.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Linear.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Linear.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 3:42 PM
+
21  */
+
22 
+
23 #ifndef FL_LINEAR_H
+
24 #define FL_LINEAR_H
+
25 
+
26 #include "fl/term/Term.h"
+ +
28 
+
29 namespace fl {
+
30 
+
31  class FL_EXPORT Linear : public Term {
+
32  public:
+
33  std::vector<scalar> coefficients;
+
34  std::vector<const InputVariable*> inputVariables;
+
35  Linear(const std::string& name = "",
+
36  const std::vector<scalar>& coefficients = std::vector<scalar>(),
+
37  const std::vector<InputVariable*>& inputVariables = std::vector<InputVariable*>());
+
38  virtual ~Linear();
+
39 
+
40  virtual std::string className() const;
+
41  virtual std::string parameters() const;
+
42  virtual void configure(const std::string& parameters);
+
43 
+
44  //Warning: this method is unsafe, make sure you use it correctly.
+
45  template <typename T>
+
46  static Linear* create(const std::string& name, const std::vector<InputVariable*>& inputVariables,
+
47  T firstCoefficient, ...);
+
48 
+
49  virtual scalar membership(scalar x) const;
+
50 
+
51  virtual void set(const std::vector<scalar>& coefficients,
+
52  const std::vector<InputVariable*>& inputVariables) throw (fl::Exception);
+
53  virtual void set(const std::vector<scalar>& coefficients,
+
54  const std::vector<const InputVariable*>& inputVariables) throw (fl::Exception);
+
55 
+
56  virtual Linear* copy() const;
+
57 
+
58  static Term* constructor();
+
59  };
+
60 
+
61 }
+
62 
+
63 #endif /* FL_LINEAR_H */
+
64 
+
+
+ + + + diff --git a/docs/html/Maximum_8cpp.html b/docs/html/Maximum_8cpp.html new file mode 100644 index 0000000..5936d37 --- /dev/null +++ b/docs/html/Maximum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/Maximum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Maximum.cpp File Reference
+
+
+
#include "fl/norm/s/Maximum.h"
+
+Include dependency graph for Maximum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Maximum_8cpp__incl.map b/docs/html/Maximum_8cpp__incl.map new file mode 100644 index 0000000..e43ee8b --- /dev/null +++ b/docs/html/Maximum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/Maximum_8cpp__incl.md5 b/docs/html/Maximum_8cpp__incl.md5 new file mode 100644 index 0000000..5bbf7d6 --- /dev/null +++ b/docs/html/Maximum_8cpp__incl.md5 @@ -0,0 +1 @@ +694eed5cb48c142ca832eabe0f6b9709 \ No newline at end of file diff --git a/docs/html/Maximum_8cpp__incl.png b/docs/html/Maximum_8cpp__incl.png new file mode 100644 index 0000000..74f9328 Binary files /dev/null and b/docs/html/Maximum_8cpp__incl.png differ diff --git a/docs/html/Maximum_8h.html b/docs/html/Maximum_8h.html new file mode 100644 index 0000000..d2d8209 --- /dev/null +++ b/docs/html/Maximum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/Maximum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Maximum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for Maximum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Maximum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Maximum_8h__dep__incl.map b/docs/html/Maximum_8h__dep__incl.map new file mode 100644 index 0000000..c703f07 --- /dev/null +++ b/docs/html/Maximum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Maximum_8h__dep__incl.md5 b/docs/html/Maximum_8h__dep__incl.md5 new file mode 100644 index 0000000..4496ae7 --- /dev/null +++ b/docs/html/Maximum_8h__dep__incl.md5 @@ -0,0 +1 @@ +f5d3d26b117d830c5d9de4a79db6cc7a \ No newline at end of file diff --git a/docs/html/Maximum_8h__dep__incl.png b/docs/html/Maximum_8h__dep__incl.png new file mode 100644 index 0000000..14b9ace Binary files /dev/null and b/docs/html/Maximum_8h__dep__incl.png differ diff --git a/docs/html/Maximum_8h__incl.map b/docs/html/Maximum_8h__incl.map new file mode 100644 index 0000000..c648235 --- /dev/null +++ b/docs/html/Maximum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Maximum_8h__incl.md5 b/docs/html/Maximum_8h__incl.md5 new file mode 100644 index 0000000..7ac6e18 --- /dev/null +++ b/docs/html/Maximum_8h__incl.md5 @@ -0,0 +1 @@ +4e5c3800a71e16acffd1bb1c23076249 \ No newline at end of file diff --git a/docs/html/Maximum_8h__incl.png b/docs/html/Maximum_8h__incl.png new file mode 100644 index 0000000..8be2e1a Binary files /dev/null and b/docs/html/Maximum_8h__incl.png differ diff --git a/docs/html/Maximum_8h_source.html b/docs/html/Maximum_8h_source.html new file mode 100644 index 0000000..3207aa1 --- /dev/null +++ b/docs/html/Maximum_8h_source.html @@ -0,0 +1,165 @@ + + + + + + +fuzzylite: fl/norm/s/Maximum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Maximum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Maximum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:06 AM
+
21  */
+
22 
+
23 #ifndef FL_MAXIMUM_H
+
24 #define FL_MAXIMUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Maximum : public SNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34 
+
35  static SNorm* constructor();
+
36  };
+
37 
+
38 
+
39 }
+
40 
+
41 #endif /* FL_MAXIMUM_H */
+
42 
+
+
+ + + + diff --git a/docs/html/MeanOfMaximum_8cpp.html b/docs/html/MeanOfMaximum_8cpp.html new file mode 100644 index 0000000..430a188 --- /dev/null +++ b/docs/html/MeanOfMaximum_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/defuzzifier/MeanOfMaximum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
MeanOfMaximum.cpp File Reference
+
+
+
#include "fl/defuzzifier/MeanOfMaximum.h"
+#include "fl/term/Term.h"
+#include "fl/Exception.h"
+
+Include dependency graph for MeanOfMaximum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/MeanOfMaximum_8cpp__incl.map b/docs/html/MeanOfMaximum_8cpp__incl.map new file mode 100644 index 0000000..10af937 --- /dev/null +++ b/docs/html/MeanOfMaximum_8cpp__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/MeanOfMaximum_8cpp__incl.md5 b/docs/html/MeanOfMaximum_8cpp__incl.md5 new file mode 100644 index 0000000..ca23312 --- /dev/null +++ b/docs/html/MeanOfMaximum_8cpp__incl.md5 @@ -0,0 +1 @@ +de1d5604727ba243f51c7caf837ddaa6 \ No newline at end of file diff --git a/docs/html/MeanOfMaximum_8cpp__incl.png b/docs/html/MeanOfMaximum_8cpp__incl.png new file mode 100644 index 0000000..d4bf2fa Binary files /dev/null and b/docs/html/MeanOfMaximum_8cpp__incl.png differ diff --git a/docs/html/MeanOfMaximum_8h.html b/docs/html/MeanOfMaximum_8h.html new file mode 100644 index 0000000..296427d --- /dev/null +++ b/docs/html/MeanOfMaximum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/MeanOfMaximum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
MeanOfMaximum.h File Reference
+
+
+
+Include dependency graph for MeanOfMaximum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::MeanOfMaximum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/MeanOfMaximum_8h__dep__incl.map b/docs/html/MeanOfMaximum_8h__dep__incl.map new file mode 100644 index 0000000..c9b539a --- /dev/null +++ b/docs/html/MeanOfMaximum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/MeanOfMaximum_8h__dep__incl.md5 b/docs/html/MeanOfMaximum_8h__dep__incl.md5 new file mode 100644 index 0000000..c6d2c59 --- /dev/null +++ b/docs/html/MeanOfMaximum_8h__dep__incl.md5 @@ -0,0 +1 @@ +b0def9b07f16fa6faaa60520657af3cf \ No newline at end of file diff --git a/docs/html/MeanOfMaximum_8h__dep__incl.png b/docs/html/MeanOfMaximum_8h__dep__incl.png new file mode 100644 index 0000000..4eb6d47 Binary files /dev/null and b/docs/html/MeanOfMaximum_8h__dep__incl.png differ diff --git a/docs/html/MeanOfMaximum_8h__incl.map b/docs/html/MeanOfMaximum_8h__incl.map new file mode 100644 index 0000000..af1cd48 --- /dev/null +++ b/docs/html/MeanOfMaximum_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/MeanOfMaximum_8h__incl.md5 b/docs/html/MeanOfMaximum_8h__incl.md5 new file mode 100644 index 0000000..937a8d5 --- /dev/null +++ b/docs/html/MeanOfMaximum_8h__incl.md5 @@ -0,0 +1 @@ +def0afcb395e65bee8cd7d9c1b629d35 \ No newline at end of file diff --git a/docs/html/MeanOfMaximum_8h__incl.png b/docs/html/MeanOfMaximum_8h__incl.png new file mode 100644 index 0000000..03f1045 Binary files /dev/null and b/docs/html/MeanOfMaximum_8h__incl.png differ diff --git a/docs/html/MeanOfMaximum_8h_source.html b/docs/html/MeanOfMaximum_8h_source.html new file mode 100644 index 0000000..255f83d --- /dev/null +++ b/docs/html/MeanOfMaximum_8h_source.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: fl/defuzzifier/MeanOfMaximum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
MeanOfMaximum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: MeanOfMaximum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 6:38 PM
+
21  */
+
22 
+
23 #ifndef FL_MEANOFMAXIMUM_H
+
24 #define FL_MEANOFMAXIMUM_H
+
25 
+ +
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  MeanOfMaximum(int resolution = defaultResolution());
+
33  virtual ~MeanOfMaximum();
+
34 
+
35  virtual std::string className() const;
+
36  virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const;
+
37 
+
38  static Defuzzifier* constructor();
+
39  };
+
40 }
+
41 
+
42 #endif /* FL_MEANOFMAXIMUM_H */
+
43 
+
+
+ + + + diff --git a/docs/html/Minimum_8cpp.html b/docs/html/Minimum_8cpp.html new file mode 100644 index 0000000..60906f6 --- /dev/null +++ b/docs/html/Minimum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/t/Minimum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Minimum.cpp File Reference
+
+
+
#include "fl/norm/t/Minimum.h"
+
+Include dependency graph for Minimum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Minimum_8cpp__incl.map b/docs/html/Minimum_8cpp__incl.map new file mode 100644 index 0000000..0508ced --- /dev/null +++ b/docs/html/Minimum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/Minimum_8cpp__incl.md5 b/docs/html/Minimum_8cpp__incl.md5 new file mode 100644 index 0000000..2a71600 --- /dev/null +++ b/docs/html/Minimum_8cpp__incl.md5 @@ -0,0 +1 @@ +1d37914e84b3abeebc86301af1ddba50 \ No newline at end of file diff --git a/docs/html/Minimum_8cpp__incl.png b/docs/html/Minimum_8cpp__incl.png new file mode 100644 index 0000000..66bad8f Binary files /dev/null and b/docs/html/Minimum_8cpp__incl.png differ diff --git a/docs/html/Minimum_8h.html b/docs/html/Minimum_8h.html new file mode 100644 index 0000000..6982a63 --- /dev/null +++ b/docs/html/Minimum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/t/Minimum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Minimum.h File Reference
+
+
+
#include "fl/norm/TNorm.h"
+
+Include dependency graph for Minimum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Minimum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Minimum_8h__dep__incl.map b/docs/html/Minimum_8h__dep__incl.map new file mode 100644 index 0000000..3a41f5a --- /dev/null +++ b/docs/html/Minimum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Minimum_8h__dep__incl.md5 b/docs/html/Minimum_8h__dep__incl.md5 new file mode 100644 index 0000000..43d05ac --- /dev/null +++ b/docs/html/Minimum_8h__dep__incl.md5 @@ -0,0 +1 @@ +0660fabd032d66703d81dbfe6536c07a \ No newline at end of file diff --git a/docs/html/Minimum_8h__dep__incl.png b/docs/html/Minimum_8h__dep__incl.png new file mode 100644 index 0000000..d6b6bf1 Binary files /dev/null and b/docs/html/Minimum_8h__dep__incl.png differ diff --git a/docs/html/Minimum_8h__incl.map b/docs/html/Minimum_8h__incl.map new file mode 100644 index 0000000..3c17813 --- /dev/null +++ b/docs/html/Minimum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Minimum_8h__incl.md5 b/docs/html/Minimum_8h__incl.md5 new file mode 100644 index 0000000..b8f0c63 --- /dev/null +++ b/docs/html/Minimum_8h__incl.md5 @@ -0,0 +1 @@ +deb34825ecce85004c688263571df504 \ No newline at end of file diff --git a/docs/html/Minimum_8h__incl.png b/docs/html/Minimum_8h__incl.png new file mode 100644 index 0000000..a624d7c Binary files /dev/null and b/docs/html/Minimum_8h__incl.png differ diff --git a/docs/html/Minimum_8h_source.html b/docs/html/Minimum_8h_source.html new file mode 100644 index 0000000..8762c08 --- /dev/null +++ b/docs/html/Minimum_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/norm/t/Minimum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Minimum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Minimum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:46 AM
+
21  */
+
22 
+
23 #ifndef FL_MINIMUM_H
+
24 #define FL_MINIMUM_H
+
25 
+
26 #include "fl/norm/TNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Minimum : public TNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34  static TNorm* constructor();
+
35  };
+
36 
+
37 }
+
38 
+
39 #endif /* FL_MINIMUM_H */
+
40 
+
+
+ + + + diff --git a/docs/html/Norm_8h.html b/docs/html/Norm_8h.html new file mode 100644 index 0000000..bee1683 --- /dev/null +++ b/docs/html/Norm_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/norm/Norm.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Norm.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/Operation.h"
+#include <string>
+
+Include dependency graph for Norm.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Norm
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Norm_8h__dep__incl.map b/docs/html/Norm_8h__dep__incl.map new file mode 100644 index 0000000..d17d1c1 --- /dev/null +++ b/docs/html/Norm_8h__dep__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Norm_8h__dep__incl.md5 b/docs/html/Norm_8h__dep__incl.md5 new file mode 100644 index 0000000..f6a00ce --- /dev/null +++ b/docs/html/Norm_8h__dep__incl.md5 @@ -0,0 +1 @@ +de11de2dec5735a50213e4b1d877e253 \ No newline at end of file diff --git a/docs/html/Norm_8h__dep__incl.png b/docs/html/Norm_8h__dep__incl.png new file mode 100644 index 0000000..bb22de6 Binary files /dev/null and b/docs/html/Norm_8h__dep__incl.png differ diff --git a/docs/html/Norm_8h__incl.map b/docs/html/Norm_8h__incl.map new file mode 100644 index 0000000..ee97026 --- /dev/null +++ b/docs/html/Norm_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Norm_8h__incl.md5 b/docs/html/Norm_8h__incl.md5 new file mode 100644 index 0000000..c7c4585 --- /dev/null +++ b/docs/html/Norm_8h__incl.md5 @@ -0,0 +1 @@ +75572aca1f4e362ddcbda903c4a87718 \ No newline at end of file diff --git a/docs/html/Norm_8h__incl.png b/docs/html/Norm_8h__incl.png new file mode 100644 index 0000000..cde1cd8 Binary files /dev/null and b/docs/html/Norm_8h__incl.png differ diff --git a/docs/html/Norm_8h_source.html b/docs/html/Norm_8h_source.html new file mode 100644 index 0000000..e5a17ae --- /dev/null +++ b/docs/html/Norm_8h_source.html @@ -0,0 +1,170 @@ + + + + + + +fuzzylite: fl/norm/Norm.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Norm.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Norm.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 7 April 2013, 10:06 PM
+
21  */
+
22 
+
23 #ifndef FL_NORM_H
+
24 #define FL_NORM_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/Operation.h"
+
29 
+
30 #include <string>
+
31 
+
32 namespace fl {
+
33 
+
34  class FL_EXPORT Norm {
+
35  public:
+
36 
+
37  Norm() { }
+
38 
+
39  virtual ~Norm() { }
+
40 
+
41  virtual std::string className() const = 0;
+
42  virtual scalar compute(scalar a, scalar b) const = 0;
+
43 
+
44  };
+
45 }
+
46 #endif /* FL_NORM_H */
+
47 
+
+
+ + + + diff --git a/docs/html/NormalizedSum_8cpp.html b/docs/html/NormalizedSum_8cpp.html new file mode 100644 index 0000000..aa68536 --- /dev/null +++ b/docs/html/NormalizedSum_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/norm/s/NormalizedSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
NormalizedSum.cpp File Reference
+
+
+
+Include dependency graph for NormalizedSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/NormalizedSum_8cpp__incl.map b/docs/html/NormalizedSum_8cpp__incl.map new file mode 100644 index 0000000..2160c7e --- /dev/null +++ b/docs/html/NormalizedSum_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/NormalizedSum_8cpp__incl.md5 b/docs/html/NormalizedSum_8cpp__incl.md5 new file mode 100644 index 0000000..612a3b0 --- /dev/null +++ b/docs/html/NormalizedSum_8cpp__incl.md5 @@ -0,0 +1 @@ +4b63696d0f822b6767168c300676e8c3 \ No newline at end of file diff --git a/docs/html/NormalizedSum_8cpp__incl.png b/docs/html/NormalizedSum_8cpp__incl.png new file mode 100644 index 0000000..e767814 Binary files /dev/null and b/docs/html/NormalizedSum_8cpp__incl.png differ diff --git a/docs/html/NormalizedSum_8h.html b/docs/html/NormalizedSum_8h.html new file mode 100644 index 0000000..fe60679 --- /dev/null +++ b/docs/html/NormalizedSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/s/NormalizedSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
NormalizedSum.h File Reference
+
+
+
#include "fl/norm/SNorm.h"
+
+Include dependency graph for NormalizedSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::NormalizedSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/NormalizedSum_8h__dep__incl.map b/docs/html/NormalizedSum_8h__dep__incl.map new file mode 100644 index 0000000..2fc9d76 --- /dev/null +++ b/docs/html/NormalizedSum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/NormalizedSum_8h__dep__incl.md5 b/docs/html/NormalizedSum_8h__dep__incl.md5 new file mode 100644 index 0000000..7960fca --- /dev/null +++ b/docs/html/NormalizedSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +84e762315a80fe9665ccfa7bd88011de \ No newline at end of file diff --git a/docs/html/NormalizedSum_8h__dep__incl.png b/docs/html/NormalizedSum_8h__dep__incl.png new file mode 100644 index 0000000..a1765f2 Binary files /dev/null and b/docs/html/NormalizedSum_8h__dep__incl.png differ diff --git a/docs/html/NormalizedSum_8h__incl.map b/docs/html/NormalizedSum_8h__incl.map new file mode 100644 index 0000000..ad8db05 --- /dev/null +++ b/docs/html/NormalizedSum_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/NormalizedSum_8h__incl.md5 b/docs/html/NormalizedSum_8h__incl.md5 new file mode 100644 index 0000000..d42f6da --- /dev/null +++ b/docs/html/NormalizedSum_8h__incl.md5 @@ -0,0 +1 @@ +874038383316bc7acc9cf48333628c97 \ No newline at end of file diff --git a/docs/html/NormalizedSum_8h__incl.png b/docs/html/NormalizedSum_8h__incl.png new file mode 100644 index 0000000..0b39e2e Binary files /dev/null and b/docs/html/NormalizedSum_8h__incl.png differ diff --git a/docs/html/NormalizedSum_8h_source.html b/docs/html/NormalizedSum_8h_source.html new file mode 100644 index 0000000..503aa2c --- /dev/null +++ b/docs/html/NormalizedSum_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/s/NormalizedSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
NormalizedSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: NormalizedSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 November 2013, 1:10 AM
+
21  */
+
22 
+
23 #ifndef FL_NORMALIZEDSUM_H
+
24 #define FL_NORMALIZEDSUM_H
+
25 
+
26 #include "fl/norm/SNorm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT NormalizedSum : public SNorm {
+
31  public:
+
32  std::string className() const;
+
33  scalar compute(scalar a, scalar b) const;
+
34 
+
35  static SNorm* constructor();
+
36  };
+
37 
+
38 }
+
39 
+
40 #endif /* FL_NORMALIZEDSUM_H */
+
41 
+
+
+ + + + diff --git a/docs/html/Not_8cpp.html b/docs/html/Not_8cpp.html new file mode 100644 index 0000000..5c05292 --- /dev/null +++ b/docs/html/Not_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/hedge/Not.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Not.cpp File Reference
+
+
+
#include "fl/hedge/Not.h"
+
+Include dependency graph for Not.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Not_8cpp__incl.map b/docs/html/Not_8cpp__incl.map new file mode 100644 index 0000000..f6bc1ef --- /dev/null +++ b/docs/html/Not_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Not_8cpp__incl.md5 b/docs/html/Not_8cpp__incl.md5 new file mode 100644 index 0000000..572fe4c --- /dev/null +++ b/docs/html/Not_8cpp__incl.md5 @@ -0,0 +1 @@ +3cf12c7c5ee49d8ea14f1c9d91f40245 \ No newline at end of file diff --git a/docs/html/Not_8cpp__incl.png b/docs/html/Not_8cpp__incl.png new file mode 100644 index 0000000..3a9b6e1 Binary files /dev/null and b/docs/html/Not_8cpp__incl.png differ diff --git a/docs/html/Not_8h.html b/docs/html/Not_8h.html new file mode 100644 index 0000000..2415695 --- /dev/null +++ b/docs/html/Not_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Not.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Not.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Not.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Not
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Not_8h__dep__incl.map b/docs/html/Not_8h__dep__incl.map new file mode 100644 index 0000000..17be1c9 --- /dev/null +++ b/docs/html/Not_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Not_8h__dep__incl.md5 b/docs/html/Not_8h__dep__incl.md5 new file mode 100644 index 0000000..e49e4cd --- /dev/null +++ b/docs/html/Not_8h__dep__incl.md5 @@ -0,0 +1 @@ +3910ee7d52ac14d1664190ad9d2f1e56 \ No newline at end of file diff --git a/docs/html/Not_8h__dep__incl.png b/docs/html/Not_8h__dep__incl.png new file mode 100644 index 0000000..9b9845e Binary files /dev/null and b/docs/html/Not_8h__dep__incl.png differ diff --git a/docs/html/Not_8h__incl.map b/docs/html/Not_8h__incl.map new file mode 100644 index 0000000..f839c4b --- /dev/null +++ b/docs/html/Not_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Not_8h__incl.md5 b/docs/html/Not_8h__incl.md5 new file mode 100644 index 0000000..c08b1c6 --- /dev/null +++ b/docs/html/Not_8h__incl.md5 @@ -0,0 +1 @@ +f1396a56ca1128643d95d7b387f9c2d1 \ No newline at end of file diff --git a/docs/html/Not_8h__incl.png b/docs/html/Not_8h__incl.png new file mode 100644 index 0000000..47652c0 Binary files /dev/null and b/docs/html/Not_8h__incl.png differ diff --git a/docs/html/Not_8h_source.html b/docs/html/Not_8h_source.html new file mode 100644 index 0000000..47ae08a --- /dev/null +++ b/docs/html/Not_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Not.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Not.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Not.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_NOT_H
+
24 #define FL_NOT_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Not : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_NOT_H */
+
+
+ + + + diff --git a/docs/html/Operation_8cpp.html b/docs/html/Operation_8cpp.html new file mode 100644 index 0000000..d5196a4 --- /dev/null +++ b/docs/html/Operation_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/Operation.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Operation.cpp File Reference
+
+
+
#include "fl/Operation.h"
+#include <algorithm>
+#include <cmath>
+#include <iomanip>
+#include <cstdarg>
+#include <cctype>
+
+Include dependency graph for Operation.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Operation_8cpp__incl.map b/docs/html/Operation_8cpp__incl.map new file mode 100644 index 0000000..b7ec7d7 --- /dev/null +++ b/docs/html/Operation_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Operation_8cpp__incl.md5 b/docs/html/Operation_8cpp__incl.md5 new file mode 100644 index 0000000..8a88376 --- /dev/null +++ b/docs/html/Operation_8cpp__incl.md5 @@ -0,0 +1 @@ +35953fc4a050dc720c9967dd94019fc7 \ No newline at end of file diff --git a/docs/html/Operation_8cpp__incl.png b/docs/html/Operation_8cpp__incl.png new file mode 100644 index 0000000..278231f Binary files /dev/null and b/docs/html/Operation_8cpp__incl.png differ diff --git a/docs/html/Operation_8h.html b/docs/html/Operation_8h.html new file mode 100644 index 0000000..3953bf7 --- /dev/null +++ b/docs/html/Operation_8h.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/Operation.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Operation.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/Exception.h"
+#include <string>
+#include <vector>
+#include <limits>
+
+Include dependency graph for Operation.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Operation
 
+ + + +

+Namespaces

namespace  fl
 
+ + + +

+Typedefs

typedef Operation fl::Op
 
+
+
+ + + + diff --git a/docs/html/Operation_8h.js b/docs/html/Operation_8h.js new file mode 100644 index 0000000..9b93dd8 --- /dev/null +++ b/docs/html/Operation_8h.js @@ -0,0 +1,5 @@ +var Operation_8h = +[ + [ "Operation", "classfl_1_1Operation.html", "classfl_1_1Operation" ], + [ "Op", "Operation_8h.html#a204e02abcb4377f336a7b2af450992ac", null ] +]; \ No newline at end of file diff --git a/docs/html/Operation_8h__dep__incl.map b/docs/html/Operation_8h__dep__incl.map new file mode 100644 index 0000000..e4076a8 --- /dev/null +++ b/docs/html/Operation_8h__dep__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Operation_8h__dep__incl.md5 b/docs/html/Operation_8h__dep__incl.md5 new file mode 100644 index 0000000..e482612 --- /dev/null +++ b/docs/html/Operation_8h__dep__incl.md5 @@ -0,0 +1 @@ +1d3f042fb46bcdd56738a56fc4740b39 \ No newline at end of file diff --git a/docs/html/Operation_8h__dep__incl.png b/docs/html/Operation_8h__dep__incl.png new file mode 100644 index 0000000..d8eec0c Binary files /dev/null and b/docs/html/Operation_8h__dep__incl.png differ diff --git a/docs/html/Operation_8h__incl.map b/docs/html/Operation_8h__incl.map new file mode 100644 index 0000000..a0b494a --- /dev/null +++ b/docs/html/Operation_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Operation_8h__incl.md5 b/docs/html/Operation_8h__incl.md5 new file mode 100644 index 0000000..154d46a --- /dev/null +++ b/docs/html/Operation_8h__incl.md5 @@ -0,0 +1 @@ +c61f84fde8425c71384a79dde00d5232 \ No newline at end of file diff --git a/docs/html/Operation_8h__incl.png b/docs/html/Operation_8h__incl.png new file mode 100644 index 0000000..7577527 Binary files /dev/null and b/docs/html/Operation_8h__incl.png differ diff --git a/docs/html/Operation_8h_source.html b/docs/html/Operation_8h_source.html new file mode 100644 index 0000000..416b489 --- /dev/null +++ b/docs/html/Operation_8h_source.html @@ -0,0 +1,241 @@ + + + + + + +fuzzylite: fl/Operation.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Operation.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Operation.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 1 February 2013, 6:10 PM
+
21  */
+
22 
+
23 #ifndef FL_OPERATION_H
+
24 #define FL_OPERATION_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/Exception.h"
+
29 
+
30 #include <string>
+
31 #include <vector>
+
32 #include <limits>
+
33 
+
34 namespace fl {
+
35 
+ +
37  public:
+
38  template <typename T>
+
39  static T min(T a, T b);
+
40 
+
41  template <typename T>
+
42  static T max(T a, T b);
+
43 
+
44  template <typename T>
+
45  static bool isInf(T x);
+
46 
+
47  template <typename T>
+
48  static bool isNan(T x);
+
49 
+
50  //Is less than
+
51 
+
52  static bool isLt(scalar a, scalar b, scalar macheps = fuzzylite::macheps());
+
53 
+
54  static bool isLE(scalar a, scalar b, scalar macheps = fuzzylite::macheps());
+
55 
+
56  //Is equal
+
57 
+
58  static bool isEq(scalar a, scalar b, scalar macheps = fuzzylite::macheps());
+
59 
+
60  //Is greater than
+
61 
+
62  static bool isGt(scalar a, scalar b, scalar macheps = fuzzylite::macheps());
+
63 
+
64  static bool isGE(scalar a, scalar b, scalar macheps = fuzzylite::macheps());
+
65 
+
66  static scalar scale(scalar x, scalar fromMin, scalar fromMax,
+
67  scalar toMin, scalar toMax);
+
68 
+
69  static scalar add(scalar a, scalar b);
+
70  static scalar subtract(scalar a, scalar b);
+
71  static scalar multiply(scalar a, scalar b);
+
72  static scalar divide(scalar a, scalar b);
+
73  static scalar modulo(scalar a, scalar b);
+
74  static scalar logicalAnd(scalar a, scalar b);
+
75  static scalar logicalOr(scalar a, scalar b);
+
76  static scalar negate(scalar a);
+
77 
+
78  static bool increment(std::vector<int>& x, std::vector<int>& min, std::vector<int>& max);
+
79  static bool increment(std::vector<int>& x, int position, std::vector<int>& min, std::vector<int>& max);
+
80 
+
81  static std::string makeValidId(const std::string& name);
+
82 
+
83  static int isValidForName(int character);
+
84 
+
85  static std::string findReplace(const std::string& str, const std::string& find,
+
86  const std::string& replace, bool replaceAll = true);
+
87 
+
88  static std::vector<std::string> split(const std::string& str,
+
89  const std::string& delimiter = " ", bool ignoreEmpty = true);
+
90 
+
91  static std::string trim(const std::string& text);
+
92 
+
93  static std::string format(const std::string& text, int matchesChar(int),
+
94  const std::string& replacement = "");
+
95 
+
96  static scalar toScalar(const std::string& x, bool quiet = false,
+
97  scalar alternative = fl::nan) throw (fl::Exception);
+
98 
+
99  static bool isNumeric(const std::string& x);
+
100 
+
101  static std::string repeat(const std::string& x, int times,
+
102  const std::string& sep = "");
+
103 
+
104  template <typename T>
+
105  static std::string str(T x, int decimals = fuzzylite::decimals());
+
106 
+
107  template <typename T>
+
108  static std::string join(const std::vector<T>& x,
+
109  const std::string& separator = ", ");
+
110 
+
111  template <typename T>
+
112  static std::string join(int items, const std::string& separator, T first, ...);
+
113  };
+
114 
+
115  typedef Operation Op;
+
116 }
+
117 #endif /* FL_OPERATION_H */
+
118 
+
+
+ + + + diff --git a/docs/html/OutputVariable_8cpp.html b/docs/html/OutputVariable_8cpp.html new file mode 100644 index 0000000..975467e --- /dev/null +++ b/docs/html/OutputVariable_8cpp.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: src/variable/OutputVariable.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
OutputVariable.cpp File Reference
+
+
+
#include "fl/variable/OutputVariable.h"
+#include "fl/term/Accumulated.h"
+#include "fl/defuzzifier/Defuzzifier.h"
+#include "fl/imex/FllExporter.h"
+#include <sstream>
+
+Include dependency graph for OutputVariable.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/OutputVariable_8cpp__incl.map b/docs/html/OutputVariable_8cpp__incl.map new file mode 100644 index 0000000..a4b2be4 --- /dev/null +++ b/docs/html/OutputVariable_8cpp__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/OutputVariable_8cpp__incl.md5 b/docs/html/OutputVariable_8cpp__incl.md5 new file mode 100644 index 0000000..65de385 --- /dev/null +++ b/docs/html/OutputVariable_8cpp__incl.md5 @@ -0,0 +1 @@ +d6c4c3b5bc4d9e8d8e7b9db2638b1893 \ No newline at end of file diff --git a/docs/html/OutputVariable_8cpp__incl.png b/docs/html/OutputVariable_8cpp__incl.png new file mode 100644 index 0000000..95fcc7d Binary files /dev/null and b/docs/html/OutputVariable_8cpp__incl.png differ diff --git a/docs/html/OutputVariable_8h.html b/docs/html/OutputVariable_8h.html new file mode 100644 index 0000000..eb4ca70 --- /dev/null +++ b/docs/html/OutputVariable_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/variable/OutputVariable.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
OutputVariable.h File Reference
+
+
+
#include "fl/variable/Variable.h"
+#include <limits>
+
+Include dependency graph for OutputVariable.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::OutputVariable
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/OutputVariable_8h__dep__incl.map b/docs/html/OutputVariable_8h__dep__incl.map new file mode 100644 index 0000000..68fb143 --- /dev/null +++ b/docs/html/OutputVariable_8h__dep__incl.map @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/docs/html/OutputVariable_8h__dep__incl.md5 b/docs/html/OutputVariable_8h__dep__incl.md5 new file mode 100644 index 0000000..162d94c --- /dev/null +++ b/docs/html/OutputVariable_8h__dep__incl.md5 @@ -0,0 +1 @@ +4f6ec1fba3879d6af9101a22d80d2978 \ No newline at end of file diff --git a/docs/html/OutputVariable_8h__dep__incl.png b/docs/html/OutputVariable_8h__dep__incl.png new file mode 100644 index 0000000..653b4e5 Binary files /dev/null and b/docs/html/OutputVariable_8h__dep__incl.png differ diff --git a/docs/html/OutputVariable_8h__incl.map b/docs/html/OutputVariable_8h__incl.map new file mode 100644 index 0000000..e01e8f2 --- /dev/null +++ b/docs/html/OutputVariable_8h__incl.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/OutputVariable_8h__incl.md5 b/docs/html/OutputVariable_8h__incl.md5 new file mode 100644 index 0000000..bd9d090 --- /dev/null +++ b/docs/html/OutputVariable_8h__incl.md5 @@ -0,0 +1 @@ +aa80681782dc4372215e4c24e4057b53 \ No newline at end of file diff --git a/docs/html/OutputVariable_8h__incl.png b/docs/html/OutputVariable_8h__incl.png new file mode 100644 index 0000000..f82ec11 Binary files /dev/null and b/docs/html/OutputVariable_8h__incl.png differ diff --git a/docs/html/OutputVariable_8h_source.html b/docs/html/OutputVariable_8h_source.html new file mode 100644 index 0000000..e8de03f --- /dev/null +++ b/docs/html/OutputVariable_8h_source.html @@ -0,0 +1,199 @@ + + + + + + +fuzzylite: fl/variable/OutputVariable.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
OutputVariable.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * OutputVariable.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_OUTPUTVARIABLE_H
+
24 #define FL_OUTPUTVARIABLE_H
+
25 
+
26 #include "fl/variable/Variable.h"
+
27 
+
28 #include <limits>
+
29 
+
30 namespace fl {
+
31  class Accumulated;
+
32  class Defuzzifier;
+
33 
+ +
35  protected:
+ + + + + + +
42 
+
43  public:
+
44  OutputVariable(const std::string& name = "",
+
45  scalar minimum = -fl::inf, scalar maximum = fl::inf);
+
46  virtual ~OutputVariable();
+
47 
+
48  virtual Accumulated* fuzzyOutput() const;
+
49 
+
50  virtual void setMinimum(scalar minimum);
+
51  virtual void setMaximum(scalar maximum);
+
52 
+
53  virtual void setDefuzzifier(Defuzzifier* defuzzifier);
+
54  virtual Defuzzifier* getDefuzzifier() const;
+
55 
+
56  virtual void setDefaultValue(scalar defaultValue);
+
57  virtual scalar getDefaultValue() const;
+
58 
+
59  virtual void setLastValidOutput(scalar defuzzifiedValue);
+
60  virtual scalar getLastValidOutput() const;
+
61 
+
62  virtual void setLockOutputRange(bool lockOutputRange);
+
63  virtual bool isLockingOutputRange() const;
+
64 
+
65  virtual void setLockValidOutput(bool lockValidOutput);
+
66  virtual bool isLockingValidOutput() const;
+
67 
+
68  virtual scalar defuzzify();
+
69  virtual scalar defuzzifyNoLocks() const;
+
70 
+
71  virtual std::string toString() const;
+
72 
+
73  };
+
74 
+
75 }
+
76 #endif /* FL_OUTPUTVARIABLE_H */
+
+
+ + + + diff --git a/docs/html/PiShape_8cpp.html b/docs/html/PiShape_8cpp.html new file mode 100644 index 0000000..c6b82f0 --- /dev/null +++ b/docs/html/PiShape_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/PiShape.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PiShape.cpp File Reference
+
+
+
#include "fl/term/PiShape.h"
+
+Include dependency graph for PiShape.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/PiShape_8cpp__incl.map b/docs/html/PiShape_8cpp__incl.map new file mode 100644 index 0000000..cdeb06e --- /dev/null +++ b/docs/html/PiShape_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/PiShape_8cpp__incl.md5 b/docs/html/PiShape_8cpp__incl.md5 new file mode 100644 index 0000000..5e6515d --- /dev/null +++ b/docs/html/PiShape_8cpp__incl.md5 @@ -0,0 +1 @@ +13d9f93383b834fa2d96f4cc9d2cf3ec \ No newline at end of file diff --git a/docs/html/PiShape_8cpp__incl.png b/docs/html/PiShape_8cpp__incl.png new file mode 100644 index 0000000..6079994 Binary files /dev/null and b/docs/html/PiShape_8cpp__incl.png differ diff --git a/docs/html/PiShape_8h.html b/docs/html/PiShape_8h.html new file mode 100644 index 0000000..cedb923 --- /dev/null +++ b/docs/html/PiShape_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/PiShape.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PiShape.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for PiShape.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::PiShape
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/PiShape_8h__dep__incl.map b/docs/html/PiShape_8h__dep__incl.map new file mode 100644 index 0000000..47e9037 --- /dev/null +++ b/docs/html/PiShape_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/PiShape_8h__dep__incl.md5 b/docs/html/PiShape_8h__dep__incl.md5 new file mode 100644 index 0000000..f7db9cb --- /dev/null +++ b/docs/html/PiShape_8h__dep__incl.md5 @@ -0,0 +1 @@ +34e48bc2a0acd6194b4957de05ad6612 \ No newline at end of file diff --git a/docs/html/PiShape_8h__dep__incl.png b/docs/html/PiShape_8h__dep__incl.png new file mode 100644 index 0000000..fa120c6 Binary files /dev/null and b/docs/html/PiShape_8h__dep__incl.png differ diff --git a/docs/html/PiShape_8h__incl.map b/docs/html/PiShape_8h__incl.map new file mode 100644 index 0000000..4c534b4 --- /dev/null +++ b/docs/html/PiShape_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/PiShape_8h__incl.md5 b/docs/html/PiShape_8h__incl.md5 new file mode 100644 index 0000000..cddec85 --- /dev/null +++ b/docs/html/PiShape_8h__incl.md5 @@ -0,0 +1 @@ +2f61d062e782cb5085ea65cd0e4dc117 \ No newline at end of file diff --git a/docs/html/PiShape_8h__incl.png b/docs/html/PiShape_8h__incl.png new file mode 100644 index 0000000..c8845c3 Binary files /dev/null and b/docs/html/PiShape_8h__incl.png differ diff --git a/docs/html/PiShape_8h_source.html b/docs/html/PiShape_8h_source.html new file mode 100644 index 0000000..ea3ceb0 --- /dev/null +++ b/docs/html/PiShape_8h_source.html @@ -0,0 +1,193 @@ + + + + + + +fuzzylite: fl/term/PiShape.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PiShape.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: PiShape.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 5:15 PM
+
21  */
+
22 
+
23 #ifndef FL_PISHAPE_H
+
24 #define FL_PISHAPE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT PiShape : public Term {
+
31  protected:
+ + + + +
36 
+
37  public:
+
38  PiShape(const std::string& name = "",
+
39  scalar bottomLeft = fl::nan,
+
40  scalar topLeft = fl::nan,
+
41  scalar topRight = fl::nan,
+
42  scalar bottomRight = fl::nan);
+
43 
+
44  virtual ~PiShape();
+
45 
+
46  virtual std::string className() const;
+
47  virtual std::string parameters() const;
+
48  virtual void configure(const std::string& parameters);
+
49 
+
50  virtual scalar membership(scalar x) const;
+
51 
+
52  virtual void setBottomLeft(scalar a);
+
53  virtual scalar getBottomLeft() const;
+
54 
+
55  virtual void setTopLeft(scalar b);
+
56  virtual scalar getTopLeft() const;
+
57 
+
58  virtual void setTopRight(scalar d);
+
59  virtual scalar getTopRight() const;
+
60 
+
61  virtual void setBottomRight(scalar c);
+
62  virtual scalar getBottomRight() const;
+
63 
+
64  virtual PiShape* copy() const;
+
65  static Term* constructor();
+
66  };
+
67 }
+
68 
+
69 #endif /* FL_PISHAPE_H */
+
70 
+
+
+ + + + diff --git a/docs/html/Ramp_8cpp.html b/docs/html/Ramp_8cpp.html new file mode 100644 index 0000000..49d50b0 --- /dev/null +++ b/docs/html/Ramp_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/Ramp.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Ramp.cpp File Reference
+
+
+
#include "fl/term/Ramp.h"
+
+Include dependency graph for Ramp.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Ramp_8cpp__incl.map b/docs/html/Ramp_8cpp__incl.map new file mode 100644 index 0000000..2d01194 --- /dev/null +++ b/docs/html/Ramp_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Ramp_8cpp__incl.md5 b/docs/html/Ramp_8cpp__incl.md5 new file mode 100644 index 0000000..7c9cadf --- /dev/null +++ b/docs/html/Ramp_8cpp__incl.md5 @@ -0,0 +1 @@ +26d89af0ca935b8253bf89708aa3eaa5 \ No newline at end of file diff --git a/docs/html/Ramp_8cpp__incl.png b/docs/html/Ramp_8cpp__incl.png new file mode 100644 index 0000000..32d739e Binary files /dev/null and b/docs/html/Ramp_8cpp__incl.png differ diff --git a/docs/html/Ramp_8h.html b/docs/html/Ramp_8h.html new file mode 100644 index 0000000..083d7ef --- /dev/null +++ b/docs/html/Ramp_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Ramp.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Ramp.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Ramp.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Ramp
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Ramp_8h__dep__incl.map b/docs/html/Ramp_8h__dep__incl.map new file mode 100644 index 0000000..ef86c44 --- /dev/null +++ b/docs/html/Ramp_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Ramp_8h__dep__incl.md5 b/docs/html/Ramp_8h__dep__incl.md5 new file mode 100644 index 0000000..ff8d18c --- /dev/null +++ b/docs/html/Ramp_8h__dep__incl.md5 @@ -0,0 +1 @@ +dc7d825c00094836c31dd2121678ee08 \ No newline at end of file diff --git a/docs/html/Ramp_8h__dep__incl.png b/docs/html/Ramp_8h__dep__incl.png new file mode 100644 index 0000000..01a2e2e Binary files /dev/null and b/docs/html/Ramp_8h__dep__incl.png differ diff --git a/docs/html/Ramp_8h__incl.map b/docs/html/Ramp_8h__incl.map new file mode 100644 index 0000000..8e67924 --- /dev/null +++ b/docs/html/Ramp_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Ramp_8h__incl.md5 b/docs/html/Ramp_8h__incl.md5 new file mode 100644 index 0000000..47ff1e1 --- /dev/null +++ b/docs/html/Ramp_8h__incl.md5 @@ -0,0 +1 @@ +0b4a726635b3ab33f5b59d72507207b1 \ No newline at end of file diff --git a/docs/html/Ramp_8h__incl.png b/docs/html/Ramp_8h__incl.png new file mode 100644 index 0000000..96a89bd Binary files /dev/null and b/docs/html/Ramp_8h__incl.png differ diff --git a/docs/html/Ramp_8h_source.html b/docs/html/Ramp_8h_source.html new file mode 100644 index 0000000..3840863 --- /dev/null +++ b/docs/html/Ramp_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/term/Ramp.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Ramp.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: Ramp.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 4:27 PM
+
21  */
+
22 
+
23 #ifndef FL_RAMP_H
+
24 #define FL_RAMP_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Ramp : public Term {
+
31  protected:
+
32  scalar _start, _end;
+
33 
+
34  public:
+
35  Ramp(const std::string& name = "",
+
36  scalar start = -fl::inf,
+
37  scalar end = fl::inf);
+
38  virtual ~Ramp();
+
39 
+
40  virtual std::string className() const;
+
41  virtual std::string parameters() const;
+
42  virtual void configure(const std::string& parameters);
+
43 
+
44  virtual scalar membership(scalar x) const;
+
45 
+
46  virtual void setStart(scalar start);
+
47  virtual scalar getStart() const;
+
48 
+
49  virtual void setEnd(scalar end);
+
50  virtual scalar getEnd() const;
+
51 
+
52  virtual Ramp* copy() const;
+
53 
+
54  static Term* constructor();
+
55  };
+
56 }
+
57 #endif /* FL_RAMP_H */
+
58 
+
+
+ + + + diff --git a/docs/html/Rectangle_8cpp.html b/docs/html/Rectangle_8cpp.html new file mode 100644 index 0000000..92c78c4 --- /dev/null +++ b/docs/html/Rectangle_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Rectangle.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Rectangle.cpp File Reference
+
+
+
#include "fl/term/Rectangle.h"
+#include <sstream>
+
+Include dependency graph for Rectangle.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Rectangle_8cpp__incl.map b/docs/html/Rectangle_8cpp__incl.map new file mode 100644 index 0000000..f47d563 --- /dev/null +++ b/docs/html/Rectangle_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Rectangle_8cpp__incl.md5 b/docs/html/Rectangle_8cpp__incl.md5 new file mode 100644 index 0000000..d341a1e --- /dev/null +++ b/docs/html/Rectangle_8cpp__incl.md5 @@ -0,0 +1 @@ +96ba976f159f226523f9cd244f499ec8 \ No newline at end of file diff --git a/docs/html/Rectangle_8cpp__incl.png b/docs/html/Rectangle_8cpp__incl.png new file mode 100644 index 0000000..de7f7ca Binary files /dev/null and b/docs/html/Rectangle_8cpp__incl.png differ diff --git a/docs/html/Rectangle_8h.html b/docs/html/Rectangle_8h.html new file mode 100644 index 0000000..faaf58a --- /dev/null +++ b/docs/html/Rectangle_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Rectangle.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Rectangle.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Rectangle.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Rectangle
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Rectangle_8h__dep__incl.map b/docs/html/Rectangle_8h__dep__incl.map new file mode 100644 index 0000000..2fcca1a --- /dev/null +++ b/docs/html/Rectangle_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Rectangle_8h__dep__incl.md5 b/docs/html/Rectangle_8h__dep__incl.md5 new file mode 100644 index 0000000..931a2ef --- /dev/null +++ b/docs/html/Rectangle_8h__dep__incl.md5 @@ -0,0 +1 @@ +9322e3dd04a667873a8c608fca1b2fc0 \ No newline at end of file diff --git a/docs/html/Rectangle_8h__dep__incl.png b/docs/html/Rectangle_8h__dep__incl.png new file mode 100644 index 0000000..038c1b4 Binary files /dev/null and b/docs/html/Rectangle_8h__dep__incl.png differ diff --git a/docs/html/Rectangle_8h__incl.map b/docs/html/Rectangle_8h__incl.map new file mode 100644 index 0000000..881074a --- /dev/null +++ b/docs/html/Rectangle_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Rectangle_8h__incl.md5 b/docs/html/Rectangle_8h__incl.md5 new file mode 100644 index 0000000..1efbe3a --- /dev/null +++ b/docs/html/Rectangle_8h__incl.md5 @@ -0,0 +1 @@ +a11f9ad56fd350d66f2e84781c4c29ff \ No newline at end of file diff --git a/docs/html/Rectangle_8h__incl.png b/docs/html/Rectangle_8h__incl.png new file mode 100644 index 0000000..bcfd23e Binary files /dev/null and b/docs/html/Rectangle_8h__incl.png differ diff --git a/docs/html/Rectangle_8h_source.html b/docs/html/Rectangle_8h_source.html new file mode 100644 index 0000000..6d9aef5 --- /dev/null +++ b/docs/html/Rectangle_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/term/Rectangle.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Rectangle.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Rectangle.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_RECTANGLE_H
+
24 #define FL_RECTANGLE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Rectangle : public Term {
+
31  protected:
+
32  scalar _start, _end;
+
33 
+
34  public:
+
35  Rectangle(const std::string& name = "",
+
36  scalar start = -fl::inf,
+
37  scalar end = fl::inf);
+
38  virtual ~Rectangle();
+
39 
+
40  virtual std::string className() const;
+
41  virtual std::string parameters() const;
+
42  virtual void configure(const std::string& parameters);
+
43 
+
44  virtual scalar membership(scalar x) const;
+
45 
+
46  virtual void setStart(scalar start);
+
47  virtual scalar getStart() const;
+
48 
+
49  virtual void setEnd(scalar end);
+
50  virtual scalar getEnd() const;
+
51 
+
52  virtual Rectangle* copy() const;
+
53 
+
54  static Term* constructor();
+
55  };
+
56 
+
57 }
+
58 #endif /* FL_RECTANGLE_H */
+
+
+ + + + diff --git a/docs/html/RuleBlock_8cpp.html b/docs/html/RuleBlock_8cpp.html new file mode 100644 index 0000000..1578d79 --- /dev/null +++ b/docs/html/RuleBlock_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/rule/RuleBlock.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
RuleBlock.cpp File Reference
+
+
+
#include "fl/rule/RuleBlock.h"
+#include "fl/rule/Rule.h"
+#include "fl/norm/TNorm.h"
+#include "fl/norm/SNorm.h"
+#include "fl/imex/FllExporter.h"
+#include <sstream>
+
+Include dependency graph for RuleBlock.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/RuleBlock_8cpp__incl.map b/docs/html/RuleBlock_8cpp__incl.map new file mode 100644 index 0000000..c67f02e --- /dev/null +++ b/docs/html/RuleBlock_8cpp__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/RuleBlock_8cpp__incl.md5 b/docs/html/RuleBlock_8cpp__incl.md5 new file mode 100644 index 0000000..93b3476 --- /dev/null +++ b/docs/html/RuleBlock_8cpp__incl.md5 @@ -0,0 +1 @@ +1c03305a1b71b58bd3f3ee090ac45471 \ No newline at end of file diff --git a/docs/html/RuleBlock_8cpp__incl.png b/docs/html/RuleBlock_8cpp__incl.png new file mode 100644 index 0000000..61880ef Binary files /dev/null and b/docs/html/RuleBlock_8cpp__incl.png differ diff --git a/docs/html/RuleBlock_8h.html b/docs/html/RuleBlock_8h.html new file mode 100644 index 0000000..331d9e3 --- /dev/null +++ b/docs/html/RuleBlock_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/rule/RuleBlock.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
RuleBlock.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <vector>
+#include <string>
+
+Include dependency graph for RuleBlock.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::RuleBlock
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/RuleBlock_8h__dep__incl.map b/docs/html/RuleBlock_8h__dep__incl.map new file mode 100644 index 0000000..25b5f6c --- /dev/null +++ b/docs/html/RuleBlock_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/RuleBlock_8h__dep__incl.md5 b/docs/html/RuleBlock_8h__dep__incl.md5 new file mode 100644 index 0000000..2dfa19b --- /dev/null +++ b/docs/html/RuleBlock_8h__dep__incl.md5 @@ -0,0 +1 @@ +fd7161a26693a1d9c76554f462bccbd2 \ No newline at end of file diff --git a/docs/html/RuleBlock_8h__dep__incl.png b/docs/html/RuleBlock_8h__dep__incl.png new file mode 100644 index 0000000..fc99519 Binary files /dev/null and b/docs/html/RuleBlock_8h__dep__incl.png differ diff --git a/docs/html/RuleBlock_8h__incl.map b/docs/html/RuleBlock_8h__incl.map new file mode 100644 index 0000000..fd9c78d --- /dev/null +++ b/docs/html/RuleBlock_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/RuleBlock_8h__incl.md5 b/docs/html/RuleBlock_8h__incl.md5 new file mode 100644 index 0000000..75b3c24 --- /dev/null +++ b/docs/html/RuleBlock_8h__incl.md5 @@ -0,0 +1 @@ +c2b4dbba968be6a5cc9f41fe3bd3b64f \ No newline at end of file diff --git a/docs/html/RuleBlock_8h__incl.png b/docs/html/RuleBlock_8h__incl.png new file mode 100644 index 0000000..0625c95 Binary files /dev/null and b/docs/html/RuleBlock_8h__incl.png differ diff --git a/docs/html/RuleBlock_8h_source.html b/docs/html/RuleBlock_8h_source.html new file mode 100644 index 0000000..45d515c --- /dev/null +++ b/docs/html/RuleBlock_8h_source.html @@ -0,0 +1,203 @@ + + + + + + +fuzzylite: fl/rule/RuleBlock.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
RuleBlock.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * RuleBlock.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_RULEBLOCK_H
+
24 #define FL_RULEBLOCK_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <vector>
+
29 #include <string>
+
30 
+
31 namespace fl {
+
32 
+
33  class Rule;
+
34  class TNorm;
+
35  class SNorm;
+
36 
+ +
38  protected:
+
39  std::vector<Rule*> _rules;
+
40  std::string _name;
+ + + +
44  bool _enabled;
+
45  public:
+
46  RuleBlock(const std::string& name = "");
+
47  virtual ~RuleBlock();
+
48 
+
49  virtual void activate();
+
50 
+
51  virtual void setName(std::string name);
+
52  virtual std::string getName() const;
+
53 
+
54  virtual void setConjunction(const TNorm* conjunction);
+
55  virtual const TNorm* getConjunction() const;
+
56 
+
57  virtual void setDisjunction(const SNorm* disjunction);
+
58  virtual const SNorm* getDisjunction() const;
+
59 
+
60  virtual void setActivation(const TNorm* activation);
+
61  virtual const TNorm* getActivation() const;
+
62 
+
63  virtual void setEnabled(bool enabled);
+
64  virtual bool isEnabled() const;
+
65 
+
66  virtual std::string toString() const;
+
67 
+
71  virtual void addRule(Rule* rule);
+
72  virtual void insertRule(Rule* rule, int index);
+
73  virtual Rule* getRule(int index) const;
+
74  virtual Rule* removeRule(int index);
+
75  virtual int numberOfRules() const;
+
76  virtual const std::vector<Rule*>& rules() const;
+
77 
+
78 
+
79 
+
80  };
+
81 
+
82 }
+
83 #endif /* RULEBLOCK_H */
+
+
+ + + + diff --git a/docs/html/Rule_8cpp.html b/docs/html/Rule_8cpp.html new file mode 100644 index 0000000..31c11c7 --- /dev/null +++ b/docs/html/Rule_8cpp.html @@ -0,0 +1,145 @@ + + + + + + +fuzzylite: src/rule/Rule.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Rule.cpp File Reference
+
+
+
#include "fl/rule/Rule.h"
+#include "fl/rule/Antecedent.h"
+#include "fl/rule/Consequent.h"
+#include "fl/norm/Norm.h"
+#include "fl/Exception.h"
+#include <sstream>
+#include <vector>
+
+Include dependency graph for Rule.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Rule_8cpp__incl.map b/docs/html/Rule_8cpp__incl.map new file mode 100644 index 0000000..76da469 --- /dev/null +++ b/docs/html/Rule_8cpp__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/Rule_8cpp__incl.md5 b/docs/html/Rule_8cpp__incl.md5 new file mode 100644 index 0000000..ed61232 --- /dev/null +++ b/docs/html/Rule_8cpp__incl.md5 @@ -0,0 +1 @@ +3a670d040755bdf1c4a220e26a32f473 \ No newline at end of file diff --git a/docs/html/Rule_8cpp__incl.png b/docs/html/Rule_8cpp__incl.png new file mode 100644 index 0000000..c56cab0 Binary files /dev/null and b/docs/html/Rule_8cpp__incl.png differ diff --git a/docs/html/Rule_8h.html b/docs/html/Rule_8h.html new file mode 100644 index 0000000..424d6da --- /dev/null +++ b/docs/html/Rule_8h.html @@ -0,0 +1,155 @@ + + + + + + +fuzzylite: fl/rule/Rule.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Rule.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include <string>
+
+Include dependency graph for Rule.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Rule
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Rule_8h__dep__incl.map b/docs/html/Rule_8h__dep__incl.map new file mode 100644 index 0000000..0748e33 --- /dev/null +++ b/docs/html/Rule_8h__dep__incl.map @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Rule_8h__dep__incl.md5 b/docs/html/Rule_8h__dep__incl.md5 new file mode 100644 index 0000000..0afcf82 --- /dev/null +++ b/docs/html/Rule_8h__dep__incl.md5 @@ -0,0 +1 @@ +8c544a24952f09fd8e9291d1356ba7ab \ No newline at end of file diff --git a/docs/html/Rule_8h__dep__incl.png b/docs/html/Rule_8h__dep__incl.png new file mode 100644 index 0000000..9896a64 Binary files /dev/null and b/docs/html/Rule_8h__dep__incl.png differ diff --git a/docs/html/Rule_8h__incl.map b/docs/html/Rule_8h__incl.map new file mode 100644 index 0000000..20e4403 --- /dev/null +++ b/docs/html/Rule_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Rule_8h__incl.md5 b/docs/html/Rule_8h__incl.md5 new file mode 100644 index 0000000..2621168 --- /dev/null +++ b/docs/html/Rule_8h__incl.md5 @@ -0,0 +1 @@ +aafabdf458b036251276a67878192355 \ No newline at end of file diff --git a/docs/html/Rule_8h__incl.png b/docs/html/Rule_8h__incl.png new file mode 100644 index 0000000..33f9d04 Binary files /dev/null and b/docs/html/Rule_8h__incl.png differ diff --git a/docs/html/Rule_8h_source.html b/docs/html/Rule_8h_source.html new file mode 100644 index 0000000..55270cc --- /dev/null +++ b/docs/html/Rule_8h_source.html @@ -0,0 +1,211 @@ + + + + + + +fuzzylite: fl/rule/Rule.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Rule.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Rule.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_RULE_H
+
24 #define FL_RULE_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include <string>
+
29 
+
30 namespace fl {
+
31  class Engine;
+
32  class Antecedent;
+
33  class Consequent;
+
34  class TNorm;
+
35  class SNorm;
+
36 
+
37  class FL_EXPORT Rule {
+
38  protected:
+ +
40  std::string _text;
+ + +
43 
+
44  virtual void setText(const std::string& text);
+
45  public:
+
46  Rule();
+
47  virtual ~Rule();
+
48 
+
49  virtual void setAntecedent(Antecedent* antecedent);
+
50  virtual Antecedent* getAntecedent() const;
+
51 
+
52  virtual void setConsequent(Consequent* consequent);
+
53  virtual Consequent* getConsequent() const;
+
54 
+
55  virtual scalar activationDegree(const TNorm* tnorm, const SNorm* snorm) const;
+
56  virtual void activate(scalar strength, const TNorm* activation) const;
+
57 
+
58  virtual void setWeight(scalar weight);
+
59  virtual scalar getWeight() const;
+
60 
+
61  virtual std::string getText() const;
+
62 
+
63  virtual std::string toString() const;
+
64 
+
65  static Rule* parse(const std::string& rule, const Engine* engine);
+
66 
+
67  static std::string FL_IF;
+
68  static std::string FL_IS;
+
69  static std::string FL_EQUALS;
+
70  static std::string FL_THEN;
+
71  static std::string FL_AND;
+
72  static std::string FL_OR;
+
73  static std::string FL_WITH;
+
74 
+
75  static std::string ifKeyword();
+
76  static std::string isKeyword();
+
77  static std::string assignKeyword();
+
78  static std::string thenKeyword();
+
79  static std::string andKeyword();
+
80  static std::string orKeyword();
+
81  static std::string withKeyword();
+
82 
+
83 
+
84  };
+
85 }
+
86 
+
87 
+
88 #endif /* FL_RULE_H */
+
+
+ + + + diff --git a/docs/html/SNormFactory_8cpp.html b/docs/html/SNormFactory_8cpp.html new file mode 100644 index 0000000..bcc391d --- /dev/null +++ b/docs/html/SNormFactory_8cpp.html @@ -0,0 +1,146 @@ + + + + + + +fuzzylite: src/factory/SNormFactory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SNormFactory.cpp File Reference
+
+
+
+Include dependency graph for SNormFactory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SNormFactory_8cpp__incl.map b/docs/html/SNormFactory_8cpp__incl.map new file mode 100644 index 0000000..3ea0cac --- /dev/null +++ b/docs/html/SNormFactory_8cpp__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/SNormFactory_8cpp__incl.md5 b/docs/html/SNormFactory_8cpp__incl.md5 new file mode 100644 index 0000000..cc923d8 --- /dev/null +++ b/docs/html/SNormFactory_8cpp__incl.md5 @@ -0,0 +1 @@ +35d3adb866178d71dd55a58c67157d66 \ No newline at end of file diff --git a/docs/html/SNormFactory_8cpp__incl.png b/docs/html/SNormFactory_8cpp__incl.png new file mode 100644 index 0000000..1403fab Binary files /dev/null and b/docs/html/SNormFactory_8cpp__incl.png differ diff --git a/docs/html/SNormFactory_8h.html b/docs/html/SNormFactory_8h.html new file mode 100644 index 0000000..5cd4e16 --- /dev/null +++ b/docs/html/SNormFactory_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/factory/SNormFactory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SNormFactory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/factory/Factory.h"
+#include "fl/norm/SNorm.h"
+
+Include dependency graph for SNormFactory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SNormFactory
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SNormFactory_8h__dep__incl.map b/docs/html/SNormFactory_8h__dep__incl.map new file mode 100644 index 0000000..e38a940 --- /dev/null +++ b/docs/html/SNormFactory_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/SNormFactory_8h__dep__incl.md5 b/docs/html/SNormFactory_8h__dep__incl.md5 new file mode 100644 index 0000000..68d8510 --- /dev/null +++ b/docs/html/SNormFactory_8h__dep__incl.md5 @@ -0,0 +1 @@ +1acec792e3dadce20c9a0c27d760190e \ No newline at end of file diff --git a/docs/html/SNormFactory_8h__dep__incl.png b/docs/html/SNormFactory_8h__dep__incl.png new file mode 100644 index 0000000..d77acb7 Binary files /dev/null and b/docs/html/SNormFactory_8h__dep__incl.png differ diff --git a/docs/html/SNormFactory_8h__incl.map b/docs/html/SNormFactory_8h__incl.map new file mode 100644 index 0000000..9e4238f --- /dev/null +++ b/docs/html/SNormFactory_8h__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/SNormFactory_8h__incl.md5 b/docs/html/SNormFactory_8h__incl.md5 new file mode 100644 index 0000000..57eb73d --- /dev/null +++ b/docs/html/SNormFactory_8h__incl.md5 @@ -0,0 +1 @@ +7ce2d72172b498bdb142ca558575bef1 \ No newline at end of file diff --git a/docs/html/SNormFactory_8h__incl.png b/docs/html/SNormFactory_8h__incl.png new file mode 100644 index 0000000..b200243 Binary files /dev/null and b/docs/html/SNormFactory_8h__incl.png differ diff --git a/docs/html/SNormFactory_8h_source.html b/docs/html/SNormFactory_8h_source.html new file mode 100644 index 0000000..d43568a --- /dev/null +++ b/docs/html/SNormFactory_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +fuzzylite: fl/factory/SNormFactory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SNormFactory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SNormFactory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 January 2013, 11:20 PM
+
21  */
+
22 
+
23 #ifndef FL_SNORMFACTORY_H
+
24 #define FL_SNORMFACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/factory/Factory.h"
+
29 #include "fl/norm/SNorm.h"
+
30 
+
31 namespace fl {
+
32 
+
33  class FL_EXPORT SNormFactory : public Factory<SNorm*> {
+
34  public:
+
35  SNormFactory();
+
36  virtual ~SNormFactory();
+
37  };
+
38 }
+
39 #endif /* FL_SNORMFACTORY_H */
+
40 
+
+
+ + + + diff --git a/docs/html/SNorm_8h.html b/docs/html/SNorm_8h.html new file mode 100644 index 0000000..8a3fee8 --- /dev/null +++ b/docs/html/SNorm_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/SNorm.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SNorm.h File Reference
+
+
+
#include "fl/norm/Norm.h"
+
+Include dependency graph for SNorm.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SNorm
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SNorm_8h__dep__incl.map b/docs/html/SNorm_8h__dep__incl.map new file mode 100644 index 0000000..16ad0c9 --- /dev/null +++ b/docs/html/SNorm_8h__dep__incl.map @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/SNorm_8h__dep__incl.md5 b/docs/html/SNorm_8h__dep__incl.md5 new file mode 100644 index 0000000..deba606 --- /dev/null +++ b/docs/html/SNorm_8h__dep__incl.md5 @@ -0,0 +1 @@ +276aa377cd5d485a20ead55b030d6bcc \ No newline at end of file diff --git a/docs/html/SNorm_8h__dep__incl.png b/docs/html/SNorm_8h__dep__incl.png new file mode 100644 index 0000000..286c962 Binary files /dev/null and b/docs/html/SNorm_8h__dep__incl.png differ diff --git a/docs/html/SNorm_8h__incl.map b/docs/html/SNorm_8h__incl.map new file mode 100644 index 0000000..bcce1d7 --- /dev/null +++ b/docs/html/SNorm_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/SNorm_8h__incl.md5 b/docs/html/SNorm_8h__incl.md5 new file mode 100644 index 0000000..277b54b --- /dev/null +++ b/docs/html/SNorm_8h__incl.md5 @@ -0,0 +1 @@ +f5ceb1083d65cafd744248daa168302c \ No newline at end of file diff --git a/docs/html/SNorm_8h__incl.png b/docs/html/SNorm_8h__incl.png new file mode 100644 index 0000000..ca680e9 Binary files /dev/null and b/docs/html/SNorm_8h__incl.png differ diff --git a/docs/html/SNorm_8h_source.html b/docs/html/SNorm_8h_source.html new file mode 100644 index 0000000..3b04629 --- /dev/null +++ b/docs/html/SNorm_8h_source.html @@ -0,0 +1,160 @@ + + + + + + +fuzzylite: fl/norm/SNorm.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SNorm.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SNorm.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 21 December 2012, 9:34 AM
+
21  */
+
22 
+
23 #ifndef FL_SNORM_H
+
24 #define FL_SNORM_H
+
25 
+
26 #include "fl/norm/Norm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT SNorm : public Norm {
+
31  public:
+
32  SNorm(){}
+
33  virtual ~SNorm(){}
+
34  };
+
35 }
+
36 #endif /* FL_SNORM_H */
+
37 
+
+
+ + + + diff --git a/docs/html/SShape_8cpp.html b/docs/html/SShape_8cpp.html new file mode 100644 index 0000000..1d4d036 --- /dev/null +++ b/docs/html/SShape_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/SShape.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SShape.cpp File Reference
+
+
+
#include "fl/term/SShape.h"
+
+Include dependency graph for SShape.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SShape_8cpp__incl.map b/docs/html/SShape_8cpp__incl.map new file mode 100644 index 0000000..8646b2c --- /dev/null +++ b/docs/html/SShape_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/SShape_8cpp__incl.md5 b/docs/html/SShape_8cpp__incl.md5 new file mode 100644 index 0000000..e9bf33f --- /dev/null +++ b/docs/html/SShape_8cpp__incl.md5 @@ -0,0 +1 @@ +614829b68b802a9aa463a8ae5decc06e \ No newline at end of file diff --git a/docs/html/SShape_8cpp__incl.png b/docs/html/SShape_8cpp__incl.png new file mode 100644 index 0000000..8d0ab17 Binary files /dev/null and b/docs/html/SShape_8cpp__incl.png differ diff --git a/docs/html/SShape_8h.html b/docs/html/SShape_8h.html new file mode 100644 index 0000000..afb849e --- /dev/null +++ b/docs/html/SShape_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/SShape.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SShape.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for SShape.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SShape
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SShape_8h__dep__incl.map b/docs/html/SShape_8h__dep__incl.map new file mode 100644 index 0000000..efcf90b --- /dev/null +++ b/docs/html/SShape_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/SShape_8h__dep__incl.md5 b/docs/html/SShape_8h__dep__incl.md5 new file mode 100644 index 0000000..ff2e2ac --- /dev/null +++ b/docs/html/SShape_8h__dep__incl.md5 @@ -0,0 +1 @@ +69d8f88de5c3b8f232becfa8586d472e \ No newline at end of file diff --git a/docs/html/SShape_8h__dep__incl.png b/docs/html/SShape_8h__dep__incl.png new file mode 100644 index 0000000..9a98ec5 Binary files /dev/null and b/docs/html/SShape_8h__dep__incl.png differ diff --git a/docs/html/SShape_8h__incl.map b/docs/html/SShape_8h__incl.map new file mode 100644 index 0000000..ffd0b74 --- /dev/null +++ b/docs/html/SShape_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/SShape_8h__incl.md5 b/docs/html/SShape_8h__incl.md5 new file mode 100644 index 0000000..fe3b126 --- /dev/null +++ b/docs/html/SShape_8h__incl.md5 @@ -0,0 +1 @@ +b964d6ce29f6051c2674d52f2432d935 \ No newline at end of file diff --git a/docs/html/SShape_8h__incl.png b/docs/html/SShape_8h__incl.png new file mode 100644 index 0000000..c9b015e Binary files /dev/null and b/docs/html/SShape_8h__incl.png differ diff --git a/docs/html/SShape_8h_source.html b/docs/html/SShape_8h_source.html new file mode 100644 index 0000000..10d4cc6 --- /dev/null +++ b/docs/html/SShape_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/term/SShape.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SShape.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SShape.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 4:43 PM
+
21  */
+
22 
+
23 #ifndef FL_SSHAPE_H
+
24 #define FL_SSHAPE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT SShape : public Term {
+
31  protected:
+
32  scalar _start, _end;
+
33 
+
34  public:
+
35  SShape(const std::string& name = "",
+
36  scalar _start = -fl::inf,
+
37  scalar _end = fl::inf);
+
38  virtual ~SShape();
+
39 
+
40  virtual std::string className() const;
+
41  virtual std::string parameters() const;
+
42  virtual void configure(const std::string& parameters);
+
43 
+
44  virtual scalar membership(scalar x) const;
+
45 
+
46  virtual void setStart(scalar start);
+
47  virtual scalar getStart() const;
+
48 
+
49  virtual void setEnd(scalar end);
+
50  virtual scalar getEnd() const;
+
51 
+
52  virtual SShape* copy() const;
+
53  static Term* constructor();
+
54  };
+
55 }
+
56 
+
57 #endif /* FL_SSHAPE_H */
+
58 
+
+
+ + + + diff --git a/docs/html/Seldom_8cpp.html b/docs/html/Seldom_8cpp.html new file mode 100644 index 0000000..9c8110c --- /dev/null +++ b/docs/html/Seldom_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/hedge/Seldom.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Seldom.cpp File Reference
+
+
+
#include "fl/hedge/Seldom.h"
+#include "fl/Operation.h"
+#include <cmath>
+
+Include dependency graph for Seldom.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Seldom_8cpp__incl.map b/docs/html/Seldom_8cpp__incl.map new file mode 100644 index 0000000..a668999 --- /dev/null +++ b/docs/html/Seldom_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Seldom_8cpp__incl.md5 b/docs/html/Seldom_8cpp__incl.md5 new file mode 100644 index 0000000..c5e4bfb --- /dev/null +++ b/docs/html/Seldom_8cpp__incl.md5 @@ -0,0 +1 @@ +f595317671cb8d6e1425249ffcf569b1 \ No newline at end of file diff --git a/docs/html/Seldom_8cpp__incl.png b/docs/html/Seldom_8cpp__incl.png new file mode 100644 index 0000000..e27d072 Binary files /dev/null and b/docs/html/Seldom_8cpp__incl.png differ diff --git a/docs/html/Seldom_8h.html b/docs/html/Seldom_8h.html new file mode 100644 index 0000000..8ccca36 --- /dev/null +++ b/docs/html/Seldom_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Seldom.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Seldom.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Seldom.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Seldom
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Seldom_8h__dep__incl.map b/docs/html/Seldom_8h__dep__incl.map new file mode 100644 index 0000000..7fcbcc8 --- /dev/null +++ b/docs/html/Seldom_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Seldom_8h__dep__incl.md5 b/docs/html/Seldom_8h__dep__incl.md5 new file mode 100644 index 0000000..e20aeb8 --- /dev/null +++ b/docs/html/Seldom_8h__dep__incl.md5 @@ -0,0 +1 @@ +f55ea2dfd2e854dea4358c05ca83b2a8 \ No newline at end of file diff --git a/docs/html/Seldom_8h__dep__incl.png b/docs/html/Seldom_8h__dep__incl.png new file mode 100644 index 0000000..2d9ef28 Binary files /dev/null and b/docs/html/Seldom_8h__dep__incl.png differ diff --git a/docs/html/Seldom_8h__incl.map b/docs/html/Seldom_8h__incl.map new file mode 100644 index 0000000..6ea5035 --- /dev/null +++ b/docs/html/Seldom_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Seldom_8h__incl.md5 b/docs/html/Seldom_8h__incl.md5 new file mode 100644 index 0000000..a8b474f --- /dev/null +++ b/docs/html/Seldom_8h__incl.md5 @@ -0,0 +1 @@ +fe5b456ac7ef28082b777eaf4fdc650c \ No newline at end of file diff --git a/docs/html/Seldom_8h__incl.png b/docs/html/Seldom_8h__incl.png new file mode 100644 index 0000000..6785061 Binary files /dev/null and b/docs/html/Seldom_8h__incl.png differ diff --git a/docs/html/Seldom_8h_source.html b/docs/html/Seldom_8h_source.html new file mode 100644 index 0000000..ec1ac64 --- /dev/null +++ b/docs/html/Seldom_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Seldom.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Seldom.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Seldom.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_SELDOM_H
+
24 #define FL_SELDOM_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Seldom : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_SELDOM_H */
+
+
+ + + + diff --git a/docs/html/SigmoidDifference_8cpp.html b/docs/html/SigmoidDifference_8cpp.html new file mode 100644 index 0000000..06d2632 --- /dev/null +++ b/docs/html/SigmoidDifference_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/term/SigmoidDifference.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SigmoidDifference.cpp File Reference
+
+
+
#include "fl/term/SigmoidDifference.h"
+#include <cmath>
+#include <sstream>
+
+Include dependency graph for SigmoidDifference.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SigmoidDifference_8cpp__incl.map b/docs/html/SigmoidDifference_8cpp__incl.map new file mode 100644 index 0000000..9672de3 --- /dev/null +++ b/docs/html/SigmoidDifference_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/SigmoidDifference_8cpp__incl.md5 b/docs/html/SigmoidDifference_8cpp__incl.md5 new file mode 100644 index 0000000..1ed25e3 --- /dev/null +++ b/docs/html/SigmoidDifference_8cpp__incl.md5 @@ -0,0 +1 @@ +9c21a3d812adbd3eeedb2f9e4c777626 \ No newline at end of file diff --git a/docs/html/SigmoidDifference_8cpp__incl.png b/docs/html/SigmoidDifference_8cpp__incl.png new file mode 100644 index 0000000..9719b88 Binary files /dev/null and b/docs/html/SigmoidDifference_8cpp__incl.png differ diff --git a/docs/html/SigmoidDifference_8h.html b/docs/html/SigmoidDifference_8h.html new file mode 100644 index 0000000..f4de429 --- /dev/null +++ b/docs/html/SigmoidDifference_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/SigmoidDifference.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SigmoidDifference.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for SigmoidDifference.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SigmoidDifference
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SigmoidDifference_8h__dep__incl.map b/docs/html/SigmoidDifference_8h__dep__incl.map new file mode 100644 index 0000000..d3f7150 --- /dev/null +++ b/docs/html/SigmoidDifference_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/SigmoidDifference_8h__dep__incl.md5 b/docs/html/SigmoidDifference_8h__dep__incl.md5 new file mode 100644 index 0000000..6c7d66f --- /dev/null +++ b/docs/html/SigmoidDifference_8h__dep__incl.md5 @@ -0,0 +1 @@ +35751078bd9ab0329f1912b0d780388c \ No newline at end of file diff --git a/docs/html/SigmoidDifference_8h__dep__incl.png b/docs/html/SigmoidDifference_8h__dep__incl.png new file mode 100644 index 0000000..18cba37 Binary files /dev/null and b/docs/html/SigmoidDifference_8h__dep__incl.png differ diff --git a/docs/html/SigmoidDifference_8h__incl.map b/docs/html/SigmoidDifference_8h__incl.map new file mode 100644 index 0000000..b9655f7 --- /dev/null +++ b/docs/html/SigmoidDifference_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/SigmoidDifference_8h__incl.md5 b/docs/html/SigmoidDifference_8h__incl.md5 new file mode 100644 index 0000000..1dfa11a --- /dev/null +++ b/docs/html/SigmoidDifference_8h__incl.md5 @@ -0,0 +1 @@ +f0de0122f086348853041ddfd5775777 \ No newline at end of file diff --git a/docs/html/SigmoidDifference_8h__incl.png b/docs/html/SigmoidDifference_8h__incl.png new file mode 100644 index 0000000..7ef1132 Binary files /dev/null and b/docs/html/SigmoidDifference_8h__incl.png differ diff --git a/docs/html/SigmoidDifference_8h_source.html b/docs/html/SigmoidDifference_8h_source.html new file mode 100644 index 0000000..1dc6f3b --- /dev/null +++ b/docs/html/SigmoidDifference_8h_source.html @@ -0,0 +1,192 @@ + + + + + + +fuzzylite: fl/term/SigmoidDifference.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SigmoidDifference.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SigmoidDifference.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 December 2012, 5:58 PM
+
21  */
+
22 
+
23 #ifndef FL_SIGMOIDDIFFERENCE_H
+
24 #define FL_SIGMOIDDIFFERENCE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT SigmoidDifference : public Term {
+
31  protected:
+ + + + +
36 
+
37  public:
+
38  SigmoidDifference(const std::string& name = "",
+
39  scalar left = fl::nan,
+
40  scalar rising = fl::nan,
+
41  scalar falling = fl::nan,
+
42  scalar right = fl::nan);
+
43  virtual ~SigmoidDifference();
+
44 
+
45  virtual std::string className() const;
+
46  virtual std::string parameters() const;
+
47  virtual void configure(const std::string& parameters);
+
48 
+
49  virtual scalar membership(scalar x) const;
+
50 
+
51  virtual void setLeft(scalar leftInflection);
+
52  virtual scalar getLeft() const;
+
53 
+
54  virtual void setRising(scalar risingSlope);
+
55  virtual scalar getRising() const;
+
56 
+
57  virtual void setFalling(scalar fallingSlope);
+
58  virtual scalar getFalling() const;
+
59 
+
60  virtual void setRight(scalar rightInflection);
+
61  virtual scalar getRight() const;
+
62 
+
63  virtual SigmoidDifference* copy() const;
+
64 
+
65  static Term* constructor();
+
66  };
+
67 }
+
68 #endif /* FL_SIGMOIDDIFFERENCE_H */
+
69 
+
+
+ + + + diff --git a/docs/html/SigmoidProduct_8cpp.html b/docs/html/SigmoidProduct_8cpp.html new file mode 100644 index 0000000..5da89ba --- /dev/null +++ b/docs/html/SigmoidProduct_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/term/SigmoidProduct.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SigmoidProduct.cpp File Reference
+
+
+
#include "fl/term/SigmoidProduct.h"
+#include <cmath>
+#include <sstream>
+
+Include dependency graph for SigmoidProduct.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SigmoidProduct_8cpp__incl.map b/docs/html/SigmoidProduct_8cpp__incl.map new file mode 100644 index 0000000..178b82c --- /dev/null +++ b/docs/html/SigmoidProduct_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/SigmoidProduct_8cpp__incl.md5 b/docs/html/SigmoidProduct_8cpp__incl.md5 new file mode 100644 index 0000000..fdcafeb --- /dev/null +++ b/docs/html/SigmoidProduct_8cpp__incl.md5 @@ -0,0 +1 @@ +af1a4882de6ab11cbbf7d67ab9bc85f5 \ No newline at end of file diff --git a/docs/html/SigmoidProduct_8cpp__incl.png b/docs/html/SigmoidProduct_8cpp__incl.png new file mode 100644 index 0000000..4fcc69b Binary files /dev/null and b/docs/html/SigmoidProduct_8cpp__incl.png differ diff --git a/docs/html/SigmoidProduct_8h.html b/docs/html/SigmoidProduct_8h.html new file mode 100644 index 0000000..10b5eba --- /dev/null +++ b/docs/html/SigmoidProduct_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/SigmoidProduct.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SigmoidProduct.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for SigmoidProduct.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SigmoidProduct
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SigmoidProduct_8h__dep__incl.map b/docs/html/SigmoidProduct_8h__dep__incl.map new file mode 100644 index 0000000..64ccc3a --- /dev/null +++ b/docs/html/SigmoidProduct_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/SigmoidProduct_8h__dep__incl.md5 b/docs/html/SigmoidProduct_8h__dep__incl.md5 new file mode 100644 index 0000000..e1dde73 --- /dev/null +++ b/docs/html/SigmoidProduct_8h__dep__incl.md5 @@ -0,0 +1 @@ +499793d5712f53da431bacea1b428912 \ No newline at end of file diff --git a/docs/html/SigmoidProduct_8h__dep__incl.png b/docs/html/SigmoidProduct_8h__dep__incl.png new file mode 100644 index 0000000..07ecf2d Binary files /dev/null and b/docs/html/SigmoidProduct_8h__dep__incl.png differ diff --git a/docs/html/SigmoidProduct_8h__incl.map b/docs/html/SigmoidProduct_8h__incl.map new file mode 100644 index 0000000..a88dfb7 --- /dev/null +++ b/docs/html/SigmoidProduct_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/SigmoidProduct_8h__incl.md5 b/docs/html/SigmoidProduct_8h__incl.md5 new file mode 100644 index 0000000..4b6f05a --- /dev/null +++ b/docs/html/SigmoidProduct_8h__incl.md5 @@ -0,0 +1 @@ +63bb1cfa284b4df95c2a771dca3afdaa \ No newline at end of file diff --git a/docs/html/SigmoidProduct_8h__incl.png b/docs/html/SigmoidProduct_8h__incl.png new file mode 100644 index 0000000..0f44d25 Binary files /dev/null and b/docs/html/SigmoidProduct_8h__incl.png differ diff --git a/docs/html/SigmoidProduct_8h_source.html b/docs/html/SigmoidProduct_8h_source.html new file mode 100644 index 0000000..5df02a7 --- /dev/null +++ b/docs/html/SigmoidProduct_8h_source.html @@ -0,0 +1,191 @@ + + + + + + +fuzzylite: fl/term/SigmoidProduct.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SigmoidProduct.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SigmoidProduct.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 30 December 2012, 5:41 PM
+
21  */
+
22 
+
23 #ifndef FL_SIGMOIDPRODUCT_H
+
24 #define FL_SIGMOIDPRODUCT_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT SigmoidProduct : public Term {
+
31  protected:
+ + + + +
36 
+
37  public:
+
38  SigmoidProduct(const std::string& name = "",
+
39  scalar left = fl::nan,
+
40  scalar rising = fl::nan,
+
41  scalar falling = fl::nan,
+
42  scalar right = fl::nan);
+
43  virtual ~SigmoidProduct();
+
44 
+
45  virtual std::string className() const;
+
46  virtual std::string parameters() const;
+
47  virtual void configure(const std::string& parameters);
+
48 
+
49  virtual scalar membership(scalar x) const;
+
50 
+
51  virtual void setLeft(scalar leftInflection);
+
52  virtual scalar getLeft() const;
+
53 
+
54  virtual void setRising(scalar risingSlope);
+
55  virtual scalar getRising() const;
+
56 
+
57  virtual void setFalling(scalar fallingSlope);
+
58  virtual scalar getFalling() const;
+
59 
+
60  virtual void setRight(scalar rightInflection);
+
61  virtual scalar getRight() const;
+
62 
+
63  virtual SigmoidProduct* copy() const;
+
64  static Term* constructor();
+
65  };
+
66 }
+
67 #endif /* FL_SIGMOIDPRODUCT_H */
+
68 
+
+
+ + + + diff --git a/docs/html/Sigmoid_8cpp.html b/docs/html/Sigmoid_8cpp.html new file mode 100644 index 0000000..0b74c76 --- /dev/null +++ b/docs/html/Sigmoid_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/term/Sigmoid.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Sigmoid.cpp File Reference
+
+
+
#include "fl/term/Sigmoid.h"
+#include <cmath>
+#include <sstream>
+
+Include dependency graph for Sigmoid.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Sigmoid_8cpp__incl.map b/docs/html/Sigmoid_8cpp__incl.map new file mode 100644 index 0000000..1225c23 --- /dev/null +++ b/docs/html/Sigmoid_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Sigmoid_8cpp__incl.md5 b/docs/html/Sigmoid_8cpp__incl.md5 new file mode 100644 index 0000000..67fa4d2 --- /dev/null +++ b/docs/html/Sigmoid_8cpp__incl.md5 @@ -0,0 +1 @@ +2435b78bc17d3cd45409eaf87068ee3e \ No newline at end of file diff --git a/docs/html/Sigmoid_8cpp__incl.png b/docs/html/Sigmoid_8cpp__incl.png new file mode 100644 index 0000000..28c073d Binary files /dev/null and b/docs/html/Sigmoid_8cpp__incl.png differ diff --git a/docs/html/Sigmoid_8h.html b/docs/html/Sigmoid_8h.html new file mode 100644 index 0000000..2e64abd --- /dev/null +++ b/docs/html/Sigmoid_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Sigmoid.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Sigmoid.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Sigmoid.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Sigmoid
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Sigmoid_8h__dep__incl.map b/docs/html/Sigmoid_8h__dep__incl.map new file mode 100644 index 0000000..b6b99ac --- /dev/null +++ b/docs/html/Sigmoid_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/Sigmoid_8h__dep__incl.md5 b/docs/html/Sigmoid_8h__dep__incl.md5 new file mode 100644 index 0000000..f8da671 --- /dev/null +++ b/docs/html/Sigmoid_8h__dep__incl.md5 @@ -0,0 +1 @@ +0e55d8875e1e2a88fa89bf30115afe47 \ No newline at end of file diff --git a/docs/html/Sigmoid_8h__dep__incl.png b/docs/html/Sigmoid_8h__dep__incl.png new file mode 100644 index 0000000..b61c8ec Binary files /dev/null and b/docs/html/Sigmoid_8h__dep__incl.png differ diff --git a/docs/html/Sigmoid_8h__incl.map b/docs/html/Sigmoid_8h__incl.map new file mode 100644 index 0000000..99c69c3 --- /dev/null +++ b/docs/html/Sigmoid_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Sigmoid_8h__incl.md5 b/docs/html/Sigmoid_8h__incl.md5 new file mode 100644 index 0000000..eacab4b --- /dev/null +++ b/docs/html/Sigmoid_8h__incl.md5 @@ -0,0 +1 @@ +f6e2c48a808964fb1263c58031ac395c \ No newline at end of file diff --git a/docs/html/Sigmoid_8h__incl.png b/docs/html/Sigmoid_8h__incl.png new file mode 100644 index 0000000..255720c Binary files /dev/null and b/docs/html/Sigmoid_8h__incl.png differ diff --git a/docs/html/Sigmoid_8h_source.html b/docs/html/Sigmoid_8h_source.html new file mode 100644 index 0000000..29d804a --- /dev/null +++ b/docs/html/Sigmoid_8h_source.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: fl/term/Sigmoid.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Sigmoid.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Sigmoid.h
+
18  *
+
19  * Created on: 30/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_SIGMOID_H
+
24 #define FL_SIGMOID_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Sigmoid : public Term {
+
31  protected:
+ + +
34  public:
+
35  Sigmoid(const std::string& name = "",
+
36  scalar inflection = fl::nan,
+
37  scalar slope = fl::nan);
+
38  virtual ~Sigmoid();
+
39 
+
40  virtual std::string className() const;
+
41  virtual std::string parameters() const;
+
42  virtual void configure(const std::string& parameters);
+
43 
+
44  virtual scalar membership(scalar x) const;
+
45 
+
46  virtual void setInflection(scalar inflection);
+
47  virtual scalar getInflection() const;
+
48 
+
49  virtual void setSlope(scalar slope);
+
50  virtual scalar getSlope() const;
+
51 
+
52  virtual Sigmoid* copy() const;
+
53 
+
54  static Term* constructor();
+
55  };
+
56 
+
57 }
+
58 #endif /* FL_SIGMOID_H */
+
+
+ + + + diff --git a/docs/html/SmallestOfMaximum_8cpp.html b/docs/html/SmallestOfMaximum_8cpp.html new file mode 100644 index 0000000..6caa345 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8cpp.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: src/defuzzifier/SmallestOfMaximum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SmallestOfMaximum.cpp File Reference
+
+
+
+Include dependency graph for SmallestOfMaximum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SmallestOfMaximum_8cpp__incl.map b/docs/html/SmallestOfMaximum_8cpp__incl.map new file mode 100644 index 0000000..ad0d950 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8cpp__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/SmallestOfMaximum_8cpp__incl.md5 b/docs/html/SmallestOfMaximum_8cpp__incl.md5 new file mode 100644 index 0000000..2541fe5 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8cpp__incl.md5 @@ -0,0 +1 @@ +18e992366d5b0f9c3b1cd8c2f330dd17 \ No newline at end of file diff --git a/docs/html/SmallestOfMaximum_8cpp__incl.png b/docs/html/SmallestOfMaximum_8cpp__incl.png new file mode 100644 index 0000000..51f8f6a Binary files /dev/null and b/docs/html/SmallestOfMaximum_8cpp__incl.png differ diff --git a/docs/html/SmallestOfMaximum_8h.html b/docs/html/SmallestOfMaximum_8h.html new file mode 100644 index 0000000..a06d6b6 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/SmallestOfMaximum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
SmallestOfMaximum.h File Reference
+
+
+
+Include dependency graph for SmallestOfMaximum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::SmallestOfMaximum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/SmallestOfMaximum_8h__dep__incl.map b/docs/html/SmallestOfMaximum_8h__dep__incl.map new file mode 100644 index 0000000..d79bcc6 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/SmallestOfMaximum_8h__dep__incl.md5 b/docs/html/SmallestOfMaximum_8h__dep__incl.md5 new file mode 100644 index 0000000..158f256 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h__dep__incl.md5 @@ -0,0 +1 @@ +91fd9ea8d949afa52a38796aa16a3058 \ No newline at end of file diff --git a/docs/html/SmallestOfMaximum_8h__dep__incl.png b/docs/html/SmallestOfMaximum_8h__dep__incl.png new file mode 100644 index 0000000..04a4fe2 Binary files /dev/null and b/docs/html/SmallestOfMaximum_8h__dep__incl.png differ diff --git a/docs/html/SmallestOfMaximum_8h__incl.map b/docs/html/SmallestOfMaximum_8h__incl.map new file mode 100644 index 0000000..86d53dc --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/SmallestOfMaximum_8h__incl.md5 b/docs/html/SmallestOfMaximum_8h__incl.md5 new file mode 100644 index 0000000..83038a0 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h__incl.md5 @@ -0,0 +1 @@ +5a251f877e25234ba912e5d750ac50c6 \ No newline at end of file diff --git a/docs/html/SmallestOfMaximum_8h__incl.png b/docs/html/SmallestOfMaximum_8h__incl.png new file mode 100644 index 0000000..55edfd2 Binary files /dev/null and b/docs/html/SmallestOfMaximum_8h__incl.png differ diff --git a/docs/html/SmallestOfMaximum_8h_source.html b/docs/html/SmallestOfMaximum_8h_source.html new file mode 100644 index 0000000..b29bc61 --- /dev/null +++ b/docs/html/SmallestOfMaximum_8h_source.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: fl/defuzzifier/SmallestOfMaximum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
SmallestOfMaximum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: SmallestOfMaximum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 6:38 PM
+
21  */
+
22 
+
23 #ifndef FL_SMALLESTOFMAXIMUM_H
+
24 #define FL_SMALLESTOFMAXIMUM_H
+
25 
+ +
27 
+
28 namespace fl {
+
29 
+ +
31  public:
+
32  SmallestOfMaximum(int resolution = defaultResolution());
+
33  virtual ~SmallestOfMaximum();
+
34 
+
35  virtual std::string className() const;
+
36  virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const;
+
37 
+
38  static Defuzzifier* constructor();
+
39  };
+
40 }
+
41 
+
42 #endif /* FL_SMALLESTOFMAXIMUM_H */
+
43 
+
+
+ + + + diff --git a/docs/html/Somewhat_8cpp.html b/docs/html/Somewhat_8cpp.html new file mode 100644 index 0000000..04ba191 --- /dev/null +++ b/docs/html/Somewhat_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/hedge/Somewhat.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Somewhat.cpp File Reference
+
+
+
#include "fl/hedge/Somewhat.h"
+#include <cmath>
+
+Include dependency graph for Somewhat.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Somewhat_8cpp__incl.map b/docs/html/Somewhat_8cpp__incl.map new file mode 100644 index 0000000..4fee76f --- /dev/null +++ b/docs/html/Somewhat_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Somewhat_8cpp__incl.md5 b/docs/html/Somewhat_8cpp__incl.md5 new file mode 100644 index 0000000..49a800b --- /dev/null +++ b/docs/html/Somewhat_8cpp__incl.md5 @@ -0,0 +1 @@ +151e89875de0d89227dc36c48f0460d7 \ No newline at end of file diff --git a/docs/html/Somewhat_8cpp__incl.png b/docs/html/Somewhat_8cpp__incl.png new file mode 100644 index 0000000..8f02377 Binary files /dev/null and b/docs/html/Somewhat_8cpp__incl.png differ diff --git a/docs/html/Somewhat_8h.html b/docs/html/Somewhat_8h.html new file mode 100644 index 0000000..e2ac225 --- /dev/null +++ b/docs/html/Somewhat_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Somewhat.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Somewhat.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Somewhat.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Somewhat
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Somewhat_8h__dep__incl.map b/docs/html/Somewhat_8h__dep__incl.map new file mode 100644 index 0000000..ef5c41d --- /dev/null +++ b/docs/html/Somewhat_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Somewhat_8h__dep__incl.md5 b/docs/html/Somewhat_8h__dep__incl.md5 new file mode 100644 index 0000000..3e07ca8 --- /dev/null +++ b/docs/html/Somewhat_8h__dep__incl.md5 @@ -0,0 +1 @@ +6703dcb50e269135b22aeffa8d1e5ad4 \ No newline at end of file diff --git a/docs/html/Somewhat_8h__dep__incl.png b/docs/html/Somewhat_8h__dep__incl.png new file mode 100644 index 0000000..e502812 Binary files /dev/null and b/docs/html/Somewhat_8h__dep__incl.png differ diff --git a/docs/html/Somewhat_8h__incl.map b/docs/html/Somewhat_8h__incl.map new file mode 100644 index 0000000..253715d --- /dev/null +++ b/docs/html/Somewhat_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Somewhat_8h__incl.md5 b/docs/html/Somewhat_8h__incl.md5 new file mode 100644 index 0000000..cd0ff36 --- /dev/null +++ b/docs/html/Somewhat_8h__incl.md5 @@ -0,0 +1 @@ +a835de8a98006c97d07e526d974ed2d9 \ No newline at end of file diff --git a/docs/html/Somewhat_8h__incl.png b/docs/html/Somewhat_8h__incl.png new file mode 100644 index 0000000..eb3ea7b Binary files /dev/null and b/docs/html/Somewhat_8h__incl.png differ diff --git a/docs/html/Somewhat_8h_source.html b/docs/html/Somewhat_8h_source.html new file mode 100644 index 0000000..e1ac4c5 --- /dev/null +++ b/docs/html/Somewhat_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Somewhat.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Somewhat.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Somewhat.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_SOMEWHAT_H
+
24 #define FL_SOMEWHAT_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Somewhat : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_SOMEWHAT_H */
+
+
+ + + + diff --git a/docs/html/TNormFactory_8cpp.html b/docs/html/TNormFactory_8cpp.html new file mode 100644 index 0000000..42af68d --- /dev/null +++ b/docs/html/TNormFactory_8cpp.html @@ -0,0 +1,145 @@ + + + + + + +fuzzylite: src/factory/TNormFactory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TNormFactory.cpp File Reference
+
+
+
+Include dependency graph for TNormFactory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/TNormFactory_8cpp__incl.map b/docs/html/TNormFactory_8cpp__incl.map new file mode 100644 index 0000000..44db408 --- /dev/null +++ b/docs/html/TNormFactory_8cpp__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/TNormFactory_8cpp__incl.md5 b/docs/html/TNormFactory_8cpp__incl.md5 new file mode 100644 index 0000000..9f936d5 --- /dev/null +++ b/docs/html/TNormFactory_8cpp__incl.md5 @@ -0,0 +1 @@ +b24bf3cdac7a1a0c2dc1cae770c2bba0 \ No newline at end of file diff --git a/docs/html/TNormFactory_8cpp__incl.png b/docs/html/TNormFactory_8cpp__incl.png new file mode 100644 index 0000000..c6a773b Binary files /dev/null and b/docs/html/TNormFactory_8cpp__incl.png differ diff --git a/docs/html/TNormFactory_8h.html b/docs/html/TNormFactory_8h.html new file mode 100644 index 0000000..d3b0693 --- /dev/null +++ b/docs/html/TNormFactory_8h.html @@ -0,0 +1,156 @@ + + + + + + +fuzzylite: fl/factory/TNormFactory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TNormFactory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/factory/Factory.h"
+#include "fl/norm/TNorm.h"
+
+Include dependency graph for TNormFactory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::TNormFactory
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/TNormFactory_8h__dep__incl.map b/docs/html/TNormFactory_8h__dep__incl.map new file mode 100644 index 0000000..25199a6 --- /dev/null +++ b/docs/html/TNormFactory_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/TNormFactory_8h__dep__incl.md5 b/docs/html/TNormFactory_8h__dep__incl.md5 new file mode 100644 index 0000000..abd809c --- /dev/null +++ b/docs/html/TNormFactory_8h__dep__incl.md5 @@ -0,0 +1 @@ +13cb02c83c43c0251c2ab0b9371adc8d \ No newline at end of file diff --git a/docs/html/TNormFactory_8h__dep__incl.png b/docs/html/TNormFactory_8h__dep__incl.png new file mode 100644 index 0000000..8c96df7 Binary files /dev/null and b/docs/html/TNormFactory_8h__dep__incl.png differ diff --git a/docs/html/TNormFactory_8h__incl.map b/docs/html/TNormFactory_8h__incl.map new file mode 100644 index 0000000..f58c050 --- /dev/null +++ b/docs/html/TNormFactory_8h__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/TNormFactory_8h__incl.md5 b/docs/html/TNormFactory_8h__incl.md5 new file mode 100644 index 0000000..0d3291d --- /dev/null +++ b/docs/html/TNormFactory_8h__incl.md5 @@ -0,0 +1 @@ +81f4f61338709abe27056251670c12e1 \ No newline at end of file diff --git a/docs/html/TNormFactory_8h__incl.png b/docs/html/TNormFactory_8h__incl.png new file mode 100644 index 0000000..4232d3f Binary files /dev/null and b/docs/html/TNormFactory_8h__incl.png differ diff --git a/docs/html/TNormFactory_8h_source.html b/docs/html/TNormFactory_8h_source.html new file mode 100644 index 0000000..1e6976d --- /dev/null +++ b/docs/html/TNormFactory_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/factory/TNormFactory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
TNormFactory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: TNormFactory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 January 2013, 11:20 PM
+
21  */
+
22 
+
23 #ifndef FL_TNORMFACTORY_H
+
24 #define FL_TNORMFACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/factory/Factory.h"
+
29 #include "fl/norm/TNorm.h"
+
30 
+
31 namespace fl {
+
32 
+
33  class FL_EXPORT TNormFactory : public Factory<TNorm*> {
+
34  public:
+
35  TNormFactory();
+
36  virtual ~TNormFactory();
+
37 
+
38  };
+
39 }
+
40 #endif /* FL_TNORMFACTORY_H */
+
41 
+
+
+ + + + diff --git a/docs/html/TNorm_8h.html b/docs/html/TNorm_8h.html new file mode 100644 index 0000000..231d6d1 --- /dev/null +++ b/docs/html/TNorm_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/norm/TNorm.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TNorm.h File Reference
+
+
+
#include "fl/norm/Norm.h"
+
+Include dependency graph for TNorm.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::TNorm
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/TNorm_8h__dep__incl.map b/docs/html/TNorm_8h__dep__incl.map new file mode 100644 index 0000000..463a9be --- /dev/null +++ b/docs/html/TNorm_8h__dep__incl.map @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/TNorm_8h__dep__incl.md5 b/docs/html/TNorm_8h__dep__incl.md5 new file mode 100644 index 0000000..d5b5085 --- /dev/null +++ b/docs/html/TNorm_8h__dep__incl.md5 @@ -0,0 +1 @@ +a528e8ceb02cc52db757d30ae542035a \ No newline at end of file diff --git a/docs/html/TNorm_8h__dep__incl.png b/docs/html/TNorm_8h__dep__incl.png new file mode 100644 index 0000000..7100301 Binary files /dev/null and b/docs/html/TNorm_8h__dep__incl.png differ diff --git a/docs/html/TNorm_8h__incl.map b/docs/html/TNorm_8h__incl.map new file mode 100644 index 0000000..8aba5bc --- /dev/null +++ b/docs/html/TNorm_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/TNorm_8h__incl.md5 b/docs/html/TNorm_8h__incl.md5 new file mode 100644 index 0000000..d07c583 --- /dev/null +++ b/docs/html/TNorm_8h__incl.md5 @@ -0,0 +1 @@ +baaed40649028751749d4ec1f64bbe0c \ No newline at end of file diff --git a/docs/html/TNorm_8h__incl.png b/docs/html/TNorm_8h__incl.png new file mode 100644 index 0000000..3d146b4 Binary files /dev/null and b/docs/html/TNorm_8h__incl.png differ diff --git a/docs/html/TNorm_8h_source.html b/docs/html/TNorm_8h_source.html new file mode 100644 index 0000000..d62a8ee --- /dev/null +++ b/docs/html/TNorm_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +fuzzylite: fl/norm/TNorm.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
TNorm.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: TNorm.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 21 December 2012, 9:33 AM
+
21  */
+
22 
+
23 #ifndef FL_TNORM_H
+
24 #define FL_TNORM_H
+
25 
+
26 #include "fl/norm/Norm.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT TNorm : public Norm {
+
31  public:
+
32 
+
33  TNorm() {
+
34  }
+
35 
+
36  virtual ~TNorm() {
+
37  }
+
38  };
+
39 }
+
40 #endif /* TNORM_H */
+
41 
+
+
+ + + + diff --git a/docs/html/TermFactory_8cpp.html b/docs/html/TermFactory_8cpp.html new file mode 100644 index 0000000..b2398f7 --- /dev/null +++ b/docs/html/TermFactory_8cpp.html @@ -0,0 +1,158 @@ + + + + + + +fuzzylite: src/factory/TermFactory.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TermFactory.cpp File Reference
+
+
+
#include "fl/factory/TermFactory.h"
+#include "fl/term/Term.h"
+#include "fl/Exception.h"
+#include "fl/term/Bell.h"
+#include "fl/term/Constant.h"
+#include "fl/term/Discrete.h"
+#include "fl/term/Function.h"
+#include "fl/term/Gaussian.h"
+#include "fl/term/GaussianProduct.h"
+#include "fl/term/Linear.h"
+#include "fl/term/PiShape.h"
+#include "fl/term/Ramp.h"
+#include "fl/term/Rectangle.h"
+#include "fl/term/SShape.h"
+#include "fl/term/Sigmoid.h"
+#include "fl/term/SigmoidDifference.h"
+#include "fl/term/SigmoidProduct.h"
+#include "fl/term/Trapezoid.h"
+#include "fl/term/Triangle.h"
+#include "fl/term/ZShape.h"
+
+Include dependency graph for TermFactory.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/TermFactory_8cpp__incl.map b/docs/html/TermFactory_8cpp__incl.map new file mode 100644 index 0000000..17a5eb9 --- /dev/null +++ b/docs/html/TermFactory_8cpp__incl.map @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/TermFactory_8cpp__incl.md5 b/docs/html/TermFactory_8cpp__incl.md5 new file mode 100644 index 0000000..3efec3e --- /dev/null +++ b/docs/html/TermFactory_8cpp__incl.md5 @@ -0,0 +1 @@ +d51013e795a1c6492cd64d992b17f2d2 \ No newline at end of file diff --git a/docs/html/TermFactory_8cpp__incl.png b/docs/html/TermFactory_8cpp__incl.png new file mode 100644 index 0000000..2cd956b Binary files /dev/null and b/docs/html/TermFactory_8cpp__incl.png differ diff --git a/docs/html/TermFactory_8h.html b/docs/html/TermFactory_8h.html new file mode 100644 index 0000000..6665b96 --- /dev/null +++ b/docs/html/TermFactory_8h.html @@ -0,0 +1,158 @@ + + + + + + +fuzzylite: fl/factory/TermFactory.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TermFactory.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/factory/Factory.h"
+#include "fl/term/Term.h"
+#include <vector>
+#include <string>
+
+Include dependency graph for TermFactory.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::TermFactory
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/TermFactory_8h__dep__incl.map b/docs/html/TermFactory_8h__dep__incl.map new file mode 100644 index 0000000..939b7b1 --- /dev/null +++ b/docs/html/TermFactory_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/TermFactory_8h__dep__incl.md5 b/docs/html/TermFactory_8h__dep__incl.md5 new file mode 100644 index 0000000..e3b30f2 --- /dev/null +++ b/docs/html/TermFactory_8h__dep__incl.md5 @@ -0,0 +1 @@ +ac2ac90be6751c93d531a25b286e5d47 \ No newline at end of file diff --git a/docs/html/TermFactory_8h__dep__incl.png b/docs/html/TermFactory_8h__dep__incl.png new file mode 100644 index 0000000..ed9e04b Binary files /dev/null and b/docs/html/TermFactory_8h__dep__incl.png differ diff --git a/docs/html/TermFactory_8h__incl.map b/docs/html/TermFactory_8h__incl.map new file mode 100644 index 0000000..11bd301 --- /dev/null +++ b/docs/html/TermFactory_8h__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/TermFactory_8h__incl.md5 b/docs/html/TermFactory_8h__incl.md5 new file mode 100644 index 0000000..d0d0cdd --- /dev/null +++ b/docs/html/TermFactory_8h__incl.md5 @@ -0,0 +1 @@ +d1d757fedad38e628be306e866a0bf5b \ No newline at end of file diff --git a/docs/html/TermFactory_8h__incl.png b/docs/html/TermFactory_8h__incl.png new file mode 100644 index 0000000..49ebd7f Binary files /dev/null and b/docs/html/TermFactory_8h__incl.png differ diff --git a/docs/html/TermFactory_8h_source.html b/docs/html/TermFactory_8h_source.html new file mode 100644 index 0000000..f214672 --- /dev/null +++ b/docs/html/TermFactory_8h_source.html @@ -0,0 +1,167 @@ + + + + + + +fuzzylite: fl/factory/TermFactory.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
TermFactory.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: TermFactory.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 January 2013, 11:18 PM
+
21  */
+
22 
+
23 #ifndef FL_TERMFACTORY_H
+
24 #define FL_TERMFACTORY_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/factory/Factory.h"
+
29 #include "fl/term/Term.h"
+
30 
+
31 #include <vector>
+
32 #include <string>
+
33 
+
34 namespace fl {
+
35 
+
36  class FL_EXPORT TermFactory : public Factory<Term*>{
+
37  public:
+
38  TermFactory();
+
39  virtual ~TermFactory();
+
40 
+
41  };
+
42 }
+
43 #endif /* FL_TERMFACTORY_H */
+
44 
+
+
+ + + + diff --git a/docs/html/Term_8cpp.html b/docs/html/Term_8cpp.html new file mode 100644 index 0000000..4882dec --- /dev/null +++ b/docs/html/Term_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Term.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Term.cpp File Reference
+
+
+
#include "fl/term/Term.h"
+#include "fl/imex/FllExporter.h"
+
+Include dependency graph for Term.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Term_8cpp__incl.map b/docs/html/Term_8cpp__incl.map new file mode 100644 index 0000000..6481b60 --- /dev/null +++ b/docs/html/Term_8cpp__incl.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/Term_8cpp__incl.md5 b/docs/html/Term_8cpp__incl.md5 new file mode 100644 index 0000000..09daf3a --- /dev/null +++ b/docs/html/Term_8cpp__incl.md5 @@ -0,0 +1 @@ +26030f058f9e4d7c3de596898d43405b \ No newline at end of file diff --git a/docs/html/Term_8cpp__incl.png b/docs/html/Term_8cpp__incl.png new file mode 100644 index 0000000..5e0ace0 Binary files /dev/null and b/docs/html/Term_8cpp__incl.png differ diff --git a/docs/html/Term_8h.html b/docs/html/Term_8h.html new file mode 100644 index 0000000..249c533 --- /dev/null +++ b/docs/html/Term_8h.html @@ -0,0 +1,160 @@ + + + + + + +fuzzylite: fl/term/Term.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Term.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/Operation.h"
+#include <string>
+#include <limits>
+#include <iomanip>
+#include <cmath>
+#include <vector>
+
+Include dependency graph for Term.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Term
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Term_8h__dep__incl.map b/docs/html/Term_8h__dep__incl.map new file mode 100644 index 0000000..4f4f2c6 --- /dev/null +++ b/docs/html/Term_8h__dep__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Term_8h__dep__incl.md5 b/docs/html/Term_8h__dep__incl.md5 new file mode 100644 index 0000000..e772dd2 --- /dev/null +++ b/docs/html/Term_8h__dep__incl.md5 @@ -0,0 +1 @@ +8a1e04a268edfda33c0a0b660f91b908 \ No newline at end of file diff --git a/docs/html/Term_8h__dep__incl.png b/docs/html/Term_8h__dep__incl.png new file mode 100644 index 0000000..f32411d Binary files /dev/null and b/docs/html/Term_8h__dep__incl.png differ diff --git a/docs/html/Term_8h__incl.map b/docs/html/Term_8h__incl.map new file mode 100644 index 0000000..82fcad6 --- /dev/null +++ b/docs/html/Term_8h__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Term_8h__incl.md5 b/docs/html/Term_8h__incl.md5 new file mode 100644 index 0000000..c22f8fc --- /dev/null +++ b/docs/html/Term_8h__incl.md5 @@ -0,0 +1 @@ +8b9865d1a90939e66da5aec16962671c \ No newline at end of file diff --git a/docs/html/Term_8h__incl.png b/docs/html/Term_8h__incl.png new file mode 100644 index 0000000..4da7b9a Binary files /dev/null and b/docs/html/Term_8h__incl.png differ diff --git a/docs/html/Term_8h_source.html b/docs/html/Term_8h_source.html new file mode 100644 index 0000000..475ddb9 --- /dev/null +++ b/docs/html/Term_8h_source.html @@ -0,0 +1,186 @@ + + + + + + +fuzzylite: fl/term/Term.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Term.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Term.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_TERM_H
+
24 #define FL_TERM_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 #include "fl/Operation.h"
+
29 
+
30 #include <string>
+
31 #include <limits>
+
32 #include <iomanip>
+
33 #include <cmath>
+
34 #include <vector>
+
35 
+
36 namespace fl {
+
37 
+
38  class FL_EXPORT Term {
+
39  protected:
+
40  std::string _name;
+
41 
+
42  public:
+
43 
+
44  Term(const std::string& name = "");
+
45  virtual ~Term();
+
46 
+
51  virtual void setName(const std::string& name);
+
52  virtual std::string getName() const;
+
53 
+
54  virtual std::string toString() const;
+
55 
+
56  virtual std::string className() const = 0;
+
57  virtual std::string parameters() const = 0;
+
58  virtual void configure(const std::string& parameters) = 0;
+
59 
+
60  virtual scalar membership(scalar x) const = 0;
+
61 
+
62  virtual Term* copy() const = 0;
+
63 
+
64  };
+
65 
+
66 }
+
67 #endif /* FL_TERM_H */
+
+
+ + + + diff --git a/docs/html/Thresholded_8cpp.html b/docs/html/Thresholded_8cpp.html new file mode 100644 index 0000000..f3d70f7 --- /dev/null +++ b/docs/html/Thresholded_8cpp.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: src/term/Thresholded.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Thresholded.cpp File Reference
+
+
+
#include "fl/term/Thresholded.h"
+#include "fl/norm/TNorm.h"
+#include "fl/imex/FllExporter.h"
+#include <sstream>
+
+Include dependency graph for Thresholded.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Thresholded_8cpp__incl.map b/docs/html/Thresholded_8cpp__incl.map new file mode 100644 index 0000000..6f65f44 --- /dev/null +++ b/docs/html/Thresholded_8cpp__incl.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/docs/html/Thresholded_8cpp__incl.md5 b/docs/html/Thresholded_8cpp__incl.md5 new file mode 100644 index 0000000..de7a0fd --- /dev/null +++ b/docs/html/Thresholded_8cpp__incl.md5 @@ -0,0 +1 @@ +7f99fd6b07c421c3c1702c48111f123f \ No newline at end of file diff --git a/docs/html/Thresholded_8cpp__incl.png b/docs/html/Thresholded_8cpp__incl.png new file mode 100644 index 0000000..9416cdb Binary files /dev/null and b/docs/html/Thresholded_8cpp__incl.png differ diff --git a/docs/html/Thresholded_8h.html b/docs/html/Thresholded_8h.html new file mode 100644 index 0000000..5a71973 --- /dev/null +++ b/docs/html/Thresholded_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Thresholded.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Thresholded.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Thresholded.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Thresholded
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Thresholded_8h__dep__incl.map b/docs/html/Thresholded_8h__dep__incl.map new file mode 100644 index 0000000..8afa551 --- /dev/null +++ b/docs/html/Thresholded_8h__dep__incl.map @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Thresholded_8h__dep__incl.md5 b/docs/html/Thresholded_8h__dep__incl.md5 new file mode 100644 index 0000000..9b3ae72 --- /dev/null +++ b/docs/html/Thresholded_8h__dep__incl.md5 @@ -0,0 +1 @@ +4709d99e2762a99bf863b7f5f8e1b913 \ No newline at end of file diff --git a/docs/html/Thresholded_8h__dep__incl.png b/docs/html/Thresholded_8h__dep__incl.png new file mode 100644 index 0000000..2f0ce78 Binary files /dev/null and b/docs/html/Thresholded_8h__dep__incl.png differ diff --git a/docs/html/Thresholded_8h__incl.map b/docs/html/Thresholded_8h__incl.map new file mode 100644 index 0000000..4433ee2 --- /dev/null +++ b/docs/html/Thresholded_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Thresholded_8h__incl.md5 b/docs/html/Thresholded_8h__incl.md5 new file mode 100644 index 0000000..b309221 --- /dev/null +++ b/docs/html/Thresholded_8h__incl.md5 @@ -0,0 +1 @@ +21ffa976d01c33fd6e635ffbab20f3aa \ No newline at end of file diff --git a/docs/html/Thresholded_8h__incl.png b/docs/html/Thresholded_8h__incl.png new file mode 100644 index 0000000..d168c52 Binary files /dev/null and b/docs/html/Thresholded_8h__incl.png differ diff --git a/docs/html/Thresholded_8h_source.html b/docs/html/Thresholded_8h_source.html new file mode 100644 index 0000000..4b0a200 --- /dev/null +++ b/docs/html/Thresholded_8h_source.html @@ -0,0 +1,185 @@ + + + + + + +fuzzylite: fl/term/Thresholded.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Thresholded.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Thresholded.h
+
18  *
+
19  * Created on: 30/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_THRESHOLDED_H
+
24 #define FL_THRESHOLDED_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29  class TNorm;
+
30 
+
31  class FL_EXPORT Thresholded : public Term {
+
32  protected:
+
33  const Term* _term;
+ + +
36 
+
37  public:
+
38  Thresholded(const Term* term = NULL, scalar threshold = 1.0,
+
39  const TNorm* activationOperator = NULL);
+
40 
+
41  virtual ~Thresholded();
+
42 
+
43  virtual std::string className() const;
+
44  virtual std::string parameters() const;
+
45  virtual void configure(const std::string& parameters);
+
46 
+
47  virtual scalar membership(scalar x) const;
+
48 
+
49  virtual void setTerm(const Term* term);
+
50  virtual const Term* getTerm() const;
+
51 
+
52  virtual void setThreshold(scalar threshold);
+
53  virtual scalar getThreshold() const;
+
54 
+
55  virtual void setActivation(const TNorm* activation);
+
56  virtual const TNorm* getActivation() const;
+
57 
+
58  virtual Thresholded* copy() const;
+
59  };
+
60 
+
61 }
+
62 #endif /* FL_THRESHOLDED_H */
+
+
+ + + + diff --git a/docs/html/Trapezoid_8cpp.html b/docs/html/Trapezoid_8cpp.html new file mode 100644 index 0000000..e73bc32 --- /dev/null +++ b/docs/html/Trapezoid_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Trapezoid.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Trapezoid.cpp File Reference
+
+
+
#include "fl/term/Trapezoid.h"
+#include <sstream>
+
+Include dependency graph for Trapezoid.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Trapezoid_8cpp__incl.map b/docs/html/Trapezoid_8cpp__incl.map new file mode 100644 index 0000000..af9a6d2 --- /dev/null +++ b/docs/html/Trapezoid_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Trapezoid_8cpp__incl.md5 b/docs/html/Trapezoid_8cpp__incl.md5 new file mode 100644 index 0000000..9a5c660 --- /dev/null +++ b/docs/html/Trapezoid_8cpp__incl.md5 @@ -0,0 +1 @@ +60943b6c6b043c15101abf4aa293d1cd \ No newline at end of file diff --git a/docs/html/Trapezoid_8cpp__incl.png b/docs/html/Trapezoid_8cpp__incl.png new file mode 100644 index 0000000..2c008b7 Binary files /dev/null and b/docs/html/Trapezoid_8cpp__incl.png differ diff --git a/docs/html/Trapezoid_8h.html b/docs/html/Trapezoid_8h.html new file mode 100644 index 0000000..fc3b656 --- /dev/null +++ b/docs/html/Trapezoid_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Trapezoid.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Trapezoid.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Trapezoid.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Trapezoid
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Trapezoid_8h__dep__incl.map b/docs/html/Trapezoid_8h__dep__incl.map new file mode 100644 index 0000000..889e617 --- /dev/null +++ b/docs/html/Trapezoid_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Trapezoid_8h__dep__incl.md5 b/docs/html/Trapezoid_8h__dep__incl.md5 new file mode 100644 index 0000000..ab16929 --- /dev/null +++ b/docs/html/Trapezoid_8h__dep__incl.md5 @@ -0,0 +1 @@ +0ccc3042d759911948105719bbcbe4b0 \ No newline at end of file diff --git a/docs/html/Trapezoid_8h__dep__incl.png b/docs/html/Trapezoid_8h__dep__incl.png new file mode 100644 index 0000000..2efc998 Binary files /dev/null and b/docs/html/Trapezoid_8h__dep__incl.png differ diff --git a/docs/html/Trapezoid_8h__incl.map b/docs/html/Trapezoid_8h__incl.map new file mode 100644 index 0000000..9bf52e6 --- /dev/null +++ b/docs/html/Trapezoid_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Trapezoid_8h__incl.md5 b/docs/html/Trapezoid_8h__incl.md5 new file mode 100644 index 0000000..940784d --- /dev/null +++ b/docs/html/Trapezoid_8h__incl.md5 @@ -0,0 +1 @@ +c71430a2d1a2e106414446cc9e5676d9 \ No newline at end of file diff --git a/docs/html/Trapezoid_8h__incl.png b/docs/html/Trapezoid_8h__incl.png new file mode 100644 index 0000000..83344eb Binary files /dev/null and b/docs/html/Trapezoid_8h__incl.png differ diff --git a/docs/html/Trapezoid_8h_source.html b/docs/html/Trapezoid_8h_source.html new file mode 100644 index 0000000..1e88700 --- /dev/null +++ b/docs/html/Trapezoid_8h_source.html @@ -0,0 +1,188 @@ + + + + + + +fuzzylite: fl/term/Trapezoid.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Trapezoid.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Trapezoid.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_TRAPEZOID_H
+
24 #define FL_TRAPEZOID_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Trapezoid : public Term {
+
31  protected:
+
32  scalar _a, _b, _c, _d;
+
33  public:
+
34  Trapezoid(const std::string& name = "",
+
35  scalar a = -fl::inf,
+
36  scalar b = fl::nan,
+
37  scalar c = fl::nan,
+
38  scalar d = fl::inf);
+
39  virtual ~Trapezoid();
+
40 
+
41  virtual std::string className() const;
+
42  virtual std::string parameters() const;
+
43  virtual void configure(const std::string& parameters);
+
44 
+
45  virtual scalar membership(scalar x) const;
+
46 
+
47  virtual void setA(scalar a);
+
48  virtual scalar getA() const;
+
49 
+
50  virtual void setB(scalar b);
+
51  virtual scalar getB() const;
+
52 
+
53  virtual void setC(scalar c);
+
54  virtual scalar getC() const;
+
55 
+
56  virtual void setD(scalar d);
+
57  virtual scalar getD() const;
+
58 
+
59  virtual Trapezoid* copy() const;
+
60 
+
61  static Term* constructor();
+
62  };
+
63 
+
64 }
+
65 #endif /* FL_TRAPEZOID_H */
+
+
+ + + + diff --git a/docs/html/Triangle_8cpp.html b/docs/html/Triangle_8cpp.html new file mode 100644 index 0000000..a032ac4 --- /dev/null +++ b/docs/html/Triangle_8cpp.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/term/Triangle.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Triangle.cpp File Reference
+
+
+
#include "fl/term/Triangle.h"
+#include <sstream>
+
+Include dependency graph for Triangle.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Triangle_8cpp__incl.map b/docs/html/Triangle_8cpp__incl.map new file mode 100644 index 0000000..5d75225 --- /dev/null +++ b/docs/html/Triangle_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/Triangle_8cpp__incl.md5 b/docs/html/Triangle_8cpp__incl.md5 new file mode 100644 index 0000000..3754682 --- /dev/null +++ b/docs/html/Triangle_8cpp__incl.md5 @@ -0,0 +1 @@ +490a44cb05e75049ebb38b9086274b41 \ No newline at end of file diff --git a/docs/html/Triangle_8cpp__incl.png b/docs/html/Triangle_8cpp__incl.png new file mode 100644 index 0000000..52f252b Binary files /dev/null and b/docs/html/Triangle_8cpp__incl.png differ diff --git a/docs/html/Triangle_8h.html b/docs/html/Triangle_8h.html new file mode 100644 index 0000000..0b420ef --- /dev/null +++ b/docs/html/Triangle_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/Triangle.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Triangle.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for Triangle.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Triangle
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Triangle_8h__dep__incl.map b/docs/html/Triangle_8h__dep__incl.map new file mode 100644 index 0000000..939b0b7 --- /dev/null +++ b/docs/html/Triangle_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Triangle_8h__dep__incl.md5 b/docs/html/Triangle_8h__dep__incl.md5 new file mode 100644 index 0000000..f40ed00 --- /dev/null +++ b/docs/html/Triangle_8h__dep__incl.md5 @@ -0,0 +1 @@ +f7f5f2c881aab4d1e7cc33d08870cba2 \ No newline at end of file diff --git a/docs/html/Triangle_8h__dep__incl.png b/docs/html/Triangle_8h__dep__incl.png new file mode 100644 index 0000000..29f04c7 Binary files /dev/null and b/docs/html/Triangle_8h__dep__incl.png differ diff --git a/docs/html/Triangle_8h__incl.map b/docs/html/Triangle_8h__incl.map new file mode 100644 index 0000000..6c4c58e --- /dev/null +++ b/docs/html/Triangle_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/Triangle_8h__incl.md5 b/docs/html/Triangle_8h__incl.md5 new file mode 100644 index 0000000..7347eeb --- /dev/null +++ b/docs/html/Triangle_8h__incl.md5 @@ -0,0 +1 @@ +43cfa3ed15e15bea9fdbe8c0706bc294 \ No newline at end of file diff --git a/docs/html/Triangle_8h__incl.png b/docs/html/Triangle_8h__incl.png new file mode 100644 index 0000000..5ace3f7 Binary files /dev/null and b/docs/html/Triangle_8h__incl.png differ diff --git a/docs/html/Triangle_8h_source.html b/docs/html/Triangle_8h_source.html new file mode 100644 index 0000000..67ef224 --- /dev/null +++ b/docs/html/Triangle_8h_source.html @@ -0,0 +1,187 @@ + + + + + + +fuzzylite: fl/term/Triangle.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Triangle.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Triangle.h
+
18  *
+
19  * Created on: 29/11/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_TRIANGLE_H
+
24 #define FL_TRIANGLE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Triangle : public Term {
+
31  protected:
+ + + +
35  public:
+
36  Triangle(const std::string& name = "",
+
37  scalar a = fl::nan,
+
38  scalar b = fl::nan,
+
39  scalar c = fl::nan);
+
40  virtual ~Triangle();
+
41 
+
42  virtual std::string className() const;
+
43  virtual std::string parameters() const;
+
44  virtual void configure(const std::string& parameters);
+
45 
+
46  virtual scalar membership(scalar x) const;
+
47 
+
48  virtual void setA(scalar a);
+
49  virtual scalar getA() const;
+
50 
+
51  virtual void setB(scalar b);
+
52  virtual scalar getB() const;
+
53 
+
54  virtual void setC(scalar c);
+
55  virtual scalar getC() const;
+
56 
+
57  virtual Triangle* copy() const;
+
58 
+
59  static Term* constructor();
+
60 
+
61  };
+
62 
+
63 }
+
64 #endif /* FL_TRIANGLE_H */
+
+
+ + + + diff --git a/docs/html/Tsukamoto_8cpp.html b/docs/html/Tsukamoto_8cpp.html new file mode 100644 index 0000000..14b93a5 --- /dev/null +++ b/docs/html/Tsukamoto_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/defuzzifier/Tsukamoto.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Tsukamoto.cpp File Reference
+
+
+
#include "fl/defuzzifier/Tsukamoto.h"
+#include "fl/term/Thresholded.h"
+#include "fl/term/Ramp.h"
+#include "fl/term/Sigmoid.h"
+#include "fl/term/SShape.h"
+#include "fl/term/ZShape.h"
+
+Include dependency graph for Tsukamoto.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Tsukamoto_8cpp__incl.map b/docs/html/Tsukamoto_8cpp__incl.map new file mode 100644 index 0000000..ca6c411 --- /dev/null +++ b/docs/html/Tsukamoto_8cpp__incl.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/docs/html/Tsukamoto_8cpp__incl.md5 b/docs/html/Tsukamoto_8cpp__incl.md5 new file mode 100644 index 0000000..273601a --- /dev/null +++ b/docs/html/Tsukamoto_8cpp__incl.md5 @@ -0,0 +1 @@ +63f2ca53231d74b1a39e593e62746a71 \ No newline at end of file diff --git a/docs/html/Tsukamoto_8cpp__incl.png b/docs/html/Tsukamoto_8cpp__incl.png new file mode 100644 index 0000000..82b854f Binary files /dev/null and b/docs/html/Tsukamoto_8cpp__incl.png differ diff --git a/docs/html/Tsukamoto_8h.html b/docs/html/Tsukamoto_8h.html new file mode 100644 index 0000000..53dd9a0 --- /dev/null +++ b/docs/html/Tsukamoto_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/Tsukamoto.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Tsukamoto.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+
+Include dependency graph for Tsukamoto.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Tsukamoto
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Tsukamoto_8h__dep__incl.map b/docs/html/Tsukamoto_8h__dep__incl.map new file mode 100644 index 0000000..d6ee78b --- /dev/null +++ b/docs/html/Tsukamoto_8h__dep__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Tsukamoto_8h__dep__incl.md5 b/docs/html/Tsukamoto_8h__dep__incl.md5 new file mode 100644 index 0000000..890e5fb --- /dev/null +++ b/docs/html/Tsukamoto_8h__dep__incl.md5 @@ -0,0 +1 @@ +75817f0948c3997ee0d4c9031c260041 \ No newline at end of file diff --git a/docs/html/Tsukamoto_8h__dep__incl.png b/docs/html/Tsukamoto_8h__dep__incl.png new file mode 100644 index 0000000..e2941c0 Binary files /dev/null and b/docs/html/Tsukamoto_8h__dep__incl.png differ diff --git a/docs/html/Tsukamoto_8h__incl.map b/docs/html/Tsukamoto_8h__incl.map new file mode 100644 index 0000000..fa5f917 --- /dev/null +++ b/docs/html/Tsukamoto_8h__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/Tsukamoto_8h__incl.md5 b/docs/html/Tsukamoto_8h__incl.md5 new file mode 100644 index 0000000..f7898b9 --- /dev/null +++ b/docs/html/Tsukamoto_8h__incl.md5 @@ -0,0 +1 @@ +734d9a96b86e45717caf160ccadf405d \ No newline at end of file diff --git a/docs/html/Tsukamoto_8h__incl.png b/docs/html/Tsukamoto_8h__incl.png new file mode 100644 index 0000000..6d87513 Binary files /dev/null and b/docs/html/Tsukamoto_8h__incl.png differ diff --git a/docs/html/Tsukamoto_8h_source.html b/docs/html/Tsukamoto_8h_source.html new file mode 100644 index 0000000..20514ed --- /dev/null +++ b/docs/html/Tsukamoto_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/defuzzifier/Tsukamoto.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Tsukamoto.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 /*
+
16  * File: Tsukamoto.h
+
17  * Author: jcrada
+
18  *
+
19  * Created on 13 December 2013, 4:24 PM
+
20  */
+
21 
+
22 #ifndef FL_TSUKAMOTO_H
+
23 #define FL_TSUKAMOTO_H
+
24 
+
25 #include "fl/fuzzylite.h"
+
26 
+
27 namespace fl {
+
28  class Thresholded;
+
29 
+ +
31  public:
+
32  static scalar tsukamoto(const Thresholded* term, scalar minimum, scalar maximum);
+
33  };
+
34 
+
35 }
+
36 
+
37 #endif /* FL_TSUKAMOTO_H */
+
38 
+
+
+ + + + diff --git a/docs/html/Variable_8cpp.html b/docs/html/Variable_8cpp.html new file mode 100644 index 0000000..818ac70 --- /dev/null +++ b/docs/html/Variable_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/variable/Variable.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Variable.cpp File Reference
+
+
+
#include "fl/variable/Variable.h"
+#include "fl/term/Term.h"
+#include "fl/norm/Norm.h"
+#include "fl/imex/FllExporter.h"
+#include <algorithm>
+#include <sstream>
+
+Include dependency graph for Variable.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Variable_8cpp__incl.map b/docs/html/Variable_8cpp__incl.map new file mode 100644 index 0000000..858db26 --- /dev/null +++ b/docs/html/Variable_8cpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/Variable_8cpp__incl.md5 b/docs/html/Variable_8cpp__incl.md5 new file mode 100644 index 0000000..0a95d3c --- /dev/null +++ b/docs/html/Variable_8cpp__incl.md5 @@ -0,0 +1 @@ +25e825c1fb7a9f3b3aaeb002c9ee5ce0 \ No newline at end of file diff --git a/docs/html/Variable_8cpp__incl.png b/docs/html/Variable_8cpp__incl.png new file mode 100644 index 0000000..17f7a1d Binary files /dev/null and b/docs/html/Variable_8cpp__incl.png differ diff --git a/docs/html/Variable_8h.html b/docs/html/Variable_8h.html new file mode 100644 index 0000000..3b3154e --- /dev/null +++ b/docs/html/Variable_8h.html @@ -0,0 +1,162 @@ + + + + + + +fuzzylite: fl/variable/Variable.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Variable.h File Reference
+
+
+
#include "fl/fuzzylite.h"
+#include "fl/defuzzifier/Centroid.h"
+#include "fl/norm/Norm.h"
+#include <string>
+#include <vector>
+#include <limits>
+#include <map>
+
+Include dependency graph for Variable.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + + + +

+Classes

class  fl::Variable
 
struct  fl::Variable::SortByCoG
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Variable_8h__dep__incl.map b/docs/html/Variable_8h__dep__incl.map new file mode 100644 index 0000000..7226d4e --- /dev/null +++ b/docs/html/Variable_8h__dep__incl.map @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/Variable_8h__dep__incl.md5 b/docs/html/Variable_8h__dep__incl.md5 new file mode 100644 index 0000000..4a88d86 --- /dev/null +++ b/docs/html/Variable_8h__dep__incl.md5 @@ -0,0 +1 @@ +2e70d1417a794124ccdffeef1ad94cb7 \ No newline at end of file diff --git a/docs/html/Variable_8h__dep__incl.png b/docs/html/Variable_8h__dep__incl.png new file mode 100644 index 0000000..f3f3919 Binary files /dev/null and b/docs/html/Variable_8h__dep__incl.png differ diff --git a/docs/html/Variable_8h__incl.map b/docs/html/Variable_8h__incl.map new file mode 100644 index 0000000..7496339 --- /dev/null +++ b/docs/html/Variable_8h__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/Variable_8h__incl.md5 b/docs/html/Variable_8h__incl.md5 new file mode 100644 index 0000000..7bbf291 --- /dev/null +++ b/docs/html/Variable_8h__incl.md5 @@ -0,0 +1 @@ +7517478466c8a136038e28fbb5f70bf1 \ No newline at end of file diff --git a/docs/html/Variable_8h__incl.png b/docs/html/Variable_8h__incl.png new file mode 100644 index 0000000..bca0179 Binary files /dev/null and b/docs/html/Variable_8h__incl.png differ diff --git a/docs/html/Variable_8h_source.html b/docs/html/Variable_8h_source.html new file mode 100644 index 0000000..9bc67fb --- /dev/null +++ b/docs/html/Variable_8h_source.html @@ -0,0 +1,222 @@ + + + + + + +fuzzylite: fl/variable/Variable.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Variable.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Variable.h
+
18  *
+
19  * Created on: 2/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_VARIABLE_H
+
24 #define FL_VARIABLE_H
+
25 
+
26 #include "fl/fuzzylite.h"
+
27 
+
28 
+ +
30 #include "fl/norm/Norm.h"
+
31 
+
32 #include <string>
+
33 #include <vector>
+
34 #include <limits>
+
35 #include <map>
+
36 namespace fl {
+
37 
+
38  class Term;
+
39 
+ +
41  protected:
+
42  std::string _name;
+
43  std::vector<Term*> _terms;
+
44  scalar _minimum, _maximum;
+
45  bool _enabled;
+
46 
+
47  struct SortByCoG {
+
48  std::map<const Term*, scalar> centroids;
+
49 
+
50  bool operator() (const Term* a, const Term * b) {
+
51  return fl::Op::isLt(
+
52  centroids.find(a)->second,
+
53  centroids.find(b)->second);
+
54  }
+
55  };
+
56 
+
57  public:
+
58  Variable(const std::string& name = "",
+
59  scalar minimum = -fl::inf,
+
60  scalar maximum = fl::inf);
+
61  Variable(const Variable& copy);
+
62 
+
63  virtual ~Variable();
+
64 
+
65  virtual void setName(const std::string& name);
+
66  virtual std::string getName() const;
+
67 
+
68  virtual void setRange(scalar minimum, scalar maximum);
+
69  virtual scalar range() const;
+
70 
+
71  virtual void setMinimum(scalar minimum);
+
72  virtual scalar getMinimum() const;
+
73 
+
74  virtual void setMaximum(scalar maximum);
+
75  virtual scalar getMaximum() const;
+
76 
+
77  virtual void setEnabled(bool enabled);
+
78  virtual bool isEnabled() const ;
+
79 
+
80  virtual std::string fuzzify(scalar x) const;
+
81  virtual Term* highestMembership(scalar x, scalar* yhighest = NULL) const;
+
82 
+
83  virtual std::string toString() const;
+
84 
+
88  virtual void sort();
+
89  virtual void addTerm(Term* term);
+
90  virtual void insertTerm(Term* term, int index);
+
91  virtual Term* getTerm(int index) const;
+
92  virtual Term* getTerm(const std::string& name) const;
+
93  virtual bool hasTerm(const std::string& name) const;
+
94  virtual Term* removeTerm(int index);
+
95  virtual int numberOfTerms() const;
+
96  virtual const std::vector<Term*>& terms() const;
+
97 
+
98  };
+
99 
+
100 }
+
101 
+
102 #endif /* FL_VARIABLE_H */
+
+
+ + + + diff --git a/docs/html/Very_8cpp.html b/docs/html/Very_8cpp.html new file mode 100644 index 0000000..cbbff44 --- /dev/null +++ b/docs/html/Very_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/hedge/Very.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Very.cpp File Reference
+
+
+
#include "fl/hedge/Very.h"
+
+Include dependency graph for Very.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Very_8cpp__incl.map b/docs/html/Very_8cpp__incl.map new file mode 100644 index 0000000..23eeee9 --- /dev/null +++ b/docs/html/Very_8cpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/Very_8cpp__incl.md5 b/docs/html/Very_8cpp__incl.md5 new file mode 100644 index 0000000..7633c95 --- /dev/null +++ b/docs/html/Very_8cpp__incl.md5 @@ -0,0 +1 @@ +197713d2509a86f4e61f230f5811d20a \ No newline at end of file diff --git a/docs/html/Very_8cpp__incl.png b/docs/html/Very_8cpp__incl.png new file mode 100644 index 0000000..9f0b916 Binary files /dev/null and b/docs/html/Very_8cpp__incl.png differ diff --git a/docs/html/Very_8h.html b/docs/html/Very_8h.html new file mode 100644 index 0000000..658a886 --- /dev/null +++ b/docs/html/Very_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/hedge/Very.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Very.h File Reference
+
+
+
#include "fl/hedge/Hedge.h"
+
+Include dependency graph for Very.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::Very
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/Very_8h__dep__incl.map b/docs/html/Very_8h__dep__incl.map new file mode 100644 index 0000000..1e33d88 --- /dev/null +++ b/docs/html/Very_8h__dep__incl.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/Very_8h__dep__incl.md5 b/docs/html/Very_8h__dep__incl.md5 new file mode 100644 index 0000000..0ed5fe4 --- /dev/null +++ b/docs/html/Very_8h__dep__incl.md5 @@ -0,0 +1 @@ +5fe9f0f96aa7b6aaa9cffe679099c3a4 \ No newline at end of file diff --git a/docs/html/Very_8h__dep__incl.png b/docs/html/Very_8h__dep__incl.png new file mode 100644 index 0000000..3b5cc9e Binary files /dev/null and b/docs/html/Very_8h__dep__incl.png differ diff --git a/docs/html/Very_8h__incl.map b/docs/html/Very_8h__incl.map new file mode 100644 index 0000000..ec38eaa --- /dev/null +++ b/docs/html/Very_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/Very_8h__incl.md5 b/docs/html/Very_8h__incl.md5 new file mode 100644 index 0000000..8be1c1c --- /dev/null +++ b/docs/html/Very_8h__incl.md5 @@ -0,0 +1 @@ +bfc6ebee8e75990ee51fa63e3a90092b \ No newline at end of file diff --git a/docs/html/Very_8h__incl.png b/docs/html/Very_8h__incl.png new file mode 100644 index 0000000..d50bd7b Binary files /dev/null and b/docs/html/Very_8h__incl.png differ diff --git a/docs/html/Very_8h_source.html b/docs/html/Very_8h_source.html new file mode 100644 index 0000000..765f13a --- /dev/null +++ b/docs/html/Very_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +fuzzylite: fl/hedge/Very.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Very.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * Very.h
+
18  *
+
19  * Created on: 4/12/2012
+
20  * Author: jcrada
+
21  */
+
22 
+
23 #ifndef FL_VERY_H
+
24 #define FL_VERY_H
+
25 
+
26 #include "fl/hedge/Hedge.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT Very : public Hedge {
+
31  public:
+
32  std::string name() const;
+
33  scalar hedge(scalar x) const;
+
34  static Hedge* constructor();
+
35  };
+
36 
+
37 }
+
38 #endif /* FL_VERY_H */
+
+
+ + + + diff --git a/docs/html/WeightedAverage_8cpp.html b/docs/html/WeightedAverage_8cpp.html new file mode 100644 index 0000000..8325d49 --- /dev/null +++ b/docs/html/WeightedAverage_8cpp.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: src/defuzzifier/WeightedAverage.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
WeightedAverage.cpp File Reference
+
+
+
+Include dependency graph for WeightedAverage.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/WeightedAverage_8cpp__incl.map b/docs/html/WeightedAverage_8cpp__incl.map new file mode 100644 index 0000000..e586884 --- /dev/null +++ b/docs/html/WeightedAverage_8cpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/WeightedAverage_8cpp__incl.md5 b/docs/html/WeightedAverage_8cpp__incl.md5 new file mode 100644 index 0000000..2a993df --- /dev/null +++ b/docs/html/WeightedAverage_8cpp__incl.md5 @@ -0,0 +1 @@ +7c285a74334bed19242cecf8a23d412f \ No newline at end of file diff --git a/docs/html/WeightedAverage_8cpp__incl.png b/docs/html/WeightedAverage_8cpp__incl.png new file mode 100644 index 0000000..8641619 Binary files /dev/null and b/docs/html/WeightedAverage_8cpp__incl.png differ diff --git a/docs/html/WeightedAverage_8h.html b/docs/html/WeightedAverage_8h.html new file mode 100644 index 0000000..35f16b9 --- /dev/null +++ b/docs/html/WeightedAverage_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/WeightedAverage.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
WeightedAverage.h File Reference
+
+
+
+Include dependency graph for WeightedAverage.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::WeightedAverage
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/WeightedAverage_8h__dep__incl.map b/docs/html/WeightedAverage_8h__dep__incl.map new file mode 100644 index 0000000..013eb68 --- /dev/null +++ b/docs/html/WeightedAverage_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/WeightedAverage_8h__dep__incl.md5 b/docs/html/WeightedAverage_8h__dep__incl.md5 new file mode 100644 index 0000000..834b4fa --- /dev/null +++ b/docs/html/WeightedAverage_8h__dep__incl.md5 @@ -0,0 +1 @@ +719098caef1526efcaa101aad7c67d3d \ No newline at end of file diff --git a/docs/html/WeightedAverage_8h__dep__incl.png b/docs/html/WeightedAverage_8h__dep__incl.png new file mode 100644 index 0000000..8a7a112 Binary files /dev/null and b/docs/html/WeightedAverage_8h__dep__incl.png differ diff --git a/docs/html/WeightedAverage_8h__incl.map b/docs/html/WeightedAverage_8h__incl.map new file mode 100644 index 0000000..396c625 --- /dev/null +++ b/docs/html/WeightedAverage_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/WeightedAverage_8h__incl.md5 b/docs/html/WeightedAverage_8h__incl.md5 new file mode 100644 index 0000000..157c9ec --- /dev/null +++ b/docs/html/WeightedAverage_8h__incl.md5 @@ -0,0 +1 @@ +a9b30d566be678d6326ce0638ec977d7 \ No newline at end of file diff --git a/docs/html/WeightedAverage_8h__incl.png b/docs/html/WeightedAverage_8h__incl.png new file mode 100644 index 0000000..a36e2fb Binary files /dev/null and b/docs/html/WeightedAverage_8h__incl.png differ diff --git a/docs/html/WeightedAverage_8h_source.html b/docs/html/WeightedAverage_8h_source.html new file mode 100644 index 0000000..ab13b6a --- /dev/null +++ b/docs/html/WeightedAverage_8h_source.html @@ -0,0 +1,169 @@ + + + + + + +fuzzylite: fl/defuzzifier/WeightedAverage.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
WeightedAverage.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: WeightedAverage.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 4:15 PM
+
21  */
+
22 
+
23 #ifndef FL_WEIGHTEDAVERAGE_H
+
24 #define FL_WEIGHTEDAVERAGE_H
+
25 
+ +
27 
+
28 namespace fl {
+
29  class Thresholded;
+
30 
+ +
32  public:
+
33 
+ +
35  virtual ~WeightedAverage();
+
36 
+
37  virtual std::string className() const;
+
38  virtual scalar defuzzify(const Term* term,
+
39  scalar minimum, scalar maximum) const;
+
40 
+
41  static Defuzzifier* constructor();
+
42  };
+
43 }
+
44 
+
45 #endif /* FL_WEIGHTEDAVERAGE_H */
+
46 
+
+
+ + + + diff --git a/docs/html/WeightedSum_8cpp.html b/docs/html/WeightedSum_8cpp.html new file mode 100644 index 0000000..605b992 --- /dev/null +++ b/docs/html/WeightedSum_8cpp.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: src/defuzzifier/WeightedSum.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
WeightedSum.cpp File Reference
+
+
+
+Include dependency graph for WeightedSum.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/WeightedSum_8cpp__incl.map b/docs/html/WeightedSum_8cpp__incl.map new file mode 100644 index 0000000..61116a6 --- /dev/null +++ b/docs/html/WeightedSum_8cpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/docs/html/WeightedSum_8cpp__incl.md5 b/docs/html/WeightedSum_8cpp__incl.md5 new file mode 100644 index 0000000..e6e52fd --- /dev/null +++ b/docs/html/WeightedSum_8cpp__incl.md5 @@ -0,0 +1 @@ +92f27e0125e3130d5a75285d8322e6c6 \ No newline at end of file diff --git a/docs/html/WeightedSum_8cpp__incl.png b/docs/html/WeightedSum_8cpp__incl.png new file mode 100644 index 0000000..063a7b9 Binary files /dev/null and b/docs/html/WeightedSum_8cpp__incl.png differ diff --git a/docs/html/WeightedSum_8h.html b/docs/html/WeightedSum_8h.html new file mode 100644 index 0000000..aad6e52 --- /dev/null +++ b/docs/html/WeightedSum_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/defuzzifier/WeightedSum.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
WeightedSum.h File Reference
+
+
+
+Include dependency graph for WeightedSum.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::WeightedSum
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/WeightedSum_8h__dep__incl.map b/docs/html/WeightedSum_8h__dep__incl.map new file mode 100644 index 0000000..1d1734d --- /dev/null +++ b/docs/html/WeightedSum_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/WeightedSum_8h__dep__incl.md5 b/docs/html/WeightedSum_8h__dep__incl.md5 new file mode 100644 index 0000000..3aa5f2c --- /dev/null +++ b/docs/html/WeightedSum_8h__dep__incl.md5 @@ -0,0 +1 @@ +d4e55bb22148500ac86188cd732cc584 \ No newline at end of file diff --git a/docs/html/WeightedSum_8h__dep__incl.png b/docs/html/WeightedSum_8h__dep__incl.png new file mode 100644 index 0000000..5324bae Binary files /dev/null and b/docs/html/WeightedSum_8h__dep__incl.png differ diff --git a/docs/html/WeightedSum_8h__incl.map b/docs/html/WeightedSum_8h__incl.map new file mode 100644 index 0000000..3fefd85 --- /dev/null +++ b/docs/html/WeightedSum_8h__incl.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/WeightedSum_8h__incl.md5 b/docs/html/WeightedSum_8h__incl.md5 new file mode 100644 index 0000000..09fdbcc --- /dev/null +++ b/docs/html/WeightedSum_8h__incl.md5 @@ -0,0 +1 @@ +49efc24c44fbbc5bddeecf950a7c505d \ No newline at end of file diff --git a/docs/html/WeightedSum_8h__incl.png b/docs/html/WeightedSum_8h__incl.png new file mode 100644 index 0000000..2c1a1c3 Binary files /dev/null and b/docs/html/WeightedSum_8h__incl.png differ diff --git a/docs/html/WeightedSum_8h_source.html b/docs/html/WeightedSum_8h_source.html new file mode 100644 index 0000000..913a5da --- /dev/null +++ b/docs/html/WeightedSum_8h_source.html @@ -0,0 +1,169 @@ + + + + + + +fuzzylite: fl/defuzzifier/WeightedSum.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
WeightedSum.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: WeightedSum.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 8 May 2013, 4:15 PM
+
21  */
+
22 
+
23 #ifndef FL_WEIGHTEDSUM_H
+
24 #define FL_WEIGHTEDSUM_H
+
25 
+
26 
+ +
28 
+
29 namespace fl {
+
30 
+ +
32  public:
+
33 
+
34  WeightedSum();
+
35  virtual ~WeightedSum();
+
36 
+
37  virtual std::string className() const ;
+
38  virtual scalar defuzzify(const Term* term,
+
39  scalar minimum, scalar maximum) const;
+
40 
+
41  static Defuzzifier* constructor();
+
42  };
+
43 }
+
44 
+
45 #endif /* FL_WEIGHTEDSUM_H */
+
46 
+
+
+ + + + diff --git a/docs/html/ZShape_8cpp.html b/docs/html/ZShape_8cpp.html new file mode 100644 index 0000000..883a079 --- /dev/null +++ b/docs/html/ZShape_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/term/ZShape.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
ZShape.cpp File Reference
+
+
+
#include "fl/term/ZShape.h"
+
+Include dependency graph for ZShape.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/ZShape_8cpp__incl.map b/docs/html/ZShape_8cpp__incl.map new file mode 100644 index 0000000..9068547 --- /dev/null +++ b/docs/html/ZShape_8cpp__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/ZShape_8cpp__incl.md5 b/docs/html/ZShape_8cpp__incl.md5 new file mode 100644 index 0000000..d7dc4cb --- /dev/null +++ b/docs/html/ZShape_8cpp__incl.md5 @@ -0,0 +1 @@ +f21c8caedcc93418e4e928dabf094bac \ No newline at end of file diff --git a/docs/html/ZShape_8cpp__incl.png b/docs/html/ZShape_8cpp__incl.png new file mode 100644 index 0000000..27949c5 Binary files /dev/null and b/docs/html/ZShape_8cpp__incl.png differ diff --git a/docs/html/ZShape_8h.html b/docs/html/ZShape_8h.html new file mode 100644 index 0000000..39ce009 --- /dev/null +++ b/docs/html/ZShape_8h.html @@ -0,0 +1,154 @@ + + + + + + +fuzzylite: fl/term/ZShape.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
ZShape.h File Reference
+
+
+
#include "fl/term/Term.h"
+
+Include dependency graph for ZShape.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::ZShape
 
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/ZShape_8h__dep__incl.map b/docs/html/ZShape_8h__dep__incl.map new file mode 100644 index 0000000..9c79b62 --- /dev/null +++ b/docs/html/ZShape_8h__dep__incl.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/docs/html/ZShape_8h__dep__incl.md5 b/docs/html/ZShape_8h__dep__incl.md5 new file mode 100644 index 0000000..a3dd4a3 --- /dev/null +++ b/docs/html/ZShape_8h__dep__incl.md5 @@ -0,0 +1 @@ +680d15db0cf732611cec4829f992daba \ No newline at end of file diff --git a/docs/html/ZShape_8h__dep__incl.png b/docs/html/ZShape_8h__dep__incl.png new file mode 100644 index 0000000..abaf1c7 Binary files /dev/null and b/docs/html/ZShape_8h__dep__incl.png differ diff --git a/docs/html/ZShape_8h__incl.map b/docs/html/ZShape_8h__incl.map new file mode 100644 index 0000000..b02f2d2 --- /dev/null +++ b/docs/html/ZShape_8h__incl.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/ZShape_8h__incl.md5 b/docs/html/ZShape_8h__incl.md5 new file mode 100644 index 0000000..1b8c7d6 --- /dev/null +++ b/docs/html/ZShape_8h__incl.md5 @@ -0,0 +1 @@ +90a5b931c166062f7a08ab715c4dc19c \ No newline at end of file diff --git a/docs/html/ZShape_8h__incl.png b/docs/html/ZShape_8h__incl.png new file mode 100644 index 0000000..22ec0d0 Binary files /dev/null and b/docs/html/ZShape_8h__incl.png differ diff --git a/docs/html/ZShape_8h_source.html b/docs/html/ZShape_8h_source.html new file mode 100644 index 0000000..a2c331a --- /dev/null +++ b/docs/html/ZShape_8h_source.html @@ -0,0 +1,183 @@ + + + + + + +fuzzylite: fl/term/ZShape.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
ZShape.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: ZShape.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 22 December 2012, 5:07 PM
+
21  */
+
22 
+
23 #ifndef FL_ZSHAPE_H
+
24 #define FL_ZSHAPE_H
+
25 
+
26 #include "fl/term/Term.h"
+
27 
+
28 namespace fl {
+
29 
+
30  class FL_EXPORT ZShape : public Term {
+
31  protected:
+
32  scalar _start, _end;
+
33 
+
34  public:
+
35  ZShape(const std::string& name = "",
+
36  scalar _start = -fl::inf,
+
37  scalar _end = fl::inf);
+
38 
+
39  virtual ~ZShape();
+
40 
+
41  virtual std::string className() const;
+
42  virtual std::string parameters() const;
+
43  virtual void configure(const std::string& parameters);
+
44 
+
45  virtual scalar membership(scalar x) const;
+
46 
+
47  virtual void setStart(scalar start);
+
48  virtual scalar getStart() const;
+
49 
+
50  virtual void setEnd(scalar end);
+
51  virtual scalar getEnd() const;
+
52 
+
53  virtual ZShape* copy() const;
+
54 
+
55  static Term* constructor();
+
56 
+
57  };
+
58 }
+
59 #endif /* ZSHAPE_H */
+
60 
+
+
+ + + + diff --git a/docs/html/annotated.html b/docs/html/annotated.html new file mode 100644 index 0000000..2cdf42e --- /dev/null +++ b/docs/html/annotated.html @@ -0,0 +1,220 @@ + + + + + + +fuzzylite: Class List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class List
+
+ +
+ + + + diff --git a/docs/html/annotated.js b/docs/html/annotated.js new file mode 100644 index 0000000..b65e780 --- /dev/null +++ b/docs/html/annotated.js @@ -0,0 +1,4 @@ +var annotated = +[ + [ "fl", "namespacefl.html", "namespacefl" ] +]; \ No newline at end of file diff --git a/docs/html/bc_s.png b/docs/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/docs/html/bc_s.png differ diff --git a/docs/html/bdwn.png b/docs/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/docs/html/bdwn.png differ diff --git a/docs/html/classes.html b/docs/html/classes.html new file mode 100644 index 0000000..bf38f72 --- /dev/null +++ b/docs/html/classes.html @@ -0,0 +1,177 @@ + + + + + + +fuzzylite: Class Index + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Index
+
+
+
A | B | C | D | E | F | G | H | I | J | L | M | N | O | P | R | S | T | V | W | Z
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  A  
+
DrasticSum (fl)   GaussianProduct (fl)   Norm (fl)   SNormFactory (fl)   
  E  
+
  H  
+
NormalizedSum (fl)   Somewhat (fl)   
Accumulated (fl)   Not (fl)   Variable::SortByCoG (fl)   
AlgebraicProduct (fl)   EinsteinProduct (fl)   HamacherProduct (fl)   
  O  
+
SShape (fl)   
AlgebraicSum (fl)   EinsteinSum (fl)   HamacherSum (fl)   
  T  
+
Antecedent (fl)   Function::Element (fl)   Hedge (fl)   Operation (fl)   
Any (fl)   Engine (fl)   HedgeFactory (fl)   Function::Operator (fl)   Term (fl)   
  B  
+
Exception (fl)   
  I  
+
Operator (fl)   TermFactory (fl)   
Exporter (fl)   OutputVariable (fl)   Thresholded (fl)   
Bell (fl)   Expression (fl)   Importer (fl)   
  P  
+
TNorm (fl)   
Bisector (fl)   Extremely (fl)   InputVariable (fl)   TNormFactory (fl)   
BoundedDifference (fl)   
  F  
+
IntegralDefuzzifier (fl)   PiShape (fl)   Trapezoid (fl)   
BoundedSum (fl)   
  J  
+
Proposition (fl)   Triangle (fl)   
Function::BuiltInFunction (fl)   Factory (fl)   
  R  
+
Tsukamoto (fl)   
  C  
+
FactoryManager (fl)   JavaExporter (fl)   
  V  
+
FclExporter (fl)   
  L  
+
Ramp (fl)   
Centroid (fl)   FclImporter (fl)   Rectangle (fl)   Variable (fl)   
Consequent (fl)   FisExporter (fl)   LargestOfMaximum (fl)   Rule (fl)   Very (fl)   
Console (fl)   FisImporter (fl)   Linear (fl)   RuleBlock (fl)   
  W  
+
Constant (fl)   FldExporter (fl)   
  M  
+
  S  
+
CppExporter (fl)   FllExporter (fl)   WeightedAverage (fl)   
  D  
+
FllImporter (fl)   Maximum (fl)   Seldom (fl)   WeightedSum (fl)   
Function (fl)   MeanOfMaximum (fl)   Sigmoid (fl)   
  Z  
+
Defuzzifier (fl)   fuzzylite (fl)   Minimum (fl)   SigmoidDifference (fl)   
DefuzzifierFactory (fl)   
  G  
+
  N  
+
SigmoidProduct (fl)   ZShape (fl)   
Discrete (fl)   SmallestOfMaximum (fl)   
DrasticProduct (fl)   Gaussian (fl)   Function::Node (fl)   SNorm (fl)   
+
A | B | C | D | E | F | G | H | I | J | L | M | N | O | P | R | S | T | V | W | Z
+
+
+ + + + diff --git a/docs/html/classfl_1_1Accumulated-members.html b/docs/html/classfl_1_1Accumulated-members.html new file mode 100644 index 0000000..5a99ecd --- /dev/null +++ b/docs/html/classfl_1_1Accumulated-members.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Accumulated Member List
+
+
+ +

This is the complete list of members for fl::Accumulated, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_accumulationfl::Accumulatedprotected
_maximumfl::Accumulatedprotected
_minimumfl::Accumulatedprotected
_namefl::Termprotected
_termsfl::Accumulatedprotected
Accumulated(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf, const SNorm *accumulation=NULL)fl::Accumulated
addTerm(const Term *term)fl::Accumulatedvirtual
className() const fl::Accumulatedvirtual
clear()fl::Accumulatedvirtual
configure(const std::string &parameters)fl::Accumulatedvirtual
copy() const fl::Accumulatedvirtual
getAccumulation() const fl::Accumulatedvirtual
getMaximum() const fl::Accumulatedvirtual
getMinimum() const fl::Accumulatedvirtual
getName() const fl::Termvirtual
getTerm(int index) const fl::Accumulatedvirtual
isEmpty() const fl::Accumulatedvirtual
membership(scalar x) const fl::Accumulatedvirtual
numberOfTerms() const fl::Accumulatedvirtual
parameters() const fl::Accumulatedvirtual
removeTerm(int index)fl::Accumulatedvirtual
setAccumulation(const SNorm *accumulation)fl::Accumulatedvirtual
setMaximum(scalar maximum)fl::Accumulatedvirtual
setMinimum(scalar minimum)fl::Accumulatedvirtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
terms() const fl::Accumulatedvirtual
toString() const fl::Termvirtual
~Accumulated()fl::Accumulatedvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Accumulated.html b/docs/html/classfl_1_1Accumulated.html new file mode 100644 index 0000000..234beb8 --- /dev/null +++ b/docs/html/classfl_1_1Accumulated.html @@ -0,0 +1,796 @@ + + + + + + +fuzzylite: fl::Accumulated Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Accumulated Class Reference
+
+
+ +

#include <Accumulated.h>

+
+Inheritance diagram for fl::Accumulated:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Accumulated:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Accumulated (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf, const SNorm *accumulation=NULL)
 
virtual ~Accumulated ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual Accumulatedcopy () const
 
virtual scalar membership (scalar x) const
 
virtual void setMinimum (scalar minimum)
 
virtual scalar getMinimum () const
 
virtual void setMaximum (scalar maximum)
 
virtual scalar getMaximum () const
 
virtual void setAccumulation (const SNorm *accumulation)
 
virtual const SNormgetAccumulation () const
 
virtual void addTerm (const Term *term)
 
virtual const TermgetTerm (int index) const
 
virtual const TermremoveTerm (int index)
 
virtual int numberOfTerms () const
 
virtual const std::vector
+< const Term * > & 
terms () const
 
virtual bool isEmpty () const
 
virtual void clear ()
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + + + + + + + + + + +

+Protected Attributes

std::vector< const Term * > _terms
 
scalar _minimum
 
scalar _maximum
 
const SNorm_accumulation
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Accumulated::Accumulated (const std::string & name = "",
scalar minimum = -fl::inf,
scalar maximum = fl::inf,
const SNormaccumulation = NULL 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Accumulated::~Accumulated ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Accumulated::addTerm (const Termterm)
+
+virtual
+
+

Operations for std::vector _terms

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Accumulated::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Accumulated::clear ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Accumulated::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Accumulated * fl::Accumulated::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const SNorm * fl::Accumulated::getAccumulation () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Accumulated::getMaximum () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Accumulated::getMinimum () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
const Term * fl::Accumulated::getTerm (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::Accumulated::isEmpty () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Accumulated::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Accumulated::numberOfTerms () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Accumulated::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
const Term * fl::Accumulated::removeTerm (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Accumulated::setAccumulation (const SNormaccumulation)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Accumulated::setMaximum (scalar maximum)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Accumulated::setMinimum (scalar minimum)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< const Term * > & fl::Accumulated::terms () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const SNorm* fl::Accumulated::_accumulation
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Accumulated::_maximum
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Accumulated::_minimum
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<const Term*> fl::Accumulated::_terms
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Accumulated.js b/docs/html/classfl_1_1Accumulated.js new file mode 100644 index 0000000..5ef89f2 --- /dev/null +++ b/docs/html/classfl_1_1Accumulated.js @@ -0,0 +1,27 @@ +var classfl_1_1Accumulated = +[ + [ "Accumulated", "classfl_1_1Accumulated.html#a2803372b6a40302d26f333cfb077485f", null ], + [ "~Accumulated", "classfl_1_1Accumulated.html#a07ed6f18e909e52e788e1355b4a4f954", null ], + [ "addTerm", "classfl_1_1Accumulated.html#a377dd3dbdcab84eaf2b7017f97c0dafc", null ], + [ "className", "classfl_1_1Accumulated.html#aeaad3e5de094846a4315fe0f681893d7", null ], + [ "clear", "classfl_1_1Accumulated.html#ade66c6bfa57957cfb7863196977fcf79", null ], + [ "configure", "classfl_1_1Accumulated.html#a6e09df7fc6458109639270fef538113e", null ], + [ "copy", "classfl_1_1Accumulated.html#a1f9ebe6cd3e1d485cb02c2bdc966c4e0", null ], + [ "getAccumulation", "classfl_1_1Accumulated.html#aa6f958cd1f0d0388b8a826bb05ccb589", null ], + [ "getMaximum", "classfl_1_1Accumulated.html#ab71e90489aca781218d76a89750b8954", null ], + [ "getMinimum", "classfl_1_1Accumulated.html#ae0ab9364938b0b5fb65f7b851cdcb7b0", null ], + [ "getTerm", "classfl_1_1Accumulated.html#a0b2857802f93cc3d212d28aa2253b28a", null ], + [ "isEmpty", "classfl_1_1Accumulated.html#a7f68b0eb8f8f0b2b190dc8df9d14d202", null ], + [ "membership", "classfl_1_1Accumulated.html#a4e466f3818b4107b206d069ee7bb96b3", null ], + [ "numberOfTerms", "classfl_1_1Accumulated.html#a24a5d995ff0ba0c18e65ce11d8298aee", null ], + [ "parameters", "classfl_1_1Accumulated.html#a5b68d40eea8ee151bdd934a3451b6bc6", null ], + [ "removeTerm", "classfl_1_1Accumulated.html#afd7642b314f4fef57c219dcc002f89de", null ], + [ "setAccumulation", "classfl_1_1Accumulated.html#a336f8ce1a931c18e67f157ce774080f8", null ], + [ "setMaximum", "classfl_1_1Accumulated.html#a62b067a72e5002d0306cf579371a341b", null ], + [ "setMinimum", "classfl_1_1Accumulated.html#a0ef8d87d708683434bde5e9509cab2ae", null ], + [ "terms", "classfl_1_1Accumulated.html#a5bdf5ea19e6cecc1641812f2f2265079", null ], + [ "_accumulation", "classfl_1_1Accumulated.html#a50d93d91e226d8b791ba47d55c693006", null ], + [ "_maximum", "classfl_1_1Accumulated.html#a87c58504eb0f9c015d39ef52830e417c", null ], + [ "_minimum", "classfl_1_1Accumulated.html#a35cbbe5cfe41d3e0fc8518878562c4ae", null ], + [ "_terms", "classfl_1_1Accumulated.html#a282298974d6e86153e28dedf8f10d863", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Accumulated__coll__graph.map b/docs/html/classfl_1_1Accumulated__coll__graph.map new file mode 100644 index 0000000..8dad695 --- /dev/null +++ b/docs/html/classfl_1_1Accumulated__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/classfl_1_1Accumulated__coll__graph.md5 b/docs/html/classfl_1_1Accumulated__coll__graph.md5 new file mode 100644 index 0000000..348cd14 --- /dev/null +++ b/docs/html/classfl_1_1Accumulated__coll__graph.md5 @@ -0,0 +1 @@ +742d9041a302198393bdd425c36afc5a \ No newline at end of file diff --git a/docs/html/classfl_1_1Accumulated__coll__graph.png b/docs/html/classfl_1_1Accumulated__coll__graph.png new file mode 100644 index 0000000..3b2f050 Binary files /dev/null and b/docs/html/classfl_1_1Accumulated__coll__graph.png differ diff --git a/docs/html/classfl_1_1Accumulated__inherit__graph.map b/docs/html/classfl_1_1Accumulated__inherit__graph.map new file mode 100644 index 0000000..8efa8ee --- /dev/null +++ b/docs/html/classfl_1_1Accumulated__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Accumulated__inherit__graph.md5 b/docs/html/classfl_1_1Accumulated__inherit__graph.md5 new file mode 100644 index 0000000..d607cea --- /dev/null +++ b/docs/html/classfl_1_1Accumulated__inherit__graph.md5 @@ -0,0 +1 @@ +4be3f6337be57f2e355153858f92dcce \ No newline at end of file diff --git a/docs/html/classfl_1_1Accumulated__inherit__graph.png b/docs/html/classfl_1_1Accumulated__inherit__graph.png new file mode 100644 index 0000000..4f63c0f Binary files /dev/null and b/docs/html/classfl_1_1Accumulated__inherit__graph.png differ diff --git a/docs/html/classfl_1_1AlgebraicProduct-members.html b/docs/html/classfl_1_1AlgebraicProduct-members.html new file mode 100644 index 0000000..7b25de8 --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::AlgebraicProduct Member List
+
+
+ +

This is the complete list of members for fl::AlgebraicProduct, including all inherited members.

+ + + + + + + + +
className() const fl::AlgebraicProductvirtual
compute(scalar a, scalar b) const fl::AlgebraicProductvirtual
constructor()fl::AlgebraicProductstatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1AlgebraicProduct.html b/docs/html/classfl_1_1AlgebraicProduct.html new file mode 100644 index 0000000..3ce8981 --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::AlgebraicProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::AlgebraicProduct Class Reference
+
+
+ +

#include <AlgebraicProduct.h>

+
+Inheritance diagram for fl::AlgebraicProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::AlgebraicProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::AlgebraicProduct::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::AlgebraicProduct::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::AlgebraicProduct::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1AlgebraicProduct.js b/docs/html/classfl_1_1AlgebraicProduct.js new file mode 100644 index 0000000..91a93ba --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct.js @@ -0,0 +1,6 @@ +var classfl_1_1AlgebraicProduct = +[ + [ "className", "classfl_1_1AlgebraicProduct.html#afc4c7bb507394d91444ef8e7c882ec94", null ], + [ "compute", "classfl_1_1AlgebraicProduct.html#a798f75aa2e6d8e777dbc76ada79eea07", null ], + [ "constructor", "classfl_1_1AlgebraicProduct.html#add0dde390da48895eb8cb944a12fad95", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicProduct__coll__graph.map b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.map new file mode 100644 index 0000000..d95045b --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1AlgebraicProduct__coll__graph.md5 b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.md5 new file mode 100644 index 0000000..38fc379 --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.md5 @@ -0,0 +1 @@ +5c477ee5f53ea861c5209f807fa4c950 \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicProduct__coll__graph.png b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.png new file mode 100644 index 0000000..c9d34c1 Binary files /dev/null and b/docs/html/classfl_1_1AlgebraicProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.map b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.map new file mode 100644 index 0000000..d95045b --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.md5 b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.md5 new file mode 100644 index 0000000..38fc379 --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.md5 @@ -0,0 +1 @@ +5c477ee5f53ea861c5209f807fa4c950 \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.png b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.png new file mode 100644 index 0000000..c9d34c1 Binary files /dev/null and b/docs/html/classfl_1_1AlgebraicProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1AlgebraicSum-members.html b/docs/html/classfl_1_1AlgebraicSum-members.html new file mode 100644 index 0000000..bb2befc --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::AlgebraicSum Member List
+
+
+ +

This is the complete list of members for fl::AlgebraicSum, including all inherited members.

+ + + + + + + + +
className() const fl::AlgebraicSumvirtual
compute(scalar a, scalar b) const fl::AlgebraicSumvirtual
constructor()fl::AlgebraicSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1AlgebraicSum.html b/docs/html/classfl_1_1AlgebraicSum.html new file mode 100644 index 0000000..ffc50de --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::AlgebraicSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::AlgebraicSum Class Reference
+
+
+ +

#include <AlgebraicSum.h>

+
+Inheritance diagram for fl::AlgebraicSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::AlgebraicSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::AlgebraicSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::AlgebraicSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::AlgebraicSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1AlgebraicSum.js b/docs/html/classfl_1_1AlgebraicSum.js new file mode 100644 index 0000000..bde06d9 --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum.js @@ -0,0 +1,6 @@ +var classfl_1_1AlgebraicSum = +[ + [ "className", "classfl_1_1AlgebraicSum.html#a58ebd1085298edae70e83c80cd941998", null ], + [ "compute", "classfl_1_1AlgebraicSum.html#ac033b9566fb87b54239a8b0317fac0eb", null ], + [ "constructor", "classfl_1_1AlgebraicSum.html#a7b3658b08bdb4eb8dd15b136ea9b49fb", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicSum__coll__graph.map b/docs/html/classfl_1_1AlgebraicSum__coll__graph.map new file mode 100644 index 0000000..1802c8e --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1AlgebraicSum__coll__graph.md5 b/docs/html/classfl_1_1AlgebraicSum__coll__graph.md5 new file mode 100644 index 0000000..11f897e --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum__coll__graph.md5 @@ -0,0 +1 @@ +c5cea7065c653557bb995184c06969a8 \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicSum__coll__graph.png b/docs/html/classfl_1_1AlgebraicSum__coll__graph.png new file mode 100644 index 0000000..ad193cb Binary files /dev/null and b/docs/html/classfl_1_1AlgebraicSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1AlgebraicSum__inherit__graph.map b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.map new file mode 100644 index 0000000..1802c8e --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1AlgebraicSum__inherit__graph.md5 b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.md5 new file mode 100644 index 0000000..11f897e --- /dev/null +++ b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.md5 @@ -0,0 +1 @@ +c5cea7065c653557bb995184c06969a8 \ No newline at end of file diff --git a/docs/html/classfl_1_1AlgebraicSum__inherit__graph.png b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.png new file mode 100644 index 0000000..ad193cb Binary files /dev/null and b/docs/html/classfl_1_1AlgebraicSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Antecedent-members.html b/docs/html/classfl_1_1Antecedent-members.html new file mode 100644 index 0000000..d982f49 --- /dev/null +++ b/docs/html/classfl_1_1Antecedent-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Antecedent Member List
+
+
+ +

This is the complete list of members for fl::Antecedent, including all inherited members.

+ + + + + + + + + + + + +
_rootfl::Antecedentprotected
activationDegree(const TNorm *conjunction, const SNorm *disjunction, const Expression *node) const fl::Antecedentvirtual
activationDegree(const TNorm *conjunction, const SNorm *disjunction) const fl::Antecedentvirtual
Antecedent()fl::Antecedent
getRoot() const fl::Antecedentvirtual
load(const std::string &antecedent, const Engine *engine)fl::Antecedentvirtual
toInfix(const Expression *node=NULL) const fl::Antecedentvirtual
toPostfix(const Expression *node=NULL) const fl::Antecedentvirtual
toPrefix(const Expression *node=NULL) const fl::Antecedentvirtual
toString() const fl::Antecedentvirtual
~Antecedent()fl::Antecedentvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Antecedent.html b/docs/html/classfl_1_1Antecedent.html new file mode 100644 index 0000000..3138646 --- /dev/null +++ b/docs/html/classfl_1_1Antecedent.html @@ -0,0 +1,458 @@ + + + + + + +fuzzylite: fl::Antecedent Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Antecedent Class Reference
+
+
+ +

#include <Antecedent.h>

+
+Collaboration diagram for fl::Antecedent:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Antecedent ()
 
virtual ~Antecedent ()
 
virtual ExpressiongetRoot () const
 
virtual void load (const std::string &antecedent, const Engine *engine)
 
virtual scalar activationDegree (const TNorm *conjunction, const SNorm *disjunction, const Expression *node) const
 
virtual scalar activationDegree (const TNorm *conjunction, const SNorm *disjunction) const
 
virtual std::string toString () const
 
virtual std::string toPrefix (const Expression *node=NULL) const
 
virtual std::string toInfix (const Expression *node=NULL) const
 
virtual std::string toPostfix (const Expression *node=NULL) const
 
+ + + +

+Protected Attributes

Expression_root
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::Antecedent::Antecedent ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Antecedent::~Antecedent ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Antecedent::activationDegree (const TNormconjunction,
const SNormdisjunction,
const Expressionnode 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Antecedent::activationDegree (const TNormconjunction,
const SNormdisjunction 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Expression * fl::Antecedent::getRoot () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Antecedent::load (const std::string & antecedent,
const Engineengine 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Antecedent::toInfix (const Expressionnode = NULL) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Antecedent::toPostfix (const Expressionnode = NULL) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Antecedent::toPrefix (const Expressionnode = NULL) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Antecedent::toString () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
Expression* fl::Antecedent::_root
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Antecedent.js b/docs/html/classfl_1_1Antecedent.js new file mode 100644 index 0000000..1ac2356 --- /dev/null +++ b/docs/html/classfl_1_1Antecedent.js @@ -0,0 +1,14 @@ +var classfl_1_1Antecedent = +[ + [ "Antecedent", "classfl_1_1Antecedent.html#a659603cb3f1e1d4600ac683115dd9214", null ], + [ "~Antecedent", "classfl_1_1Antecedent.html#a589174fb0b4068f6d747cf4edf4899fe", null ], + [ "activationDegree", "classfl_1_1Antecedent.html#a12119d5422525d7ed3e284def2dea085", null ], + [ "activationDegree", "classfl_1_1Antecedent.html#a8e2953d8665346ae849ae4e43a3805e2", null ], + [ "getRoot", "classfl_1_1Antecedent.html#a891c6666c7ac4ee3920ce9984cf4f661", null ], + [ "load", "classfl_1_1Antecedent.html#a262a8155a7c4553651a2a5da1883c75f", null ], + [ "toInfix", "classfl_1_1Antecedent.html#a640d2a6ddf95888caae813c6b52b888e", null ], + [ "toPostfix", "classfl_1_1Antecedent.html#a7af43cf7a789faecc8d5f5af0b979826", null ], + [ "toPrefix", "classfl_1_1Antecedent.html#ae878e411cf3694a1eb35f1d5ce66eff8", null ], + [ "toString", "classfl_1_1Antecedent.html#a56ee133cd72dba23a17c366e99a0e863", null ], + [ "_root", "classfl_1_1Antecedent.html#a06d8dd233ec6458c52bd8bbc45d16c2c", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Antecedent__coll__graph.map b/docs/html/classfl_1_1Antecedent__coll__graph.map new file mode 100644 index 0000000..a7b977f --- /dev/null +++ b/docs/html/classfl_1_1Antecedent__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Antecedent__coll__graph.md5 b/docs/html/classfl_1_1Antecedent__coll__graph.md5 new file mode 100644 index 0000000..7677f97 --- /dev/null +++ b/docs/html/classfl_1_1Antecedent__coll__graph.md5 @@ -0,0 +1 @@ +9a0c40816f5cd6e7d8aa38de323abe41 \ No newline at end of file diff --git a/docs/html/classfl_1_1Antecedent__coll__graph.png b/docs/html/classfl_1_1Antecedent__coll__graph.png new file mode 100644 index 0000000..22de14e Binary files /dev/null and b/docs/html/classfl_1_1Antecedent__coll__graph.png differ diff --git a/docs/html/classfl_1_1Any-members.html b/docs/html/classfl_1_1Any-members.html new file mode 100644 index 0000000..218b12f --- /dev/null +++ b/docs/html/classfl_1_1Any-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Any Member List
+
+
+ +

This is the complete list of members for fl::Any, including all inherited members.

+ + + + + + +
constructor()fl::Anystatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Anyvirtual
name() const fl::Anyvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Any.html b/docs/html/classfl_1_1Any.html new file mode 100644 index 0000000..bc7271a --- /dev/null +++ b/docs/html/classfl_1_1Any.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Any Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Any.h>

+
+Inheritance diagram for fl::Any:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Any:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Any::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Any::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Any::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Any.js b/docs/html/classfl_1_1Any.js new file mode 100644 index 0000000..fef0fd6 --- /dev/null +++ b/docs/html/classfl_1_1Any.js @@ -0,0 +1,6 @@ +var classfl_1_1Any = +[ + [ "constructor", "classfl_1_1Any.html#af944ba3b9262145b414c3df6eb2538d9", null ], + [ "hedge", "classfl_1_1Any.html#a82e3e007681db89fe0a15a18967e78ec", null ], + [ "name", "classfl_1_1Any.html#a814b592e793aebed249ec86305f52d70", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Any__coll__graph.map b/docs/html/classfl_1_1Any__coll__graph.map new file mode 100644 index 0000000..1ff84e8 --- /dev/null +++ b/docs/html/classfl_1_1Any__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Any__coll__graph.md5 b/docs/html/classfl_1_1Any__coll__graph.md5 new file mode 100644 index 0000000..cd01f0c --- /dev/null +++ b/docs/html/classfl_1_1Any__coll__graph.md5 @@ -0,0 +1 @@ +9263c6d07e3a2ad516add49e886cc039 \ No newline at end of file diff --git a/docs/html/classfl_1_1Any__coll__graph.png b/docs/html/classfl_1_1Any__coll__graph.png new file mode 100644 index 0000000..c745277 Binary files /dev/null and b/docs/html/classfl_1_1Any__coll__graph.png differ diff --git a/docs/html/classfl_1_1Any__inherit__graph.map b/docs/html/classfl_1_1Any__inherit__graph.map new file mode 100644 index 0000000..1ff84e8 --- /dev/null +++ b/docs/html/classfl_1_1Any__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Any__inherit__graph.md5 b/docs/html/classfl_1_1Any__inherit__graph.md5 new file mode 100644 index 0000000..cd01f0c --- /dev/null +++ b/docs/html/classfl_1_1Any__inherit__graph.md5 @@ -0,0 +1 @@ +9263c6d07e3a2ad516add49e886cc039 \ No newline at end of file diff --git a/docs/html/classfl_1_1Any__inherit__graph.png b/docs/html/classfl_1_1Any__inherit__graph.png new file mode 100644 index 0000000..c745277 Binary files /dev/null and b/docs/html/classfl_1_1Any__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Bell-members.html b/docs/html/classfl_1_1Bell-members.html new file mode 100644 index 0000000..3967885 --- /dev/null +++ b/docs/html/classfl_1_1Bell-members.html @@ -0,0 +1,150 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Bell Member List
+
+
+ +

This is the complete list of members for fl::Bell, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
_centerfl::Bellprotected
_namefl::Termprotected
_slopefl::Bellprotected
_widthfl::Bellprotected
Bell(const std::string &name="", scalar center=fl::nan, scalar width=fl::nan, scalar slope=fl::nan)fl::Bell
className() const fl::Bellvirtual
configure(const std::string &parameters)fl::Bellvirtual
constructor()fl::Bellstatic
copy() const fl::Bellvirtual
getCenter() const fl::Bellvirtual
getName() const fl::Termvirtual
getSlope() const fl::Bellvirtual
getWidth() const fl::Bellvirtual
membership(scalar x) const fl::Bellvirtual
parameters() const fl::Bellvirtual
setCenter(scalar center)fl::Bellvirtual
setName(const std::string &name)fl::Termvirtual
setSlope(scalar slope)fl::Bellvirtual
setWidth(scalar width)fl::Bellvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Bell()fl::Bellvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Bell.html b/docs/html/classfl_1_1Bell.html new file mode 100644 index 0000000..e52b018 --- /dev/null +++ b/docs/html/classfl_1_1Bell.html @@ -0,0 +1,623 @@ + + + + + + +fuzzylite: fl::Bell Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Bell.h>

+
+Inheritance diagram for fl::Bell:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Bell:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Bell (const std::string &name="", scalar center=fl::nan, scalar width=fl::nan, scalar slope=fl::nan)
 
virtual ~Bell ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setCenter (scalar center)
 
virtual scalar getCenter () const
 
virtual void setWidth (scalar width)
 
virtual scalar getWidth () const
 
virtual void setSlope (scalar slope)
 
virtual scalar getSlope () const
 
virtual Bellcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + +

+Protected Attributes

scalar _center
 
scalar _width
 
scalar _slope
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Bell::Bell (const std::string & name = "",
scalar center = fl::nan,
scalar width = fl::nan,
scalar slope = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Bell::~Bell ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Bell::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Bell::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Bell::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Bell * fl::Bell::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Bell::getCenter () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Bell::getSlope () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Bell::getWidth () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Bell::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Bell::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Bell::setCenter (scalar center)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Bell::setSlope (scalar slope)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Bell::setWidth (scalar width)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Bell::_center
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Bell::_slope
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Bell::_width
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Bell.js b/docs/html/classfl_1_1Bell.js new file mode 100644 index 0000000..cc7ef65 --- /dev/null +++ b/docs/html/classfl_1_1Bell.js @@ -0,0 +1,20 @@ +var classfl_1_1Bell = +[ + [ "Bell", "classfl_1_1Bell.html#a5130acddf2553e82e1783ba4fa5cf9bc", null ], + [ "~Bell", "classfl_1_1Bell.html#a70b83dc932935491affbfb6cce75f899", null ], + [ "className", "classfl_1_1Bell.html#a736e86bd14209b408550319acec84f4d", null ], + [ "configure", "classfl_1_1Bell.html#ae12d623035391bfa9558a5dade284906", null ], + [ "constructor", "classfl_1_1Bell.html#a790113e260b56c8157dae26563c93047", null ], + [ "copy", "classfl_1_1Bell.html#a1f597089a0d16d2156423972bb99fd86", null ], + [ "getCenter", "classfl_1_1Bell.html#aae77173e96178a51456728aac257cf20", null ], + [ "getSlope", "classfl_1_1Bell.html#acb216a3c64f828863376dc7e54fb6bf5", null ], + [ "getWidth", "classfl_1_1Bell.html#a6376f7a04d0f9eb34570df2e7654185a", null ], + [ "membership", "classfl_1_1Bell.html#a5e625b1b3d23632a4015dd734adddb6f", null ], + [ "parameters", "classfl_1_1Bell.html#acb2dd9453a7a4d057b68209d217ce15a", null ], + [ "setCenter", "classfl_1_1Bell.html#aa9fa72582f52c5f77199255fbb7eb143", null ], + [ "setSlope", "classfl_1_1Bell.html#af04aa0bb8c014bb9dbe148e670029ac4", null ], + [ "setWidth", "classfl_1_1Bell.html#ac603bb9f288f046396065531002c2289", null ], + [ "_center", "classfl_1_1Bell.html#a712423c00763794af97e587b9b7a80e3", null ], + [ "_slope", "classfl_1_1Bell.html#a8dde2f9d6b81e8db85ba0e8b31af33a8", null ], + [ "_width", "classfl_1_1Bell.html#a960a043c5b9486f4beaee839e08a18ed", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Bell__coll__graph.map b/docs/html/classfl_1_1Bell__coll__graph.map new file mode 100644 index 0000000..44c8531 --- /dev/null +++ b/docs/html/classfl_1_1Bell__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Bell__coll__graph.md5 b/docs/html/classfl_1_1Bell__coll__graph.md5 new file mode 100644 index 0000000..92a5056 --- /dev/null +++ b/docs/html/classfl_1_1Bell__coll__graph.md5 @@ -0,0 +1 @@ +cf00d8eb9b57a5d4cef91b50c71c736e \ No newline at end of file diff --git a/docs/html/classfl_1_1Bell__coll__graph.png b/docs/html/classfl_1_1Bell__coll__graph.png new file mode 100644 index 0000000..96d7043 Binary files /dev/null and b/docs/html/classfl_1_1Bell__coll__graph.png differ diff --git a/docs/html/classfl_1_1Bell__inherit__graph.map b/docs/html/classfl_1_1Bell__inherit__graph.map new file mode 100644 index 0000000..86df3c8 --- /dev/null +++ b/docs/html/classfl_1_1Bell__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Bell__inherit__graph.md5 b/docs/html/classfl_1_1Bell__inherit__graph.md5 new file mode 100644 index 0000000..9a60fd8 --- /dev/null +++ b/docs/html/classfl_1_1Bell__inherit__graph.md5 @@ -0,0 +1 @@ +5a4f54379db1360081f124120a4b67e7 \ No newline at end of file diff --git a/docs/html/classfl_1_1Bell__inherit__graph.png b/docs/html/classfl_1_1Bell__inherit__graph.png new file mode 100644 index 0000000..ba66acc Binary files /dev/null and b/docs/html/classfl_1_1Bell__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Bisector-members.html b/docs/html/classfl_1_1Bisector-members.html new file mode 100644 index 0000000..c7b8e88 --- /dev/null +++ b/docs/html/classfl_1_1Bisector-members.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Bisector Member List
+
+
+ +

This is the complete list of members for fl::Bisector, including all inherited members.

+ + + + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
Bisector(int resolution=defaultResolution())fl::Bisector
className() const fl::Bisectorvirtual
constructor()fl::Bisectorstatic
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::Bisectorvirtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Bisector.html b/docs/html/classfl_1_1Bisector.html new file mode 100644 index 0000000..de9d8e9 --- /dev/null +++ b/docs/html/classfl_1_1Bisector.html @@ -0,0 +1,295 @@ + + + + + + +fuzzylite: fl::Bisector Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Bisector.h>

+
+Inheritance diagram for fl::Bisector:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Bisector:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Bisector (int resolution=defaultResolution())
 
std::string className () const
 
scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::IntegralDefuzzifier
 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + + + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
- Static Public Member Functions inherited from fl::IntegralDefuzzifier
static int defaultResolution ()
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::IntegralDefuzzifier
int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Bisector::Bisector (int resolution = defaultResolution())
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Bisector::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::Bisector::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Bisector::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Bisector.js b/docs/html/classfl_1_1Bisector.js new file mode 100644 index 0000000..b51b97b --- /dev/null +++ b/docs/html/classfl_1_1Bisector.js @@ -0,0 +1,7 @@ +var classfl_1_1Bisector = +[ + [ "Bisector", "classfl_1_1Bisector.html#a41f7bc1425d65fcbb0ecb174a293a6f9", null ], + [ "className", "classfl_1_1Bisector.html#ad2e056a53f33840bc3ed9f8ac1e4f6dc", null ], + [ "constructor", "classfl_1_1Bisector.html#ad621b50c85866eb4f5c5c7cdbe6e186b", null ], + [ "defuzzify", "classfl_1_1Bisector.html#a2f6e48aa8878a1f1c1151567508439b0", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Bisector__coll__graph.map b/docs/html/classfl_1_1Bisector__coll__graph.map new file mode 100644 index 0000000..394b395 --- /dev/null +++ b/docs/html/classfl_1_1Bisector__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Bisector__coll__graph.md5 b/docs/html/classfl_1_1Bisector__coll__graph.md5 new file mode 100644 index 0000000..0204aaa --- /dev/null +++ b/docs/html/classfl_1_1Bisector__coll__graph.md5 @@ -0,0 +1 @@ +1e802d5a2969571af4b4467d8f54f8ed \ No newline at end of file diff --git a/docs/html/classfl_1_1Bisector__coll__graph.png b/docs/html/classfl_1_1Bisector__coll__graph.png new file mode 100644 index 0000000..c77d2d3 Binary files /dev/null and b/docs/html/classfl_1_1Bisector__coll__graph.png differ diff --git a/docs/html/classfl_1_1Bisector__inherit__graph.map b/docs/html/classfl_1_1Bisector__inherit__graph.map new file mode 100644 index 0000000..394b395 --- /dev/null +++ b/docs/html/classfl_1_1Bisector__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Bisector__inherit__graph.md5 b/docs/html/classfl_1_1Bisector__inherit__graph.md5 new file mode 100644 index 0000000..0204aaa --- /dev/null +++ b/docs/html/classfl_1_1Bisector__inherit__graph.md5 @@ -0,0 +1 @@ +1e802d5a2969571af4b4467d8f54f8ed \ No newline at end of file diff --git a/docs/html/classfl_1_1Bisector__inherit__graph.png b/docs/html/classfl_1_1Bisector__inherit__graph.png new file mode 100644 index 0000000..c77d2d3 Binary files /dev/null and b/docs/html/classfl_1_1Bisector__inherit__graph.png differ diff --git a/docs/html/classfl_1_1BoundedDifference-members.html b/docs/html/classfl_1_1BoundedDifference-members.html new file mode 100644 index 0000000..22be631 --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::BoundedDifference Member List
+
+
+ +

This is the complete list of members for fl::BoundedDifference, including all inherited members.

+ + + + + + + + +
className() const fl::BoundedDifferencevirtual
compute(scalar a, scalar b) const fl::BoundedDifferencevirtual
constructor()fl::BoundedDifferencestatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1BoundedDifference.html b/docs/html/classfl_1_1BoundedDifference.html new file mode 100644 index 0000000..1a1e04a --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::BoundedDifference Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::BoundedDifference Class Reference
+
+
+ +

#include <BoundedDifference.h>

+
+Inheritance diagram for fl::BoundedDifference:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::BoundedDifference:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::BoundedDifference::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::BoundedDifference::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::BoundedDifference::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1BoundedDifference.js b/docs/html/classfl_1_1BoundedDifference.js new file mode 100644 index 0000000..e611570 --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference.js @@ -0,0 +1,6 @@ +var classfl_1_1BoundedDifference = +[ + [ "className", "classfl_1_1BoundedDifference.html#a2935d9b24208f63851852756656957d9", null ], + [ "compute", "classfl_1_1BoundedDifference.html#a4c9841789dd22a3a9ead2a4b9abc037b", null ], + [ "constructor", "classfl_1_1BoundedDifference.html#a6f415a9da6922d3e8ba65bc26e79ed45", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedDifference__coll__graph.map b/docs/html/classfl_1_1BoundedDifference__coll__graph.map new file mode 100644 index 0000000..ca29eba --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1BoundedDifference__coll__graph.md5 b/docs/html/classfl_1_1BoundedDifference__coll__graph.md5 new file mode 100644 index 0000000..16fbc34 --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference__coll__graph.md5 @@ -0,0 +1 @@ +d022c53b6a73b717228ebcfba480865a \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedDifference__coll__graph.png b/docs/html/classfl_1_1BoundedDifference__coll__graph.png new file mode 100644 index 0000000..88d39f0 Binary files /dev/null and b/docs/html/classfl_1_1BoundedDifference__coll__graph.png differ diff --git a/docs/html/classfl_1_1BoundedDifference__inherit__graph.map b/docs/html/classfl_1_1BoundedDifference__inherit__graph.map new file mode 100644 index 0000000..ca29eba --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1BoundedDifference__inherit__graph.md5 b/docs/html/classfl_1_1BoundedDifference__inherit__graph.md5 new file mode 100644 index 0000000..16fbc34 --- /dev/null +++ b/docs/html/classfl_1_1BoundedDifference__inherit__graph.md5 @@ -0,0 +1 @@ +d022c53b6a73b717228ebcfba480865a \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedDifference__inherit__graph.png b/docs/html/classfl_1_1BoundedDifference__inherit__graph.png new file mode 100644 index 0000000..88d39f0 Binary files /dev/null and b/docs/html/classfl_1_1BoundedDifference__inherit__graph.png differ diff --git a/docs/html/classfl_1_1BoundedSum-members.html b/docs/html/classfl_1_1BoundedSum-members.html new file mode 100644 index 0000000..5c59e49 --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::BoundedSum Member List
+
+
+ +

This is the complete list of members for fl::BoundedSum, including all inherited members.

+ + + + + + + + +
className() const fl::BoundedSumvirtual
compute(scalar a, scalar b) const fl::BoundedSumvirtual
constructor()fl::BoundedSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1BoundedSum.html b/docs/html/classfl_1_1BoundedSum.html new file mode 100644 index 0000000..fab8ef4 --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::BoundedSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::BoundedSum Class Reference
+
+
+ +

#include <BoundedSum.h>

+
+Inheritance diagram for fl::BoundedSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::BoundedSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::BoundedSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::BoundedSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::BoundedSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1BoundedSum.js b/docs/html/classfl_1_1BoundedSum.js new file mode 100644 index 0000000..17d6b8b --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum.js @@ -0,0 +1,6 @@ +var classfl_1_1BoundedSum = +[ + [ "className", "classfl_1_1BoundedSum.html#a7776c5491977e8550a3d23088b08ade7", null ], + [ "compute", "classfl_1_1BoundedSum.html#ab3db0d46bd3286255341f71d4d31f49f", null ], + [ "constructor", "classfl_1_1BoundedSum.html#ade0d52fa377abd3a26cfe6c09ced0fed", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedSum__coll__graph.map b/docs/html/classfl_1_1BoundedSum__coll__graph.map new file mode 100644 index 0000000..c94d8a8 --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1BoundedSum__coll__graph.md5 b/docs/html/classfl_1_1BoundedSum__coll__graph.md5 new file mode 100644 index 0000000..f768cab --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum__coll__graph.md5 @@ -0,0 +1 @@ +2c538849bff0510bdc45ae342379b4eb \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedSum__coll__graph.png b/docs/html/classfl_1_1BoundedSum__coll__graph.png new file mode 100644 index 0000000..d29adb1 Binary files /dev/null and b/docs/html/classfl_1_1BoundedSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1BoundedSum__inherit__graph.map b/docs/html/classfl_1_1BoundedSum__inherit__graph.map new file mode 100644 index 0000000..c94d8a8 --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1BoundedSum__inherit__graph.md5 b/docs/html/classfl_1_1BoundedSum__inherit__graph.md5 new file mode 100644 index 0000000..f768cab --- /dev/null +++ b/docs/html/classfl_1_1BoundedSum__inherit__graph.md5 @@ -0,0 +1 @@ +2c538849bff0510bdc45ae342379b4eb \ No newline at end of file diff --git a/docs/html/classfl_1_1BoundedSum__inherit__graph.png b/docs/html/classfl_1_1BoundedSum__inherit__graph.png new file mode 100644 index 0000000..d29adb1 Binary files /dev/null and b/docs/html/classfl_1_1BoundedSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Centroid-members.html b/docs/html/classfl_1_1Centroid-members.html new file mode 100644 index 0000000..36e2a42 --- /dev/null +++ b/docs/html/classfl_1_1Centroid-members.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Centroid Member List
+
+
+ +

This is the complete list of members for fl::Centroid, including all inherited members.

+ + + + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
Centroid(int resolution=defaultResolution())fl::Centroid
className() const fl::Centroidvirtual
constructor()fl::Centroidstatic
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::Centroidvirtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Centroid.html b/docs/html/classfl_1_1Centroid.html new file mode 100644 index 0000000..d1de15e --- /dev/null +++ b/docs/html/classfl_1_1Centroid.html @@ -0,0 +1,295 @@ + + + + + + +fuzzylite: fl::Centroid Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Centroid.h>

+
+Inheritance diagram for fl::Centroid:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Centroid:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Centroid (int resolution=defaultResolution())
 
std::string className () const
 
scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::IntegralDefuzzifier
 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + + + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
- Static Public Member Functions inherited from fl::IntegralDefuzzifier
static int defaultResolution ()
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::IntegralDefuzzifier
int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Centroid::Centroid (int resolution = defaultResolution())
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Centroid::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::Centroid::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Centroid::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Centroid.js b/docs/html/classfl_1_1Centroid.js new file mode 100644 index 0000000..084e6ed --- /dev/null +++ b/docs/html/classfl_1_1Centroid.js @@ -0,0 +1,7 @@ +var classfl_1_1Centroid = +[ + [ "Centroid", "classfl_1_1Centroid.html#a01d2bf1ac98a8a8d2b890cb93da10948", null ], + [ "className", "classfl_1_1Centroid.html#a5f6034e17f3db370035e538f2e91ac67", null ], + [ "constructor", "classfl_1_1Centroid.html#a1586f46937ae6e30619b3701da77ad6d", null ], + [ "defuzzify", "classfl_1_1Centroid.html#aadcf7c0e9636ef902bf72de806795eae", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Centroid__coll__graph.map b/docs/html/classfl_1_1Centroid__coll__graph.map new file mode 100644 index 0000000..410353c --- /dev/null +++ b/docs/html/classfl_1_1Centroid__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Centroid__coll__graph.md5 b/docs/html/classfl_1_1Centroid__coll__graph.md5 new file mode 100644 index 0000000..b44dd38 --- /dev/null +++ b/docs/html/classfl_1_1Centroid__coll__graph.md5 @@ -0,0 +1 @@ +04a39bbdc932ca73b65e89f13b6d316f \ No newline at end of file diff --git a/docs/html/classfl_1_1Centroid__coll__graph.png b/docs/html/classfl_1_1Centroid__coll__graph.png new file mode 100644 index 0000000..a3731b8 Binary files /dev/null and b/docs/html/classfl_1_1Centroid__coll__graph.png differ diff --git a/docs/html/classfl_1_1Centroid__inherit__graph.map b/docs/html/classfl_1_1Centroid__inherit__graph.map new file mode 100644 index 0000000..410353c --- /dev/null +++ b/docs/html/classfl_1_1Centroid__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Centroid__inherit__graph.md5 b/docs/html/classfl_1_1Centroid__inherit__graph.md5 new file mode 100644 index 0000000..b44dd38 --- /dev/null +++ b/docs/html/classfl_1_1Centroid__inherit__graph.md5 @@ -0,0 +1 @@ +04a39bbdc932ca73b65e89f13b6d316f \ No newline at end of file diff --git a/docs/html/classfl_1_1Centroid__inherit__graph.png b/docs/html/classfl_1_1Centroid__inherit__graph.png new file mode 100644 index 0000000..a3731b8 Binary files /dev/null and b/docs/html/classfl_1_1Centroid__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Consequent-members.html b/docs/html/classfl_1_1Consequent-members.html new file mode 100644 index 0000000..dbbfe85 --- /dev/null +++ b/docs/html/classfl_1_1Consequent-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Consequent Member List
+
+
+ +

This is the complete list of members for fl::Consequent, including all inherited members.

+ + + + + + + + +
_conclusionsfl::Consequentprotected
conclusions() const fl::Consequentvirtual
Consequent()fl::Consequent
load(const std::string &consequent, const Engine *engine)fl::Consequentvirtual
modify(scalar strength, const TNorm *activation)fl::Consequentvirtual
toString() const fl::Consequentvirtual
~Consequent()fl::Consequentvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Consequent.html b/docs/html/classfl_1_1Consequent.html new file mode 100644 index 0000000..726d304 --- /dev/null +++ b/docs/html/classfl_1_1Consequent.html @@ -0,0 +1,340 @@ + + + + + + +fuzzylite: fl::Consequent Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Consequent Class Reference
+
+
+ +

#include <Consequent.h>

+
+Collaboration diagram for fl::Consequent:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + +

+Public Member Functions

 Consequent ()
 
virtual ~Consequent ()
 
virtual std::vector
+< Proposition * > 
conclusions () const
 
virtual void load (const std::string &consequent, const Engine *engine)
 
virtual void modify (scalar strength, const TNorm *activation)
 
virtual std::string toString () const
 
+ + + +

+Protected Attributes

std::vector< Proposition * > _conclusions
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::Consequent::Consequent ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Consequent::~Consequent ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::vector< Proposition * > fl::Consequent::conclusions () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Consequent::load (const std::string & consequent,
const Engineengine 
)
+
+virtual
+
+

Extracts the list of propositions from the consequent The rules are: 1) After a variable comes 'is' or '=', 2) After 'is' comes a hedge or a term 3) After a hedge comes a hedge or a term 4) After a term comes operators 'and' or 'with' 5) After operator 'and' comes a variable 6) After operator 'with' comes a float

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Consequent::modify (scalar strength,
const TNormactivation 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Consequent::toString () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<Proposition*> fl::Consequent::_conclusions
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Consequent.js b/docs/html/classfl_1_1Consequent.js new file mode 100644 index 0000000..18bdb43 --- /dev/null +++ b/docs/html/classfl_1_1Consequent.js @@ -0,0 +1,10 @@ +var classfl_1_1Consequent = +[ + [ "Consequent", "classfl_1_1Consequent.html#a00e74219c15cd773f1574a7bbd43bf09", null ], + [ "~Consequent", "classfl_1_1Consequent.html#a69b0e225945376db67cfb288206e2d3e", null ], + [ "conclusions", "classfl_1_1Consequent.html#a1709f58b4dffc2669b8a2ca1b22b3427", null ], + [ "load", "classfl_1_1Consequent.html#aa568ed0bdc9deeec35ba44e5f183c059", null ], + [ "modify", "classfl_1_1Consequent.html#a1868f2235ddddf5c3a55128d6816f8bd", null ], + [ "toString", "classfl_1_1Consequent.html#a5bec22a386abfa9de6f22f9697933cec", null ], + [ "_conclusions", "classfl_1_1Consequent.html#afa623758e3674ea30a3b462dd9f26118", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Consequent__coll__graph.map b/docs/html/classfl_1_1Consequent__coll__graph.map new file mode 100644 index 0000000..eea7246 --- /dev/null +++ b/docs/html/classfl_1_1Consequent__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/classfl_1_1Consequent__coll__graph.md5 b/docs/html/classfl_1_1Consequent__coll__graph.md5 new file mode 100644 index 0000000..efbec33 --- /dev/null +++ b/docs/html/classfl_1_1Consequent__coll__graph.md5 @@ -0,0 +1 @@ +5ced7b1c2657682d7dc55a4e42f363ad \ No newline at end of file diff --git a/docs/html/classfl_1_1Consequent__coll__graph.png b/docs/html/classfl_1_1Consequent__coll__graph.png new file mode 100644 index 0000000..9a58c30 Binary files /dev/null and b/docs/html/classfl_1_1Consequent__coll__graph.png differ diff --git a/docs/html/classfl_1_1Console-members.html b/docs/html/classfl_1_1Console-members.html new file mode 100644 index 0000000..bbf8392 --- /dev/null +++ b/docs/html/classfl_1_1Console-members.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Console Member List
+
+
+ +

This is the complete list of members for fl::Console, including all inherited members.

+ + + + + + + + + + + + + + + + + +
KW_DATA_MAXIMUMfl::Consolestatic
KW_DATA_RESOLUTION_VARIABLEfl::Consolestatic
KW_DATA_SEPARATORfl::Consolestatic
KW_EXAMPLEfl::Consolestatic
KW_INPUT_FILEfl::Consolestatic
KW_INPUT_FORMATfl::Consolestatic
KW_OUTPUT_FILEfl::Consolestatic
KW_OUTPUT_FORMATfl::Consolestatic
main(int argc, char **argv)fl::Consolestatic
mamdani()fl::Consolestatic
parse(int argc, char **argv)fl::Consoleprotectedstatic
process(const std::map< std::string, std::string > &options)fl::Consoleprotectedstatic
process(const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)fl::Consoleprotectedstatic
process(const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)fl::Console
takagiSugeno()fl::Consolestatic
usage()fl::Consolestatic
+
+ + + + diff --git a/docs/html/classfl_1_1Console.html b/docs/html/classfl_1_1Console.html new file mode 100644 index 0000000..cd6a1ac --- /dev/null +++ b/docs/html/classfl_1_1Console.html @@ -0,0 +1,615 @@ + + + + + + +fuzzylite: fl::Console Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Console.h>

+
+Collaboration diagram for fl::Console:
+
+
Collaboration graph
+ + +
+ + + + + +

+Public Member Functions

template<typename T >
void process (const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)
 
+ + + + + + + + + +

+Static Public Member Functions

static Enginemamdani ()
 
static EnginetakagiSugeno ()
 
static std::string usage ()
 
static int main (int argc, char **argv)
 
+ + + + + + + + + + + + + + + + + +

+Static Public Attributes

static const std::string KW_INPUT_FILE = "-i"
 
static const std::string KW_INPUT_FORMAT = "-if"
 
static const std::string KW_OUTPUT_FILE = "-o"
 
static const std::string KW_OUTPUT_FORMAT = "-of"
 
static const std::string KW_EXAMPLE = "-ex"
 
static const std::string KW_DATA_RESOLUTION_VARIABLE
 
static const std::string KW_DATA_MAXIMUM = "-max"
 
static const std::string KW_DATA_SEPARATOR = "-sep"
 
+ + + + + + + + +

+Static Protected Member Functions

static std::map< std::string,
+std::string > 
parse (int argc, char **argv)
 
static void process (const std::map< std::string, std::string > &options)
 
template<typename T >
static void process (const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int fl::Console::main (int argc,
char ** argv 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Engine * fl::Console::mamdani ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::map< std::string, std::string > fl::Console::parse (int argc,
char ** argv 
)
+
+staticprotected
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Console::process (const std::map< std::string, std::string > & options)
+
+staticprotected
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static void fl::Console::process (const std::string & input,
T & writer,
const std::string & inputFormat,
const std::string & outputFormat,
const std::map< std::string, std::string > & options 
)
+
+staticprotected
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void fl::Console::process (const std::string & input,
T & writer,
const std::string & inputFormat,
const std::string & outputFormat,
const std::map< std::string, std::string > & options 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Engine * fl::Console::takagiSugeno ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Console::usage ()
+
+static
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_DATA_MAXIMUM = "-max"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_DATA_RESOLUTION_VARIABLE
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_DATA_SEPARATOR = "-sep"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_EXAMPLE = "-ex"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_INPUT_FILE = "-i"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_INPUT_FORMAT = "-if"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_OUTPUT_FILE = "-o"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const std::string fl::Console::KW_OUTPUT_FORMAT = "-of"
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Console.js b/docs/html/classfl_1_1Console.js new file mode 100644 index 0000000..23febe3 --- /dev/null +++ b/docs/html/classfl_1_1Console.js @@ -0,0 +1,19 @@ +var classfl_1_1Console = +[ + [ "main", "classfl_1_1Console.html#a42d877375cee8afdc38eabaadd6f3342", null ], + [ "mamdani", "classfl_1_1Console.html#a6d90c2b31cbe4657d464fcbd2ce6d863", null ], + [ "parse", "classfl_1_1Console.html#ad02a59bfac8e4c3c4972ef24485b486e", null ], + [ "process", "classfl_1_1Console.html#ab75b47c714606140a237e820c395062d", null ], + [ "process", "classfl_1_1Console.html#ace6178ad0a280b0ca8717ba5f6ed20d5", null ], + [ "process", "classfl_1_1Console.html#a3dc66beb5d7b32ae2396077ddd0596d0", null ], + [ "takagiSugeno", "classfl_1_1Console.html#a948fd183ea62decbd166af3d98a27b68", null ], + [ "usage", "classfl_1_1Console.html#afb3c16a3e549e43207d672f25db3e4c5", null ], + [ "KW_DATA_MAXIMUM", "classfl_1_1Console.html#ad943273bdaf462b24899b991ec7d18df", null ], + [ "KW_DATA_RESOLUTION_VARIABLE", "classfl_1_1Console.html#aab4578da4e63f52d190e92a14059e371", null ], + [ "KW_DATA_SEPARATOR", "classfl_1_1Console.html#a45d009d7a9d01765bacba57daaa39664", null ], + [ "KW_EXAMPLE", "classfl_1_1Console.html#a374934d6528911c7c70bfdb5a3fae470", null ], + [ "KW_INPUT_FILE", "classfl_1_1Console.html#a1fb5194708c34f694c0ad6c598833dbe", null ], + [ "KW_INPUT_FORMAT", "classfl_1_1Console.html#acf42edfb62782fdbc2ebeb0765947144", null ], + [ "KW_OUTPUT_FILE", "classfl_1_1Console.html#af62f7d4a453962b9d6ee99071ff12305", null ], + [ "KW_OUTPUT_FORMAT", "classfl_1_1Console.html#afa0ff04c5f0afb8eb8ff94f62ae2c453", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Console__coll__graph.map b/docs/html/classfl_1_1Console__coll__graph.map new file mode 100644 index 0000000..db665a9 --- /dev/null +++ b/docs/html/classfl_1_1Console__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Console__coll__graph.md5 b/docs/html/classfl_1_1Console__coll__graph.md5 new file mode 100644 index 0000000..23fce70 --- /dev/null +++ b/docs/html/classfl_1_1Console__coll__graph.md5 @@ -0,0 +1 @@ +0b61671f382d2e9573841113316f02c2 \ No newline at end of file diff --git a/docs/html/classfl_1_1Console__coll__graph.png b/docs/html/classfl_1_1Console__coll__graph.png new file mode 100644 index 0000000..aa2f60a Binary files /dev/null and b/docs/html/classfl_1_1Console__coll__graph.png differ diff --git a/docs/html/classfl_1_1Constant-members.html b/docs/html/classfl_1_1Constant-members.html new file mode 100644 index 0000000..c6968ee --- /dev/null +++ b/docs/html/classfl_1_1Constant-members.html @@ -0,0 +1,144 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Constant Member List
+
+
+ +

This is the complete list of members for fl::Constant, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
_namefl::Termprotected
_valuefl::Constantprotected
className() const fl::Constantvirtual
configure(const std::string &parameters)fl::Constantvirtual
Constant(const std::string &name="", scalar value=fl::nan)fl::Constant
constructor()fl::Constantstatic
copy() const fl::Constantvirtual
getName() const fl::Termvirtual
getValue() const fl::Constantvirtual
membership(scalar x) const fl::Constantvirtual
parameters() const fl::Constantvirtual
setName(const std::string &name)fl::Termvirtual
setValue(scalar value)fl::Constantvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Constant()fl::Constantvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Constant.html b/docs/html/classfl_1_1Constant.html new file mode 100644 index 0000000..a4f2467 --- /dev/null +++ b/docs/html/classfl_1_1Constant.html @@ -0,0 +1,465 @@ + + + + + + +fuzzylite: fl::Constant Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Constant.h>

+
+Inheritance diagram for fl::Constant:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Constant:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Constant (const std::string &name="", scalar value=fl::nan)
 
virtual ~Constant ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setValue (scalar value)
 
virtual scalar getValue () const
 
virtual Constantcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + +

+Protected Attributes

scalar _value
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
fl::Constant::Constant (const std::string & name = "",
scalar value = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Constant::~Constant ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Constant::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Constant::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Constant::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Constant * fl::Constant::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Constant::getValue () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Constant::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Constant::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Constant::setValue (scalar value)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Constant::_value
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Constant.js b/docs/html/classfl_1_1Constant.js new file mode 100644 index 0000000..92e023b --- /dev/null +++ b/docs/html/classfl_1_1Constant.js @@ -0,0 +1,14 @@ +var classfl_1_1Constant = +[ + [ "Constant", "classfl_1_1Constant.html#a29a7ced3d9b7b372b1364942afe0e6c2", null ], + [ "~Constant", "classfl_1_1Constant.html#a046ec6627286462ec829570f95759545", null ], + [ "className", "classfl_1_1Constant.html#ab223859f8fed5eb28c311cee7f2bd7b5", null ], + [ "configure", "classfl_1_1Constant.html#aeb0f191cb82182bfb3ca5b925c38eb6d", null ], + [ "constructor", "classfl_1_1Constant.html#a79dcb419cca8b8ae9fe367ce7b6f15df", null ], + [ "copy", "classfl_1_1Constant.html#ac6835a40aededed1a361cc2d6612828b", null ], + [ "getValue", "classfl_1_1Constant.html#af5b789b84ac38c739e29bd94c75452d4", null ], + [ "membership", "classfl_1_1Constant.html#ab1df75b525300e26f3bfdd16dc3c8bd2", null ], + [ "parameters", "classfl_1_1Constant.html#aab50f02de66ba9ae804d0a38a4e9e0b2", null ], + [ "setValue", "classfl_1_1Constant.html#a06e65296b22772b0c7f6f800e287ef5e", null ], + [ "_value", "classfl_1_1Constant.html#ae6af66c02a42a87630447148236feb70", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Constant__coll__graph.map b/docs/html/classfl_1_1Constant__coll__graph.map new file mode 100644 index 0000000..efd6a65 --- /dev/null +++ b/docs/html/classfl_1_1Constant__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Constant__coll__graph.md5 b/docs/html/classfl_1_1Constant__coll__graph.md5 new file mode 100644 index 0000000..1f10145 --- /dev/null +++ b/docs/html/classfl_1_1Constant__coll__graph.md5 @@ -0,0 +1 @@ +6b624d7a8a84e3fa230faefb6645b673 \ No newline at end of file diff --git a/docs/html/classfl_1_1Constant__coll__graph.png b/docs/html/classfl_1_1Constant__coll__graph.png new file mode 100644 index 0000000..61a6640 Binary files /dev/null and b/docs/html/classfl_1_1Constant__coll__graph.png differ diff --git a/docs/html/classfl_1_1Constant__inherit__graph.map b/docs/html/classfl_1_1Constant__inherit__graph.map new file mode 100644 index 0000000..4486646 --- /dev/null +++ b/docs/html/classfl_1_1Constant__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Constant__inherit__graph.md5 b/docs/html/classfl_1_1Constant__inherit__graph.md5 new file mode 100644 index 0000000..5714788 --- /dev/null +++ b/docs/html/classfl_1_1Constant__inherit__graph.md5 @@ -0,0 +1 @@ +998e3c888023cc99e78dd3dfebccf158 \ No newline at end of file diff --git a/docs/html/classfl_1_1Constant__inherit__graph.png b/docs/html/classfl_1_1Constant__inherit__graph.png new file mode 100644 index 0000000..25eafad Binary files /dev/null and b/docs/html/classfl_1_1Constant__inherit__graph.png differ diff --git a/docs/html/classfl_1_1CppExporter-members.html b/docs/html/classfl_1_1CppExporter-members.html new file mode 100644 index 0000000..8f854d8 --- /dev/null +++ b/docs/html/classfl_1_1CppExporter-members.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::CppExporter Member List
+
+
+ +

This is the complete list of members for fl::CppExporter, including all inherited members.

+ + + + + + + + + + + + + + + +
CppExporter()fl::CppExporter
Exporter()fl::Exporterinline
name() const fl::CppExportervirtual
toString(const Engine *engine) const fl::CppExportervirtual
toString(const InputVariable *inputVariable, const Engine *engine) const fl::CppExportervirtual
toString(const OutputVariable *outputVariable, const Engine *engine) const fl::CppExportervirtual
toString(const RuleBlock *ruleBlock, const Engine *engine) const fl::CppExportervirtual
toString(scalar value) const fl::CppExportervirtual
toString(const Hedge *hedge) const fl::CppExportervirtual
toString(const Term *term) const fl::CppExportervirtual
toString(const Norm *op) const fl::CppExportervirtual
toString(const Defuzzifier *defuzzifier) const fl::CppExportervirtual
~CppExporter()fl::CppExportervirtual
~Exporter()fl::Exporterinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1CppExporter.html b/docs/html/classfl_1_1CppExporter.html new file mode 100644 index 0000000..535e604 --- /dev/null +++ b/docs/html/classfl_1_1CppExporter.html @@ -0,0 +1,494 @@ + + + + + + +fuzzylite: fl::CppExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::CppExporter Class Reference
+
+
+ +

#include <CppExporter.h>

+
+Inheritance diagram for fl::CppExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::CppExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 CppExporter ()
 
virtual ~CppExporter ()
 
virtual std::string name () const
 
virtual std::string toString (const Engine *engine) const
 
virtual std::string toString (const InputVariable *inputVariable, const Engine *engine) const
 
virtual std::string toString (const OutputVariable *outputVariable, const Engine *engine) const
 
virtual std::string toString (const RuleBlock *ruleBlock, const Engine *engine) const
 
virtual std::string toString (scalar value) const
 
virtual std::string toString (const Hedge *hedge) const
 
virtual std::string toString (const Term *term) const
 
virtual std::string toString (const Norm *op) const
 
virtual std::string toString (const Defuzzifier *defuzzifier) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::CppExporter::CppExporter ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::CppExporter::~CppExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::CppExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (const Engineengine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::CppExporter::toString (const InputVariableinputVariable,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::CppExporter::toString (const OutputVariableoutputVariable,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::CppExporter::toString (const RuleBlockruleBlock,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (scalar value) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (const Hedgehedge) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (const Termterm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (const Normop) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::CppExporter::toString (const Defuzzifierdefuzzifier) const
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1CppExporter.js b/docs/html/classfl_1_1CppExporter.js new file mode 100644 index 0000000..f31d0de --- /dev/null +++ b/docs/html/classfl_1_1CppExporter.js @@ -0,0 +1,15 @@ +var classfl_1_1CppExporter = +[ + [ "CppExporter", "classfl_1_1CppExporter.html#a2686897fc63df2046e4d6d0c6c6e5625", null ], + [ "~CppExporter", "classfl_1_1CppExporter.html#a4470fb4b7889c9f6c8171d98a149d5f3", null ], + [ "name", "classfl_1_1CppExporter.html#acf9ce2274bf72448e53d8958a2259087", null ], + [ "toString", "classfl_1_1CppExporter.html#a87230aba083ceaf79039f019aaf522ef", null ], + [ "toString", "classfl_1_1CppExporter.html#a76425dec96f525c34e1d866251691083", null ], + [ "toString", "classfl_1_1CppExporter.html#abd3167e16610d23bc8de551a5a5153b2", null ], + [ "toString", "classfl_1_1CppExporter.html#acebe9d5514eef5082fe159b9d5227f5a", null ], + [ "toString", "classfl_1_1CppExporter.html#a2d0088f77d76ed43583bd6e0397172d0", null ], + [ "toString", "classfl_1_1CppExporter.html#a322a3988ae5979f49151dcc9936ca2b6", null ], + [ "toString", "classfl_1_1CppExporter.html#ac4e09fd612c8f44efd50567721d075d2", null ], + [ "toString", "classfl_1_1CppExporter.html#afd018e5e813a1bc846dcbf13b6ce1ccf", null ], + [ "toString", "classfl_1_1CppExporter.html#a47f209db0dfed0a607e776ac247c0734", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1CppExporter__coll__graph.map b/docs/html/classfl_1_1CppExporter__coll__graph.map new file mode 100644 index 0000000..391b40a --- /dev/null +++ b/docs/html/classfl_1_1CppExporter__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1CppExporter__coll__graph.md5 b/docs/html/classfl_1_1CppExporter__coll__graph.md5 new file mode 100644 index 0000000..0d5bd00 --- /dev/null +++ b/docs/html/classfl_1_1CppExporter__coll__graph.md5 @@ -0,0 +1 @@ +5988c52c8071a19337e2e865a1c56bfd \ No newline at end of file diff --git a/docs/html/classfl_1_1CppExporter__coll__graph.png b/docs/html/classfl_1_1CppExporter__coll__graph.png new file mode 100644 index 0000000..a8362b5 Binary files /dev/null and b/docs/html/classfl_1_1CppExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1CppExporter__inherit__graph.map b/docs/html/classfl_1_1CppExporter__inherit__graph.map new file mode 100644 index 0000000..391b40a --- /dev/null +++ b/docs/html/classfl_1_1CppExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1CppExporter__inherit__graph.md5 b/docs/html/classfl_1_1CppExporter__inherit__graph.md5 new file mode 100644 index 0000000..0d5bd00 --- /dev/null +++ b/docs/html/classfl_1_1CppExporter__inherit__graph.md5 @@ -0,0 +1 @@ +5988c52c8071a19337e2e865a1c56bfd \ No newline at end of file diff --git a/docs/html/classfl_1_1CppExporter__inherit__graph.png b/docs/html/classfl_1_1CppExporter__inherit__graph.png new file mode 100644 index 0000000..a8362b5 Binary files /dev/null and b/docs/html/classfl_1_1CppExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Defuzzifier-members.html b/docs/html/classfl_1_1Defuzzifier-members.html new file mode 100644 index 0000000..2cf54cf --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Defuzzifier Member List
+
+
+ +

This is the complete list of members for fl::Defuzzifier, including all inherited members.

+ + + + + +
className() const =0fl::Defuzzifierpure virtual
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const =0fl::Defuzzifierpure virtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Defuzzifier.html b/docs/html/classfl_1_1Defuzzifier.html new file mode 100644 index 0000000..383e153 --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier.html @@ -0,0 +1,274 @@ + + + + + + +fuzzylite: fl::Defuzzifier Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Defuzzifier Class Referenceabstract
+
+
+ +

#include <Defuzzifier.h>

+
+Inheritance diagram for fl::Defuzzifier:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Defuzzifier:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Public Member Functions

 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
virtual std::string className () const =0
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::Defuzzifier::Defuzzifier ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::Defuzzifier::~Defuzzifier ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Defuzzifier::className () const
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual scalar fl::Defuzzifier::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+pure virtual
+
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1Defuzzifier.js b/docs/html/classfl_1_1Defuzzifier.js new file mode 100644 index 0000000..6dfd264 --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier.js @@ -0,0 +1,7 @@ +var classfl_1_1Defuzzifier = +[ + [ "Defuzzifier", "classfl_1_1Defuzzifier.html#a667711a04b2083365ed78a1a2afc99b8", null ], + [ "~Defuzzifier", "classfl_1_1Defuzzifier.html#a9c3115230b182b30f7a46aa2876e9662", null ], + [ "className", "classfl_1_1Defuzzifier.html#a511b8deb0f5e67855cd7973a42f0e199", null ], + [ "defuzzify", "classfl_1_1Defuzzifier.html#a9d339cf9c564154d85e27320a0ac8507", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1DefuzzifierFactory-members.html b/docs/html/classfl_1_1DefuzzifierFactory-members.html new file mode 100644 index 0000000..c8079ae --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::DefuzzifierFactory Member List
+
+
+ +

This is the complete list of members for fl::DefuzzifierFactory, including all inherited members.

+ + + + + + + + + + + + +
available() constfl::Factory< Defuzzifier * >virtual
createInstance(const std::string &key) constfl::Factory< Defuzzifier * >virtual
Creator typedeffl::Factory< Defuzzifier * >
DefuzzifierFactory()fl::DefuzzifierFactory
deregisterClass(const std::string &key)fl::Factory< Defuzzifier * >virtual
Factory()fl::Factory< Defuzzifier * >
hasRegisteredClass(const std::string &key) constfl::Factory< Defuzzifier * >virtual
mapfl::Factory< Defuzzifier * >protected
registerClass(const std::string &key, Creator creator)fl::Factory< Defuzzifier * >virtual
~DefuzzifierFactory()fl::DefuzzifierFactoryvirtual
~Factory()fl::Factory< Defuzzifier * >virtual
+
+ + + + diff --git a/docs/html/classfl_1_1DefuzzifierFactory.html b/docs/html/classfl_1_1DefuzzifierFactory.html new file mode 100644 index 0000000..e1ea835 --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: fl::DefuzzifierFactory Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::DefuzzifierFactory Class Reference
+
+
+ +

#include <DefuzzifierFactory.h>

+
+Inheritance diagram for fl::DefuzzifierFactory:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::DefuzzifierFactory:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DefuzzifierFactory ()
 
virtual ~DefuzzifierFactory ()
 
- Public Member Functions inherited from fl::Factory< Defuzzifier * >
 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual DefuzzifiercreateInstance (const std::string &key) const
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from fl::Factory< Defuzzifier * >
typedef Defuzzifier *(* Creator )()
 
- Protected Attributes inherited from fl::Factory< Defuzzifier * >
std::map< std::string, Creator > map
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::DefuzzifierFactory::DefuzzifierFactory ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::DefuzzifierFactory::~DefuzzifierFactory ()
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1DefuzzifierFactory.js b/docs/html/classfl_1_1DefuzzifierFactory.js new file mode 100644 index 0000000..fbaf417 --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory.js @@ -0,0 +1,5 @@ +var classfl_1_1DefuzzifierFactory = +[ + [ "DefuzzifierFactory", "classfl_1_1DefuzzifierFactory.html#a30781e202b3392bf24054d7b204de206", null ], + [ "~DefuzzifierFactory", "classfl_1_1DefuzzifierFactory.html#af20e6ca540bf6f6b7f121f53a41645c3", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.map b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.map new file mode 100644 index 0000000..113b4b2 --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.md5 b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.md5 new file mode 100644 index 0000000..26709df --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.md5 @@ -0,0 +1 @@ +cb8ea6ab31cfba4051e9b1731ee4d4d6 \ No newline at end of file diff --git a/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.png b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.png new file mode 100644 index 0000000..502c4e8 Binary files /dev/null and b/docs/html/classfl_1_1DefuzzifierFactory__coll__graph.png differ diff --git a/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.map b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.map new file mode 100644 index 0000000..76f8ff4 --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.md5 b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.md5 new file mode 100644 index 0000000..2c8cf00 --- /dev/null +++ b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.md5 @@ -0,0 +1 @@ +8d8bf9a4f71016b077f106ba868aa659 \ No newline at end of file diff --git a/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.png b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.png new file mode 100644 index 0000000..48bd911 Binary files /dev/null and b/docs/html/classfl_1_1DefuzzifierFactory__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Defuzzifier__coll__graph.map b/docs/html/classfl_1_1Defuzzifier__coll__graph.map new file mode 100644 index 0000000..8f2773f --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Defuzzifier__coll__graph.md5 b/docs/html/classfl_1_1Defuzzifier__coll__graph.md5 new file mode 100644 index 0000000..6914f8c --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier__coll__graph.md5 @@ -0,0 +1 @@ +bfa4cdccdef14c5950edf4df95ed5475 \ No newline at end of file diff --git a/docs/html/classfl_1_1Defuzzifier__coll__graph.png b/docs/html/classfl_1_1Defuzzifier__coll__graph.png new file mode 100644 index 0000000..2b839cc Binary files /dev/null and b/docs/html/classfl_1_1Defuzzifier__coll__graph.png differ diff --git a/docs/html/classfl_1_1Defuzzifier__inherit__graph.map b/docs/html/classfl_1_1Defuzzifier__inherit__graph.map new file mode 100644 index 0000000..12295c3 --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier__inherit__graph.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/classfl_1_1Defuzzifier__inherit__graph.md5 b/docs/html/classfl_1_1Defuzzifier__inherit__graph.md5 new file mode 100644 index 0000000..9cca15d --- /dev/null +++ b/docs/html/classfl_1_1Defuzzifier__inherit__graph.md5 @@ -0,0 +1 @@ +c1cbf507dc31b008b45ced5715ddd388 \ No newline at end of file diff --git a/docs/html/classfl_1_1Defuzzifier__inherit__graph.png b/docs/html/classfl_1_1Defuzzifier__inherit__graph.png new file mode 100644 index 0000000..f801660 Binary files /dev/null and b/docs/html/classfl_1_1Defuzzifier__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Discrete-members.html b/docs/html/classfl_1_1Discrete-members.html new file mode 100644 index 0000000..48f6484 --- /dev/null +++ b/docs/html/classfl_1_1Discrete-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Discrete Member List
+
+
+ +

This is the complete list of members for fl::Discrete, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_namefl::Termprotected
className() const fl::Discretevirtual
configure(const std::string &parameters)fl::Discretevirtual
constructor()fl::Discretestatic
copy() const fl::Discretevirtual
create(const std::string &name, int argc, T x1, T y1,...)fl::Discretestatic
create(const std::string &name, int argc, T x1, T y1,...)fl::Discrete
Discrete(const std::string &name="")fl::Discrete
Discrete(const std::string &name, const std::vector< scalar > &x, const std::vector< scalar > &y)fl::Discrete
Discrete(const std::string &name, const std::vector< std::pair< scalar, scalar > > &xy)fl::Discrete
getName() const fl::Termvirtual
membership(scalar x) const fl::Discretevirtual
parameters() const fl::Discretevirtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
xfl::Discrete
yfl::Discrete
~Discrete()fl::Discretevirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Discrete.html b/docs/html/classfl_1_1Discrete.html new file mode 100644 index 0000000..c68dc79 --- /dev/null +++ b/docs/html/classfl_1_1Discrete.html @@ -0,0 +1,581 @@ + + + + + + +fuzzylite: fl::Discrete Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Discrete.h>

+
+Inheritance diagram for fl::Discrete:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Discrete:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Discrete (const std::string &name="")
 
 Discrete (const std::string &name, const std::vector< scalar > &x, const std::vector< scalar > &y)
 
 Discrete (const std::string &name, const std::vector< std::pair< scalar, scalar > > &xy)
 
virtual ~Discrete ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual Discretecopy () const
 
template<typename T >
Discretecreate (const std::string &name, int argc, T x1, T y1,...) throw (fl::Exception)
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + + + + +

+Static Public Member Functions

template<typename T >
static Discretecreate (const std::string &name, int argc, T x1, T y1,...) throw (fl::Exception)
 
static Termconstructor ()
 
+ + + + + +

+Public Attributes

std::vector< scalarx
 
std::vector< scalary
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Discrete::Discrete (const std::string & name = "")
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Discrete::Discrete (const std::string & name,
const std::vector< scalar > & x,
const std::vector< scalar > & y 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
fl::Discrete::Discrete (const std::string & name,
const std::vector< std::pair< scalar, scalar > > & xy 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Discrete::~Discrete ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Discrete::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Discrete::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Discrete::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Discrete * fl::Discrete::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static Discrete* fl::Discrete::create (const std::string & name,
int argc,
x1,
y1,
 ... 
) throw (fl::Exception)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Discrete* fl::Discrete::create (const std::string & name,
int argc,
x1,
y1,
 ... 
) throw (fl::Exception)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Discrete::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Discrete::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<scalar> fl::Discrete::x
+
+ +
+
+ +
+
+ + + + +
std::vector<scalar> fl::Discrete::y
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Discrete.js b/docs/html/classfl_1_1Discrete.js new file mode 100644 index 0000000..f93d43b --- /dev/null +++ b/docs/html/classfl_1_1Discrete.js @@ -0,0 +1,17 @@ +var classfl_1_1Discrete = +[ + [ "Discrete", "classfl_1_1Discrete.html#ab1e99bcda141227f8fa5c91d7f1cbae9", null ], + [ "Discrete", "classfl_1_1Discrete.html#add3bf20449f16b386fae2cd933f649f6", null ], + [ "Discrete", "classfl_1_1Discrete.html#a5f595f95b1b25eb4b898504d61e78128", null ], + [ "~Discrete", "classfl_1_1Discrete.html#af129934d2b820f343c4918a556f13d13", null ], + [ "className", "classfl_1_1Discrete.html#ae97f1963a45e12bbe4aac3dd0abe7c9c", null ], + [ "configure", "classfl_1_1Discrete.html#a7b172dd91676e087381da2bb72f24ab5", null ], + [ "constructor", "classfl_1_1Discrete.html#a880c08615cd8aca2e66b02ba7eaa80bc", null ], + [ "copy", "classfl_1_1Discrete.html#a4faa32776cbb19cd9b1b9d9b76e3a043", null ], + [ "create", "classfl_1_1Discrete.html#aa775899affa4f5ce1c5fe590db4fce75", null ], + [ "create", "classfl_1_1Discrete.html#ab83fb843c4953eb9e31d8da2b45511e1", null ], + [ "membership", "classfl_1_1Discrete.html#ae258f2ba052fd7c18c471e3b52992e5f", null ], + [ "parameters", "classfl_1_1Discrete.html#a84cf30021a29ecb406b7c01b743aa54f", null ], + [ "x", "classfl_1_1Discrete.html#a97b4d0a07be68da9213354537a28d91a", null ], + [ "y", "classfl_1_1Discrete.html#a0b4cd4a9ab92864e89482d7705e0e173", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Discrete__coll__graph.map b/docs/html/classfl_1_1Discrete__coll__graph.map new file mode 100644 index 0000000..cdd9f95 --- /dev/null +++ b/docs/html/classfl_1_1Discrete__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Discrete__coll__graph.md5 b/docs/html/classfl_1_1Discrete__coll__graph.md5 new file mode 100644 index 0000000..d3104ce --- /dev/null +++ b/docs/html/classfl_1_1Discrete__coll__graph.md5 @@ -0,0 +1 @@ +6b25c637ef966acca7ccbfcec2e55bf7 \ No newline at end of file diff --git a/docs/html/classfl_1_1Discrete__coll__graph.png b/docs/html/classfl_1_1Discrete__coll__graph.png new file mode 100644 index 0000000..3d5292f Binary files /dev/null and b/docs/html/classfl_1_1Discrete__coll__graph.png differ diff --git a/docs/html/classfl_1_1Discrete__inherit__graph.map b/docs/html/classfl_1_1Discrete__inherit__graph.map new file mode 100644 index 0000000..3ca077e --- /dev/null +++ b/docs/html/classfl_1_1Discrete__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Discrete__inherit__graph.md5 b/docs/html/classfl_1_1Discrete__inherit__graph.md5 new file mode 100644 index 0000000..ed51652 --- /dev/null +++ b/docs/html/classfl_1_1Discrete__inherit__graph.md5 @@ -0,0 +1 @@ +789611bf556084514d6321605e4a6a42 \ No newline at end of file diff --git a/docs/html/classfl_1_1Discrete__inherit__graph.png b/docs/html/classfl_1_1Discrete__inherit__graph.png new file mode 100644 index 0000000..a765d19 Binary files /dev/null and b/docs/html/classfl_1_1Discrete__inherit__graph.png differ diff --git a/docs/html/classfl_1_1DrasticProduct-members.html b/docs/html/classfl_1_1DrasticProduct-members.html new file mode 100644 index 0000000..837c58a --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::DrasticProduct Member List
+
+
+ +

This is the complete list of members for fl::DrasticProduct, including all inherited members.

+ + + + + + + + +
className() const fl::DrasticProductvirtual
compute(scalar a, scalar b) const fl::DrasticProductvirtual
constructor()fl::DrasticProductstatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1DrasticProduct.html b/docs/html/classfl_1_1DrasticProduct.html new file mode 100644 index 0000000..06c3f9b --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::DrasticProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::DrasticProduct Class Reference
+
+
+ +

#include <DrasticProduct.h>

+
+Inheritance diagram for fl::DrasticProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::DrasticProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::DrasticProduct::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::DrasticProduct::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::DrasticProduct::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1DrasticProduct.js b/docs/html/classfl_1_1DrasticProduct.js new file mode 100644 index 0000000..216e923 --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct.js @@ -0,0 +1,6 @@ +var classfl_1_1DrasticProduct = +[ + [ "className", "classfl_1_1DrasticProduct.html#a0d21f5ba71a20178afeccb073fc42805", null ], + [ "compute", "classfl_1_1DrasticProduct.html#a8229dba8e0892e727d166277534c4998", null ], + [ "constructor", "classfl_1_1DrasticProduct.html#a3ba3bf3ceb8bdca67887d7a391c24bf0", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticProduct__coll__graph.map b/docs/html/classfl_1_1DrasticProduct__coll__graph.map new file mode 100644 index 0000000..63cca5d --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1DrasticProduct__coll__graph.md5 b/docs/html/classfl_1_1DrasticProduct__coll__graph.md5 new file mode 100644 index 0000000..9ec7697 --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct__coll__graph.md5 @@ -0,0 +1 @@ +5ab4cca1b9269e277d48767a0843392b \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticProduct__coll__graph.png b/docs/html/classfl_1_1DrasticProduct__coll__graph.png new file mode 100644 index 0000000..711b69a Binary files /dev/null and b/docs/html/classfl_1_1DrasticProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1DrasticProduct__inherit__graph.map b/docs/html/classfl_1_1DrasticProduct__inherit__graph.map new file mode 100644 index 0000000..63cca5d --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1DrasticProduct__inherit__graph.md5 b/docs/html/classfl_1_1DrasticProduct__inherit__graph.md5 new file mode 100644 index 0000000..9ec7697 --- /dev/null +++ b/docs/html/classfl_1_1DrasticProduct__inherit__graph.md5 @@ -0,0 +1 @@ +5ab4cca1b9269e277d48767a0843392b \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticProduct__inherit__graph.png b/docs/html/classfl_1_1DrasticProduct__inherit__graph.png new file mode 100644 index 0000000..711b69a Binary files /dev/null and b/docs/html/classfl_1_1DrasticProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1DrasticSum-members.html b/docs/html/classfl_1_1DrasticSum-members.html new file mode 100644 index 0000000..f307a8f --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::DrasticSum Member List
+
+
+ +

This is the complete list of members for fl::DrasticSum, including all inherited members.

+ + + + + + + + +
className() const fl::DrasticSumvirtual
compute(scalar a, scalar b) const fl::DrasticSumvirtual
constructor()fl::DrasticSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1DrasticSum.html b/docs/html/classfl_1_1DrasticSum.html new file mode 100644 index 0000000..0960237 --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::DrasticSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::DrasticSum Class Reference
+
+
+ +

#include <DrasticSum.h>

+
+Inheritance diagram for fl::DrasticSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::DrasticSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::DrasticSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::DrasticSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::DrasticSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1DrasticSum.js b/docs/html/classfl_1_1DrasticSum.js new file mode 100644 index 0000000..9990ad3 --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum.js @@ -0,0 +1,6 @@ +var classfl_1_1DrasticSum = +[ + [ "className", "classfl_1_1DrasticSum.html#acb789b71a2ef7a1cdd955e4bd623e537", null ], + [ "compute", "classfl_1_1DrasticSum.html#ae5540e7817df1c392ae35ecd2b27d2e2", null ], + [ "constructor", "classfl_1_1DrasticSum.html#af41c2612de772b60e85486719924a19a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticSum__coll__graph.map b/docs/html/classfl_1_1DrasticSum__coll__graph.map new file mode 100644 index 0000000..59e6b8d --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1DrasticSum__coll__graph.md5 b/docs/html/classfl_1_1DrasticSum__coll__graph.md5 new file mode 100644 index 0000000..60ff131 --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum__coll__graph.md5 @@ -0,0 +1 @@ +3184b436a01902c4c92cd4c302d395b2 \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticSum__coll__graph.png b/docs/html/classfl_1_1DrasticSum__coll__graph.png new file mode 100644 index 0000000..87d7d7c Binary files /dev/null and b/docs/html/classfl_1_1DrasticSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1DrasticSum__inherit__graph.map b/docs/html/classfl_1_1DrasticSum__inherit__graph.map new file mode 100644 index 0000000..59e6b8d --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1DrasticSum__inherit__graph.md5 b/docs/html/classfl_1_1DrasticSum__inherit__graph.md5 new file mode 100644 index 0000000..60ff131 --- /dev/null +++ b/docs/html/classfl_1_1DrasticSum__inherit__graph.md5 @@ -0,0 +1 @@ +3184b436a01902c4c92cd4c302d395b2 \ No newline at end of file diff --git a/docs/html/classfl_1_1DrasticSum__inherit__graph.png b/docs/html/classfl_1_1DrasticSum__inherit__graph.png new file mode 100644 index 0000000..87d7d7c Binary files /dev/null and b/docs/html/classfl_1_1DrasticSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1EinsteinProduct-members.html b/docs/html/classfl_1_1EinsteinProduct-members.html new file mode 100644 index 0000000..a574f2a --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::EinsteinProduct Member List
+
+
+ +

This is the complete list of members for fl::EinsteinProduct, including all inherited members.

+ + + + + + + + +
className() const fl::EinsteinProductvirtual
compute(scalar a, scalar b) const fl::EinsteinProductvirtual
constructor()fl::EinsteinProductstatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1EinsteinProduct.html b/docs/html/classfl_1_1EinsteinProduct.html new file mode 100644 index 0000000..e5c5f84 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::EinsteinProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::EinsteinProduct Class Reference
+
+
+ +

#include <EinsteinProduct.h>

+
+Inheritance diagram for fl::EinsteinProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::EinsteinProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::EinsteinProduct::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::EinsteinProduct::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::EinsteinProduct::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1EinsteinProduct.js b/docs/html/classfl_1_1EinsteinProduct.js new file mode 100644 index 0000000..1c6f758 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct.js @@ -0,0 +1,6 @@ +var classfl_1_1EinsteinProduct = +[ + [ "className", "classfl_1_1EinsteinProduct.html#a42d8f66c7082903157291f248ce19016", null ], + [ "compute", "classfl_1_1EinsteinProduct.html#a80d026cdac33661c87f770a75380137f", null ], + [ "constructor", "classfl_1_1EinsteinProduct.html#ae48735984fa4af8aadc04a866bc7f95b", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinProduct__coll__graph.map b/docs/html/classfl_1_1EinsteinProduct__coll__graph.map new file mode 100644 index 0000000..a194d20 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1EinsteinProduct__coll__graph.md5 b/docs/html/classfl_1_1EinsteinProduct__coll__graph.md5 new file mode 100644 index 0000000..24841f5 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct__coll__graph.md5 @@ -0,0 +1 @@ +e9d6a6685e844f33fa411fe83fa494e0 \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinProduct__coll__graph.png b/docs/html/classfl_1_1EinsteinProduct__coll__graph.png new file mode 100644 index 0000000..b9f14f0 Binary files /dev/null and b/docs/html/classfl_1_1EinsteinProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1EinsteinProduct__inherit__graph.map b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.map new file mode 100644 index 0000000..a194d20 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1EinsteinProduct__inherit__graph.md5 b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.md5 new file mode 100644 index 0000000..24841f5 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.md5 @@ -0,0 +1 @@ +e9d6a6685e844f33fa411fe83fa494e0 \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinProduct__inherit__graph.png b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.png new file mode 100644 index 0000000..b9f14f0 Binary files /dev/null and b/docs/html/classfl_1_1EinsteinProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1EinsteinSum-members.html b/docs/html/classfl_1_1EinsteinSum-members.html new file mode 100644 index 0000000..4c89da6 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::EinsteinSum Member List
+
+
+ +

This is the complete list of members for fl::EinsteinSum, including all inherited members.

+ + + + + + + + +
className() const fl::EinsteinSumvirtual
compute(scalar a, scalar b) const fl::EinsteinSumvirtual
constructor()fl::EinsteinSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1EinsteinSum.html b/docs/html/classfl_1_1EinsteinSum.html new file mode 100644 index 0000000..66f5d40 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::EinsteinSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::EinsteinSum Class Reference
+
+
+ +

#include <EinsteinSum.h>

+
+Inheritance diagram for fl::EinsteinSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::EinsteinSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::EinsteinSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::EinsteinSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::EinsteinSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1EinsteinSum.js b/docs/html/classfl_1_1EinsteinSum.js new file mode 100644 index 0000000..010c167 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum.js @@ -0,0 +1,6 @@ +var classfl_1_1EinsteinSum = +[ + [ "className", "classfl_1_1EinsteinSum.html#aec42a24b948620986abc0cf91f32b644", null ], + [ "compute", "classfl_1_1EinsteinSum.html#ab53c8b600c40a7b7d3dcbc33edcc01e6", null ], + [ "constructor", "classfl_1_1EinsteinSum.html#a26069692ad549ed9329ac44524d53019", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinSum__coll__graph.map b/docs/html/classfl_1_1EinsteinSum__coll__graph.map new file mode 100644 index 0000000..19aca51 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1EinsteinSum__coll__graph.md5 b/docs/html/classfl_1_1EinsteinSum__coll__graph.md5 new file mode 100644 index 0000000..dd973d8 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum__coll__graph.md5 @@ -0,0 +1 @@ +9c662a51ace219b037f0128a53d858e8 \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinSum__coll__graph.png b/docs/html/classfl_1_1EinsteinSum__coll__graph.png new file mode 100644 index 0000000..74dcbb9 Binary files /dev/null and b/docs/html/classfl_1_1EinsteinSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1EinsteinSum__inherit__graph.map b/docs/html/classfl_1_1EinsteinSum__inherit__graph.map new file mode 100644 index 0000000..19aca51 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1EinsteinSum__inherit__graph.md5 b/docs/html/classfl_1_1EinsteinSum__inherit__graph.md5 new file mode 100644 index 0000000..dd973d8 --- /dev/null +++ b/docs/html/classfl_1_1EinsteinSum__inherit__graph.md5 @@ -0,0 +1 @@ +9c662a51ace219b037f0128a53d858e8 \ No newline at end of file diff --git a/docs/html/classfl_1_1EinsteinSum__inherit__graph.png b/docs/html/classfl_1_1EinsteinSum__inherit__graph.png new file mode 100644 index 0000000..74dcbb9 Binary files /dev/null and b/docs/html/classfl_1_1EinsteinSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Engine-members.html b/docs/html/classfl_1_1Engine-members.html new file mode 100644 index 0000000..de26065 --- /dev/null +++ b/docs/html/classfl_1_1Engine-members.html @@ -0,0 +1,179 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Engine Member List
+
+
+ +

This is the complete list of members for fl::Engine, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hedgesfl::Engineprotected
_inputVariablesfl::Engineprotected
_namefl::Engineprotected
_outputVariablesfl::Engineprotected
_ruleblocksfl::Engineprotected
addHedge(Hedge *hedge)fl::Enginevirtual
addInputVariable(InputVariable *inputVariable)fl::Enginevirtual
addOutputVariable(OutputVariable *outputVariable)fl::Enginevirtual
addRuleBlock(RuleBlock *ruleblock)fl::Enginevirtual
configure(const std::string &conjunctionT="Minimum", const std::string &disjunctionS="Maximum", const std::string &activationT="Minimum", const std::string &accumulationS="Maximum", const std::string &defuzzifier="Centroid", int resolution=IntegralDefuzzifier::defaultResolution())fl::Enginevirtual
Engine(const std::string &name="")fl::Engine
getHedge(int index) const fl::Enginevirtual
getHedge(const std::string &name) const fl::Enginevirtual
getInputVariable(int index) const fl::Enginevirtual
getInputVariable(const std::string &name) const fl::Enginevirtual
getName() const fl::Enginevirtual
getOutputValue(const std::string &name)fl::Enginevirtual
getOutputVariable(int index) const fl::Enginevirtual
getOutputVariable(const std::string &name) const fl::Enginevirtual
getRuleBlock(int index) const fl::Enginevirtual
getRuleBlock(const std::string &name) const fl::Enginevirtual
hasHedge(const std::string &name) const fl::Enginevirtual
hasInputVariable(const std::string &name) const fl::Enginevirtual
hasOutputVariable(const std::string &name) const fl::Enginevirtual
hasRuleBlock(const std::string &name) const fl::Enginevirtual
hedges() const fl::Enginevirtual
inputVariables() const fl::Enginevirtual
insertHedge(Hedge *hedge, int index)fl::Enginevirtual
insertInputVariable(InputVariable *inputVariable, int index)fl::Enginevirtual
insertOutputVariable(OutputVariable *outputVariable, int index)fl::Enginevirtual
insertRuleBlock(RuleBlock *ruleblock, int index)fl::Enginevirtual
isReady(std::string *status=NULL) const fl::Enginevirtual
numberOfHedges() const fl::Enginevirtual
numberOfInputVariables() const fl::Enginevirtual
numberOfOutputVariables() const fl::Enginevirtual
numberOfRuleBlocks() const fl::Enginevirtual
outputVariables() const fl::Enginevirtual
process()fl::Enginevirtual
removeHedge(int index)fl::Enginevirtual
removeHedge(const std::string &name)fl::Enginevirtual
removeInputVariable(int index)fl::Enginevirtual
removeInputVariable(const std::string &name)fl::Enginevirtual
removeOutputVariable(int index)fl::Enginevirtual
removeOutputVariable(const std::string &name)fl::Enginevirtual
removeRuleBlock(int index)fl::Enginevirtual
removeRuleBlock(const std::string &name)fl::Enginevirtual
restart()fl::Enginevirtual
ruleBlocks() const fl::Enginevirtual
setInputValue(const std::string &name, scalar value)fl::Enginevirtual
setName(const std::string &name)fl::Enginevirtual
toString() const fl::Enginevirtual
~Engine()fl::Enginevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Engine.html b/docs/html/classfl_1_1Engine.html new file mode 100644 index 0000000..c1d4c60 --- /dev/null +++ b/docs/html/classfl_1_1Engine.html @@ -0,0 +1,1566 @@ + + + + + + +fuzzylite: fl::Engine Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Engine Class Reference
+
+
+ +

A fuzzy engine. + More...

+ +

#include <Engine.h>

+
+Collaboration diagram for fl::Engine:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Engine (const std::string &name="")
 
virtual ~Engine ()
 
virtual void configure (const std::string &conjunctionT="Minimum", const std::string &disjunctionS="Maximum", const std::string &activationT="Minimum", const std::string &accumulationS="Maximum", const std::string &defuzzifier="Centroid", int resolution=IntegralDefuzzifier::defaultResolution())
 
virtual bool isReady (std::string *status=NULL) const
 
virtual void process ()
 
virtual void restart ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual void setInputValue (const std::string &name, scalar value)
 
virtual scalar getOutputValue (const std::string &name)
 
virtual std::string toString () const
 
virtual void addInputVariable (InputVariable *inputVariable)
 
virtual void insertInputVariable (InputVariable *inputVariable, int index)
 
virtual InputVariablegetInputVariable (int index) const
 
virtual InputVariablegetInputVariable (const std::string &name) const
 
virtual InputVariableremoveInputVariable (int index)
 
virtual InputVariableremoveInputVariable (const std::string &name)
 
virtual bool hasInputVariable (const std::string &name) const
 
virtual int numberOfInputVariables () const
 
virtual const std::vector
+< InputVariable * > & 
inputVariables () const
 
virtual void addOutputVariable (OutputVariable *outputVariable)
 
virtual void insertOutputVariable (OutputVariable *outputVariable, int index)
 
virtual OutputVariablegetOutputVariable (int index) const
 
virtual OutputVariablegetOutputVariable (const std::string &name) const
 
virtual bool hasOutputVariable (const std::string &name) const
 
virtual OutputVariableremoveOutputVariable (int index)
 
virtual OutputVariableremoveOutputVariable (const std::string &name)
 
virtual int numberOfOutputVariables () const
 
virtual const std::vector
+< OutputVariable * > & 
outputVariables () const
 
virtual void addRuleBlock (RuleBlock *ruleblock)
 
virtual void insertRuleBlock (RuleBlock *ruleblock, int index)
 
virtual RuleBlockgetRuleBlock (int index) const
 
virtual RuleBlockgetRuleBlock (const std::string &name) const
 
virtual bool hasRuleBlock (const std::string &name) const
 
virtual RuleBlockremoveRuleBlock (int index)
 
virtual RuleBlockremoveRuleBlock (const std::string &name)
 
virtual int numberOfRuleBlocks () const
 
virtual const std::vector
+< RuleBlock * > & 
ruleBlocks () const
 
virtual void addHedge (Hedge *hedge)
 
virtual void insertHedge (Hedge *hedge, int index)
 
virtual HedgegetHedge (int index) const
 
virtual HedgegetHedge (const std::string &name) const
 
virtual bool hasHedge (const std::string &name) const
 
virtual HedgeremoveHedge (int index)
 
virtual HedgeremoveHedge (const std::string &name)
 
virtual int numberOfHedges () const
 
virtual const std::vector
+< Hedge * > & 
hedges () const
 
+ + + + + + + + + + + +

+Protected Attributes

std::string _name
 
std::vector< InputVariable * > _inputVariables
 
std::vector< OutputVariable * > _outputVariables
 
std::vector< RuleBlock * > _ruleblocks
 
std::vector< Hedge * > _hedges
 
+

Detailed Description

+

A fuzzy engine.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Engine::Engine (const std::string & name = "")
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Engine::~Engine ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Engine::addHedge (Hedgehedge)
+
+virtual
+
+

Operations for std::vector _hedges

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Engine::addInputVariable (InputVariableinputVariable)
+
+virtual
+
+

Operations for iterable datatype _inputVariables

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Engine::addOutputVariable (OutputVariableoutputVariable)
+
+virtual
+
+

Operations for iterable datatype _outputVariables

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Engine::addRuleBlock (RuleBlockruleblock)
+
+virtual
+
+

Operations for iterable datatype _ruleblocks

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void fl::Engine::configure (const std::string & conjunctionT = "Minimum",
const std::string & disjunctionS = "Maximum",
const std::string & activationT = "Minimum",
const std::string & accumulationS = "Maximum",
const std::string & defuzzifier = "Centroid",
int resolution = IntegralDefuzzifier::defaultResolution() 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Hedge * fl::Engine::getHedge (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Hedge * fl::Engine::getHedge (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
InputVariable * fl::Engine::getInputVariable (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
InputVariable * fl::Engine::getInputVariable (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Engine::getName () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Engine::getOutputValue (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
OutputVariable * fl::Engine::getOutputVariable (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
OutputVariable * fl::Engine::getOutputVariable (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
RuleBlock * fl::Engine::getRuleBlock (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
RuleBlock * fl::Engine::getRuleBlock (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Engine::hasHedge (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Engine::hasInputVariable (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Engine::hasOutputVariable (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Engine::hasRuleBlock (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< Hedge * > & fl::Engine::hedges () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< InputVariable * > & fl::Engine::inputVariables () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Engine::insertHedge (Hedgehedge,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Engine::insertInputVariable (InputVariableinputVariable,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Engine::insertOutputVariable (OutputVariableoutputVariable,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Engine::insertRuleBlock (RuleBlockruleblock,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Engine::isReady (std::string * status = NULL) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Engine::numberOfHedges () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Engine::numberOfInputVariables () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Engine::numberOfOutputVariables () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Engine::numberOfRuleBlocks () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< OutputVariable * > & fl::Engine::outputVariables () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Engine::process ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Hedge * fl::Engine::removeHedge (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Hedge * fl::Engine::removeHedge (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
InputVariable * fl::Engine::removeInputVariable (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
InputVariable * fl::Engine::removeInputVariable (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
OutputVariable * fl::Engine::removeOutputVariable (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
OutputVariable * fl::Engine::removeOutputVariable (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
RuleBlock * fl::Engine::removeRuleBlock (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
RuleBlock * fl::Engine::removeRuleBlock (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Engine::restart ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< RuleBlock * > & fl::Engine::ruleBlocks () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Engine::setInputValue (const std::string & name,
scalar value 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Engine::setName (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Engine::toString () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<Hedge*> fl::Engine::_hedges
+
+protected
+
+

The hedges registered in the engine to be used by fuzzy rules.

+
See Also
fl::HedgeFactory
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<InputVariable*> fl::Engine::_inputVariables
+
+protected
+
+

The input variables registered in the engine

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Engine::_name
+
+protected
+
+

The name of the engine used for information only

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<OutputVariable*> fl::Engine::_outputVariables
+
+protected
+
+

The output variables registered in the engine

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<RuleBlock*> fl::Engine::_ruleblocks
+
+protected
+
+

The rule blocks registered in the engine

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Engine.js b/docs/html/classfl_1_1Engine.js new file mode 100644 index 0000000..625b4ad --- /dev/null +++ b/docs/html/classfl_1_1Engine.js @@ -0,0 +1,55 @@ +var classfl_1_1Engine = +[ + [ "Engine", "classfl_1_1Engine.html#a0cc9382b2782fc17cb253ad71e12648a", null ], + [ "~Engine", "classfl_1_1Engine.html#a5b4ba98e071767d219624416c4b6008e", null ], + [ "addHedge", "classfl_1_1Engine.html#a879e2b74ad7f219a591e8c65674e3870", null ], + [ "addInputVariable", "classfl_1_1Engine.html#a545f4b8cb62d3430c4ebceb94e50198c", null ], + [ "addOutputVariable", "classfl_1_1Engine.html#a59d3b93579d829483730bc4c33c93909", null ], + [ "addRuleBlock", "classfl_1_1Engine.html#adb3bb3a9d43f04a3e2222250770b7628", null ], + [ "configure", "classfl_1_1Engine.html#ad4f0d7d9984f9fa6a232c995f1560425", null ], + [ "getHedge", "classfl_1_1Engine.html#aca6a1d466e724e072b9fafe4543ac24c", null ], + [ "getHedge", "classfl_1_1Engine.html#aaa9d918b11334996a412e1d254d2e613", null ], + [ "getInputVariable", "classfl_1_1Engine.html#a8ec2e0d92edaa708911317ebd1dcf076", null ], + [ "getInputVariable", "classfl_1_1Engine.html#a36fb40cdddec82a664515d75fecb197e", null ], + [ "getName", "classfl_1_1Engine.html#a8506b08c5b0703303216d8a6a9fc5177", null ], + [ "getOutputValue", "classfl_1_1Engine.html#a9513599df6c3f5216014935270b0a48a", null ], + [ "getOutputVariable", "classfl_1_1Engine.html#a04966ed53d33272421ef3fd1892d2f39", null ], + [ "getOutputVariable", "classfl_1_1Engine.html#a3370e83e016907dc4c48d8bfe714699e", null ], + [ "getRuleBlock", "classfl_1_1Engine.html#acb630b203d3ad271031a239ed3d395db", null ], + [ "getRuleBlock", "classfl_1_1Engine.html#a99c84543af90e05a4dc75a160603101d", null ], + [ "hasHedge", "classfl_1_1Engine.html#aca04b618fd840e8f15bdbc7869176307", null ], + [ "hasInputVariable", "classfl_1_1Engine.html#a5f335382428fc07d10b2e19b07ad3169", null ], + [ "hasOutputVariable", "classfl_1_1Engine.html#af5fb1a60a176eeb626d216fc6543d2a4", null ], + [ "hasRuleBlock", "classfl_1_1Engine.html#a2981da39b56ea615c9b18ae367deb2b8", null ], + [ "hedges", "classfl_1_1Engine.html#a0ad848e4b8676d7c57ce5ce9aaf347dd", null ], + [ "inputVariables", "classfl_1_1Engine.html#a9c107245f0d4492291860d0c3b4e0600", null ], + [ "insertHedge", "classfl_1_1Engine.html#a7420c4284e7056be4be23ae8bd5d8806", null ], + [ "insertInputVariable", "classfl_1_1Engine.html#a231be0ae11c7594760b90e54dce0eb2c", null ], + [ "insertOutputVariable", "classfl_1_1Engine.html#a385c393a1b6a81b3fa4370a3d9ae5e1e", null ], + [ "insertRuleBlock", "classfl_1_1Engine.html#aaf00bd5a56c4d0cdb19274104cfdbbbf", null ], + [ "isReady", "classfl_1_1Engine.html#adfacce3db1568a16e685faa865e8b55a", null ], + [ "numberOfHedges", "classfl_1_1Engine.html#ad3b1b9e448d7183406d3c36eb06e1653", null ], + [ "numberOfInputVariables", "classfl_1_1Engine.html#aaff1c85f1f4b3c846ee2a79507f32080", null ], + [ "numberOfOutputVariables", "classfl_1_1Engine.html#aa74eb71ff2a9c55c4167072cf5b1bb4b", null ], + [ "numberOfRuleBlocks", "classfl_1_1Engine.html#a32b38de0b3079c254c7de7a1404f3e4c", null ], + [ "outputVariables", "classfl_1_1Engine.html#a3986929c751fa14c5e91ad899442bd1e", null ], + [ "process", "classfl_1_1Engine.html#a6810105266cdc2a801ae9e9fc56edc27", null ], + [ "removeHedge", "classfl_1_1Engine.html#aedaccca7f6bf3bd39e0f552d2b5e2804", null ], + [ "removeHedge", "classfl_1_1Engine.html#a0ade8efb4d5def737107beda95cd194c", null ], + [ "removeInputVariable", "classfl_1_1Engine.html#ab2543f14f73a53e81cd66fb572a89e33", null ], + [ "removeInputVariable", "classfl_1_1Engine.html#a8cd360e285096ee2b0c526b38d64f76d", null ], + [ "removeOutputVariable", "classfl_1_1Engine.html#aa09efb6fdcbf04b7a4d055af57a28bf6", null ], + [ "removeOutputVariable", "classfl_1_1Engine.html#ad9abfd28ae7b029a3dddb9683dcef13b", null ], + [ "removeRuleBlock", "classfl_1_1Engine.html#a7c455e9bc27ea5befe893b0f9d6b978b", null ], + [ "removeRuleBlock", "classfl_1_1Engine.html#a7c419900a49065d34bdf09c7cc9c3360", null ], + [ "restart", "classfl_1_1Engine.html#aaab1df1f00cf869177d9b89c1d959547", null ], + [ "ruleBlocks", "classfl_1_1Engine.html#a0b00a2479143189023bdbf92e6f1275b", null ], + [ "setInputValue", "classfl_1_1Engine.html#aab610c741f61f413d74017d2cf65f002", null ], + [ "setName", "classfl_1_1Engine.html#ab1aa8ab2f8f6375f713b42d6fb36ca1a", null ], + [ "toString", "classfl_1_1Engine.html#a6899dd3759b1046152d4df4ff0650d9b", null ], + [ "_hedges", "classfl_1_1Engine.html#ad223b542db52763b4307141dd1743ac8", null ], + [ "_inputVariables", "classfl_1_1Engine.html#afe5a903a3c7e0d9f56224d7c640c84e8", null ], + [ "_name", "classfl_1_1Engine.html#a49806c12fc00793a8170b6b3cbb55ca7", null ], + [ "_outputVariables", "classfl_1_1Engine.html#a042c2d297ef2f399ff5205a751250cf1", null ], + [ "_ruleblocks", "classfl_1_1Engine.html#a971cb8784678daa1cfddffdf882df414", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Engine__coll__graph.map b/docs/html/classfl_1_1Engine__coll__graph.map new file mode 100644 index 0000000..85b3c0c --- /dev/null +++ b/docs/html/classfl_1_1Engine__coll__graph.map @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1Engine__coll__graph.md5 b/docs/html/classfl_1_1Engine__coll__graph.md5 new file mode 100644 index 0000000..d166452 --- /dev/null +++ b/docs/html/classfl_1_1Engine__coll__graph.md5 @@ -0,0 +1 @@ +11f0036bb1eb6138b89ae81b6fc1e808 \ No newline at end of file diff --git a/docs/html/classfl_1_1Engine__coll__graph.png b/docs/html/classfl_1_1Engine__coll__graph.png new file mode 100644 index 0000000..96e6184 Binary files /dev/null and b/docs/html/classfl_1_1Engine__coll__graph.png differ diff --git a/docs/html/classfl_1_1Exception-members.html b/docs/html/classfl_1_1Exception-members.html new file mode 100644 index 0000000..d366b97 --- /dev/null +++ b/docs/html/classfl_1_1Exception-members.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Exception Member List
+
+
+ +

This is the complete list of members for fl::Exception, including all inherited members.

+ + + + + + + + + + + + + +
_whatfl::Exceptionprotected
append(const std::string &whatElse)fl::Exceptionvirtual
append(const std::string &file, int line, const std::string &function)fl::Exceptionvirtual
append(const std::string &whatElse, const std::string &file, int line, const std::string &function)fl::Exceptionvirtual
btCallStack(const int maxCalls=30)fl::Exceptionstatic
Exception(const std::string &what, const std::string &file, int line, const std::string &function)fl::Exception
getWhat() const fl::Exceptionvirtual
setWhat(const std::string &what)fl::Exceptionvirtual
signalHandler(int signal)fl::Exceptionstatic
terminate()fl::Exceptionstatic
what() const fl::Exceptionvirtual
~Exception()fl::Exceptionvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Exception.html b/docs/html/classfl_1_1Exception.html new file mode 100644 index 0000000..a92a4ef --- /dev/null +++ b/docs/html/classfl_1_1Exception.html @@ -0,0 +1,519 @@ + + + + + + +fuzzylite: fl::Exception Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Exception.h>

+
+Inheritance diagram for fl::Exception:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Exception:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Exception (const std::string &what, const std::string &file, int line, const std::string &function)
 
virtual ~Exception () throw ()
 
virtual void setWhat (const std::string &what)
 
virtual std::string getWhat () const
 
virtual const char * what () const throw ()
 
virtual void append (const std::string &whatElse)
 
virtual void append (const std::string &file, int line, const std::string &function)
 
virtual void append (const std::string &whatElse, const std::string &file, int line, const std::string &function)
 
+ + + + + + + +

+Static Public Member Functions

static std::string btCallStack (const int maxCalls=30)
 
static void signalHandler (int signal)
 
static void terminate ()
 
+ + + +

+Protected Attributes

std::string _what
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Exception::Exception (const std::string & what,
const std::string & file,
int line,
const std::string & function 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Exception::~Exception () throw ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Exception::append (const std::string & whatElse)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void fl::Exception::append (const std::string & file,
int line,
const std::string & function 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void fl::Exception::append (const std::string & whatElse,
const std::string & file,
int line,
const std::string & function 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Exception::btCallStack (const int maxCalls = 30)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Exception::getWhat () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Exception::setWhat (const std::string & what)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Exception::signalHandler (int signal)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Exception::terminate ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const char * fl::Exception::what () const throw ()
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string fl::Exception::_what
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Exception.js b/docs/html/classfl_1_1Exception.js new file mode 100644 index 0000000..baefcaa --- /dev/null +++ b/docs/html/classfl_1_1Exception.js @@ -0,0 +1,15 @@ +var classfl_1_1Exception = +[ + [ "Exception", "classfl_1_1Exception.html#a11a8e6d81b6604e559dc5ed895fdd6fc", null ], + [ "~Exception", "classfl_1_1Exception.html#a6b2c996dbe10a2ce28e2a3028b7a60ba", null ], + [ "append", "classfl_1_1Exception.html#ae4fed8d0b27b56a239a683ee7fd9cec4", null ], + [ "append", "classfl_1_1Exception.html#af82048d1815c64ffbf146c2f20549ddb", null ], + [ "append", "classfl_1_1Exception.html#a8293b05db9f8bfa87607de1bb7397990", null ], + [ "btCallStack", "classfl_1_1Exception.html#af2828c0abaff2130600f41d0f1fa6ce6", null ], + [ "getWhat", "classfl_1_1Exception.html#a356f4b32b778f34f6d6216d7088eedd7", null ], + [ "setWhat", "classfl_1_1Exception.html#aa8626724f221a050a1c4f7130392fcbf", null ], + [ "signalHandler", "classfl_1_1Exception.html#a79d8db2ee6a5bb5e09e946d8e614668e", null ], + [ "terminate", "classfl_1_1Exception.html#abb466081bb58ff8ec77ed18837d98c80", null ], + [ "what", "classfl_1_1Exception.html#a1f606bf37e5cd79274f606dd8b8697cf", null ], + [ "_what", "classfl_1_1Exception.html#a0f3a3e2cf6e03bcd887cbd17b32b6017", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Exception__coll__graph.map b/docs/html/classfl_1_1Exception__coll__graph.map new file mode 100644 index 0000000..18ea6da --- /dev/null +++ b/docs/html/classfl_1_1Exception__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Exception__coll__graph.md5 b/docs/html/classfl_1_1Exception__coll__graph.md5 new file mode 100644 index 0000000..b75512d --- /dev/null +++ b/docs/html/classfl_1_1Exception__coll__graph.md5 @@ -0,0 +1 @@ +0cd9a82a55ec6432622904c0bacd3b26 \ No newline at end of file diff --git a/docs/html/classfl_1_1Exception__coll__graph.png b/docs/html/classfl_1_1Exception__coll__graph.png new file mode 100644 index 0000000..3288869 Binary files /dev/null and b/docs/html/classfl_1_1Exception__coll__graph.png differ diff --git a/docs/html/classfl_1_1Exception__inherit__graph.map b/docs/html/classfl_1_1Exception__inherit__graph.map new file mode 100644 index 0000000..f066535 --- /dev/null +++ b/docs/html/classfl_1_1Exception__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Exception__inherit__graph.md5 b/docs/html/classfl_1_1Exception__inherit__graph.md5 new file mode 100644 index 0000000..01570a6 --- /dev/null +++ b/docs/html/classfl_1_1Exception__inherit__graph.md5 @@ -0,0 +1 @@ +49f5bc94e9f944a788256565976882bd \ No newline at end of file diff --git a/docs/html/classfl_1_1Exception__inherit__graph.png b/docs/html/classfl_1_1Exception__inherit__graph.png new file mode 100644 index 0000000..36634ba Binary files /dev/null and b/docs/html/classfl_1_1Exception__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Exporter-members.html b/docs/html/classfl_1_1Exporter-members.html new file mode 100644 index 0000000..8c0e1e9 --- /dev/null +++ b/docs/html/classfl_1_1Exporter-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Exporter Member List
+
+
+ +

This is the complete list of members for fl::Exporter, including all inherited members.

+ + + + + +
Exporter()fl::Exporterinline
name() const =0fl::Exporterpure virtual
toString(const Engine *engine) const =0fl::Exporterpure virtual
~Exporter()fl::Exporterinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Exporter.html b/docs/html/classfl_1_1Exporter.html new file mode 100644 index 0000000..497a931 --- /dev/null +++ b/docs/html/classfl_1_1Exporter.html @@ -0,0 +1,258 @@ + + + + + + +fuzzylite: fl::Exporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Exporter Class Referenceabstract
+
+
+ +

#include <Exporter.h>

+
+Inheritance diagram for fl::Exporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Exporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Public Member Functions

 Exporter ()
 
virtual ~Exporter ()
 
virtual std::string name () const =0
 
virtual std::string toString (const Engine *engine) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::Exporter::Exporter ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::Exporter::~Exporter ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Exporter::name () const
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::string fl::Exporter::toString (const Engineengine) const
+
+pure virtual
+
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1Exporter.js b/docs/html/classfl_1_1Exporter.js new file mode 100644 index 0000000..a8548f3 --- /dev/null +++ b/docs/html/classfl_1_1Exporter.js @@ -0,0 +1,7 @@ +var classfl_1_1Exporter = +[ + [ "Exporter", "classfl_1_1Exporter.html#aab49a9590298c2d405a96b69e39776f4", null ], + [ "~Exporter", "classfl_1_1Exporter.html#ab5319c12e3b59565951467c39988a707", null ], + [ "name", "classfl_1_1Exporter.html#aff99f85f68f8f4c8b2755f2dcc435f11", null ], + [ "toString", "classfl_1_1Exporter.html#a4532bc9161aa197ecbb2223974f43136", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Exporter__coll__graph.map b/docs/html/classfl_1_1Exporter__coll__graph.map new file mode 100644 index 0000000..9c7108b --- /dev/null +++ b/docs/html/classfl_1_1Exporter__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Exporter__coll__graph.md5 b/docs/html/classfl_1_1Exporter__coll__graph.md5 new file mode 100644 index 0000000..accfd35 --- /dev/null +++ b/docs/html/classfl_1_1Exporter__coll__graph.md5 @@ -0,0 +1 @@ +35d5a87f9032b236acf61ce64888402c \ No newline at end of file diff --git a/docs/html/classfl_1_1Exporter__coll__graph.png b/docs/html/classfl_1_1Exporter__coll__graph.png new file mode 100644 index 0000000..f9f667e Binary files /dev/null and b/docs/html/classfl_1_1Exporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1Exporter__inherit__graph.map b/docs/html/classfl_1_1Exporter__inherit__graph.map new file mode 100644 index 0000000..ff571b8 --- /dev/null +++ b/docs/html/classfl_1_1Exporter__inherit__graph.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/classfl_1_1Exporter__inherit__graph.md5 b/docs/html/classfl_1_1Exporter__inherit__graph.md5 new file mode 100644 index 0000000..eff7a4b --- /dev/null +++ b/docs/html/classfl_1_1Exporter__inherit__graph.md5 @@ -0,0 +1 @@ +0a54954a22bc0717f489aafb363ebe97 \ No newline at end of file diff --git a/docs/html/classfl_1_1Exporter__inherit__graph.png b/docs/html/classfl_1_1Exporter__inherit__graph.png new file mode 100644 index 0000000..c711e96 Binary files /dev/null and b/docs/html/classfl_1_1Exporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Expression-members.html b/docs/html/classfl_1_1Expression-members.html new file mode 100644 index 0000000..7c1e521 --- /dev/null +++ b/docs/html/classfl_1_1Expression-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Expression Member List
+
+
+ +

This is the complete list of members for fl::Expression, including all inherited members.

+ + + + + +
Expression(bool isOperator)fl::Expression
isOperatorfl::Expression
toString() const =0fl::Expressionpure virtual
~Expression()fl::Expressionvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Expression.html b/docs/html/classfl_1_1Expression.html new file mode 100644 index 0000000..91747ef --- /dev/null +++ b/docs/html/classfl_1_1Expression.html @@ -0,0 +1,243 @@ + + + + + + +fuzzylite: fl::Expression Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Expression Class Referenceabstract
+
+
+ +

#include <Expression.h>

+
+Inheritance diagram for fl::Expression:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Expression:
+
+
Collaboration graph
+ + +
+ + + + + + + + +

+Public Member Functions

 Expression (bool isOperator)
 
virtual ~Expression ()
 
virtual std::string toString () const =0
 
+ + + +

+Public Attributes

bool isOperator
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Expression::Expression (bool isOperator)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Expression::~Expression ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Expression::toString () const
+
+pure virtual
+
+ +

Implemented in fl::Operator, and fl::Proposition.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
bool fl::Expression::isOperator
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Expression.js b/docs/html/classfl_1_1Expression.js new file mode 100644 index 0000000..18bd998 --- /dev/null +++ b/docs/html/classfl_1_1Expression.js @@ -0,0 +1,7 @@ +var classfl_1_1Expression = +[ + [ "Expression", "classfl_1_1Expression.html#a2a1d3e1e62ed8397c1247ecc4ad5b2d7", null ], + [ "~Expression", "classfl_1_1Expression.html#a1604308ff2cef911123653a3457fd990", null ], + [ "toString", "classfl_1_1Expression.html#a80b60d4107b7604bb6f56976321c6d30", null ], + [ "isOperator", "classfl_1_1Expression.html#abd3159cedfb0d6ae5fde256262b96d03", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Expression__coll__graph.map b/docs/html/classfl_1_1Expression__coll__graph.map new file mode 100644 index 0000000..50347a6 --- /dev/null +++ b/docs/html/classfl_1_1Expression__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Expression__coll__graph.md5 b/docs/html/classfl_1_1Expression__coll__graph.md5 new file mode 100644 index 0000000..84e85cf --- /dev/null +++ b/docs/html/classfl_1_1Expression__coll__graph.md5 @@ -0,0 +1 @@ +9a73d3dcfeb6b7a47e2a300a5d1f391c \ No newline at end of file diff --git a/docs/html/classfl_1_1Expression__coll__graph.png b/docs/html/classfl_1_1Expression__coll__graph.png new file mode 100644 index 0000000..b5ad404 Binary files /dev/null and b/docs/html/classfl_1_1Expression__coll__graph.png differ diff --git a/docs/html/classfl_1_1Expression__inherit__graph.map b/docs/html/classfl_1_1Expression__inherit__graph.map new file mode 100644 index 0000000..93782ff --- /dev/null +++ b/docs/html/classfl_1_1Expression__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Expression__inherit__graph.md5 b/docs/html/classfl_1_1Expression__inherit__graph.md5 new file mode 100644 index 0000000..e9e000c --- /dev/null +++ b/docs/html/classfl_1_1Expression__inherit__graph.md5 @@ -0,0 +1 @@ +6ea1c6de31ed2c6968b597c03da45796 \ No newline at end of file diff --git a/docs/html/classfl_1_1Expression__inherit__graph.png b/docs/html/classfl_1_1Expression__inherit__graph.png new file mode 100644 index 0000000..bb4da19 Binary files /dev/null and b/docs/html/classfl_1_1Expression__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Extremely-members.html b/docs/html/classfl_1_1Extremely-members.html new file mode 100644 index 0000000..6a473ca --- /dev/null +++ b/docs/html/classfl_1_1Extremely-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Extremely Member List
+
+
+ +

This is the complete list of members for fl::Extremely, including all inherited members.

+ + + + + + +
constructor()fl::Extremelystatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Extremelyvirtual
name() const fl::Extremelyvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Extremely.html b/docs/html/classfl_1_1Extremely.html new file mode 100644 index 0000000..d475f3d --- /dev/null +++ b/docs/html/classfl_1_1Extremely.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Extremely Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Extremely.h>

+
+Inheritance diagram for fl::Extremely:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Extremely:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Extremely::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Extremely::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Extremely::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Extremely.js b/docs/html/classfl_1_1Extremely.js new file mode 100644 index 0000000..1253350 --- /dev/null +++ b/docs/html/classfl_1_1Extremely.js @@ -0,0 +1,6 @@ +var classfl_1_1Extremely = +[ + [ "constructor", "classfl_1_1Extremely.html#ab3f7c2b91e53db88e1e61e79ebd301cf", null ], + [ "hedge", "classfl_1_1Extremely.html#a43167e853dee9cb90fbbe913c067612a", null ], + [ "name", "classfl_1_1Extremely.html#a3a361fd4f0df11ea76f6d4664953cd8d", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Extremely__coll__graph.map b/docs/html/classfl_1_1Extremely__coll__graph.map new file mode 100644 index 0000000..096bc4d --- /dev/null +++ b/docs/html/classfl_1_1Extremely__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Extremely__coll__graph.md5 b/docs/html/classfl_1_1Extremely__coll__graph.md5 new file mode 100644 index 0000000..fb34837 --- /dev/null +++ b/docs/html/classfl_1_1Extremely__coll__graph.md5 @@ -0,0 +1 @@ +0eb9dd55396083d331bf74b5fdef5f81 \ No newline at end of file diff --git a/docs/html/classfl_1_1Extremely__coll__graph.png b/docs/html/classfl_1_1Extremely__coll__graph.png new file mode 100644 index 0000000..131f883 Binary files /dev/null and b/docs/html/classfl_1_1Extremely__coll__graph.png differ diff --git a/docs/html/classfl_1_1Extremely__inherit__graph.map b/docs/html/classfl_1_1Extremely__inherit__graph.map new file mode 100644 index 0000000..096bc4d --- /dev/null +++ b/docs/html/classfl_1_1Extremely__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Extremely__inherit__graph.md5 b/docs/html/classfl_1_1Extremely__inherit__graph.md5 new file mode 100644 index 0000000..fb34837 --- /dev/null +++ b/docs/html/classfl_1_1Extremely__inherit__graph.md5 @@ -0,0 +1 @@ +0eb9dd55396083d331bf74b5fdef5f81 \ No newline at end of file diff --git a/docs/html/classfl_1_1Extremely__inherit__graph.png b/docs/html/classfl_1_1Extremely__inherit__graph.png new file mode 100644 index 0000000..131f883 Binary files /dev/null and b/docs/html/classfl_1_1Extremely__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Factory-members.html b/docs/html/classfl_1_1Factory-members.html new file mode 100644 index 0000000..03a1ea8 --- /dev/null +++ b/docs/html/classfl_1_1Factory-members.html @@ -0,0 +1,136 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Factory< T > Member List
+
+
+ +

This is the complete list of members for fl::Factory< T >, including all inherited members.

+ + + + + + + + + + +
available() const fl::Factory< T >virtual
createInstance(const std::string &key) const fl::Factory< T >virtual
Creator typedeffl::Factory< T >
deregisterClass(const std::string &key)fl::Factory< T >virtual
Factory()fl::Factory< T >
hasRegisteredClass(const std::string &key) const fl::Factory< T >virtual
mapfl::Factory< T >protected
registerClass(const std::string &key, Creator creator)fl::Factory< T >virtual
~Factory()fl::Factory< T >virtual
+
+ + + + diff --git a/docs/html/classfl_1_1Factory.html b/docs/html/classfl_1_1Factory.html new file mode 100644 index 0000000..c0fa646 --- /dev/null +++ b/docs/html/classfl_1_1Factory.html @@ -0,0 +1,392 @@ + + + + + + +fuzzylite: fl::Factory< T > Class Template Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Factory< T > Class Template Reference
+
+
+ +

#include <Factory.h>

+
+Collaboration diagram for fl::Factory< T >:
+
+
Collaboration graph
+ + +
+ + + + +

+Public Types

typedef T(* Creator )()
 
+ + + + + + + + + + + + + + + +

+Public Member Functions

 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual T createInstance (const std::string &key) const
 
+ + + +

+Protected Attributes

std::map< std::string, Creatormap
 
+

Member Typedef Documentation

+ +
+
+
+template<typename T>
+ + + + +
typedef T(* fl::Factory< T >::Creator)()
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + + + +
fl::Factory< T >::Factory ()
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
fl::Factory< T >::~Factory ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::vector< std::string > fl::Factory< T >::available () const
+
+virtual
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T fl::Factory< T >::createInstance (const std::string & key) const
+
+virtual
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void fl::Factory< T >::deregisterClass (const std::string & key)
+
+virtual
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
bool fl::Factory< T >::hasRegisteredClass (const std::string & key) const
+
+virtual
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Factory< T >::registerClass (const std::string & key,
Creator creator 
)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T>
+ + + + + +
+ + + + +
std::map<std::string, Creator> fl::Factory< T >::map
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Factory.js b/docs/html/classfl_1_1Factory.js new file mode 100644 index 0000000..1bef243 --- /dev/null +++ b/docs/html/classfl_1_1Factory.js @@ -0,0 +1,12 @@ +var classfl_1_1Factory = +[ + [ "Creator", "classfl_1_1Factory.html#a3f8636d79418ca1b5818767e586e6b0f", null ], + [ "Factory", "classfl_1_1Factory.html#a842cdc776d7e85eab1a53c3bf36fabbc", null ], + [ "~Factory", "classfl_1_1Factory.html#a56895637d3aa26a36bb5f3e93adba041", null ], + [ "available", "classfl_1_1Factory.html#ac5d4eb344eea176184f45c30b306f7b0", null ], + [ "createInstance", "classfl_1_1Factory.html#a03cb6f9f2a99ad3ac0c699066cd6c327", null ], + [ "deregisterClass", "classfl_1_1Factory.html#acb8a5da88390e5c4fd01f8e56b7d6fe5", null ], + [ "hasRegisteredClass", "classfl_1_1Factory.html#acb4595793affb9ad8c736a8f8167c7e4", null ], + [ "registerClass", "classfl_1_1Factory.html#a7c1a3ab1b264eec096a25bb321fa106a", null ], + [ "map", "classfl_1_1Factory.html#ade25fed3fa637513c5292c4abe565752", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FactoryManager-members.html b/docs/html/classfl_1_1FactoryManager-members.html new file mode 100644 index 0000000..ff1021a --- /dev/null +++ b/docs/html/classfl_1_1FactoryManager-members.html @@ -0,0 +1,146 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FactoryManager Member List
+
+
+ +

This is the complete list of members for fl::FactoryManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
_defuzzifierfl::FactoryManagerprotected
_hedgefl::FactoryManagerprotected
_instancefl::FactoryManagerprotectedstatic
_snormfl::FactoryManagerprotected
_termfl::FactoryManagerprotected
_tnormfl::FactoryManagerprotected
defuzzifier() const fl::FactoryManagervirtual
FactoryManager()fl::FactoryManagerprotected
hedge() const fl::FactoryManagervirtual
instance()fl::FactoryManagerstatic
setDefuzzifier(DefuzzifierFactory *defuzzifier)fl::FactoryManagervirtual
setHedge(HedgeFactory *hedge)fl::FactoryManagervirtual
setSnorm(SNormFactory *snorm)fl::FactoryManagervirtual
setTerm(TermFactory *term)fl::FactoryManagervirtual
setTnorm(TNormFactory *tnorm)fl::FactoryManagervirtual
snorm() const fl::FactoryManagervirtual
term() const fl::FactoryManagervirtual
tnorm() const fl::FactoryManagervirtual
~FactoryManager()fl::FactoryManagerprotectedvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FactoryManager.html b/docs/html/classfl_1_1FactoryManager.html new file mode 100644 index 0000000..1e8ecbf --- /dev/null +++ b/docs/html/classfl_1_1FactoryManager.html @@ -0,0 +1,626 @@ + + + + + + +fuzzylite: fl::FactoryManager Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <FactoryManager.h>

+
+Collaboration diagram for fl::FactoryManager:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual void setTnorm (TNormFactory *tnorm)
 
virtual TNormFactorytnorm () const
 
virtual void setSnorm (SNormFactory *snorm)
 
virtual SNormFactorysnorm () const
 
virtual void setDefuzzifier (DefuzzifierFactory *defuzzifier)
 
virtual DefuzzifierFactorydefuzzifier () const
 
virtual void setTerm (TermFactory *term)
 
virtual TermFactoryterm () const
 
virtual void setHedge (HedgeFactory *hedge)
 
virtual HedgeFactoryhedge () const
 
+ + + +

+Static Public Member Functions

static FactoryManagerinstance ()
 
+ + + + + +

+Protected Member Functions

 FactoryManager ()
 
virtual ~FactoryManager ()
 
+ + + + + + + + + + + +

+Protected Attributes

TNormFactory_tnorm
 
SNormFactory_snorm
 
DefuzzifierFactory_defuzzifier
 
TermFactory_term
 
HedgeFactory_hedge
 
+ + + +

+Static Protected Attributes

static FactoryManager_instance = NULL
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::FactoryManager::FactoryManager ()
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FactoryManager::~FactoryManager ()
+
+protectedvirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
DefuzzifierFactory * fl::FactoryManager::defuzzifier () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
HedgeFactory * fl::FactoryManager::hedge () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
FactoryManager * fl::FactoryManager::instance ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FactoryManager::setDefuzzifier (DefuzzifierFactorydefuzzifier)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FactoryManager::setHedge (HedgeFactoryhedge)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FactoryManager::setSnorm (SNormFactorysnorm)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FactoryManager::setTerm (TermFactoryterm)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FactoryManager::setTnorm (TNormFactorytnorm)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNormFactory * fl::FactoryManager::snorm () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TermFactory * fl::FactoryManager::term () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNormFactory * fl::FactoryManager::tnorm () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
DefuzzifierFactory* fl::FactoryManager::_defuzzifier
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
HedgeFactory* fl::FactoryManager::_hedge
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
FactoryManager * fl::FactoryManager::_instance = NULL
+
+staticprotected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
SNormFactory* fl::FactoryManager::_snorm
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
TermFactory* fl::FactoryManager::_term
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
TNormFactory* fl::FactoryManager::_tnorm
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FactoryManager.js b/docs/html/classfl_1_1FactoryManager.js new file mode 100644 index 0000000..e4012eb --- /dev/null +++ b/docs/html/classfl_1_1FactoryManager.js @@ -0,0 +1,22 @@ +var classfl_1_1FactoryManager = +[ + [ "FactoryManager", "classfl_1_1FactoryManager.html#aa94791620fbe7d48ffd7878ebae052ae", null ], + [ "~FactoryManager", "classfl_1_1FactoryManager.html#a286530241e195e0faff93d38393afea6", null ], + [ "defuzzifier", "classfl_1_1FactoryManager.html#a2075eced79dd07507f5ac94dfff11255", null ], + [ "hedge", "classfl_1_1FactoryManager.html#af9d096bfb369da99be19325ec5cb1431", null ], + [ "instance", "classfl_1_1FactoryManager.html#a751ba1be322868a9c8756ec9bd116c74", null ], + [ "setDefuzzifier", "classfl_1_1FactoryManager.html#a6dfc605dcd7542e15c7489d41a8ad891", null ], + [ "setHedge", "classfl_1_1FactoryManager.html#a6d3b72825d0832d52949e4d1f603699e", null ], + [ "setSnorm", "classfl_1_1FactoryManager.html#ae5d6541dc878760638c244c5ec34ddde", null ], + [ "setTerm", "classfl_1_1FactoryManager.html#a15cbc26ca18266f48d69a61c3a5669fd", null ], + [ "setTnorm", "classfl_1_1FactoryManager.html#a8bc18de05f499f5c3792c53b9bc792e1", null ], + [ "snorm", "classfl_1_1FactoryManager.html#a1a194828b4c6c6e50b8e050917def9b3", null ], + [ "term", "classfl_1_1FactoryManager.html#a0f50385692a67eab5d5ef5664570f225", null ], + [ "tnorm", "classfl_1_1FactoryManager.html#a83b695b1c664038b38f0fcf366ca4632", null ], + [ "_defuzzifier", "classfl_1_1FactoryManager.html#abfc5c5c5faa761711c5a9e6efba0732c", null ], + [ "_hedge", "classfl_1_1FactoryManager.html#a88fdfe634b35c34aabc9cce41748bbef", null ], + [ "_instance", "classfl_1_1FactoryManager.html#abcd343824f484712cace3796d35a0c24", null ], + [ "_snorm", "classfl_1_1FactoryManager.html#a8b58509c864378c20b45a4a2b90d816f", null ], + [ "_term", "classfl_1_1FactoryManager.html#a6287e95f9501f08495ef9277847e25b6", null ], + [ "_tnorm", "classfl_1_1FactoryManager.html#a41e78756d39885587a70b94f09e5350d", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FactoryManager__coll__graph.map b/docs/html/classfl_1_1FactoryManager__coll__graph.map new file mode 100644 index 0000000..62a9a1e --- /dev/null +++ b/docs/html/classfl_1_1FactoryManager__coll__graph.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1FactoryManager__coll__graph.md5 b/docs/html/classfl_1_1FactoryManager__coll__graph.md5 new file mode 100644 index 0000000..1fdf3c1 --- /dev/null +++ b/docs/html/classfl_1_1FactoryManager__coll__graph.md5 @@ -0,0 +1 @@ +0a6f768cd8ec595cfc66919e2408458f \ No newline at end of file diff --git a/docs/html/classfl_1_1FactoryManager__coll__graph.png b/docs/html/classfl_1_1FactoryManager__coll__graph.png new file mode 100644 index 0000000..b1411a3 Binary files /dev/null and b/docs/html/classfl_1_1FactoryManager__coll__graph.png differ diff --git a/docs/html/classfl_1_1Factory__coll__graph.map b/docs/html/classfl_1_1Factory__coll__graph.map new file mode 100644 index 0000000..8e6b5e0 --- /dev/null +++ b/docs/html/classfl_1_1Factory__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Factory__coll__graph.md5 b/docs/html/classfl_1_1Factory__coll__graph.md5 new file mode 100644 index 0000000..b54b685 --- /dev/null +++ b/docs/html/classfl_1_1Factory__coll__graph.md5 @@ -0,0 +1 @@ +2b5db08f05d3ecdf3892c8d571cca582 \ No newline at end of file diff --git a/docs/html/classfl_1_1Factory__coll__graph.png b/docs/html/classfl_1_1Factory__coll__graph.png new file mode 100644 index 0000000..426584e Binary files /dev/null and b/docs/html/classfl_1_1Factory__coll__graph.png differ diff --git a/docs/html/classfl_1_1FclExporter-members.html b/docs/html/classfl_1_1FclExporter-members.html new file mode 100644 index 0000000..21738b5 --- /dev/null +++ b/docs/html/classfl_1_1FclExporter-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FclExporter Member List
+
+
+ +

This is the complete list of members for fl::FclExporter, including all inherited members.

+ + + + + + + + + + + + + + +
_indentfl::FclExporterprotected
Exporter()fl::Exporterinline
FclExporter(const std::string &indent=" ")fl::FclExporter
getIndent() const fl::FclExportervirtual
name() const fl::FclExportervirtual
setIndent(const std::string &indent)fl::FclExportervirtual
toString(const Engine *engine) const fl::FclExportervirtual
toString(const TNorm *tnorm) const fl::FclExportervirtual
toString(const SNorm *snorm) const fl::FclExportervirtual
toString(const Defuzzifier *defuzzifier) const fl::FclExportervirtual
toString(const Term *term) const fl::FclExportervirtual
~Exporter()fl::Exporterinlinevirtual
~FclExporter()fl::FclExportervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FclExporter.html b/docs/html/classfl_1_1FclExporter.html new file mode 100644 index 0000000..305d771 --- /dev/null +++ b/docs/html/classfl_1_1FclExporter.html @@ -0,0 +1,439 @@ + + + + + + +fuzzylite: fl::FclExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FclExporter Class Reference
+
+
+ +

#include <FclExporter.h>

+
+Inheritance diagram for fl::FclExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FclExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FclExporter (const std::string &indent=" ")
 
virtual ~FclExporter ()
 
virtual void setIndent (const std::string &indent)
 
virtual std::string getIndent () const
 
virtual std::string name () const
 
virtual std::string toString (const Engine *engine) const
 
virtual std::string toString (const TNorm *tnorm) const
 
virtual std::string toString (const SNorm *snorm) const
 
virtual std::string toString (const Defuzzifier *defuzzifier) const
 
virtual std::string toString (const Term *term) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+ + + +

+Protected Attributes

std::string _indent
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::FclExporter::FclExporter (const std::string & indent = "  ")
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FclExporter::~FclExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FclExporter::getIndent () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FclExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FclExporter::setIndent (const std::string & indent)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FclExporter::toString (const Engineengine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FclExporter::toString (const TNormtnorm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FclExporter::toString (const SNormsnorm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FclExporter::toString (const Defuzzifierdefuzzifier) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FclExporter::toString (const Termterm) const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string fl::FclExporter::_indent
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FclExporter.js b/docs/html/classfl_1_1FclExporter.js new file mode 100644 index 0000000..6c3aa03 --- /dev/null +++ b/docs/html/classfl_1_1FclExporter.js @@ -0,0 +1,14 @@ +var classfl_1_1FclExporter = +[ + [ "FclExporter", "classfl_1_1FclExporter.html#aad7f1de7316a63a55bf469ae3aa5f886", null ], + [ "~FclExporter", "classfl_1_1FclExporter.html#a80c793f25bb29d33903e204b4cf9f3d8", null ], + [ "getIndent", "classfl_1_1FclExporter.html#ac2dbb5edf24eb8aa4df8aac1e0dc27f6", null ], + [ "name", "classfl_1_1FclExporter.html#a998704afa9d4e247d287ff3496c31e05", null ], + [ "setIndent", "classfl_1_1FclExporter.html#ae256ee281c36e58bb8a1492b54d6de58", null ], + [ "toString", "classfl_1_1FclExporter.html#af001ef5820ca086eee179ccfefcc32d2", null ], + [ "toString", "classfl_1_1FclExporter.html#a89882e3c7d382b12d6ad018e9aa7d2db", null ], + [ "toString", "classfl_1_1FclExporter.html#a2217ded0027c175476672f60a20e74e9", null ], + [ "toString", "classfl_1_1FclExporter.html#a316cd5181e2024fae9997745cfc8ac33", null ], + [ "toString", "classfl_1_1FclExporter.html#aab0d463ecb759bccbf2d88a08d6eda6a", null ], + [ "_indent", "classfl_1_1FclExporter.html#a752ac81d142301a3f0b18f415cd4bdd3", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FclExporter__coll__graph.map b/docs/html/classfl_1_1FclExporter__coll__graph.map new file mode 100644 index 0000000..497053b --- /dev/null +++ b/docs/html/classfl_1_1FclExporter__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1FclExporter__coll__graph.md5 b/docs/html/classfl_1_1FclExporter__coll__graph.md5 new file mode 100644 index 0000000..3844a92 --- /dev/null +++ b/docs/html/classfl_1_1FclExporter__coll__graph.md5 @@ -0,0 +1 @@ +7dcaa3b4087d13df6de63a8fc2d82750 \ No newline at end of file diff --git a/docs/html/classfl_1_1FclExporter__coll__graph.png b/docs/html/classfl_1_1FclExporter__coll__graph.png new file mode 100644 index 0000000..c4c065c Binary files /dev/null and b/docs/html/classfl_1_1FclExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FclExporter__inherit__graph.map b/docs/html/classfl_1_1FclExporter__inherit__graph.map new file mode 100644 index 0000000..b383b5d --- /dev/null +++ b/docs/html/classfl_1_1FclExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FclExporter__inherit__graph.md5 b/docs/html/classfl_1_1FclExporter__inherit__graph.md5 new file mode 100644 index 0000000..f1a3fe3 --- /dev/null +++ b/docs/html/classfl_1_1FclExporter__inherit__graph.md5 @@ -0,0 +1 @@ +0d8af60b1e0e270847e0b07b6b693903 \ No newline at end of file diff --git a/docs/html/classfl_1_1FclExporter__inherit__graph.png b/docs/html/classfl_1_1FclExporter__inherit__graph.png new file mode 100644 index 0000000..bfae508 Binary files /dev/null and b/docs/html/classfl_1_1FclExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FclImporter-members.html b/docs/html/classfl_1_1FclImporter-members.html new file mode 100644 index 0000000..f241331 --- /dev/null +++ b/docs/html/classfl_1_1FclImporter-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FclImporter Member List
+
+
+ +

This is the complete list of members for fl::FclImporter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
extractDefaultValue(const std::string &line) const fl::FclImporterprotectedvirtual
extractDefuzzifier(const std::string &line) const fl::FclImporterprotectedvirtual
extractEnabled(const std::string &line) const fl::FclImporterprotectedvirtual
extractLocksOutputRange(const std::string &line) const fl::FclImporterprotectedvirtual
extractRange(const std::string &line) const fl::FclImporterprotectedvirtual
extractSNorm(const std::string &line) const fl::FclImporterprotectedvirtual
extractTerm(const std::string &line) const fl::FclImporterprotectedvirtual
extractTNorm(const std::string &line) const fl::FclImporterprotectedvirtual
FclImporter()fl::FclImporter
fromString(const std::string &fcl) const fl::FclImportervirtual
Importer()fl::Importerinline
name() const fl::FclImportervirtual
prepareTerm(Term *term, const Engine *engine) const fl::FclImporterprotectedvirtual
processBlock(const std::string &tag, const std::string &block, Engine *engine) const fl::FclImporterprotectedvirtual
processDefuzzify(const std::string &block, Engine *engine) const fl::FclImporterprotectedvirtual
processFuzzify(const std::string &block, Engine *engine) const fl::FclImporterprotectedvirtual
processRuleBlock(const std::string &block, Engine *engine) const fl::FclImporterprotectedvirtual
processVar(const std::string &var, const std::string &block, Engine *engine) const fl::FclImporterprotectedvirtual
~FclImporter()fl::FclImportervirtual
~Importer()fl::Importerinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FclImporter.html b/docs/html/classfl_1_1FclImporter.html new file mode 100644 index 0000000..099d334 --- /dev/null +++ b/docs/html/classfl_1_1FclImporter.html @@ -0,0 +1,696 @@ + + + + + + +fuzzylite: fl::FclImporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FclImporter Class Reference
+
+
+ +

#include <FclImporter.h>

+
+Inheritance diagram for fl::FclImporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FclImporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 FclImporter ()
 
virtual ~FclImporter ()
 
virtual std::string name () const
 
virtual EnginefromString (const std::string &fcl) const
 
- Public Member Functions inherited from fl::Importer
 Importer ()
 
virtual ~Importer ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

virtual void processBlock (const std::string &tag, const std::string &block, Engine *engine) const
 
virtual void processVar (const std::string &var, const std::string &block, Engine *engine) const
 
virtual void processFuzzify (const std::string &block, Engine *engine) const
 
virtual void processDefuzzify (const std::string &block, Engine *engine) const
 
virtual void processRuleBlock (const std::string &block, Engine *engine) const
 
virtual TNormextractTNorm (const std::string &line) const
 
virtual SNormextractSNorm (const std::string &line) const
 
virtual TermextractTerm (const std::string &line) const
 
virtual TermprepareTerm (Term *term, const Engine *engine) const
 
virtual DefuzzifierextractDefuzzifier (const std::string &line) const
 
virtual std::pair< scalar, bool > extractDefaultValue (const std::string &line) const
 
virtual std::pair< scalar, scalarextractRange (const std::string &line) const
 
virtual std::pair< bool, bool > extractLocksOutputRange (const std::string &line) const
 
virtual bool extractEnabled (const std::string &line) const
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::FclImporter::FclImporter ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FclImporter::~FclImporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
std::pair< scalar, bool > fl::FclImporter::extractDefaultValue (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Defuzzifier * fl::FclImporter::extractDefuzzifier (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::FclImporter::extractEnabled (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::pair< bool, bool > fl::FclImporter::extractLocksOutputRange (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::pair< scalar, scalar > fl::FclImporter::extractRange (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
SNorm * fl::FclImporter::extractSNorm (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Term * fl::FclImporter::extractTerm (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
TNorm * fl::FclImporter::extractTNorm (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Engine * fl::FclImporter::fromString (const std::string & fcl) const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FclImporter::name () const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Term * fl::FclImporter::prepareTerm (Termterm,
const Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void fl::FclImporter::processBlock (const std::string & tag,
const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FclImporter::processDefuzzify (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FclImporter::processFuzzify (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FclImporter::processRuleBlock (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void fl::FclImporter::processVar (const std::string & var,
const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FclImporter.js b/docs/html/classfl_1_1FclImporter.js new file mode 100644 index 0000000..8a7fd4c --- /dev/null +++ b/docs/html/classfl_1_1FclImporter.js @@ -0,0 +1,21 @@ +var classfl_1_1FclImporter = +[ + [ "FclImporter", "classfl_1_1FclImporter.html#aeb6708f65ece9205d5b4a2e756c33fe7", null ], + [ "~FclImporter", "classfl_1_1FclImporter.html#a02c680d209cbcafb198d0e3906b88ffc", null ], + [ "extractDefaultValue", "classfl_1_1FclImporter.html#aa30426cf04bbab3bae3fddd32ce0b3c7", null ], + [ "extractDefuzzifier", "classfl_1_1FclImporter.html#a07f6ec79bc059b30019d70c7531a6cd8", null ], + [ "extractEnabled", "classfl_1_1FclImporter.html#a5935e886b62107adf3c9292f10674f92", null ], + [ "extractLocksOutputRange", "classfl_1_1FclImporter.html#aae7fea6fa14aead4e1deb8712cbc5ac2", null ], + [ "extractRange", "classfl_1_1FclImporter.html#a65ea4bf1bca4958eedb0a43a458ba94f", null ], + [ "extractSNorm", "classfl_1_1FclImporter.html#ac6a10fba4faa0f4bde790122cbbf7d77", null ], + [ "extractTerm", "classfl_1_1FclImporter.html#aef76d58fa8b7d6615b62fcceb9f65b24", null ], + [ "extractTNorm", "classfl_1_1FclImporter.html#ad2a79c4d700db15cc8f647ebdbb3137d", null ], + [ "fromString", "classfl_1_1FclImporter.html#a35548905d0df960647dd7d3c5f6c1265", null ], + [ "name", "classfl_1_1FclImporter.html#af44344f1e6a6844a7dc092c2ebb1a2ff", null ], + [ "prepareTerm", "classfl_1_1FclImporter.html#acfc6c8ac6ccae43e744581389b39bddb", null ], + [ "processBlock", "classfl_1_1FclImporter.html#a3f04690c634633246b6c139567d4a97f", null ], + [ "processDefuzzify", "classfl_1_1FclImporter.html#a9079102376dcf6603f614b499b68d6fe", null ], + [ "processFuzzify", "classfl_1_1FclImporter.html#a5a58eca83e8cd52b0795406a04e377e4", null ], + [ "processRuleBlock", "classfl_1_1FclImporter.html#a8803a4df1678e47cfe29547bba2798fe", null ], + [ "processVar", "classfl_1_1FclImporter.html#a1762774e5b20cae794130516e5a1df84", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FclImporter__coll__graph.map b/docs/html/classfl_1_1FclImporter__coll__graph.map new file mode 100644 index 0000000..72962bb --- /dev/null +++ b/docs/html/classfl_1_1FclImporter__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FclImporter__coll__graph.md5 b/docs/html/classfl_1_1FclImporter__coll__graph.md5 new file mode 100644 index 0000000..7c72473 --- /dev/null +++ b/docs/html/classfl_1_1FclImporter__coll__graph.md5 @@ -0,0 +1 @@ +826a67b2e9cf0093ecb42e1489ac05b5 \ No newline at end of file diff --git a/docs/html/classfl_1_1FclImporter__coll__graph.png b/docs/html/classfl_1_1FclImporter__coll__graph.png new file mode 100644 index 0000000..9b80af1 Binary files /dev/null and b/docs/html/classfl_1_1FclImporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FclImporter__inherit__graph.map b/docs/html/classfl_1_1FclImporter__inherit__graph.map new file mode 100644 index 0000000..72962bb --- /dev/null +++ b/docs/html/classfl_1_1FclImporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FclImporter__inherit__graph.md5 b/docs/html/classfl_1_1FclImporter__inherit__graph.md5 new file mode 100644 index 0000000..7c72473 --- /dev/null +++ b/docs/html/classfl_1_1FclImporter__inherit__graph.md5 @@ -0,0 +1 @@ +826a67b2e9cf0093ecb42e1489ac05b5 \ No newline at end of file diff --git a/docs/html/classfl_1_1FclImporter__inherit__graph.png b/docs/html/classfl_1_1FclImporter__inherit__graph.png new file mode 100644 index 0000000..9b80af1 Binary files /dev/null and b/docs/html/classfl_1_1FclImporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FisExporter-members.html b/docs/html/classfl_1_1FisExporter-members.html new file mode 100644 index 0000000..0e7c213 --- /dev/null +++ b/docs/html/classfl_1_1FisExporter-members.html @@ -0,0 +1,143 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FisExporter Member List
+
+
+ +

This is the complete list of members for fl::FisExporter, including all inherited members.

+ + + + + + + + + + + + + + + + + +
Exporter()fl::Exporterinline
exportInputs(const Engine *engine) const fl::FisExporter
exportOutputs(const Engine *engine) const fl::FisExporter
exportRule(const Rule *rule, const Engine *engine) const fl::FisExporter
exportRules(const Engine *engine) const fl::FisExporter
exportSystem(const Engine *engine) const fl::FisExporter
FisExporter()fl::FisExporter
name() const fl::FisExportervirtual
toString(const Engine *engine) const fl::FisExportervirtual
toString(const TNorm *tnorm) const fl::FisExporter
toString(const SNorm *snorm) const fl::FisExporter
toString(const Defuzzifier *defuzzifier) const fl::FisExporter
toString(const Term *term) const fl::FisExporter
translate(const std::vector< Proposition * > &propositions, const std::vector< Variable * > variables) const fl::FisExporterprotected
~Exporter()fl::Exporterinlinevirtual
~FisExporter()fl::FisExportervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FisExporter.html b/docs/html/classfl_1_1FisExporter.html new file mode 100644 index 0000000..4581a62 --- /dev/null +++ b/docs/html/classfl_1_1FisExporter.html @@ -0,0 +1,468 @@ + + + + + + +fuzzylite: fl::FisExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FisExporter Class Reference
+
+
+ +

#include <FisExporter.h>

+
+Inheritance diagram for fl::FisExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FisExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FisExporter ()
 
virtual ~FisExporter ()
 
virtual std::string name () const
 
virtual std::string toString (const Engine *engine) const
 
std::string toString (const TNorm *tnorm) const
 
std::string toString (const SNorm *snorm) const
 
std::string toString (const Defuzzifier *defuzzifier) const
 
std::string toString (const Term *term) const
 
std::string exportSystem (const Engine *engine) const
 
std::string exportInputs (const Engine *engine) const
 
std::string exportOutputs (const Engine *engine) const
 
std::string exportRules (const Engine *engine) const
 
std::string exportRule (const Rule *rule, const Engine *engine) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+ + + +

+Protected Member Functions

std::string translate (const std::vector< Proposition * > &propositions, const std::vector< Variable * > variables) const
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::FisExporter::FisExporter ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FisExporter::~FisExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
std::string fl::FisExporter::exportInputs (const Engineengine) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::exportOutputs (const Engineengine) const
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
std::string fl::FisExporter::exportRule (const Rulerule,
const Engineengine 
) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::exportRules (const Engineengine) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::exportSystem (const Engineengine) const
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FisExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FisExporter::toString (const Engineengine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::toString (const TNormtnorm) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::toString (const SNormsnorm) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::toString (const Defuzzifierdefuzzifier) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::FisExporter::toString (const Termterm) const
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::FisExporter::translate (const std::vector< Proposition * > & propositions,
const std::vector< Variable * > variables 
) const
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FisExporter.js b/docs/html/classfl_1_1FisExporter.js new file mode 100644 index 0000000..f74efba --- /dev/null +++ b/docs/html/classfl_1_1FisExporter.js @@ -0,0 +1,17 @@ +var classfl_1_1FisExporter = +[ + [ "FisExporter", "classfl_1_1FisExporter.html#a8e7cdf87f0c6bc2c22679f18af7290d7", null ], + [ "~FisExporter", "classfl_1_1FisExporter.html#a059187846eed86957d38b17a15601ccb", null ], + [ "exportInputs", "classfl_1_1FisExporter.html#a2095faa4bc9438ad9ddc73adb0491575", null ], + [ "exportOutputs", "classfl_1_1FisExporter.html#ae9eacd64e24abc161cfdbd870c0ee261", null ], + [ "exportRule", "classfl_1_1FisExporter.html#a3c768b12f50268d82d2185d03815cd49", null ], + [ "exportRules", "classfl_1_1FisExporter.html#ac0f2cb9aa613b3a985aa0357ac83a2a3", null ], + [ "exportSystem", "classfl_1_1FisExporter.html#aa28acbe2499c3bbd19f13ad6052c40d3", null ], + [ "name", "classfl_1_1FisExporter.html#a82368569fc8fda27cd9c59e4b7710ca2", null ], + [ "toString", "classfl_1_1FisExporter.html#a99519ab6acc89c845dd93b4ed8d3b040", null ], + [ "toString", "classfl_1_1FisExporter.html#a2a1446ffbfec0bcfb85e708e108e41da", null ], + [ "toString", "classfl_1_1FisExporter.html#a3639ee279c13b289215e2f010d7b0317", null ], + [ "toString", "classfl_1_1FisExporter.html#a2d9d3bba19f92fd9c4e2dfbe3f57c1f9", null ], + [ "toString", "classfl_1_1FisExporter.html#a5c2629c979ea16c2539b77bf7fae4be2", null ], + [ "translate", "classfl_1_1FisExporter.html#adc49761903862ad0f676242eead90273", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FisExporter__coll__graph.map b/docs/html/classfl_1_1FisExporter__coll__graph.map new file mode 100644 index 0000000..1f1a02e --- /dev/null +++ b/docs/html/classfl_1_1FisExporter__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FisExporter__coll__graph.md5 b/docs/html/classfl_1_1FisExporter__coll__graph.md5 new file mode 100644 index 0000000..d5a1c53 --- /dev/null +++ b/docs/html/classfl_1_1FisExporter__coll__graph.md5 @@ -0,0 +1 @@ +1708190eda9fc59641bfa9a532f18ceb \ No newline at end of file diff --git a/docs/html/classfl_1_1FisExporter__coll__graph.png b/docs/html/classfl_1_1FisExporter__coll__graph.png new file mode 100644 index 0000000..2ca214f Binary files /dev/null and b/docs/html/classfl_1_1FisExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FisExporter__inherit__graph.map b/docs/html/classfl_1_1FisExporter__inherit__graph.map new file mode 100644 index 0000000..1f1a02e --- /dev/null +++ b/docs/html/classfl_1_1FisExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FisExporter__inherit__graph.md5 b/docs/html/classfl_1_1FisExporter__inherit__graph.md5 new file mode 100644 index 0000000..d5a1c53 --- /dev/null +++ b/docs/html/classfl_1_1FisExporter__inherit__graph.md5 @@ -0,0 +1 @@ +1708190eda9fc59641bfa9a532f18ceb \ No newline at end of file diff --git a/docs/html/classfl_1_1FisExporter__inherit__graph.png b/docs/html/classfl_1_1FisExporter__inherit__graph.png new file mode 100644 index 0000000..2ca214f Binary files /dev/null and b/docs/html/classfl_1_1FisExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FisImporter-members.html b/docs/html/classfl_1_1FisImporter-members.html new file mode 100644 index 0000000..7a845f0 --- /dev/null +++ b/docs/html/classfl_1_1FisImporter-members.html @@ -0,0 +1,145 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FisImporter Member List
+
+
+ +

This is the complete list of members for fl::FisImporter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
createInstance(const std::string &termClass, const std::string &name, const std::vector< std::string > &params) const fl::FisImporterprotectedvirtual
defuzzifier(const std::string &tnorm) const fl::FisImporterprotectedvirtual
extractRange(const std::string &range) const fl::FisImporterprotectedvirtual
extractTerm(const std::string &line) const fl::FisImporterprotectedvirtual
FisImporter()fl::FisImporter
fromString(const std::string &fcl) const fl::FisImportervirtual
Importer()fl::Importerinline
importInput(const std::string &section, Engine *engine) const fl::FisImporterprotectedvirtual
importOutput(const std::string &section, Engine *engine) const fl::FisImporterprotectedvirtual
importRules(const std::string &section, Engine *engine) const fl::FisImporterprotectedvirtual
importSystem(const std::string &section, Engine *engine, std::string &andMethod, std::string &orMethod, std::string &impMethod, std::string &aggMethod, std::string &defuzzMethod) const fl::FisImporterprotectedvirtual
name() const fl::FisImportervirtual
prepareTerm(Term *term, const Engine *engine) const fl::FisImporterprotectedvirtual
snorm(const std::string &tnorm) const fl::FisImporterprotectedvirtual
tnorm(const std::string &tnorm) const fl::FisImporterprotectedvirtual
translateProposition(scalar code, Variable *variable) const fl::FisImporterprotectedvirtual
~FisImporter()fl::FisImportervirtual
~Importer()fl::Importerinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FisImporter.html b/docs/html/classfl_1_1FisImporter.html new file mode 100644 index 0000000..d8d2cb7 --- /dev/null +++ b/docs/html/classfl_1_1FisImporter.html @@ -0,0 +1,678 @@ + + + + + + +fuzzylite: fl::FisImporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FisImporter Class Reference
+
+
+ +

#include <FisImporter.h>

+
+Inheritance diagram for fl::FisImporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FisImporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 FisImporter ()
 
virtual ~FisImporter ()
 
virtual std::string name () const
 
virtual EnginefromString (const std::string &fcl) const
 
- Public Member Functions inherited from fl::Importer
 Importer ()
 
virtual ~Importer ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

virtual void importSystem (const std::string &section, Engine *engine, std::string &andMethod, std::string &orMethod, std::string &impMethod, std::string &aggMethod, std::string &defuzzMethod) const
 
virtual void importInput (const std::string &section, Engine *engine) const
 
virtual void importOutput (const std::string &section, Engine *engine) const
 
virtual void importRules (const std::string &section, Engine *engine) const
 
virtual std::string translateProposition (scalar code, Variable *variable) const
 
virtual std::string tnorm (const std::string &tnorm) const
 
virtual std::string snorm (const std::string &tnorm) const
 
virtual std::string defuzzifier (const std::string &tnorm) const
 
virtual TermextractTerm (const std::string &line) const
 
virtual TermprepareTerm (Term *term, const Engine *engine) const
 
virtual TermcreateInstance (const std::string &termClass, const std::string &name, const std::vector< std::string > &params) const
 
virtual std::pair< scalar, scalarextractRange (const std::string &range) const
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::FisImporter::FisImporter ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FisImporter::~FisImporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Term * fl::FisImporter::createInstance (const std::string & termClass,
const std::string & name,
const std::vector< std::string > & params 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FisImporter::defuzzifier (const std::string & tnorm) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::pair< scalar, scalar > fl::FisImporter::extractRange (const std::string & range) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Term * fl::FisImporter::extractTerm (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Engine * fl::FisImporter::fromString (const std::string & fcl) const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FisImporter::importInput (const std::string & section,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FisImporter::importOutput (const std::string & section,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FisImporter::importRules (const std::string & section,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void fl::FisImporter::importSystem (const std::string & section,
Engineengine,
std::string & andMethod,
std::string & orMethod,
std::string & impMethod,
std::string & aggMethod,
std::string & defuzzMethod 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FisImporter::name () const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Term * fl::FisImporter::prepareTerm (Termterm,
const Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FisImporter::snorm (const std::string & tnorm) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FisImporter::tnorm (const std::string & tnorm) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::FisImporter::translateProposition (scalar code,
Variablevariable 
) const
+
+protectedvirtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FisImporter.js b/docs/html/classfl_1_1FisImporter.js new file mode 100644 index 0000000..4f4c6a6 --- /dev/null +++ b/docs/html/classfl_1_1FisImporter.js @@ -0,0 +1,19 @@ +var classfl_1_1FisImporter = +[ + [ "FisImporter", "classfl_1_1FisImporter.html#ac83ea8cf1ec0755ce8ef97de4cd7b6d1", null ], + [ "~FisImporter", "classfl_1_1FisImporter.html#a5a01cdde2f9c95e379991ab62664d013", null ], + [ "createInstance", "classfl_1_1FisImporter.html#a62938780ffe9ca9c3c214cb95ee6f4fd", null ], + [ "defuzzifier", "classfl_1_1FisImporter.html#a1bc09706aab7de024d61a3209f8588b2", null ], + [ "extractRange", "classfl_1_1FisImporter.html#a3114d30446f59a3a7c1b9cccf1ca48d6", null ], + [ "extractTerm", "classfl_1_1FisImporter.html#a70ec174f0c030f7413de42b55e520e7f", null ], + [ "fromString", "classfl_1_1FisImporter.html#a6a979d9d88de1761227bdc595448d164", null ], + [ "importInput", "classfl_1_1FisImporter.html#a69a07f5204d45a6369f5148bd88f09a2", null ], + [ "importOutput", "classfl_1_1FisImporter.html#aeea249f5b5985bd7b7e7541677f909c3", null ], + [ "importRules", "classfl_1_1FisImporter.html#a15e8b93a30f925e7b8c80b99c36a67b5", null ], + [ "importSystem", "classfl_1_1FisImporter.html#adfcf55ffd93f7f6dde089d8a7ba5d9a4", null ], + [ "name", "classfl_1_1FisImporter.html#a95632dfa7aa5abb29882043dd197083d", null ], + [ "prepareTerm", "classfl_1_1FisImporter.html#a174c4585abf07f233fbf08f0d24321fd", null ], + [ "snorm", "classfl_1_1FisImporter.html#ac7d0266c915104de96c5fc3b0f428920", null ], + [ "tnorm", "classfl_1_1FisImporter.html#a5dc8ba46e949ceb3dcff619c77e77086", null ], + [ "translateProposition", "classfl_1_1FisImporter.html#a413d8eb624516006fdb21a55084ea94a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FisImporter__coll__graph.map b/docs/html/classfl_1_1FisImporter__coll__graph.map new file mode 100644 index 0000000..39557bf --- /dev/null +++ b/docs/html/classfl_1_1FisImporter__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FisImporter__coll__graph.md5 b/docs/html/classfl_1_1FisImporter__coll__graph.md5 new file mode 100644 index 0000000..580996c --- /dev/null +++ b/docs/html/classfl_1_1FisImporter__coll__graph.md5 @@ -0,0 +1 @@ +9ba4801680bda6331cd4ef54e00304f7 \ No newline at end of file diff --git a/docs/html/classfl_1_1FisImporter__coll__graph.png b/docs/html/classfl_1_1FisImporter__coll__graph.png new file mode 100644 index 0000000..a03797a Binary files /dev/null and b/docs/html/classfl_1_1FisImporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FisImporter__inherit__graph.map b/docs/html/classfl_1_1FisImporter__inherit__graph.map new file mode 100644 index 0000000..39557bf --- /dev/null +++ b/docs/html/classfl_1_1FisImporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FisImporter__inherit__graph.md5 b/docs/html/classfl_1_1FisImporter__inherit__graph.md5 new file mode 100644 index 0000000..580996c --- /dev/null +++ b/docs/html/classfl_1_1FisImporter__inherit__graph.md5 @@ -0,0 +1 @@ +9ba4801680bda6331cd4ef54e00304f7 \ No newline at end of file diff --git a/docs/html/classfl_1_1FisImporter__inherit__graph.png b/docs/html/classfl_1_1FisImporter__inherit__graph.png new file mode 100644 index 0000000..a03797a Binary files /dev/null and b/docs/html/classfl_1_1FisImporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FldExporter-members.html b/docs/html/classfl_1_1FldExporter-members.html new file mode 100644 index 0000000..5cdde78 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FldExporter Member List
+
+
+ +

This is the complete list of members for fl::FldExporter, including all inherited members.

+ + + + + + + + + + + + + + +
_maximumfl::FldExporterprotected
_separatorfl::FldExporterprotected
Exporter()fl::Exporterinline
FldExporter(const std::string &separator=" ", int maximum=1024)fl::FldExporter
getMaximum() const fl::FldExportervirtual
getSeparator() const fl::FldExportervirtual
name() const fl::FldExportervirtual
setMaximum(int maximum)fl::FldExportervirtual
setSeparator(const std::string &separator)fl::FldExportervirtual
toString(const Engine *mutableEngine) const fl::FldExportervirtual
toWriter(Engine *engine, T &writer, const std::string &separator, int resolution) const fl::FldExporter
~Exporter()fl::Exporterinlinevirtual
~FldExporter()fl::FldExportervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FldExporter.html b/docs/html/classfl_1_1FldExporter.html new file mode 100644 index 0000000..e2a8b07 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter.html @@ -0,0 +1,461 @@ + + + + + + +fuzzylite: fl::FldExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FldExporter Class Reference
+
+
+ +

#include <FldExporter.h>

+
+Inheritance diagram for fl::FldExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FldExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FldExporter (const std::string &separator=" ", int maximum=1024)
 
virtual ~FldExporter ()
 
virtual std::string name () const
 
virtual void setSeparator (const std::string &separator)
 
virtual std::string getSeparator () const
 
virtual void setMaximum (int maximum)
 
virtual int getMaximum () const
 
virtual std::string toString (const Engine *mutableEngine) const
 
template<typename T >
void toWriter (Engine *engine, T &writer, const std::string &separator, int resolution) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+ + + + + +

+Protected Attributes

std::string _separator
 
int _maximum
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
fl::FldExporter::FldExporter (const std::string & separator = " ",
int maximum = 1024 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FldExporter::~FldExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
int fl::FldExporter::getMaximum () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FldExporter::getSeparator () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FldExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FldExporter::setMaximum (int maximum)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FldExporter::setSeparator (const std::string & separator)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FldExporter::toString (const EnginemutableEngine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
template FL_EXPORT void fl::FldExporter::toWriter (Engineengine,
T & writer,
const std::string & separator,
int resolution 
) const
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
int fl::FldExporter::_maximum
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::FldExporter::_separator
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FldExporter.js b/docs/html/classfl_1_1FldExporter.js new file mode 100644 index 0000000..8dae8de --- /dev/null +++ b/docs/html/classfl_1_1FldExporter.js @@ -0,0 +1,14 @@ +var classfl_1_1FldExporter = +[ + [ "FldExporter", "classfl_1_1FldExporter.html#af65de1ba2bd518a03740679be9756bf0", null ], + [ "~FldExporter", "classfl_1_1FldExporter.html#ae6f89726bc9bb33ef8c36bcc1ebe6440", null ], + [ "getMaximum", "classfl_1_1FldExporter.html#a751a24d775758a74d32fff38210c413e", null ], + [ "getSeparator", "classfl_1_1FldExporter.html#afacb9f57e490cb9574fb741ddc71e63b", null ], + [ "name", "classfl_1_1FldExporter.html#a7f0ee3eec187356fd87f29be4679bde5", null ], + [ "setMaximum", "classfl_1_1FldExporter.html#a46c654ab86fc338f8574f2e6ea2fb413", null ], + [ "setSeparator", "classfl_1_1FldExporter.html#a98c42aea98c09d15b7c5c6b8b48e3c42", null ], + [ "toString", "classfl_1_1FldExporter.html#a006a568997e2111bab3ab05cda5e92d7", null ], + [ "toWriter", "classfl_1_1FldExporter.html#a51e75da5a6bc7ff06c30f8a3aed263d1", null ], + [ "_maximum", "classfl_1_1FldExporter.html#a8c785e9652876bc2859f24fd2246550d", null ], + [ "_separator", "classfl_1_1FldExporter.html#a51b260e8046f2acae03d0e8bd29746b2", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FldExporter__coll__graph.map b/docs/html/classfl_1_1FldExporter__coll__graph.map new file mode 100644 index 0000000..acacdf3 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1FldExporter__coll__graph.md5 b/docs/html/classfl_1_1FldExporter__coll__graph.md5 new file mode 100644 index 0000000..5753388 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter__coll__graph.md5 @@ -0,0 +1 @@ +5c8e3178d0ba97e7066cce565b542c78 \ No newline at end of file diff --git a/docs/html/classfl_1_1FldExporter__coll__graph.png b/docs/html/classfl_1_1FldExporter__coll__graph.png new file mode 100644 index 0000000..f60457a Binary files /dev/null and b/docs/html/classfl_1_1FldExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FldExporter__inherit__graph.map b/docs/html/classfl_1_1FldExporter__inherit__graph.map new file mode 100644 index 0000000..72d5016 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FldExporter__inherit__graph.md5 b/docs/html/classfl_1_1FldExporter__inherit__graph.md5 new file mode 100644 index 0000000..08fe8d5 --- /dev/null +++ b/docs/html/classfl_1_1FldExporter__inherit__graph.md5 @@ -0,0 +1 @@ +278220d240e644cfd4ec2dce1a6ea1ca \ No newline at end of file diff --git a/docs/html/classfl_1_1FldExporter__inherit__graph.png b/docs/html/classfl_1_1FldExporter__inherit__graph.png new file mode 100644 index 0000000..2862d5c Binary files /dev/null and b/docs/html/classfl_1_1FldExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FllExporter-members.html b/docs/html/classfl_1_1FllExporter-members.html new file mode 100644 index 0000000..9b42c83 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FllExporter Member List
+
+
+ +

This is the complete list of members for fl::FllExporter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_indentfl::FllExporterprotected
_separatorfl::FllExporterprotected
Exporter()fl::Exporterinline
FllExporter(const std::string &indent=" ", const std::string &separator="\n")fl::FllExporter
getIndent() const fl::FllExportervirtual
getSeparator() const fl::FllExportervirtual
name() const fl::FllExportervirtual
setIndent(const std::string &indent)fl::FllExportervirtual
setSeparator(const std::string &separator)fl::FllExportervirtual
toString(const Engine *engine) const fl::FllExportervirtual
toString(const Variable *variable) const fl::FllExportervirtual
toString(const InputVariable *inputVariable) const fl::FllExportervirtual
toString(const OutputVariable *outputVariable) const fl::FllExportervirtual
toString(const RuleBlock *ruleBlock) const fl::FllExportervirtual
toString(const Rule *rule) const fl::FllExportervirtual
toString(const Norm *norm) const fl::FllExportervirtual
toString(const Defuzzifier *defuzzifier) const fl::FllExportervirtual
toString(const Term *term) const fl::FllExportervirtual
~Exporter()fl::Exporterinlinevirtual
~FllExporter()fl::FllExportervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FllExporter.html b/docs/html/classfl_1_1FllExporter.html new file mode 100644 index 0000000..fe27cb0 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter.html @@ -0,0 +1,626 @@ + + + + + + +fuzzylite: fl::FllExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::FllExporter Class Reference
+
+
+ +

#include <FllExporter.h>

+
+Inheritance diagram for fl::FllExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FllExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FllExporter (const std::string &indent=" ", const std::string &separator="\n")
 
virtual ~FllExporter ()
 
virtual std::string name () const
 
virtual void setIndent (const std::string &indent)
 
virtual std::string getIndent () const
 
virtual void setSeparator (const std::string &separator)
 
virtual std::string getSeparator () const
 
virtual std::string toString (const Engine *engine) const
 
virtual std::string toString (const Variable *variable) const
 
virtual std::string toString (const InputVariable *inputVariable) const
 
virtual std::string toString (const OutputVariable *outputVariable) const
 
virtual std::string toString (const RuleBlock *ruleBlock) const
 
virtual std::string toString (const Rule *rule) const
 
virtual std::string toString (const Norm *norm) const
 
virtual std::string toString (const Defuzzifier *defuzzifier) const
 
virtual std::string toString (const Term *term) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+ + + + + +

+Protected Attributes

std::string _indent
 
std::string _separator
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
fl::FllExporter::FllExporter (const std::string & indent = "  ",
const std::string & separator = "\n" 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FllExporter::~FllExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FllExporter::getIndent () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FllExporter::getSeparator () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FllExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FllExporter::setIndent (const std::string & indent)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FllExporter::setSeparator (const std::string & separator)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Engineengine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Variablevariable) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const InputVariableinputVariable) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const OutputVariableoutputVariable) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const RuleBlockruleBlock) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Rulerule) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Normnorm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Defuzzifierdefuzzifier) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllExporter::toString (const Termterm) const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string fl::FllExporter::_indent
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::FllExporter::_separator
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FllExporter.js b/docs/html/classfl_1_1FllExporter.js new file mode 100644 index 0000000..a54a6a0 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter.js @@ -0,0 +1,21 @@ +var classfl_1_1FllExporter = +[ + [ "FllExporter", "classfl_1_1FllExporter.html#a3d7af60d0ffc198ddac94258117be327", null ], + [ "~FllExporter", "classfl_1_1FllExporter.html#a4401275536a96781f153603234d038e9", null ], + [ "getIndent", "classfl_1_1FllExporter.html#a600838fc90eeb0d6e9c1955c42d3bb0a", null ], + [ "getSeparator", "classfl_1_1FllExporter.html#a4ac7b293fbb4890933c52b459c09cf77", null ], + [ "name", "classfl_1_1FllExporter.html#aae32c417cf85a08f92f17697009a69f4", null ], + [ "setIndent", "classfl_1_1FllExporter.html#a98a633468756e7756ba12ffe2d6de3ff", null ], + [ "setSeparator", "classfl_1_1FllExporter.html#ad61fc9d9ddae0fe112af2ef15b573ccd", null ], + [ "toString", "classfl_1_1FllExporter.html#a173b52acdd66b05f7d2ff9f9d3a77034", null ], + [ "toString", "classfl_1_1FllExporter.html#a51a3cd0489b0525764d660aeea5b4d8e", null ], + [ "toString", "classfl_1_1FllExporter.html#a4e1b33a482aa35baffcad435db58f101", null ], + [ "toString", "classfl_1_1FllExporter.html#a1963248233121774fadf9b470426b1ab", null ], + [ "toString", "classfl_1_1FllExporter.html#ae1ae84e6bb6e4089a5c72ebd7a7a7792", null ], + [ "toString", "classfl_1_1FllExporter.html#a51df80793d85e99767482d63fd3bd295", null ], + [ "toString", "classfl_1_1FllExporter.html#a9c801344e238cb062adeed29cf72d8b7", null ], + [ "toString", "classfl_1_1FllExporter.html#a79fa45d5098091e5c5c2b40aaec12b1a", null ], + [ "toString", "classfl_1_1FllExporter.html#ad725c500e88aeaa14a03760027a608a2", null ], + [ "_indent", "classfl_1_1FllExporter.html#a4ef591a02dab3796d640cb7a22bdd182", null ], + [ "_separator", "classfl_1_1FllExporter.html#a2fff42124d24833c1bcf888e64e0fb46", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FllExporter__coll__graph.map b/docs/html/classfl_1_1FllExporter__coll__graph.map new file mode 100644 index 0000000..60eb4e7 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1FllExporter__coll__graph.md5 b/docs/html/classfl_1_1FllExporter__coll__graph.md5 new file mode 100644 index 0000000..a83a947 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter__coll__graph.md5 @@ -0,0 +1 @@ +ac00da434f7fe6d554b195cc39729391 \ No newline at end of file diff --git a/docs/html/classfl_1_1FllExporter__coll__graph.png b/docs/html/classfl_1_1FllExporter__coll__graph.png new file mode 100644 index 0000000..2c3df7a Binary files /dev/null and b/docs/html/classfl_1_1FllExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FllExporter__inherit__graph.map b/docs/html/classfl_1_1FllExporter__inherit__graph.map new file mode 100644 index 0000000..166e149 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FllExporter__inherit__graph.md5 b/docs/html/classfl_1_1FllExporter__inherit__graph.md5 new file mode 100644 index 0000000..a07dc37 --- /dev/null +++ b/docs/html/classfl_1_1FllExporter__inherit__graph.md5 @@ -0,0 +1 @@ +61c404f15bba806a25783498267c66c0 \ No newline at end of file diff --git a/docs/html/classfl_1_1FllExporter__inherit__graph.png b/docs/html/classfl_1_1FllExporter__inherit__graph.png new file mode 100644 index 0000000..a5a6ca4 Binary files /dev/null and b/docs/html/classfl_1_1FllExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1FllImporter-members.html b/docs/html/classfl_1_1FllImporter-members.html new file mode 100644 index 0000000..74d2b72 --- /dev/null +++ b/docs/html/classfl_1_1FllImporter-members.html @@ -0,0 +1,148 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::FllImporter Member List
+
+
+ +

This is the complete list of members for fl::FllImporter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_separatorfl::FllImporterprotected
clean(const std::string &line) const fl::FllImporterprotectedvirtual
FllImporter(const std::string &separator="\n")fl::FllImporter
fromString(const std::string &fll) const fl::FllImportervirtual
getSeparator() const fl::FllImportervirtual
Importer()fl::Importerinline
name() const fl::FllImportervirtual
parseBoolean(const std::string &boolean) const fl::FllImporterprotectedvirtual
parseDefuzzifier(const std::string &line) const fl::FllImporterprotectedvirtual
parseKeyValue(const std::string &text, char separator= ':') const fl::FllImporterprotectedvirtual
parseRange(const std::string &line) const fl::FllImporterprotectedvirtual
parseSNorm(const std::string &name) const fl::FllImporterprotectedvirtual
parseTerm(const std::string &text, Engine *engine) const fl::FllImporterprotectedvirtual
parseTNorm(const std::string &name) const fl::FllImporterprotectedvirtual
process(const std::string &tag, const std::string &block, Engine *engine) const fl::FllImporterprotectedvirtual
processInputVariable(const std::string &block, Engine *engine) const fl::FllImporterprotectedvirtual
processOutputVariable(const std::string &block, Engine *engine) const fl::FllImporterprotectedvirtual
processRuleBlock(const std::string &block, Engine *engine) const fl::FllImporterprotectedvirtual
setSeparator(const std::string &separator)fl::FllImportervirtual
~FllImporter()fl::FllImportervirtual
~Importer()fl::Importerinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1FllImporter.html b/docs/html/classfl_1_1FllImporter.html new file mode 100644 index 0000000..2b32330 --- /dev/null +++ b/docs/html/classfl_1_1FllImporter.html @@ -0,0 +1,718 @@ + + + + + + +fuzzylite: fl::FllImporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <FllImporter.h>

+
+Inheritance diagram for fl::FllImporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::FllImporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FllImporter (const std::string &separator="\n")
 
virtual ~FllImporter ()
 
virtual void setSeparator (const std::string &separator)
 
virtual std::string getSeparator () const
 
virtual std::string name () const
 
virtual EnginefromString (const std::string &fll) const
 
- Public Member Functions inherited from fl::Importer
 Importer ()
 
virtual ~Importer ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

virtual void process (const std::string &tag, const std::string &block, Engine *engine) const
 
virtual void processInputVariable (const std::string &block, Engine *engine) const
 
virtual void processOutputVariable (const std::string &block, Engine *engine) const
 
virtual void processRuleBlock (const std::string &block, Engine *engine) const
 
virtual TNormparseTNorm (const std::string &name) const
 
virtual SNormparseSNorm (const std::string &name) const
 
virtual TermparseTerm (const std::string &text, Engine *engine) const
 
virtual DefuzzifierparseDefuzzifier (const std::string &line) const
 
virtual std::pair< scalar, scalarparseRange (const std::string &line) const
 
virtual bool parseBoolean (const std::string &boolean) const
 
virtual std::pair< std::string,
+std::string > 
parseKeyValue (const std::string &text, char separator= ':') const
 
virtual std::string clean (const std::string &line) const
 
+ + + +

+Protected Attributes

std::string _separator
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::FllImporter::FllImporter (const std::string & separator = "\n")
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::FllImporter::~FllImporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::FllImporter::clean (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Engine * fl::FllImporter::fromString (const std::string & fll) const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FllImporter::getSeparator () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::FllImporter::name () const
+
+virtual
+
+ +

Implements fl::Importer.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::FllImporter::parseBoolean (const std::string & boolean) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Defuzzifier * fl::FllImporter::parseDefuzzifier (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::pair< std::string, std::string > fl::FllImporter::parseKeyValue (const std::string & text,
char separator = ':' 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::pair< scalar, scalar > fl::FllImporter::parseRange (const std::string & line) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
SNorm * fl::FllImporter::parseSNorm (const std::string & name) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Term * fl::FllImporter::parseTerm (const std::string & text,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
TNorm * fl::FllImporter::parseTNorm (const std::string & name) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void fl::FllImporter::process (const std::string & tag,
const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FllImporter::processInputVariable (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FllImporter::processOutputVariable (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::FllImporter::processRuleBlock (const std::string & block,
Engineengine 
) const
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::FllImporter::setSeparator (const std::string & separator)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string fl::FllImporter::_separator
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1FllImporter.js b/docs/html/classfl_1_1FllImporter.js new file mode 100644 index 0000000..fe324eb --- /dev/null +++ b/docs/html/classfl_1_1FllImporter.js @@ -0,0 +1,22 @@ +var classfl_1_1FllImporter = +[ + [ "FllImporter", "classfl_1_1FllImporter.html#a66c9812e8aac48ead888b02e69079396", null ], + [ "~FllImporter", "classfl_1_1FllImporter.html#a2aec511802a61fa8ac76f21104282368", null ], + [ "clean", "classfl_1_1FllImporter.html#ad8a8138ff6532113ca4dea3926b8e138", null ], + [ "fromString", "classfl_1_1FllImporter.html#a79b008375ec6e8b3523e75c93698b14e", null ], + [ "getSeparator", "classfl_1_1FllImporter.html#a5d93989dab7442e22fdd6073d00f17c3", null ], + [ "name", "classfl_1_1FllImporter.html#ac3c96b230a304c1d2a13a9e6d77f3a4f", null ], + [ "parseBoolean", "classfl_1_1FllImporter.html#af2df9fd1883d408233b4818f138c2122", null ], + [ "parseDefuzzifier", "classfl_1_1FllImporter.html#ab301d5397d204347f583067a07c15082", null ], + [ "parseKeyValue", "classfl_1_1FllImporter.html#a3199e6251bf66df0d038394474640805", null ], + [ "parseRange", "classfl_1_1FllImporter.html#a20931ea569c4b63b0b64dff564f97a8b", null ], + [ "parseSNorm", "classfl_1_1FllImporter.html#ad555651cd0a08e0d061c0162343f021c", null ], + [ "parseTerm", "classfl_1_1FllImporter.html#a06be484393fba92045bad88340f7956e", null ], + [ "parseTNorm", "classfl_1_1FllImporter.html#a3920c6f5399e67238a2f8d6cfdc03158", null ], + [ "process", "classfl_1_1FllImporter.html#ab1a1894cc656683fb5dfab587609fab4", null ], + [ "processInputVariable", "classfl_1_1FllImporter.html#ad60b4b4752e8d1c90826d9362a985dba", null ], + [ "processOutputVariable", "classfl_1_1FllImporter.html#a219f0cf485902342e830385dc0467dc1", null ], + [ "processRuleBlock", "classfl_1_1FllImporter.html#abdd31292205140522f73410becb9d436", null ], + [ "setSeparator", "classfl_1_1FllImporter.html#a5e73ac41fb4d1423c3d90cb3a90ec2aa", null ], + [ "_separator", "classfl_1_1FllImporter.html#ab9df69e5ff68f25bf2fb95fdf9b55f34", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1FllImporter__coll__graph.map b/docs/html/classfl_1_1FllImporter__coll__graph.map new file mode 100644 index 0000000..e526119 --- /dev/null +++ b/docs/html/classfl_1_1FllImporter__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1FllImporter__coll__graph.md5 b/docs/html/classfl_1_1FllImporter__coll__graph.md5 new file mode 100644 index 0000000..598bf2c --- /dev/null +++ b/docs/html/classfl_1_1FllImporter__coll__graph.md5 @@ -0,0 +1 @@ +c112b02dbccc8dc6301ed66f70a1c86e \ No newline at end of file diff --git a/docs/html/classfl_1_1FllImporter__coll__graph.png b/docs/html/classfl_1_1FllImporter__coll__graph.png new file mode 100644 index 0000000..62a6cdc Binary files /dev/null and b/docs/html/classfl_1_1FllImporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1FllImporter__inherit__graph.map b/docs/html/classfl_1_1FllImporter__inherit__graph.map new file mode 100644 index 0000000..0ab16ba --- /dev/null +++ b/docs/html/classfl_1_1FllImporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1FllImporter__inherit__graph.md5 b/docs/html/classfl_1_1FllImporter__inherit__graph.md5 new file mode 100644 index 0000000..1591107 --- /dev/null +++ b/docs/html/classfl_1_1FllImporter__inherit__graph.md5 @@ -0,0 +1 @@ +ac0397e6cfde85b1aa6b748c531ae7b5 \ No newline at end of file diff --git a/docs/html/classfl_1_1FllImporter__inherit__graph.png b/docs/html/classfl_1_1FllImporter__inherit__graph.png new file mode 100644 index 0000000..7e67a9a Binary files /dev/null and b/docs/html/classfl_1_1FllImporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Function-members.html b/docs/html/classfl_1_1Function-members.html new file mode 100644 index 0000000..4faf0d2 --- /dev/null +++ b/docs/html/classfl_1_1Function-members.html @@ -0,0 +1,167 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Function Member List
+
+
+ +

This is the complete list of members for fl::Function, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_enginefl::Functionprotected
_formulafl::Functionprotected
_namefl::Termprotected
Binary typedeffl::Function
className() const fl::Functionvirtual
configure(const std::string &parameters)fl::Functionvirtual
constructor()fl::Functionstatic
copy() const fl::Functionvirtual
create(const std::string &name, const std::string &formula, const Engine *engine=NULL, bool requiresFunctions=true)fl::Functionstatic
evaluate(const std::map< std::string, scalar > *variables) const fl::Functionvirtual
Function(const std::string &name="", const std::string &formula="", const Engine *engine=NULL)fl::Function
functionsfl::Function
getBuiltInFunction(const std::string &key) const fl::Functionprotected
getEngine() const fl::Functionvirtual
getFormula() const fl::Functionvirtual
getName() const fl::Termvirtual
getOperator(const std::string &key) const fl::Functionprotected
isBuiltInFunction(const std::string &token) const fl::Functionvirtual
isOperand(const std::string &token) const fl::Functionvirtual
isOperator(const std::string &token) const fl::Functionvirtual
load()fl::Functionvirtual
load(const std::string &formula, const Engine *engine=NULL)fl::Functionvirtual
loadBuiltInFunctions()fl::Functionvirtual
main()fl::Functionstatic
membership(scalar x) const fl::Functionvirtual
operatorsfl::Function
parameters() const fl::Functionvirtual
parse(const std::string &formula)fl::Functionvirtual
rootfl::Function
setEngine(const Engine *engine)fl::Functionvirtual
setFormula(const std::string &formula)fl::Functionvirtual
setName(const std::string &name)fl::Termvirtual
space(const std::string &formula) const fl::Functionvirtual
Term(const std::string &name="")fl::Term
toPostfix(const std::string &formula) const fl::Functionvirtual
toString() const fl::Termvirtual
Unary typedeffl::Function
variablesfl::Function
~Function()fl::Functionvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Function.html b/docs/html/classfl_1_1Function.html new file mode 100644 index 0000000..2114cd3 --- /dev/null +++ b/docs/html/classfl_1_1Function.html @@ -0,0 +1,1048 @@ + + + + + + +fuzzylite: fl::Function Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Function.h>

+
+Inheritance diagram for fl::Function:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Function:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Classes

struct  BuiltInFunction
 
struct  Element
 
struct  Node
 
struct  Operator
 
+ + + + + +

+Public Types

typedef double(* Unary )(double)
 
typedef double(* Binary )(double, double)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Function (const std::string &name="", const std::string &formula="", const Engine *engine=NULL)
 
virtual ~Function ()
 
virtual scalar membership (scalar x) const
 
virtual scalar evaluate (const std::map< std::string, scalar > *variables) const
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual void setFormula (const std::string &formula)
 
virtual std::string getFormula () const
 
virtual void setEngine (const Engine *engine)
 
virtual const EnginegetEngine () const
 
virtual void load () throw (fl::Exception)
 
virtual void load (const std::string &formula, const Engine *engine=NULL) throw (fl::Exception)
 
virtual void loadBuiltInFunctions ()
 
virtual Nodeparse (const std::string &formula) throw (fl::Exception)
 
virtual std::string toPostfix (const std::string &formula) const throw (fl::Exception)
 
virtual std::string space (const std::string &formula) const
 
virtual bool isOperand (const std::string &token) const
 
virtual bool isBuiltInFunction (const std::string &token) const
 
virtual bool isOperator (const std::string &token) const
 
virtual Functioncopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + + + + + +

+Static Public Member Functions

static Functioncreate (const std::string &name, const std::string &formula, const Engine *engine=NULL, bool requiresFunctions=true) throw (fl::Exception)
 
static Termconstructor ()
 
static void main ()
 
+ + + + + + + + + +

+Public Attributes

Noderoot
 
std::map< std::string, scalarvariables
 
std::map< std::string, Operator * > operators
 
std::map< std::string,
+BuiltInFunction * > 
functions
 
+ + + + + +

+Protected Member Functions

OperatorgetOperator (const std::string &key) const
 
BuiltInFunctiongetBuiltInFunction (const std::string &key) const
 
+ + + + + + + + +

+Protected Attributes

std::string _formula
 
const Engine_engine
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Member Typedef Documentation

+ +
+
+ + + + +
typedef double(* fl::Function::Binary)(double, double)
+
+ +
+
+ +
+
+ + + + +
typedef double(* fl::Function::Unary)(double)
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Function (const std::string & name = "",
const std::string & formula = "",
const Engineengine = NULL 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Function::~Function ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Function::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Function::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Function::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Function * fl::Function::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Function * fl::Function::create (const std::string & name,
const std::string & formula,
const Engineengine = NULL,
bool requiresFunctions = true 
) throw (fl::Exception)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Function::evaluate (const std::map< std::string, scalar > * variables) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Function::BuiltInFunction * fl::Function::getBuiltInFunction (const std::string & key) const
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const Engine * fl::Function::getEngine () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Function::getFormula () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Function::Operator * fl::Function::getOperator (const std::string & key) const
+
+protected
+
+

Parsing methods

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Function::isBuiltInFunction (const std::string & token) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Function::isOperand (const std::string & token) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Function::isOperator (const std::string & token) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Function::load () throw (fl::Exception)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Function::load (const std::string & formula,
const Engineengine = NULL 
) throw (fl::Exception)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Function::loadBuiltInFunctions ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Function::main ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Function::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Function::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Function::Node * fl::Function::parse (const std::string & formula) throw (fl::Exception)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Function::setEngine (const Engineengine)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Function::setFormula (const std::string & formula)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Function::space (const std::string & formula) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Function::toPostfix (const std::string & formula) const throw (fl::Exception)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const Engine* fl::Function::_engine
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Function::_formula
+
+protected
+
+ +
+
+ +
+
+ + + + +
std::map<std::string, BuiltInFunction*> fl::Function::functions
+
+ +
+
+ +
+
+ + + + +
std::map<std::string, Operator*> fl::Function::operators
+
+ +
+
+ +
+
+ + + + +
Node* fl::Function::root
+
+ +
+
+ +
+
+ + + + +
std::map<std::string, scalar> fl::Function::variables
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Function.js b/docs/html/classfl_1_1Function.js new file mode 100644 index 0000000..aca1733 --- /dev/null +++ b/docs/html/classfl_1_1Function.js @@ -0,0 +1,41 @@ +var classfl_1_1Function = +[ + [ "BuiltInFunction", "structfl_1_1Function_1_1BuiltInFunction.html", "structfl_1_1Function_1_1BuiltInFunction" ], + [ "Element", "structfl_1_1Function_1_1Element.html", "structfl_1_1Function_1_1Element" ], + [ "Node", "structfl_1_1Function_1_1Node.html", "structfl_1_1Function_1_1Node" ], + [ "Operator", "structfl_1_1Function_1_1Operator.html", "structfl_1_1Function_1_1Operator" ], + [ "Binary", "classfl_1_1Function.html#a72bdd02409670aa19301d1856cc3f4be", null ], + [ "Unary", "classfl_1_1Function.html#acff7c0f580b0a4a3e7739e5bbe9a3c42", null ], + [ "Function", "classfl_1_1Function.html#ad6769a713c7b7e6804a23cef200f3ad2", null ], + [ "~Function", "classfl_1_1Function.html#a4533c58e472bc9f0deee6ed3d7309f48", null ], + [ "className", "classfl_1_1Function.html#a3480f8ae860d507fd6253340471421bd", null ], + [ "configure", "classfl_1_1Function.html#a2286377811867e4e380ad51efb18222a", null ], + [ "constructor", "classfl_1_1Function.html#aef18ddabe54b7039c877ecc592e875be", null ], + [ "copy", "classfl_1_1Function.html#aa2ffba8fe6fc5cccc762a87116e9ff5a", null ], + [ "create", "classfl_1_1Function.html#af6ce5d6fa38c1bf08cccf1b2b102332e", null ], + [ "evaluate", "classfl_1_1Function.html#ad9e34b8bb78b233a100625135bea7fe2", null ], + [ "getBuiltInFunction", "classfl_1_1Function.html#a8ed158f59ff063c0c7ee3333fafd288d", null ], + [ "getEngine", "classfl_1_1Function.html#a21ce8486c656f1ffa37ae8a6982820d7", null ], + [ "getFormula", "classfl_1_1Function.html#a264ef402c9c4f20d2174ba7d3ecea384", null ], + [ "getOperator", "classfl_1_1Function.html#abc8ce853954a826a82ccbecd7bab249f", null ], + [ "isBuiltInFunction", "classfl_1_1Function.html#aa604f2c6525cca5b85afecd016048b6f", null ], + [ "isOperand", "classfl_1_1Function.html#a38c3011d499a84d262b4ba895e4b3700", null ], + [ "isOperator", "classfl_1_1Function.html#a0d9c8b2711ebd2a7eeeca0d4726cc235", null ], + [ "load", "classfl_1_1Function.html#ae7ef261750a6fac102c88b5338cc24e0", null ], + [ "load", "classfl_1_1Function.html#ae100c79063c8bad3eca0beb5433b0a28", null ], + [ "loadBuiltInFunctions", "classfl_1_1Function.html#ac357b08779c1c3145f9e1311f71ae791", null ], + [ "main", "classfl_1_1Function.html#a9a545f733f56ab80350232facf1f110f", null ], + [ "membership", "classfl_1_1Function.html#a6775b642c60d04148d25996707d4647f", null ], + [ "parameters", "classfl_1_1Function.html#a3e900c3e371a7d6047415b9821c44e95", null ], + [ "parse", "classfl_1_1Function.html#aa4abc71ff0a3a9c334f6953dd62e1777", null ], + [ "setEngine", "classfl_1_1Function.html#a243bf3006438367a6c4fc06f3e286fa2", null ], + [ "setFormula", "classfl_1_1Function.html#a03eeaf1ff7ccfa41e482731f687faeeb", null ], + [ "space", "classfl_1_1Function.html#a2afc9a85368f4a3bfed8d4850ebeb437", null ], + [ "toPostfix", "classfl_1_1Function.html#ad58b9d3ca96c588dfd7001a35f575f45", null ], + [ "_engine", "classfl_1_1Function.html#a62b753626cf4bd6dac6be17ae6c4191b", null ], + [ "_formula", "classfl_1_1Function.html#a170910c5be1bf1c62ebdf0af75edad5d", null ], + [ "functions", "classfl_1_1Function.html#a90c6da801dd404158a35c0fdf1888c76", null ], + [ "operators", "classfl_1_1Function.html#a56edfcdbbbf5701f030d6e0f5e9684a6", null ], + [ "root", "classfl_1_1Function.html#a3467f99b6dd817795f3af06039d91db5", null ], + [ "variables", "classfl_1_1Function.html#a10ce03251388d331bf22f95602c2df89", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Function__coll__graph.map b/docs/html/classfl_1_1Function__coll__graph.map new file mode 100644 index 0000000..1f06dbc --- /dev/null +++ b/docs/html/classfl_1_1Function__coll__graph.map @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1Function__coll__graph.md5 b/docs/html/classfl_1_1Function__coll__graph.md5 new file mode 100644 index 0000000..70e8e1b --- /dev/null +++ b/docs/html/classfl_1_1Function__coll__graph.md5 @@ -0,0 +1 @@ +4437e09e5dbfcd380243b0452aadbca2 \ No newline at end of file diff --git a/docs/html/classfl_1_1Function__coll__graph.png b/docs/html/classfl_1_1Function__coll__graph.png new file mode 100644 index 0000000..4fd3434 Binary files /dev/null and b/docs/html/classfl_1_1Function__coll__graph.png differ diff --git a/docs/html/classfl_1_1Function__inherit__graph.map b/docs/html/classfl_1_1Function__inherit__graph.map new file mode 100644 index 0000000..a345204 --- /dev/null +++ b/docs/html/classfl_1_1Function__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Function__inherit__graph.md5 b/docs/html/classfl_1_1Function__inherit__graph.md5 new file mode 100644 index 0000000..0f5de8c --- /dev/null +++ b/docs/html/classfl_1_1Function__inherit__graph.md5 @@ -0,0 +1 @@ +052f36ded5313963803acdac098dbf97 \ No newline at end of file diff --git a/docs/html/classfl_1_1Function__inherit__graph.png b/docs/html/classfl_1_1Function__inherit__graph.png new file mode 100644 index 0000000..37fd2d8 Binary files /dev/null and b/docs/html/classfl_1_1Function__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Gaussian-members.html b/docs/html/classfl_1_1Gaussian-members.html new file mode 100644 index 0000000..d854c2a --- /dev/null +++ b/docs/html/classfl_1_1Gaussian-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Gaussian Member List
+
+
+ +

This is the complete list of members for fl::Gaussian, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_meanfl::Gaussianprotected
_namefl::Termprotected
_standardDeviationfl::Gaussianprotected
className() const fl::Gaussianvirtual
configure(const std::string &parameters)fl::Gaussianvirtual
constructor()fl::Gaussianstatic
copy() const fl::Gaussianvirtual
Gaussian(const std::string &name="", scalar mean=fl::nan, scalar standardDeviation=fl::nan)fl::Gaussian
getMean() const fl::Gaussianvirtual
getName() const fl::Termvirtual
getStandardDeviation() const fl::Gaussianvirtual
membership(scalar x) const fl::Gaussianvirtual
parameters() const fl::Gaussianvirtual
setMean(scalar c)fl::Gaussianvirtual
setName(const std::string &name)fl::Termvirtual
setStandardDeviation(scalar sigma)fl::Gaussianvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Gaussian()fl::Gaussianvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Gaussian.html b/docs/html/classfl_1_1Gaussian.html new file mode 100644 index 0000000..05b9b8f --- /dev/null +++ b/docs/html/classfl_1_1Gaussian.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::Gaussian Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Gaussian.h>

+
+Inheritance diagram for fl::Gaussian:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Gaussian:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Gaussian (const std::string &name="", scalar mean=fl::nan, scalar standardDeviation=fl::nan)
 
virtual ~Gaussian ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setMean (scalar c)
 
virtual scalar getMean () const
 
virtual void setStandardDeviation (scalar sigma)
 
virtual scalar getStandardDeviation () const
 
virtual Gaussiancopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _mean
 
scalar _standardDeviation
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Gaussian::Gaussian (const std::string & name = "",
scalar mean = fl::nan,
scalar standardDeviation = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Gaussian::~Gaussian ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Gaussian::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Gaussian::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Gaussian::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Gaussian * fl::Gaussian::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Gaussian::getMean () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Gaussian::getStandardDeviation () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Gaussian::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Gaussian::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Gaussian::setMean (scalar c)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Gaussian::setStandardDeviation (scalar sigma)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Gaussian::_mean
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Gaussian::_standardDeviation
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Gaussian.js b/docs/html/classfl_1_1Gaussian.js new file mode 100644 index 0000000..3bfec3d --- /dev/null +++ b/docs/html/classfl_1_1Gaussian.js @@ -0,0 +1,17 @@ +var classfl_1_1Gaussian = +[ + [ "Gaussian", "classfl_1_1Gaussian.html#a98c6cd11415682fedee70afbd7ab006a", null ], + [ "~Gaussian", "classfl_1_1Gaussian.html#a7cf9cfc964bbbf96b7bf8203559926de", null ], + [ "className", "classfl_1_1Gaussian.html#a4fe36a7eabff87f9f589e4fc2b225954", null ], + [ "configure", "classfl_1_1Gaussian.html#ad1ad9bad1f1d2096fa4d2f95b6288320", null ], + [ "constructor", "classfl_1_1Gaussian.html#a246604f064ff03ef393bc32d31cb2e93", null ], + [ "copy", "classfl_1_1Gaussian.html#abfe6341c9e2f016a8be779e58014280d", null ], + [ "getMean", "classfl_1_1Gaussian.html#aafb1c9093523491dd4bc6fe83fed82ff", null ], + [ "getStandardDeviation", "classfl_1_1Gaussian.html#ab302be9787169b20f2f6ca7a26a8afe0", null ], + [ "membership", "classfl_1_1Gaussian.html#aa6b16380ba030cd4f1520c2d78ab950e", null ], + [ "parameters", "classfl_1_1Gaussian.html#abe3ef5f8b925c0c8010f2112ff1585be", null ], + [ "setMean", "classfl_1_1Gaussian.html#a35273744e774551c342d061c44437680", null ], + [ "setStandardDeviation", "classfl_1_1Gaussian.html#adfbe578e478af2a0b646f8ce7e326c59", null ], + [ "_mean", "classfl_1_1Gaussian.html#a3afa7aadb27e046ed07d5c77e9a878b5", null ], + [ "_standardDeviation", "classfl_1_1Gaussian.html#a54d80135fdacc54f4889dc724491f44f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1GaussianProduct-members.html b/docs/html/classfl_1_1GaussianProduct-members.html new file mode 100644 index 0000000..9f624ec --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::GaussianProduct Member List
+
+
+ +

This is the complete list of members for fl::GaussianProduct, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_meanAfl::GaussianProductprotected
_meanBfl::GaussianProductprotected
_namefl::Termprotected
_standardDeviationAfl::GaussianProductprotected
_standardDeviationBfl::GaussianProductprotected
className() const fl::GaussianProductvirtual
configure(const std::string &parameters)fl::GaussianProductvirtual
constructor()fl::GaussianProductstatic
copy() const fl::GaussianProductvirtual
GaussianProduct(const std::string &name="", scalar meanA=fl::nan, scalar standardDeviationA=fl::nan, scalar meanB=fl::nan, scalar standardDeviationB=fl::nan)fl::GaussianProduct
getMeanA() const fl::GaussianProductvirtual
getMeanB() const fl::GaussianProductvirtual
getName() const fl::Termvirtual
getStandardDeviationA() const fl::GaussianProductvirtual
getStandardDeviationB() const fl::GaussianProductvirtual
membership(scalar x) const fl::GaussianProductvirtual
parameters() const fl::GaussianProductvirtual
setMeanA(scalar meanA)fl::GaussianProductvirtual
setMeanB(scalar meanB)fl::GaussianProductvirtual
setName(const std::string &name)fl::Termvirtual
setStandardDeviationA(scalar sigmaA)fl::GaussianProductvirtual
setStandardDeviationB(scalar sigmaB)fl::GaussianProductvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~GaussianProduct()fl::GaussianProductvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1GaussianProduct.html b/docs/html/classfl_1_1GaussianProduct.html new file mode 100644 index 0000000..1d694d0 --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct.html @@ -0,0 +1,702 @@ + + + + + + +fuzzylite: fl::GaussianProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <GaussianProduct.h>

+
+Inheritance diagram for fl::GaussianProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::GaussianProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 GaussianProduct (const std::string &name="", scalar meanA=fl::nan, scalar standardDeviationA=fl::nan, scalar meanB=fl::nan, scalar standardDeviationB=fl::nan)
 
virtual ~GaussianProduct ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setMeanA (scalar meanA)
 
virtual scalar getMeanA () const
 
virtual void setStandardDeviationA (scalar sigmaA)
 
virtual scalar getStandardDeviationA () const
 
virtual void setMeanB (scalar meanB)
 
virtual scalar getMeanB () const
 
virtual void setStandardDeviationB (scalar sigmaB)
 
virtual scalar getStandardDeviationB () const
 
virtual GaussianProductcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + + + +

+Protected Attributes

scalar _meanA
 
scalar _standardDeviationA
 
scalar _meanB
 
scalar _standardDeviationB
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::GaussianProduct::GaussianProduct (const std::string & name = "",
scalar meanA = fl::nan,
scalar standardDeviationA = fl::nan,
scalar meanB = fl::nan,
scalar standardDeviationB = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::GaussianProduct::~GaussianProduct ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::GaussianProduct::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::GaussianProduct::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::GaussianProduct::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
GaussianProduct * fl::GaussianProduct::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::GaussianProduct::getMeanA () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::GaussianProduct::getMeanB () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::GaussianProduct::getStandardDeviationA () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::GaussianProduct::getStandardDeviationB () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::GaussianProduct::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::GaussianProduct::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::GaussianProduct::setMeanA (scalar meanA)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::GaussianProduct::setMeanB (scalar meanB)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::GaussianProduct::setStandardDeviationA (scalar sigmaA)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::GaussianProduct::setStandardDeviationB (scalar sigmaB)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::GaussianProduct::_meanA
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::GaussianProduct::_meanB
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::GaussianProduct::_standardDeviationA
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::GaussianProduct::_standardDeviationB
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1GaussianProduct.js b/docs/html/classfl_1_1GaussianProduct.js new file mode 100644 index 0000000..2134cb2 --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct.js @@ -0,0 +1,23 @@ +var classfl_1_1GaussianProduct = +[ + [ "GaussianProduct", "classfl_1_1GaussianProduct.html#aace6b4c7794393c72584036e49d30982", null ], + [ "~GaussianProduct", "classfl_1_1GaussianProduct.html#ab5c2aff8ec77cabbafbcbacc93f4c3a8", null ], + [ "className", "classfl_1_1GaussianProduct.html#a6053012a905ecb9e0b3a7d8fcfddb997", null ], + [ "configure", "classfl_1_1GaussianProduct.html#abaa001011b04d82044a6d121e82f4393", null ], + [ "constructor", "classfl_1_1GaussianProduct.html#a8e3524f455a0eadc98e91012e7abc034", null ], + [ "copy", "classfl_1_1GaussianProduct.html#ac82273731d30e6f9b4a406d9a863376b", null ], + [ "getMeanA", "classfl_1_1GaussianProduct.html#ac4de1d4f1d2a3305440d8a79ba9fd7b3", null ], + [ "getMeanB", "classfl_1_1GaussianProduct.html#a0f805a13ecbd9f4148174dc597e192dd", null ], + [ "getStandardDeviationA", "classfl_1_1GaussianProduct.html#a1220b0085a00f8109b49501b346f29d7", null ], + [ "getStandardDeviationB", "classfl_1_1GaussianProduct.html#a6486b89913270c8caafda0526de24843", null ], + [ "membership", "classfl_1_1GaussianProduct.html#ab34f0db33867495381322cd11d85bf5d", null ], + [ "parameters", "classfl_1_1GaussianProduct.html#af7c07284dd611729ac9c3a1d51798963", null ], + [ "setMeanA", "classfl_1_1GaussianProduct.html#a2be8509987e2e2d8e0dc388fe2009aab", null ], + [ "setMeanB", "classfl_1_1GaussianProduct.html#a299baa7ccb7368d1aea50a4e88023988", null ], + [ "setStandardDeviationA", "classfl_1_1GaussianProduct.html#a2f28afe006e31b0d5e78d8026654b016", null ], + [ "setStandardDeviationB", "classfl_1_1GaussianProduct.html#a650bcc4bf3a59bdf315806ca0699e626", null ], + [ "_meanA", "classfl_1_1GaussianProduct.html#acb0046558c2b810abb9566afe149f444", null ], + [ "_meanB", "classfl_1_1GaussianProduct.html#a566dbd763abb96ea82d70d3a3aa357d4", null ], + [ "_standardDeviationA", "classfl_1_1GaussianProduct.html#a6325913403a8d5a752e7eef82b8fe4c9", null ], + [ "_standardDeviationB", "classfl_1_1GaussianProduct.html#ab109d8ecd2334f8d627ceda8d7cd5b1f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1GaussianProduct__coll__graph.map b/docs/html/classfl_1_1GaussianProduct__coll__graph.map new file mode 100644 index 0000000..85024c1 --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1GaussianProduct__coll__graph.md5 b/docs/html/classfl_1_1GaussianProduct__coll__graph.md5 new file mode 100644 index 0000000..724305d --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct__coll__graph.md5 @@ -0,0 +1 @@ +7754d82df9bf286f73187ffb32655242 \ No newline at end of file diff --git a/docs/html/classfl_1_1GaussianProduct__coll__graph.png b/docs/html/classfl_1_1GaussianProduct__coll__graph.png new file mode 100644 index 0000000..4118bb5 Binary files /dev/null and b/docs/html/classfl_1_1GaussianProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1GaussianProduct__inherit__graph.map b/docs/html/classfl_1_1GaussianProduct__inherit__graph.map new file mode 100644 index 0000000..5b338d8 --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1GaussianProduct__inherit__graph.md5 b/docs/html/classfl_1_1GaussianProduct__inherit__graph.md5 new file mode 100644 index 0000000..8c5df80 --- /dev/null +++ b/docs/html/classfl_1_1GaussianProduct__inherit__graph.md5 @@ -0,0 +1 @@ +923eb897e57797798a451e93fcc95e79 \ No newline at end of file diff --git a/docs/html/classfl_1_1GaussianProduct__inherit__graph.png b/docs/html/classfl_1_1GaussianProduct__inherit__graph.png new file mode 100644 index 0000000..e7909e2 Binary files /dev/null and b/docs/html/classfl_1_1GaussianProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Gaussian__coll__graph.map b/docs/html/classfl_1_1Gaussian__coll__graph.map new file mode 100644 index 0000000..9694c11 --- /dev/null +++ b/docs/html/classfl_1_1Gaussian__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Gaussian__coll__graph.md5 b/docs/html/classfl_1_1Gaussian__coll__graph.md5 new file mode 100644 index 0000000..106dee9 --- /dev/null +++ b/docs/html/classfl_1_1Gaussian__coll__graph.md5 @@ -0,0 +1 @@ +9f73526f4f4bc427bc84a81c5135d6d4 \ No newline at end of file diff --git a/docs/html/classfl_1_1Gaussian__coll__graph.png b/docs/html/classfl_1_1Gaussian__coll__graph.png new file mode 100644 index 0000000..547f0de Binary files /dev/null and b/docs/html/classfl_1_1Gaussian__coll__graph.png differ diff --git a/docs/html/classfl_1_1Gaussian__inherit__graph.map b/docs/html/classfl_1_1Gaussian__inherit__graph.map new file mode 100644 index 0000000..128f642 --- /dev/null +++ b/docs/html/classfl_1_1Gaussian__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Gaussian__inherit__graph.md5 b/docs/html/classfl_1_1Gaussian__inherit__graph.md5 new file mode 100644 index 0000000..6c45750 --- /dev/null +++ b/docs/html/classfl_1_1Gaussian__inherit__graph.md5 @@ -0,0 +1 @@ +53e4544719394fd254c2729cb663f5b1 \ No newline at end of file diff --git a/docs/html/classfl_1_1Gaussian__inherit__graph.png b/docs/html/classfl_1_1Gaussian__inherit__graph.png new file mode 100644 index 0000000..1871818 Binary files /dev/null and b/docs/html/classfl_1_1Gaussian__inherit__graph.png differ diff --git a/docs/html/classfl_1_1HamacherProduct-members.html b/docs/html/classfl_1_1HamacherProduct-members.html new file mode 100644 index 0000000..745fee5 --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::HamacherProduct Member List
+
+
+ +

This is the complete list of members for fl::HamacherProduct, including all inherited members.

+ + + + + + + + +
className() const fl::HamacherProductvirtual
compute(scalar a, scalar b) const fl::HamacherProductvirtual
constructor()fl::HamacherProductstatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1HamacherProduct.html b/docs/html/classfl_1_1HamacherProduct.html new file mode 100644 index 0000000..71f7b88 --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::HamacherProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::HamacherProduct Class Reference
+
+
+ +

#include <HamacherProduct.h>

+
+Inheritance diagram for fl::HamacherProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::HamacherProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::HamacherProduct::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::HamacherProduct::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::HamacherProduct::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1HamacherProduct.js b/docs/html/classfl_1_1HamacherProduct.js new file mode 100644 index 0000000..69b88c4 --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct.js @@ -0,0 +1,6 @@ +var classfl_1_1HamacherProduct = +[ + [ "className", "classfl_1_1HamacherProduct.html#a074cd7680f13dc4e4a83d009336310fc", null ], + [ "compute", "classfl_1_1HamacherProduct.html#aa66725360da0eaf658f03380baacc35c", null ], + [ "constructor", "classfl_1_1HamacherProduct.html#aa643c0983dd731952efb16996303ed2a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherProduct__coll__graph.map b/docs/html/classfl_1_1HamacherProduct__coll__graph.map new file mode 100644 index 0000000..63c8b14 --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1HamacherProduct__coll__graph.md5 b/docs/html/classfl_1_1HamacherProduct__coll__graph.md5 new file mode 100644 index 0000000..1a75aec --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct__coll__graph.md5 @@ -0,0 +1 @@ +004381e04f30abdc319f06a65cea7b4b \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherProduct__coll__graph.png b/docs/html/classfl_1_1HamacherProduct__coll__graph.png new file mode 100644 index 0000000..0b4405a Binary files /dev/null and b/docs/html/classfl_1_1HamacherProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1HamacherProduct__inherit__graph.map b/docs/html/classfl_1_1HamacherProduct__inherit__graph.map new file mode 100644 index 0000000..63c8b14 --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1HamacherProduct__inherit__graph.md5 b/docs/html/classfl_1_1HamacherProduct__inherit__graph.md5 new file mode 100644 index 0000000..1a75aec --- /dev/null +++ b/docs/html/classfl_1_1HamacherProduct__inherit__graph.md5 @@ -0,0 +1 @@ +004381e04f30abdc319f06a65cea7b4b \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherProduct__inherit__graph.png b/docs/html/classfl_1_1HamacherProduct__inherit__graph.png new file mode 100644 index 0000000..0b4405a Binary files /dev/null and b/docs/html/classfl_1_1HamacherProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1HamacherSum-members.html b/docs/html/classfl_1_1HamacherSum-members.html new file mode 100644 index 0000000..ccc950a --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::HamacherSum Member List
+
+
+ +

This is the complete list of members for fl::HamacherSum, including all inherited members.

+ + + + + + + + +
className() const fl::HamacherSumvirtual
compute(scalar a, scalar b) const fl::HamacherSumvirtual
constructor()fl::HamacherSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1HamacherSum.html b/docs/html/classfl_1_1HamacherSum.html new file mode 100644 index 0000000..43c1546 --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::HamacherSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::HamacherSum Class Reference
+
+
+ +

#include <HamacherSum.h>

+
+Inheritance diagram for fl::HamacherSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::HamacherSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::HamacherSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::HamacherSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::HamacherSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1HamacherSum.js b/docs/html/classfl_1_1HamacherSum.js new file mode 100644 index 0000000..7d681ad --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum.js @@ -0,0 +1,6 @@ +var classfl_1_1HamacherSum = +[ + [ "className", "classfl_1_1HamacherSum.html#a9a369bb11910179a3e9501df02d20d39", null ], + [ "compute", "classfl_1_1HamacherSum.html#ad8a6b4101561349694daee12ef32a960", null ], + [ "constructor", "classfl_1_1HamacherSum.html#a97477ae807a703cf7c0d150a4a4e94c4", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherSum__coll__graph.map b/docs/html/classfl_1_1HamacherSum__coll__graph.map new file mode 100644 index 0000000..91a2263 --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1HamacherSum__coll__graph.md5 b/docs/html/classfl_1_1HamacherSum__coll__graph.md5 new file mode 100644 index 0000000..a52a955 --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum__coll__graph.md5 @@ -0,0 +1 @@ +37a9829ddc55969d4df0b7cadee73f48 \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherSum__coll__graph.png b/docs/html/classfl_1_1HamacherSum__coll__graph.png new file mode 100644 index 0000000..ad0d917 Binary files /dev/null and b/docs/html/classfl_1_1HamacherSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1HamacherSum__inherit__graph.map b/docs/html/classfl_1_1HamacherSum__inherit__graph.map new file mode 100644 index 0000000..91a2263 --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1HamacherSum__inherit__graph.md5 b/docs/html/classfl_1_1HamacherSum__inherit__graph.md5 new file mode 100644 index 0000000..a52a955 --- /dev/null +++ b/docs/html/classfl_1_1HamacherSum__inherit__graph.md5 @@ -0,0 +1 @@ +37a9829ddc55969d4df0b7cadee73f48 \ No newline at end of file diff --git a/docs/html/classfl_1_1HamacherSum__inherit__graph.png b/docs/html/classfl_1_1HamacherSum__inherit__graph.png new file mode 100644 index 0000000..ad0d917 Binary files /dev/null and b/docs/html/classfl_1_1HamacherSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Hedge-members.html b/docs/html/classfl_1_1Hedge-members.html new file mode 100644 index 0000000..16cb210 --- /dev/null +++ b/docs/html/classfl_1_1Hedge-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Hedge Member List
+
+
+ +

This is the complete list of members for fl::Hedge, including all inherited members.

+ + + + + +
Hedge()fl::Hedgeinline
hedge(scalar x) const =0fl::Hedgepure virtual
name() const =0fl::Hedgepure virtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Hedge.html b/docs/html/classfl_1_1Hedge.html new file mode 100644 index 0000000..12481c3 --- /dev/null +++ b/docs/html/classfl_1_1Hedge.html @@ -0,0 +1,258 @@ + + + + + + +fuzzylite: fl::Hedge Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Hedge Class Referenceabstract
+
+
+ +

#include <Hedge.h>

+
+Inheritance diagram for fl::Hedge:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Hedge:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Public Member Functions

 Hedge ()
 
virtual ~Hedge ()
 
virtual std::string name () const =0
 
virtual scalar hedge (scalar x) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::Hedge::Hedge ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::Hedge::~Hedge ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
virtual scalar fl::Hedge::hedge (scalar x) const
+
+pure virtual
+
+ +

Implemented in fl::Any, fl::Extremely, fl::Not, fl::Seldom, fl::Somewhat, and fl::Very.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Hedge::name () const
+
+pure virtual
+
+ +

Implemented in fl::Any, fl::Extremely, fl::Not, fl::Seldom, fl::Somewhat, and fl::Very.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1Hedge.js b/docs/html/classfl_1_1Hedge.js new file mode 100644 index 0000000..29bf17c --- /dev/null +++ b/docs/html/classfl_1_1Hedge.js @@ -0,0 +1,7 @@ +var classfl_1_1Hedge = +[ + [ "Hedge", "classfl_1_1Hedge.html#a3370874611a2880c05ca1d35dd6e8159", null ], + [ "~Hedge", "classfl_1_1Hedge.html#a990b388bcdf071d72ed55d6b31df0c69", null ], + [ "hedge", "classfl_1_1Hedge.html#a98c94b3f1f62bedaf01d36ceed4cf837", null ], + [ "name", "classfl_1_1Hedge.html#a547d5526c4c921d7a61db29f2e76a88c", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1HedgeFactory-members.html b/docs/html/classfl_1_1HedgeFactory-members.html new file mode 100644 index 0000000..822fcba --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::HedgeFactory Member List
+
+
+ +

This is the complete list of members for fl::HedgeFactory, including all inherited members.

+ + + + + + + + + + + + +
available() constfl::Factory< Hedge * >virtual
createInstance(const std::string &key) constfl::Factory< Hedge * >virtual
Creator typedeffl::Factory< Hedge * >
deregisterClass(const std::string &key)fl::Factory< Hedge * >virtual
Factory()fl::Factory< Hedge * >
hasRegisteredClass(const std::string &key) constfl::Factory< Hedge * >virtual
HedgeFactory()fl::HedgeFactory
mapfl::Factory< Hedge * >protected
registerClass(const std::string &key, Creator creator)fl::Factory< Hedge * >virtual
~Factory()fl::Factory< Hedge * >virtual
~HedgeFactory()fl::HedgeFactoryvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1HedgeFactory.html b/docs/html/classfl_1_1HedgeFactory.html new file mode 100644 index 0000000..f6b6949 --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: fl::HedgeFactory Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::HedgeFactory Class Reference
+
+
+ +

#include <HedgeFactory.h>

+
+Inheritance diagram for fl::HedgeFactory:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::HedgeFactory:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 HedgeFactory ()
 
virtual ~HedgeFactory ()
 
- Public Member Functions inherited from fl::Factory< Hedge * >
 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual HedgecreateInstance (const std::string &key) const
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from fl::Factory< Hedge * >
typedef Hedge *(* Creator )()
 
- Protected Attributes inherited from fl::Factory< Hedge * >
std::map< std::string, Creator > map
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::HedgeFactory::HedgeFactory ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::HedgeFactory::~HedgeFactory ()
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1HedgeFactory.js b/docs/html/classfl_1_1HedgeFactory.js new file mode 100644 index 0000000..7afc27b --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory.js @@ -0,0 +1,5 @@ +var classfl_1_1HedgeFactory = +[ + [ "HedgeFactory", "classfl_1_1HedgeFactory.html#a78d107303d37226af09a285314b1255a", null ], + [ "~HedgeFactory", "classfl_1_1HedgeFactory.html#a734e0398afcbc1cec74b21e3d0759e75", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1HedgeFactory__coll__graph.map b/docs/html/classfl_1_1HedgeFactory__coll__graph.map new file mode 100644 index 0000000..2f96e0d --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1HedgeFactory__coll__graph.md5 b/docs/html/classfl_1_1HedgeFactory__coll__graph.md5 new file mode 100644 index 0000000..7572bb2 --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory__coll__graph.md5 @@ -0,0 +1 @@ +f5662c2d63f77a714a35d9e9accc6567 \ No newline at end of file diff --git a/docs/html/classfl_1_1HedgeFactory__coll__graph.png b/docs/html/classfl_1_1HedgeFactory__coll__graph.png new file mode 100644 index 0000000..5e4be86 Binary files /dev/null and b/docs/html/classfl_1_1HedgeFactory__coll__graph.png differ diff --git a/docs/html/classfl_1_1HedgeFactory__inherit__graph.map b/docs/html/classfl_1_1HedgeFactory__inherit__graph.map new file mode 100644 index 0000000..0466e37 --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1HedgeFactory__inherit__graph.md5 b/docs/html/classfl_1_1HedgeFactory__inherit__graph.md5 new file mode 100644 index 0000000..d4255f7 --- /dev/null +++ b/docs/html/classfl_1_1HedgeFactory__inherit__graph.md5 @@ -0,0 +1 @@ +6a419cc91d266a7e1ead88424174d157 \ No newline at end of file diff --git a/docs/html/classfl_1_1HedgeFactory__inherit__graph.png b/docs/html/classfl_1_1HedgeFactory__inherit__graph.png new file mode 100644 index 0000000..dcf9290 Binary files /dev/null and b/docs/html/classfl_1_1HedgeFactory__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Hedge__coll__graph.map b/docs/html/classfl_1_1Hedge__coll__graph.map new file mode 100644 index 0000000..131160e --- /dev/null +++ b/docs/html/classfl_1_1Hedge__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Hedge__coll__graph.md5 b/docs/html/classfl_1_1Hedge__coll__graph.md5 new file mode 100644 index 0000000..2d3fdd6 --- /dev/null +++ b/docs/html/classfl_1_1Hedge__coll__graph.md5 @@ -0,0 +1 @@ +45424df5d9197ad9331499337b42f311 \ No newline at end of file diff --git a/docs/html/classfl_1_1Hedge__coll__graph.png b/docs/html/classfl_1_1Hedge__coll__graph.png new file mode 100644 index 0000000..08443de Binary files /dev/null and b/docs/html/classfl_1_1Hedge__coll__graph.png differ diff --git a/docs/html/classfl_1_1Hedge__inherit__graph.map b/docs/html/classfl_1_1Hedge__inherit__graph.map new file mode 100644 index 0000000..fc4f75c --- /dev/null +++ b/docs/html/classfl_1_1Hedge__inherit__graph.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/classfl_1_1Hedge__inherit__graph.md5 b/docs/html/classfl_1_1Hedge__inherit__graph.md5 new file mode 100644 index 0000000..47a79a8 --- /dev/null +++ b/docs/html/classfl_1_1Hedge__inherit__graph.md5 @@ -0,0 +1 @@ +e4c5c5a43dc97d3b34e75ccf7e10ccfc \ No newline at end of file diff --git a/docs/html/classfl_1_1Hedge__inherit__graph.png b/docs/html/classfl_1_1Hedge__inherit__graph.png new file mode 100644 index 0000000..34963e3 Binary files /dev/null and b/docs/html/classfl_1_1Hedge__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Importer-members.html b/docs/html/classfl_1_1Importer-members.html new file mode 100644 index 0000000..9062ac0 --- /dev/null +++ b/docs/html/classfl_1_1Importer-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Importer Member List
+
+
+ +

This is the complete list of members for fl::Importer, including all inherited members.

+ + + + + +
fromString(const std::string &s) const =0fl::Importerpure virtual
Importer()fl::Importerinline
name() const =0fl::Importerpure virtual
~Importer()fl::Importerinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Importer.html b/docs/html/classfl_1_1Importer.html new file mode 100644 index 0000000..7488e1f --- /dev/null +++ b/docs/html/classfl_1_1Importer.html @@ -0,0 +1,258 @@ + + + + + + +fuzzylite: fl::Importer Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Importer Class Referenceabstract
+
+
+ +

#include <Importer.h>

+
+Inheritance diagram for fl::Importer:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Importer:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Public Member Functions

 Importer ()
 
virtual ~Importer ()
 
virtual std::string name () const =0
 
virtual EnginefromString (const std::string &s) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::Importer::Importer ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::Importer::~Importer ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
virtual Engine* fl::Importer::fromString (const std::string & s) const
+
+pure virtual
+
+ +

Implemented in fl::FisImporter, fl::FclImporter, and fl::FllImporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Importer::name () const
+
+pure virtual
+
+ +

Implemented in fl::FisImporter, fl::FclImporter, and fl::FllImporter.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1Importer.js b/docs/html/classfl_1_1Importer.js new file mode 100644 index 0000000..204717f --- /dev/null +++ b/docs/html/classfl_1_1Importer.js @@ -0,0 +1,7 @@ +var classfl_1_1Importer = +[ + [ "Importer", "classfl_1_1Importer.html#a5d5f32f7522c0e263b7833315e529f1f", null ], + [ "~Importer", "classfl_1_1Importer.html#aa80d4e41105f57759edeb802e48e5d88", null ], + [ "fromString", "classfl_1_1Importer.html#a41a5100eb0d3b3a7ec92781c105490a2", null ], + [ "name", "classfl_1_1Importer.html#a8b8cfaab1076414317917a2f983fc995", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Importer__coll__graph.map b/docs/html/classfl_1_1Importer__coll__graph.map new file mode 100644 index 0000000..44d6071 --- /dev/null +++ b/docs/html/classfl_1_1Importer__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Importer__coll__graph.md5 b/docs/html/classfl_1_1Importer__coll__graph.md5 new file mode 100644 index 0000000..976b0a9 --- /dev/null +++ b/docs/html/classfl_1_1Importer__coll__graph.md5 @@ -0,0 +1 @@ +70ec495ec425a82e77b67720732a45b5 \ No newline at end of file diff --git a/docs/html/classfl_1_1Importer__coll__graph.png b/docs/html/classfl_1_1Importer__coll__graph.png new file mode 100644 index 0000000..9480d78 Binary files /dev/null and b/docs/html/classfl_1_1Importer__coll__graph.png differ diff --git a/docs/html/classfl_1_1Importer__inherit__graph.map b/docs/html/classfl_1_1Importer__inherit__graph.map new file mode 100644 index 0000000..29a135d --- /dev/null +++ b/docs/html/classfl_1_1Importer__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Importer__inherit__graph.md5 b/docs/html/classfl_1_1Importer__inherit__graph.md5 new file mode 100644 index 0000000..3b8e52f --- /dev/null +++ b/docs/html/classfl_1_1Importer__inherit__graph.md5 @@ -0,0 +1 @@ +c8da4dd67adc43a0ac517b570765080e \ No newline at end of file diff --git a/docs/html/classfl_1_1Importer__inherit__graph.png b/docs/html/classfl_1_1Importer__inherit__graph.png new file mode 100644 index 0000000..8b5f74d Binary files /dev/null and b/docs/html/classfl_1_1Importer__inherit__graph.png differ diff --git a/docs/html/classfl_1_1InputVariable-members.html b/docs/html/classfl_1_1InputVariable-members.html new file mode 100644 index 0000000..ff43361 --- /dev/null +++ b/docs/html/classfl_1_1InputVariable-members.html @@ -0,0 +1,162 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::InputVariable Member List
+
+
+ +

This is the complete list of members for fl::InputVariable, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_enabledfl::Variableprotected
_inputValuefl::InputVariableprotected
_maximumfl::Variableprotected
_minimumfl::Variableprotected
_namefl::Variableprotected
_termsfl::Variableprotected
addTerm(Term *term)fl::Variablevirtual
fuzzify(scalar x) const fl::Variablevirtual
getInputValue() const fl::InputVariablevirtual
getMaximum() const fl::Variablevirtual
getMinimum() const fl::Variablevirtual
getName() const fl::Variablevirtual
getTerm(int index) const fl::Variablevirtual
getTerm(const std::string &name) const fl::Variablevirtual
hasTerm(const std::string &name) const fl::Variablevirtual
highestMembership(scalar x, scalar *yhighest=NULL) const fl::Variablevirtual
InputVariable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)fl::InputVariable
insertTerm(Term *term, int index)fl::Variablevirtual
isEnabled() const fl::Variablevirtual
numberOfTerms() const fl::Variablevirtual
range() const fl::Variablevirtual
removeTerm(int index)fl::Variablevirtual
setEnabled(bool enabled)fl::Variablevirtual
setInputValue(scalar inputValue)fl::InputVariablevirtual
setMaximum(scalar maximum)fl::Variablevirtual
setMinimum(scalar minimum)fl::Variablevirtual
setName(const std::string &name)fl::Variablevirtual
setRange(scalar minimum, scalar maximum)fl::Variablevirtual
sort()fl::Variablevirtual
terms() const fl::Variablevirtual
toString() const fl::InputVariablevirtual
Variable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)fl::Variable
Variable(const Variable &copy)fl::Variable
~InputVariable()fl::InputVariablevirtual
~Variable()fl::Variablevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1InputVariable.html b/docs/html/classfl_1_1InputVariable.html new file mode 100644 index 0000000..41e8a00 --- /dev/null +++ b/docs/html/classfl_1_1InputVariable.html @@ -0,0 +1,379 @@ + + + + + + +fuzzylite: fl::InputVariable Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::InputVariable Class Reference
+
+
+ +

#include <InputVariable.h>

+
+Inheritance diagram for fl::InputVariable:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::InputVariable:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 InputVariable (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)
 
virtual ~InputVariable ()
 
virtual void setInputValue (scalar inputValue)
 
virtual scalar getInputValue () const
 
virtual std::string toString () const
 
- Public Member Functions inherited from fl::Variable
 Variable (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)
 
 Variable (const Variable &copy)
 
virtual ~Variable ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual void setRange (scalar minimum, scalar maximum)
 
virtual scalar range () const
 
virtual void setMinimum (scalar minimum)
 
virtual scalar getMinimum () const
 
virtual void setMaximum (scalar maximum)
 
virtual scalar getMaximum () const
 
virtual void setEnabled (bool enabled)
 
virtual bool isEnabled () const
 
virtual std::string fuzzify (scalar x) const
 
virtual TermhighestMembership (scalar x, scalar *yhighest=NULL) const
 
virtual void sort ()
 
virtual void addTerm (Term *term)
 
virtual void insertTerm (Term *term, int index)
 
virtual TermgetTerm (int index) const
 
virtual TermgetTerm (const std::string &name) const
 
virtual bool hasTerm (const std::string &name) const
 
virtual TermremoveTerm (int index)
 
virtual int numberOfTerms () const
 
virtual const std::vector
+< Term * > & 
terms () const
 
+ + + + + + + + + + + + + + +

+Protected Attributes

scalar _inputValue
 
- Protected Attributes inherited from fl::Variable
std::string _name
 
std::vector< Term * > _terms
 
scalar _minimum
 
scalar _maximum
 
bool _enabled
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::InputVariable::InputVariable (const std::string & name = "",
scalar minimum = -fl::inf,
scalar maximum = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::InputVariable::~InputVariable ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::InputVariable::getInputValue () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::InputVariable::setInputValue (scalar inputValue)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::InputVariable::toString () const
+
+virtual
+
+ +

Reimplemented from fl::Variable.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::InputVariable::_inputValue
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1InputVariable.js b/docs/html/classfl_1_1InputVariable.js new file mode 100644 index 0000000..e1ff337 --- /dev/null +++ b/docs/html/classfl_1_1InputVariable.js @@ -0,0 +1,9 @@ +var classfl_1_1InputVariable = +[ + [ "InputVariable", "classfl_1_1InputVariable.html#a34ff3317b73342a2a8abf3652f6e8277", null ], + [ "~InputVariable", "classfl_1_1InputVariable.html#af8524cb2fae0f1417fe8ffc27a181090", null ], + [ "getInputValue", "classfl_1_1InputVariable.html#aee34f9cbcdc7c758f609ca4500624788", null ], + [ "setInputValue", "classfl_1_1InputVariable.html#ab80f6c5816de487663b97e1e38e3b8cf", null ], + [ "toString", "classfl_1_1InputVariable.html#a40085be4ae61578ff1ddcf53f012834e", null ], + [ "_inputValue", "classfl_1_1InputVariable.html#abe998a09cc17fd8d66edae2b5e6e3afe", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1InputVariable__coll__graph.map b/docs/html/classfl_1_1InputVariable__coll__graph.map new file mode 100644 index 0000000..28a794f --- /dev/null +++ b/docs/html/classfl_1_1InputVariable__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/classfl_1_1InputVariable__coll__graph.md5 b/docs/html/classfl_1_1InputVariable__coll__graph.md5 new file mode 100644 index 0000000..0838952 --- /dev/null +++ b/docs/html/classfl_1_1InputVariable__coll__graph.md5 @@ -0,0 +1 @@ +765d62a106fdb450c0a4bade23468121 \ No newline at end of file diff --git a/docs/html/classfl_1_1InputVariable__coll__graph.png b/docs/html/classfl_1_1InputVariable__coll__graph.png new file mode 100644 index 0000000..3b15ab9 Binary files /dev/null and b/docs/html/classfl_1_1InputVariable__coll__graph.png differ diff --git a/docs/html/classfl_1_1InputVariable__inherit__graph.map b/docs/html/classfl_1_1InputVariable__inherit__graph.map new file mode 100644 index 0000000..ae0ad33 --- /dev/null +++ b/docs/html/classfl_1_1InputVariable__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1InputVariable__inherit__graph.md5 b/docs/html/classfl_1_1InputVariable__inherit__graph.md5 new file mode 100644 index 0000000..1a0deab --- /dev/null +++ b/docs/html/classfl_1_1InputVariable__inherit__graph.md5 @@ -0,0 +1 @@ +a08243ba2fa8ebdbcc9e4383081a2f5d \ No newline at end of file diff --git a/docs/html/classfl_1_1InputVariable__inherit__graph.png b/docs/html/classfl_1_1InputVariable__inherit__graph.png new file mode 100644 index 0000000..f8a53a7 Binary files /dev/null and b/docs/html/classfl_1_1InputVariable__inherit__graph.png differ diff --git a/docs/html/classfl_1_1IntegralDefuzzifier-members.html b/docs/html/classfl_1_1IntegralDefuzzifier-members.html new file mode 100644 index 0000000..4b562d8 --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier-members.html @@ -0,0 +1,137 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::IntegralDefuzzifier Member List
+
+
+ +

This is the complete list of members for fl::IntegralDefuzzifier, including all inherited members.

+ + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
className() const =0fl::Defuzzifierpure virtual
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const =0fl::Defuzzifierpure virtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1IntegralDefuzzifier.html b/docs/html/classfl_1_1IntegralDefuzzifier.html new file mode 100644 index 0000000..089be11 --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier.html @@ -0,0 +1,313 @@ + + + + + + +fuzzylite: fl::IntegralDefuzzifier Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <IntegralDefuzzifier.h>

+
+Inheritance diagram for fl::IntegralDefuzzifier:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::IntegralDefuzzifier:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
virtual std::string className () const =0
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const =0
 
+ + + +

+Static Public Member Functions

static int defaultResolution ()
 
+ + + +

+Protected Attributes

int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::IntegralDefuzzifier::IntegralDefuzzifier (int resolution = defaultResolution())
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::IntegralDefuzzifier::~IntegralDefuzzifier ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static int fl::IntegralDefuzzifier::defaultResolution ()
+
+inlinestatic
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::IntegralDefuzzifier::getResolution () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::IntegralDefuzzifier::setResolution (int resolution)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
int fl::IntegralDefuzzifier::_resolution
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1IntegralDefuzzifier.js b/docs/html/classfl_1_1IntegralDefuzzifier.js new file mode 100644 index 0000000..71a0053 --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier.js @@ -0,0 +1,9 @@ +var classfl_1_1IntegralDefuzzifier = +[ + [ "IntegralDefuzzifier", "classfl_1_1IntegralDefuzzifier.html#aa8331e20bd5cc79ce77c5c63bd5fa220", null ], + [ "~IntegralDefuzzifier", "classfl_1_1IntegralDefuzzifier.html#a6ab681f34359792ec867ae78f403f1da", null ], + [ "defaultResolution", "classfl_1_1IntegralDefuzzifier.html#a24ce1ae1d1a8d9c4dc286789b0300b6d", null ], + [ "getResolution", "classfl_1_1IntegralDefuzzifier.html#a84b9bd1f647763fc87ddb0877f62c91a", null ], + [ "setResolution", "classfl_1_1IntegralDefuzzifier.html#ae95e4a62f1443fd56e6b0a6aa72ae7c9", null ], + [ "_resolution", "classfl_1_1IntegralDefuzzifier.html#a7819eddcff32da2826d990080cf52bc1", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.map b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.map new file mode 100644 index 0000000..b888e6d --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.md5 b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.md5 new file mode 100644 index 0000000..1966b9a --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.md5 @@ -0,0 +1 @@ +d872b768b4fce674722cc4a431ebe470 \ No newline at end of file diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.png b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.png new file mode 100644 index 0000000..cdaa191 Binary files /dev/null and b/docs/html/classfl_1_1IntegralDefuzzifier__coll__graph.png differ diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.map b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.map new file mode 100644 index 0000000..ab5954d --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.md5 b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.md5 new file mode 100644 index 0000000..da78c15 --- /dev/null +++ b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.md5 @@ -0,0 +1 @@ +013f54901db6ff9576085a8f26fcd9b2 \ No newline at end of file diff --git a/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.png b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.png new file mode 100644 index 0000000..4b502ce Binary files /dev/null and b/docs/html/classfl_1_1IntegralDefuzzifier__inherit__graph.png differ diff --git a/docs/html/classfl_1_1JavaExporter-members.html b/docs/html/classfl_1_1JavaExporter-members.html new file mode 100644 index 0000000..a822abf --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::JavaExporter Member List
+
+
+ +

This is the complete list of members for fl::JavaExporter, including all inherited members.

+ + + + + + + + + + + + + + +
Exporter()fl::Exporterinline
JavaExporter()fl::JavaExporter
name() const fl::JavaExportervirtual
toString(const Engine *engine) const fl::JavaExportervirtual
toString(const InputVariable *inputVariable, const Engine *engine) const fl::JavaExportervirtual
toString(const OutputVariable *outputVariable, const Engine *engine) const fl::JavaExportervirtual
toString(const RuleBlock *ruleBlock, const Engine *engine) const fl::JavaExportervirtual
toString(const Term *term) const fl::JavaExportervirtual
toString(const Defuzzifier *defuzzifier) const fl::JavaExportervirtual
toString(const Norm *norm) const fl::JavaExportervirtual
toString(scalar value) const fl::JavaExportervirtual
~Exporter()fl::Exporterinlinevirtual
~JavaExporter()fl::JavaExportervirtual
+
+ + + + diff --git a/docs/html/classfl_1_1JavaExporter.html b/docs/html/classfl_1_1JavaExporter.html new file mode 100644 index 0000000..603e0bb --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter.html @@ -0,0 +1,468 @@ + + + + + + +fuzzylite: fl::JavaExporter Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::JavaExporter Class Reference
+
+
+ +

#include <JavaExporter.h>

+
+Inheritance diagram for fl::JavaExporter:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::JavaExporter:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 JavaExporter ()
 
virtual ~JavaExporter ()
 
virtual std::string name () const
 
virtual std::string toString (const Engine *engine) const
 
virtual std::string toString (const InputVariable *inputVariable, const Engine *engine) const
 
virtual std::string toString (const OutputVariable *outputVariable, const Engine *engine) const
 
virtual std::string toString (const RuleBlock *ruleBlock, const Engine *engine) const
 
virtual std::string toString (const Term *term) const
 
virtual std::string toString (const Defuzzifier *defuzzifier) const
 
virtual std::string toString (const Norm *norm) const
 
virtual std::string toString (scalar value) const
 
- Public Member Functions inherited from fl::Exporter
 Exporter ()
 
virtual ~Exporter ()
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::JavaExporter::JavaExporter ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::JavaExporter::~JavaExporter ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::JavaExporter::name () const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::JavaExporter::toString (const Engineengine) const
+
+virtual
+
+ +

Implements fl::Exporter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::JavaExporter::toString (const InputVariableinputVariable,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::JavaExporter::toString (const OutputVariableoutputVariable,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string fl::JavaExporter::toString (const RuleBlockruleBlock,
const Engineengine 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::JavaExporter::toString (const Termterm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::JavaExporter::toString (const Defuzzifierdefuzzifier) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::JavaExporter::toString (const Normnorm) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::JavaExporter::toString (scalar value) const
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1JavaExporter.js b/docs/html/classfl_1_1JavaExporter.js new file mode 100644 index 0000000..09b71fd --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter.js @@ -0,0 +1,14 @@ +var classfl_1_1JavaExporter = +[ + [ "JavaExporter", "classfl_1_1JavaExporter.html#a98c789ad1a6eaea25cd7aafb41cd2012", null ], + [ "~JavaExporter", "classfl_1_1JavaExporter.html#a7c357afdb6391ec44215e575e1f3cb7a", null ], + [ "name", "classfl_1_1JavaExporter.html#a210bc87a9517587d0c5c26380290705d", null ], + [ "toString", "classfl_1_1JavaExporter.html#a94a80476fdc585b6b23a7b3627ce9d66", null ], + [ "toString", "classfl_1_1JavaExporter.html#aa58115648623ced606d0eba39ab27c78", null ], + [ "toString", "classfl_1_1JavaExporter.html#aa3178924725d70c06fe0a6e93b1e3238", null ], + [ "toString", "classfl_1_1JavaExporter.html#ae8043db7b3be3720456396d5ea1f1856", null ], + [ "toString", "classfl_1_1JavaExporter.html#af7d8739f58620e3398e60ab818334114", null ], + [ "toString", "classfl_1_1JavaExporter.html#a4308b8e8efe759c20ff1cc9a1287a003", null ], + [ "toString", "classfl_1_1JavaExporter.html#a354872e403512edbaced4d8f865a965c", null ], + [ "toString", "classfl_1_1JavaExporter.html#aeff64c84585ae1dd69751e2a86ba9acd", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1JavaExporter__coll__graph.map b/docs/html/classfl_1_1JavaExporter__coll__graph.map new file mode 100644 index 0000000..7c1cf2b --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1JavaExporter__coll__graph.md5 b/docs/html/classfl_1_1JavaExporter__coll__graph.md5 new file mode 100644 index 0000000..ec36902 --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter__coll__graph.md5 @@ -0,0 +1 @@ +071c674c20fe72ab3e666e5829609396 \ No newline at end of file diff --git a/docs/html/classfl_1_1JavaExporter__coll__graph.png b/docs/html/classfl_1_1JavaExporter__coll__graph.png new file mode 100644 index 0000000..e4c8046 Binary files /dev/null and b/docs/html/classfl_1_1JavaExporter__coll__graph.png differ diff --git a/docs/html/classfl_1_1JavaExporter__inherit__graph.map b/docs/html/classfl_1_1JavaExporter__inherit__graph.map new file mode 100644 index 0000000..7c1cf2b --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1JavaExporter__inherit__graph.md5 b/docs/html/classfl_1_1JavaExporter__inherit__graph.md5 new file mode 100644 index 0000000..ec36902 --- /dev/null +++ b/docs/html/classfl_1_1JavaExporter__inherit__graph.md5 @@ -0,0 +1 @@ +071c674c20fe72ab3e666e5829609396 \ No newline at end of file diff --git a/docs/html/classfl_1_1JavaExporter__inherit__graph.png b/docs/html/classfl_1_1JavaExporter__inherit__graph.png new file mode 100644 index 0000000..e4c8046 Binary files /dev/null and b/docs/html/classfl_1_1JavaExporter__inherit__graph.png differ diff --git a/docs/html/classfl_1_1LargestOfMaximum-members.html b/docs/html/classfl_1_1LargestOfMaximum-members.html new file mode 100644 index 0000000..a34cd83 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::LargestOfMaximum Member List
+
+
+ +

This is the complete list of members for fl::LargestOfMaximum, including all inherited members.

+ + + + + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
className() const fl::LargestOfMaximumvirtual
constructor()fl::LargestOfMaximumstatic
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::LargestOfMaximumvirtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
LargestOfMaximum(int resolution=defaultResolution())fl::LargestOfMaximum
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
~LargestOfMaximum()fl::LargestOfMaximumvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1LargestOfMaximum.html b/docs/html/classfl_1_1LargestOfMaximum.html new file mode 100644 index 0000000..9096d12 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum.html @@ -0,0 +1,320 @@ + + + + + + +fuzzylite: fl::LargestOfMaximum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::LargestOfMaximum Class Reference
+
+
+ +

#include <LargestOfMaximum.h>

+
+Inheritance diagram for fl::LargestOfMaximum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::LargestOfMaximum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LargestOfMaximum (int resolution=defaultResolution())
 
virtual ~LargestOfMaximum ()
 
virtual std::string className () const
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::IntegralDefuzzifier
 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + + + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
- Static Public Member Functions inherited from fl::IntegralDefuzzifier
static int defaultResolution ()
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::IntegralDefuzzifier
int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::LargestOfMaximum::LargestOfMaximum (int resolution = defaultResolution())
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::LargestOfMaximum::~LargestOfMaximum ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::LargestOfMaximum::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::LargestOfMaximum::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::LargestOfMaximum::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1LargestOfMaximum.js b/docs/html/classfl_1_1LargestOfMaximum.js new file mode 100644 index 0000000..311d768 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum.js @@ -0,0 +1,8 @@ +var classfl_1_1LargestOfMaximum = +[ + [ "LargestOfMaximum", "classfl_1_1LargestOfMaximum.html#a1690cf2d7dff0434ed1c0c9d3c29ab6d", null ], + [ "~LargestOfMaximum", "classfl_1_1LargestOfMaximum.html#ad1c94612d3d86d99c9f4ad1ff9cbe092", null ], + [ "className", "classfl_1_1LargestOfMaximum.html#a918f4bf0b8a72898bc1f3bfdf5dc438c", null ], + [ "constructor", "classfl_1_1LargestOfMaximum.html#ab608bf2abef9246ddd261766356f9d25", null ], + [ "defuzzify", "classfl_1_1LargestOfMaximum.html#af837a7283ef6051f5e7c82544b66407c", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1LargestOfMaximum__coll__graph.map b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.map new file mode 100644 index 0000000..96a3c67 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1LargestOfMaximum__coll__graph.md5 b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.md5 new file mode 100644 index 0000000..50abc14 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.md5 @@ -0,0 +1 @@ +41ea6849107db669d745228bed603820 \ No newline at end of file diff --git a/docs/html/classfl_1_1LargestOfMaximum__coll__graph.png b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.png new file mode 100644 index 0000000..968b32e Binary files /dev/null and b/docs/html/classfl_1_1LargestOfMaximum__coll__graph.png differ diff --git a/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.map b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.map new file mode 100644 index 0000000..96a3c67 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.md5 b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.md5 new file mode 100644 index 0000000..50abc14 --- /dev/null +++ b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.md5 @@ -0,0 +1 @@ +41ea6849107db669d745228bed603820 \ No newline at end of file diff --git a/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.png b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.png new file mode 100644 index 0000000..968b32e Binary files /dev/null and b/docs/html/classfl_1_1LargestOfMaximum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Linear-members.html b/docs/html/classfl_1_1Linear-members.html new file mode 100644 index 0000000..2f17099 --- /dev/null +++ b/docs/html/classfl_1_1Linear-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Linear Member List
+
+
+ +

This is the complete list of members for fl::Linear, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_namefl::Termprotected
className() const fl::Linearvirtual
coefficientsfl::Linear
configure(const std::string &parameters)fl::Linearvirtual
constructor()fl::Linearstatic
copy() const fl::Linearvirtual
create(const std::string &name, const std::vector< InputVariable * > &inputVariables, T firstCoefficient,...)fl::Linearstatic
create(const std::string &name, const std::vector< InputVariable * > &inputVariables, T firstCoefficient,...)fl::Linear
getName() const fl::Termvirtual
inputVariablesfl::Linear
Linear(const std::string &name="", const std::vector< scalar > &coefficients=std::vector< scalar >(), const std::vector< InputVariable * > &inputVariables=std::vector< InputVariable * >())fl::Linear
membership(scalar x) const fl::Linearvirtual
parameters() const fl::Linearvirtual
set(const std::vector< scalar > &coefficients, const std::vector< InputVariable * > &inputVariables)fl::Linearvirtual
set(const std::vector< scalar > &coefficients, const std::vector< const InputVariable * > &inputVariables)fl::Linearvirtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Linear()fl::Linearvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Linear.html b/docs/html/classfl_1_1Linear.html new file mode 100644 index 0000000..e7cba37 --- /dev/null +++ b/docs/html/classfl_1_1Linear.html @@ -0,0 +1,596 @@ + + + + + + +fuzzylite: fl::Linear Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Linear.h>

+
+Inheritance diagram for fl::Linear:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Linear:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Linear (const std::string &name="", const std::vector< scalar > &coefficients=std::vector< scalar >(), const std::vector< InputVariable * > &inputVariables=std::vector< InputVariable * >())
 
virtual ~Linear ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void set (const std::vector< scalar > &coefficients, const std::vector< InputVariable * > &inputVariables) throw (fl::Exception)
 
virtual void set (const std::vector< scalar > &coefficients, const std::vector< const InputVariable * > &inputVariables) throw (fl::Exception)
 
virtual Linearcopy () const
 
template<typename T >
Linearcreate (const std::string &name, const std::vector< InputVariable * > &inputVariables, T firstCoefficient,...)
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + + + + +

+Static Public Member Functions

template<typename T >
static Linearcreate (const std::string &name, const std::vector< InputVariable * > &inputVariables, T firstCoefficient,...)
 
static Termconstructor ()
 
+ + + + + +

+Public Attributes

std::vector< scalarcoefficients
 
std::vector< const
+InputVariable * > 
inputVariables
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Linear::Linear (const std::string & name = "",
const std::vector< scalar > & coefficients = std::vector<scalar>(),
const std::vector< InputVariable * > & inputVariables = std::vector<InputVariable*>() 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Linear::~Linear ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Linear::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Linear::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Linear::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Linear * fl::Linear::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static Linear* fl::Linear::create (const std::string & name,
const std::vector< InputVariable * > & inputVariables,
firstCoefficient,
 ... 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Linear* fl::Linear::create (const std::string & name,
const std::vector< InputVariable * > & inputVariables,
firstCoefficient,
 ... 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Linear::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Linear::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Linear::set (const std::vector< scalar > & coefficients,
const std::vector< InputVariable * > & inputVariables 
) throw (fl::Exception)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Linear::set (const std::vector< scalar > & coefficients,
const std::vector< const InputVariable * > & inputVariables 
) throw (fl::Exception)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<scalar> fl::Linear::coefficients
+
+ +
+
+ +
+
+ + + + +
std::vector<const InputVariable*> fl::Linear::inputVariables
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Linear.js b/docs/html/classfl_1_1Linear.js new file mode 100644 index 0000000..49c1cfd --- /dev/null +++ b/docs/html/classfl_1_1Linear.js @@ -0,0 +1,17 @@ +var classfl_1_1Linear = +[ + [ "Linear", "classfl_1_1Linear.html#a9aefe07bc50a793ad81d4e302b6486b8", null ], + [ "~Linear", "classfl_1_1Linear.html#a4f7012009a7fb8451811b71246c71dfb", null ], + [ "className", "classfl_1_1Linear.html#aa80366e763e98a80201e8b941c502291", null ], + [ "configure", "classfl_1_1Linear.html#a5c00c0c8a4c20a8a75c161fe3be97497", null ], + [ "constructor", "classfl_1_1Linear.html#a08f34f405942b06b9265fe65b043ae3f", null ], + [ "copy", "classfl_1_1Linear.html#a2b44ce9614e5d983181eb3f0a9ed2a55", null ], + [ "create", "classfl_1_1Linear.html#a4f3bb5a40be78904b5629f2f0aad8c41", null ], + [ "create", "classfl_1_1Linear.html#a1abc4256576543b69ef00a64e47661b4", null ], + [ "membership", "classfl_1_1Linear.html#a0dfcc75d129a7a1e0580fd2937a7bcc2", null ], + [ "parameters", "classfl_1_1Linear.html#afa98a39fca7b8bc7b444e8448882f3e2", null ], + [ "set", "classfl_1_1Linear.html#a062a9df614c8438b5e67d00ff141bb75", null ], + [ "set", "classfl_1_1Linear.html#aa95cffe598a7b14f5cb3a8089d6ae4f5", null ], + [ "coefficients", "classfl_1_1Linear.html#a7867e3422a5f07339246f3bd245ac91b", null ], + [ "inputVariables", "classfl_1_1Linear.html#ac31901027e4e59deadab95327918a976", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Linear__coll__graph.map b/docs/html/classfl_1_1Linear__coll__graph.map new file mode 100644 index 0000000..bb41602 --- /dev/null +++ b/docs/html/classfl_1_1Linear__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/classfl_1_1Linear__coll__graph.md5 b/docs/html/classfl_1_1Linear__coll__graph.md5 new file mode 100644 index 0000000..d8682f1 --- /dev/null +++ b/docs/html/classfl_1_1Linear__coll__graph.md5 @@ -0,0 +1 @@ +664c6de6b49eee8bef5fbf4b7a367a32 \ No newline at end of file diff --git a/docs/html/classfl_1_1Linear__coll__graph.png b/docs/html/classfl_1_1Linear__coll__graph.png new file mode 100644 index 0000000..4d2eada Binary files /dev/null and b/docs/html/classfl_1_1Linear__coll__graph.png differ diff --git a/docs/html/classfl_1_1Linear__inherit__graph.map b/docs/html/classfl_1_1Linear__inherit__graph.map new file mode 100644 index 0000000..96f38b6 --- /dev/null +++ b/docs/html/classfl_1_1Linear__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Linear__inherit__graph.md5 b/docs/html/classfl_1_1Linear__inherit__graph.md5 new file mode 100644 index 0000000..ff047db --- /dev/null +++ b/docs/html/classfl_1_1Linear__inherit__graph.md5 @@ -0,0 +1 @@ +ecacc6a5eabedc53a9b7e8fdcb9b716c \ No newline at end of file diff --git a/docs/html/classfl_1_1Linear__inherit__graph.png b/docs/html/classfl_1_1Linear__inherit__graph.png new file mode 100644 index 0000000..d63a40f Binary files /dev/null and b/docs/html/classfl_1_1Linear__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Maximum-members.html b/docs/html/classfl_1_1Maximum-members.html new file mode 100644 index 0000000..736b830 --- /dev/null +++ b/docs/html/classfl_1_1Maximum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Maximum Member List
+
+
+ +

This is the complete list of members for fl::Maximum, including all inherited members.

+ + + + + + + + +
className() const fl::Maximumvirtual
compute(scalar a, scalar b) const fl::Maximumvirtual
constructor()fl::Maximumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Maximum.html b/docs/html/classfl_1_1Maximum.html new file mode 100644 index 0000000..27016a8 --- /dev/null +++ b/docs/html/classfl_1_1Maximum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::Maximum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Maximum.h>

+
+Inheritance diagram for fl::Maximum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Maximum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Maximum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Maximum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::Maximum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Maximum.js b/docs/html/classfl_1_1Maximum.js new file mode 100644 index 0000000..f8ff4f9 --- /dev/null +++ b/docs/html/classfl_1_1Maximum.js @@ -0,0 +1,6 @@ +var classfl_1_1Maximum = +[ + [ "className", "classfl_1_1Maximum.html#ab07e483cf7d4a42d0b55f0afde7fbb1b", null ], + [ "compute", "classfl_1_1Maximum.html#acb31d24e4ea1c2840145d3c518d1d56a", null ], + [ "constructor", "classfl_1_1Maximum.html#ab6a77d56b0010c61dab9aff6eef8d69e", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Maximum__coll__graph.map b/docs/html/classfl_1_1Maximum__coll__graph.map new file mode 100644 index 0000000..0630142 --- /dev/null +++ b/docs/html/classfl_1_1Maximum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Maximum__coll__graph.md5 b/docs/html/classfl_1_1Maximum__coll__graph.md5 new file mode 100644 index 0000000..08bf628 --- /dev/null +++ b/docs/html/classfl_1_1Maximum__coll__graph.md5 @@ -0,0 +1 @@ +cdf648874f1bbf5509307f5d169b841d \ No newline at end of file diff --git a/docs/html/classfl_1_1Maximum__coll__graph.png b/docs/html/classfl_1_1Maximum__coll__graph.png new file mode 100644 index 0000000..757c124 Binary files /dev/null and b/docs/html/classfl_1_1Maximum__coll__graph.png differ diff --git a/docs/html/classfl_1_1Maximum__inherit__graph.map b/docs/html/classfl_1_1Maximum__inherit__graph.map new file mode 100644 index 0000000..0630142 --- /dev/null +++ b/docs/html/classfl_1_1Maximum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Maximum__inherit__graph.md5 b/docs/html/classfl_1_1Maximum__inherit__graph.md5 new file mode 100644 index 0000000..08bf628 --- /dev/null +++ b/docs/html/classfl_1_1Maximum__inherit__graph.md5 @@ -0,0 +1 @@ +cdf648874f1bbf5509307f5d169b841d \ No newline at end of file diff --git a/docs/html/classfl_1_1Maximum__inherit__graph.png b/docs/html/classfl_1_1Maximum__inherit__graph.png new file mode 100644 index 0000000..757c124 Binary files /dev/null and b/docs/html/classfl_1_1Maximum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1MeanOfMaximum-members.html b/docs/html/classfl_1_1MeanOfMaximum-members.html new file mode 100644 index 0000000..c90f30c --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::MeanOfMaximum Member List
+
+
+ +

This is the complete list of members for fl::MeanOfMaximum, including all inherited members.

+ + + + + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
className() const fl::MeanOfMaximumvirtual
constructor()fl::MeanOfMaximumstatic
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::MeanOfMaximumvirtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
MeanOfMaximum(int resolution=defaultResolution())fl::MeanOfMaximum
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
~MeanOfMaximum()fl::MeanOfMaximumvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1MeanOfMaximum.html b/docs/html/classfl_1_1MeanOfMaximum.html new file mode 100644 index 0000000..6184220 --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum.html @@ -0,0 +1,320 @@ + + + + + + +fuzzylite: fl::MeanOfMaximum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::MeanOfMaximum Class Reference
+
+
+ +

#include <MeanOfMaximum.h>

+
+Inheritance diagram for fl::MeanOfMaximum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::MeanOfMaximum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 MeanOfMaximum (int resolution=defaultResolution())
 
virtual ~MeanOfMaximum ()
 
virtual std::string className () const
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::IntegralDefuzzifier
 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + + + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
- Static Public Member Functions inherited from fl::IntegralDefuzzifier
static int defaultResolution ()
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::IntegralDefuzzifier
int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::MeanOfMaximum::MeanOfMaximum (int resolution = defaultResolution())
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::MeanOfMaximum::~MeanOfMaximum ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::MeanOfMaximum::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::MeanOfMaximum::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::MeanOfMaximum::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1MeanOfMaximum.js b/docs/html/classfl_1_1MeanOfMaximum.js new file mode 100644 index 0000000..72b6e1f --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum.js @@ -0,0 +1,8 @@ +var classfl_1_1MeanOfMaximum = +[ + [ "MeanOfMaximum", "classfl_1_1MeanOfMaximum.html#a550b5af2c02d13cf7f520892eed5a192", null ], + [ "~MeanOfMaximum", "classfl_1_1MeanOfMaximum.html#a8831f3fc9884f33c119892f0c6383f51", null ], + [ "className", "classfl_1_1MeanOfMaximum.html#a6e37a3a564519a75f345cac5ae31f4af", null ], + [ "constructor", "classfl_1_1MeanOfMaximum.html#aac3c40bd6b4e4fbe0c568f45cc2b6c23", null ], + [ "defuzzify", "classfl_1_1MeanOfMaximum.html#a16bcac98f46e237a557299adf7bd4803", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1MeanOfMaximum__coll__graph.map b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.map new file mode 100644 index 0000000..8479461 --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1MeanOfMaximum__coll__graph.md5 b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.md5 new file mode 100644 index 0000000..5df4f65 --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.md5 @@ -0,0 +1 @@ +3b2ca7c30ff29dc5e8fa325e01b03e33 \ No newline at end of file diff --git a/docs/html/classfl_1_1MeanOfMaximum__coll__graph.png b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.png new file mode 100644 index 0000000..fed7fd9 Binary files /dev/null and b/docs/html/classfl_1_1MeanOfMaximum__coll__graph.png differ diff --git a/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.map b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.map new file mode 100644 index 0000000..8479461 --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.md5 b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.md5 new file mode 100644 index 0000000..5df4f65 --- /dev/null +++ b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.md5 @@ -0,0 +1 @@ +3b2ca7c30ff29dc5e8fa325e01b03e33 \ No newline at end of file diff --git a/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.png b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.png new file mode 100644 index 0000000..fed7fd9 Binary files /dev/null and b/docs/html/classfl_1_1MeanOfMaximum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Minimum-members.html b/docs/html/classfl_1_1Minimum-members.html new file mode 100644 index 0000000..3ba1a66 --- /dev/null +++ b/docs/html/classfl_1_1Minimum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Minimum Member List
+
+
+ +

This is the complete list of members for fl::Minimum, including all inherited members.

+ + + + + + + + +
className() const fl::Minimumvirtual
compute(scalar a, scalar b) const fl::Minimumvirtual
constructor()fl::Minimumstatic
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Minimum.html b/docs/html/classfl_1_1Minimum.html new file mode 100644 index 0000000..d99a03f --- /dev/null +++ b/docs/html/classfl_1_1Minimum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::Minimum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Minimum.h>

+
+Inheritance diagram for fl::Minimum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Minimum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::TNorm
 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static TNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Minimum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Minimum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
TNorm * fl::Minimum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Minimum.js b/docs/html/classfl_1_1Minimum.js new file mode 100644 index 0000000..c46bff1 --- /dev/null +++ b/docs/html/classfl_1_1Minimum.js @@ -0,0 +1,6 @@ +var classfl_1_1Minimum = +[ + [ "className", "classfl_1_1Minimum.html#aaadf3d67f63d3af4aacb6c889027f041", null ], + [ "compute", "classfl_1_1Minimum.html#a904a65beab278e3a089faf7204a3aa1e", null ], + [ "constructor", "classfl_1_1Minimum.html#afe8e6b8aeb6276acd1de8ff123448db9", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Minimum__coll__graph.map b/docs/html/classfl_1_1Minimum__coll__graph.map new file mode 100644 index 0000000..1687e4c --- /dev/null +++ b/docs/html/classfl_1_1Minimum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Minimum__coll__graph.md5 b/docs/html/classfl_1_1Minimum__coll__graph.md5 new file mode 100644 index 0000000..3976dbb --- /dev/null +++ b/docs/html/classfl_1_1Minimum__coll__graph.md5 @@ -0,0 +1 @@ +db2f88352fa59aed39abfa39d633a102 \ No newline at end of file diff --git a/docs/html/classfl_1_1Minimum__coll__graph.png b/docs/html/classfl_1_1Minimum__coll__graph.png new file mode 100644 index 0000000..9d1a46b Binary files /dev/null and b/docs/html/classfl_1_1Minimum__coll__graph.png differ diff --git a/docs/html/classfl_1_1Minimum__inherit__graph.map b/docs/html/classfl_1_1Minimum__inherit__graph.map new file mode 100644 index 0000000..1687e4c --- /dev/null +++ b/docs/html/classfl_1_1Minimum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Minimum__inherit__graph.md5 b/docs/html/classfl_1_1Minimum__inherit__graph.md5 new file mode 100644 index 0000000..3976dbb --- /dev/null +++ b/docs/html/classfl_1_1Minimum__inherit__graph.md5 @@ -0,0 +1 @@ +db2f88352fa59aed39abfa39d633a102 \ No newline at end of file diff --git a/docs/html/classfl_1_1Minimum__inherit__graph.png b/docs/html/classfl_1_1Minimum__inherit__graph.png new file mode 100644 index 0000000..9d1a46b Binary files /dev/null and b/docs/html/classfl_1_1Minimum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Norm-members.html b/docs/html/classfl_1_1Norm-members.html new file mode 100644 index 0000000..d7b01c4 --- /dev/null +++ b/docs/html/classfl_1_1Norm-members.html @@ -0,0 +1,131 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Norm Member List
+
+
+ +

This is the complete list of members for fl::Norm, including all inherited members.

+ + + + + +
className() const =0fl::Normpure virtual
compute(scalar a, scalar b) const =0fl::Normpure virtual
Norm()fl::Norminline
~Norm()fl::Norminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Norm.html b/docs/html/classfl_1_1Norm.html new file mode 100644 index 0000000..2aacdc5 --- /dev/null +++ b/docs/html/classfl_1_1Norm.html @@ -0,0 +1,268 @@ + + + + + + +fuzzylite: fl::Norm Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Norm Class Referenceabstract
+
+
+ +

#include <Norm.h>

+
+Inheritance diagram for fl::Norm:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Norm:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + +

+Public Member Functions

 Norm ()
 
virtual ~Norm ()
 
virtual std::string className () const =0
 
virtual scalar compute (scalar a, scalar b) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::Norm::Norm ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::Norm::~Norm ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Norm::className () const
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual scalar fl::Norm::compute (scalar a,
scalar b 
) const
+
+pure virtual
+
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1Norm.js b/docs/html/classfl_1_1Norm.js new file mode 100644 index 0000000..41aa666 --- /dev/null +++ b/docs/html/classfl_1_1Norm.js @@ -0,0 +1,7 @@ +var classfl_1_1Norm = +[ + [ "Norm", "classfl_1_1Norm.html#a037d23877edd010bcbf267772df56b67", null ], + [ "~Norm", "classfl_1_1Norm.html#a481057fe48f921bcba97d0bc51846089", null ], + [ "className", "classfl_1_1Norm.html#a65614aa0776f7f9dab701cc3eac1b025", null ], + [ "compute", "classfl_1_1Norm.html#a46fdc326f3a2cddece49dc1f26dd969a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Norm__coll__graph.map b/docs/html/classfl_1_1Norm__coll__graph.map new file mode 100644 index 0000000..22b7622 --- /dev/null +++ b/docs/html/classfl_1_1Norm__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Norm__coll__graph.md5 b/docs/html/classfl_1_1Norm__coll__graph.md5 new file mode 100644 index 0000000..053abb2 --- /dev/null +++ b/docs/html/classfl_1_1Norm__coll__graph.md5 @@ -0,0 +1 @@ +7a22f2ce8a08de6778825450d23a1e5b \ No newline at end of file diff --git a/docs/html/classfl_1_1Norm__coll__graph.png b/docs/html/classfl_1_1Norm__coll__graph.png new file mode 100644 index 0000000..de245cf Binary files /dev/null and b/docs/html/classfl_1_1Norm__coll__graph.png differ diff --git a/docs/html/classfl_1_1Norm__inherit__graph.map b/docs/html/classfl_1_1Norm__inherit__graph.map new file mode 100644 index 0000000..a00da64 --- /dev/null +++ b/docs/html/classfl_1_1Norm__inherit__graph.map @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1Norm__inherit__graph.md5 b/docs/html/classfl_1_1Norm__inherit__graph.md5 new file mode 100644 index 0000000..4c36451 --- /dev/null +++ b/docs/html/classfl_1_1Norm__inherit__graph.md5 @@ -0,0 +1 @@ +f396679fb906c5356eb5b051029e9c63 \ No newline at end of file diff --git a/docs/html/classfl_1_1Norm__inherit__graph.png b/docs/html/classfl_1_1Norm__inherit__graph.png new file mode 100644 index 0000000..437a151 Binary files /dev/null and b/docs/html/classfl_1_1Norm__inherit__graph.png differ diff --git a/docs/html/classfl_1_1NormalizedSum-members.html b/docs/html/classfl_1_1NormalizedSum-members.html new file mode 100644 index 0000000..a60c03c --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::NormalizedSum Member List
+
+
+ +

This is the complete list of members for fl::NormalizedSum, including all inherited members.

+ + + + + + + + +
className() const fl::NormalizedSumvirtual
compute(scalar a, scalar b) const fl::NormalizedSumvirtual
constructor()fl::NormalizedSumstatic
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1NormalizedSum.html b/docs/html/classfl_1_1NormalizedSum.html new file mode 100644 index 0000000..1019890 --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum.html @@ -0,0 +1,257 @@ + + + + + + +fuzzylite: fl::NormalizedSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::NormalizedSum Class Reference
+
+
+ +

#include <NormalizedSum.h>

+
+Inheritance diagram for fl::NormalizedSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::NormalizedSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

std::string className () const
 
scalar compute (scalar a, scalar b) const
 
- Public Member Functions inherited from fl::SNorm
 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
+ + + +

+Static Public Member Functions

static SNormconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::NormalizedSum::className () const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::NormalizedSum::compute (scalar a,
scalar b 
) const
+
+virtual
+
+ +

Implements fl::Norm.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SNorm * fl::NormalizedSum::constructor ()
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1NormalizedSum.js b/docs/html/classfl_1_1NormalizedSum.js new file mode 100644 index 0000000..d0429ed --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum.js @@ -0,0 +1,6 @@ +var classfl_1_1NormalizedSum = +[ + [ "className", "classfl_1_1NormalizedSum.html#acca8ee239c9be60ba1ab618cf5b1b291", null ], + [ "compute", "classfl_1_1NormalizedSum.html#a35feeeb1815ccd77968ce7668021bc81", null ], + [ "constructor", "classfl_1_1NormalizedSum.html#a914dc1469e8551fb007e6a9ebc2ead25", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1NormalizedSum__coll__graph.map b/docs/html/classfl_1_1NormalizedSum__coll__graph.map new file mode 100644 index 0000000..5f6244d --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1NormalizedSum__coll__graph.md5 b/docs/html/classfl_1_1NormalizedSum__coll__graph.md5 new file mode 100644 index 0000000..a2bbd43 --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum__coll__graph.md5 @@ -0,0 +1 @@ +3e65a502197204137b784f052b23daaa \ No newline at end of file diff --git a/docs/html/classfl_1_1NormalizedSum__coll__graph.png b/docs/html/classfl_1_1NormalizedSum__coll__graph.png new file mode 100644 index 0000000..fbbf06c Binary files /dev/null and b/docs/html/classfl_1_1NormalizedSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1NormalizedSum__inherit__graph.map b/docs/html/classfl_1_1NormalizedSum__inherit__graph.map new file mode 100644 index 0000000..5f6244d --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1NormalizedSum__inherit__graph.md5 b/docs/html/classfl_1_1NormalizedSum__inherit__graph.md5 new file mode 100644 index 0000000..a2bbd43 --- /dev/null +++ b/docs/html/classfl_1_1NormalizedSum__inherit__graph.md5 @@ -0,0 +1 @@ +3e65a502197204137b784f052b23daaa \ No newline at end of file diff --git a/docs/html/classfl_1_1NormalizedSum__inherit__graph.png b/docs/html/classfl_1_1NormalizedSum__inherit__graph.png new file mode 100644 index 0000000..fbbf06c Binary files /dev/null and b/docs/html/classfl_1_1NormalizedSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Not-members.html b/docs/html/classfl_1_1Not-members.html new file mode 100644 index 0000000..a89367b --- /dev/null +++ b/docs/html/classfl_1_1Not-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Not Member List
+
+
+ +

This is the complete list of members for fl::Not, including all inherited members.

+ + + + + + +
constructor()fl::Notstatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Notvirtual
name() const fl::Notvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Not.html b/docs/html/classfl_1_1Not.html new file mode 100644 index 0000000..1648874 --- /dev/null +++ b/docs/html/classfl_1_1Not.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Not Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Not.h>

+
+Inheritance diagram for fl::Not:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Not:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Not::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Not::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Not::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Not.js b/docs/html/classfl_1_1Not.js new file mode 100644 index 0000000..2ee1011 --- /dev/null +++ b/docs/html/classfl_1_1Not.js @@ -0,0 +1,6 @@ +var classfl_1_1Not = +[ + [ "constructor", "classfl_1_1Not.html#ae75fb1d44510bfd4338228dbbd773f0d", null ], + [ "hedge", "classfl_1_1Not.html#a8abf3c49d780b093da7614c47c70bd63", null ], + [ "name", "classfl_1_1Not.html#a396267c88a293a6e1e0fb6a71a529f3f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Not__coll__graph.map b/docs/html/classfl_1_1Not__coll__graph.map new file mode 100644 index 0000000..b1e9a43 --- /dev/null +++ b/docs/html/classfl_1_1Not__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Not__coll__graph.md5 b/docs/html/classfl_1_1Not__coll__graph.md5 new file mode 100644 index 0000000..198b68d --- /dev/null +++ b/docs/html/classfl_1_1Not__coll__graph.md5 @@ -0,0 +1 @@ +f5e55541ece328a0a5cc1a42c7ff221f \ No newline at end of file diff --git a/docs/html/classfl_1_1Not__coll__graph.png b/docs/html/classfl_1_1Not__coll__graph.png new file mode 100644 index 0000000..889f8e9 Binary files /dev/null and b/docs/html/classfl_1_1Not__coll__graph.png differ diff --git a/docs/html/classfl_1_1Not__inherit__graph.map b/docs/html/classfl_1_1Not__inherit__graph.map new file mode 100644 index 0000000..b1e9a43 --- /dev/null +++ b/docs/html/classfl_1_1Not__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Not__inherit__graph.md5 b/docs/html/classfl_1_1Not__inherit__graph.md5 new file mode 100644 index 0000000..198b68d --- /dev/null +++ b/docs/html/classfl_1_1Not__inherit__graph.md5 @@ -0,0 +1 @@ +f5e55541ece328a0a5cc1a42c7ff221f \ No newline at end of file diff --git a/docs/html/classfl_1_1Not__inherit__graph.png b/docs/html/classfl_1_1Not__inherit__graph.png new file mode 100644 index 0000000..889f8e9 Binary files /dev/null and b/docs/html/classfl_1_1Not__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Operation-members.html b/docs/html/classfl_1_1Operation-members.html new file mode 100644 index 0000000..1f95843 --- /dev/null +++ b/docs/html/classfl_1_1Operation-members.html @@ -0,0 +1,169 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Operation Member List
+
+
+ +

This is the complete list of members for fl::Operation, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
add(scalar a, scalar b)fl::Operationstatic
divide(scalar a, scalar b)fl::Operationstatic
findReplace(const std::string &str, const std::string &find, const std::string &replace, bool replaceAll=true)fl::Operationstatic
format(const std::string &text, int matchesChar(int), const std::string &replacement="")fl::Operationstatic
increment(std::vector< int > &x, std::vector< int > &min, std::vector< int > &max)fl::Operationstatic
increment(std::vector< int > &x, int position, std::vector< int > &min, std::vector< int > &max)fl::Operationstatic
isEq(scalar a, scalar b, scalar macheps=fuzzylite::macheps())fl::Operationstatic
isGE(scalar a, scalar b, scalar macheps=fuzzylite::macheps())fl::Operationstatic
isGt(scalar a, scalar b, scalar macheps=fuzzylite::macheps())fl::Operationstatic
isInf(T x)fl::Operationstatic
isInf(T x)fl::Operation
isLE(scalar a, scalar b, scalar macheps=fuzzylite::macheps())fl::Operationstatic
isLt(scalar a, scalar b, scalar macheps=fuzzylite::macheps())fl::Operationstatic
isNan(T x)fl::Operationstatic
isNan(T x)fl::Operation
isNumeric(const std::string &x)fl::Operationstatic
isValidForName(int character)fl::Operationstatic
join(const std::vector< T > &x, const std::string &separator=", ")fl::Operationstatic
join(int items, const std::string &separator, T first,...)fl::Operationstatic
join(const std::vector< T > &x, const std::string &separator)fl::Operation
join(const std::vector< std::string > &x, const std::string &separator)fl::Operation
join(int items, const std::string &separator, T first,...)fl::Operation
join(int items, const std::string &separator, const char *first,...)fl::Operation
logicalAnd(scalar a, scalar b)fl::Operationstatic
logicalOr(scalar a, scalar b)fl::Operationstatic
makeValidId(const std::string &name)fl::Operationstatic
max(T a, T b)fl::Operationstatic
max(T a, T b)fl::Operation
min(T a, T b)fl::Operationstatic
min(T a, T b)fl::Operation
modulo(scalar a, scalar b)fl::Operationstatic
multiply(scalar a, scalar b)fl::Operationstatic
negate(scalar a)fl::Operationstatic
repeat(const std::string &x, int times, const std::string &sep="")fl::Operationstatic
scale(scalar x, scalar fromMin, scalar fromMax, scalar toMin, scalar toMax)fl::Operationstatic
split(const std::string &str, const std::string &delimiter=" ", bool ignoreEmpty=true)fl::Operationstatic
str(T x, int decimals=fuzzylite::decimals())fl::Operationstatic
str(T x, int decimals)fl::Operation
str(const std::string &x, int precision)fl::Operation
subtract(scalar a, scalar b)fl::Operationstatic
toScalar(const std::string &x, bool quiet=false, scalar alternative=fl::nan)fl::Operationstatic
trim(const std::string &text)fl::Operationstatic
+
+ + + + diff --git a/docs/html/classfl_1_1Operation.html b/docs/html/classfl_1_1Operation.html new file mode 100644 index 0000000..92d1be4 --- /dev/null +++ b/docs/html/classfl_1_1Operation.html @@ -0,0 +1,1681 @@ + + + + + + +fuzzylite: fl::Operation Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Operation.h>

+
+Collaboration diagram for fl::Operation:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

template<typename T >
min (T a, T b)
 
template<typename T >
max (T a, T b)
 
template<typename T >
bool isInf (T x)
 
template<typename T >
bool isNan (T x)
 
template<typename T >
std::string str (T x, int decimals)
 
template<>
FL_EXPORT std::string str (const std::string &x, int precision)
 
template<typename T >
std::string join (const std::vector< T > &x, const std::string &separator)
 
template<>
FL_EXPORT std::string join (const std::vector< std::string > &x, const std::string &separator)
 
template<typename T >
std::string join (int items, const std::string &separator, T first,...)
 
template<>
FL_EXPORT std::string join (int items, const std::string &separator, const char *first,...)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

template<typename T >
static T min (T a, T b)
 
template<typename T >
static T max (T a, T b)
 
template<typename T >
static bool isInf (T x)
 
template<typename T >
static bool isNan (T x)
 
static bool isLt (scalar a, scalar b, scalar macheps=fuzzylite::macheps())
 
static bool isLE (scalar a, scalar b, scalar macheps=fuzzylite::macheps())
 
static bool isEq (scalar a, scalar b, scalar macheps=fuzzylite::macheps())
 
static bool isGt (scalar a, scalar b, scalar macheps=fuzzylite::macheps())
 
static bool isGE (scalar a, scalar b, scalar macheps=fuzzylite::macheps())
 
static scalar scale (scalar x, scalar fromMin, scalar fromMax, scalar toMin, scalar toMax)
 
static scalar add (scalar a, scalar b)
 
static scalar subtract (scalar a, scalar b)
 
static scalar multiply (scalar a, scalar b)
 
static scalar divide (scalar a, scalar b)
 
static scalar modulo (scalar a, scalar b)
 
static scalar logicalAnd (scalar a, scalar b)
 
static scalar logicalOr (scalar a, scalar b)
 
static scalar negate (scalar a)
 
static bool increment (std::vector< int > &x, std::vector< int > &min, std::vector< int > &max)
 
static bool increment (std::vector< int > &x, int position, std::vector< int > &min, std::vector< int > &max)
 
static std::string makeValidId (const std::string &name)
 
static int isValidForName (int character)
 
static std::string findReplace (const std::string &str, const std::string &find, const std::string &replace, bool replaceAll=true)
 
static std::vector< std::string > split (const std::string &str, const std::string &delimiter=" ", bool ignoreEmpty=true)
 
static std::string trim (const std::string &text)
 
static std::string format (const std::string &text, int matchesChar(int), const std::string &replacement="")
 
static scalar toScalar (const std::string &x, bool quiet=false, scalar alternative=fl::nan) throw (fl::Exception)
 
static bool isNumeric (const std::string &x)
 
static std::string repeat (const std::string &x, int times, const std::string &sep="")
 
template<typename T >
static std::string str (T x, int decimals=fuzzylite::decimals())
 
template<typename T >
static std::string join (const std::vector< T > &x, const std::string &separator=", ")
 
template<typename T >
static std::string join (int items, const std::string &separator, T first,...)
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::add (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::divide (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
std::string fl::Operation::findReplace (const std::string & str,
const std::string & find,
const std::string & replace,
bool replaceAll = true 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::string fl::Operation::format (const std::string & text,
int  matchesCharint,
const std::string & replacement = "" 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::increment (std::vector< int > & x,
std::vector< int > & min,
std::vector< int > & max 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::increment (std::vector< int > & x,
int position,
std::vector< int > & min,
std::vector< int > & max 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::isEq (scalar a,
scalar b,
scalar macheps = fuzzylite::macheps() 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::isGE (scalar a,
scalar b,
scalar macheps = fuzzylite::macheps() 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::isGt (scalar a,
scalar b,
scalar macheps = fuzzylite::macheps() 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
bool fl::Operation::isInf (x)
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static bool fl::Operation::isInf (x)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::isLE (scalar a,
scalar b,
scalar macheps = fuzzylite::macheps() 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool fl::Operation::isLt (scalar a,
scalar b,
scalar macheps = fuzzylite::macheps() 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static bool fl::Operation::isNan (x)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
bool fl::Operation::isNan (x)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Operation::isNumeric (const std::string & x)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int fl::Operation::isValidForName (int character)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static std::string fl::Operation::join (const std::vector< T > & x,
const std::string & separator = ", " 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::string fl::Operation::join (int items,
const std::string & separator,
first,
 ... 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
std::string fl::Operation::join (const std::vector< T > & x,
const std::string & separator 
)
+
+ +
+
+ +
+
+
+template<>
+ + + + + + + + + + + + + + + + + + +
FL_EXPORT std::string fl::Operation::join (const std::vector< std::string > & x,
const std::string & separator 
)
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
std::string fl::Operation::join (int items,
const std::string & separator,
first,
 ... 
)
+
+ +
+
+ +
+
+
+template<>
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FL_EXPORT std::string fl::Operation::join (int items,
const std::string & separator,
const char * first,
 ... 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::logicalAnd (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::logicalOr (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Operation::makeValidId (const std::string & name)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
T fl::Operation::max (a,
b 
)
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static T fl::Operation::max (a,
b 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
T fl::Operation::min (a,
b 
)
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static T fl::Operation::min (a,
b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::modulo (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::multiply (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Operation::negate (scalar a)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::string fl::Operation::repeat (const std::string & x,
int times,
const std::string & sep = "" 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Operation::scale (scalar x,
scalar fromMin,
scalar fromMax,
scalar toMin,
scalar toMax 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::vector< std::string > fl::Operation::split (const std::string & str,
const std::string & delimiter = " ",
bool ignoreEmpty = true 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static std::string fl::Operation::str (x,
int decimals = fuzzylite::decimals() 
)
+
+static
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
std::string fl::Operation::str (x,
int decimals 
)
+
+ +
+
+ +
+
+
+template<>
+ + + + + + + + + + + + + + + + + + +
FL_EXPORT std::string fl::Operation::str (const std::string & x,
int precision 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Operation::subtract (scalar a,
scalar b 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Operation::toScalar (const std::string & x,
bool quiet = false,
scalar alternative = fl::nan 
) throw (fl::Exception)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Operation::trim (const std::string & text)
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Operation.js b/docs/html/classfl_1_1Operation.js new file mode 100644 index 0000000..bfc3a82 --- /dev/null +++ b/docs/html/classfl_1_1Operation.js @@ -0,0 +1,45 @@ +var classfl_1_1Operation = +[ + [ "add", "classfl_1_1Operation.html#a7b850cc7676978e71fae37040008903b", null ], + [ "divide", "classfl_1_1Operation.html#a2684ad6ae0b3ddda245ab58b706c6b8f", null ], + [ "findReplace", "classfl_1_1Operation.html#a7c6bb139fc09adb0c9bfe0929c75c7ff", null ], + [ "format", "classfl_1_1Operation.html#adf97aff3b12b6755a9f77c9299868cb2", null ], + [ "increment", "classfl_1_1Operation.html#a60c60482b67760369150130596fe5331", null ], + [ "increment", "classfl_1_1Operation.html#a2d55752e3bf2f6bf8bc48b3d22a2f506", null ], + [ "isEq", "classfl_1_1Operation.html#a3bd473932d3b8353e40af877c467b324", null ], + [ "isGE", "classfl_1_1Operation.html#ad781d21609ff3e063257d94304418283", null ], + [ "isGt", "classfl_1_1Operation.html#afa219e0326d298b15c92f732c591ceaa", null ], + [ "isInf", "classfl_1_1Operation.html#a0a221a37f9320e0994e1d9aee4af9fec", null ], + [ "isInf", "classfl_1_1Operation.html#ac0877e14c96f64e9230ca8d0ed0fa9eb", null ], + [ "isLE", "classfl_1_1Operation.html#a05320a82f0759c66c85bf2f1470753ef", null ], + [ "isLt", "classfl_1_1Operation.html#a26398c2a7adf50032bdd6a1758988175", null ], + [ "isNan", "classfl_1_1Operation.html#a1cf6a6acc56ba71d35a2cd766c095243", null ], + [ "isNan", "classfl_1_1Operation.html#af90151331ed26fad1b39f3a989040f1a", null ], + [ "isNumeric", "classfl_1_1Operation.html#a33778a1ae2ccbe4f1187737dfdb5556f", null ], + [ "isValidForName", "classfl_1_1Operation.html#a62eaeb9a80c982e70c2e1397b79c0beb", null ], + [ "join", "classfl_1_1Operation.html#a9946abbfa68ed8ee889532a96af71957", null ], + [ "join", "classfl_1_1Operation.html#a1103130aed65ace38a366c50ae2e7dad", null ], + [ "join", "classfl_1_1Operation.html#a6d59606686bb29794d3811004934d5e7", null ], + [ "join", "classfl_1_1Operation.html#a74d7e8bc4a4be3c2f7e7474e0d69f7eb", null ], + [ "join", "classfl_1_1Operation.html#a8fdf0a07a29557ed149271a7f02b5524", null ], + [ "join", "classfl_1_1Operation.html#a6c988814edbd4dc11ea8f1d81ecbc249", null ], + [ "logicalAnd", "classfl_1_1Operation.html#a00a16cb50581466396239084567a69d9", null ], + [ "logicalOr", "classfl_1_1Operation.html#afbeb97277d6491ed88fe680633a64e15", null ], + [ "makeValidId", "classfl_1_1Operation.html#a51e639fd4862ad97169f0638c9257bbb", null ], + [ "max", "classfl_1_1Operation.html#a8626d08eb181ed5a36acf703d9a2baba", null ], + [ "max", "classfl_1_1Operation.html#a3fd742ebe803b311b3dc3c0db2fe82ae", null ], + [ "min", "classfl_1_1Operation.html#ad717f0ee307b2423a6859c6df7757d74", null ], + [ "min", "classfl_1_1Operation.html#a1e3b19ecb5599aaef117962f5a98ddac", null ], + [ "modulo", "classfl_1_1Operation.html#ad38f4063108778da509a9d4e6ff86ba8", null ], + [ "multiply", "classfl_1_1Operation.html#a1bea3d159125f8c193329bec0333df48", null ], + [ "negate", "classfl_1_1Operation.html#a0e6c4231f378126709c3525973bea54e", null ], + [ "repeat", "classfl_1_1Operation.html#a68bc7cb26cc0ef3f21643e628d5f5fc5", null ], + [ "scale", "classfl_1_1Operation.html#a5bfb04163bcf6cdb7859f0f4a8bb9fd5", null ], + [ "split", "classfl_1_1Operation.html#aa3889ff75f5738822785d237d6390a6a", null ], + [ "str", "classfl_1_1Operation.html#a24a8b09a91b15766261d2929125d8069", null ], + [ "str", "classfl_1_1Operation.html#aae38b451d0206cdd3d5e8ae6632a69cf", null ], + [ "str", "classfl_1_1Operation.html#a3a9ae8d5c79846d8ea7efef9242990e0", null ], + [ "subtract", "classfl_1_1Operation.html#a013681c3803db34e8ea86e23d31659a7", null ], + [ "toScalar", "classfl_1_1Operation.html#a0a61cdee4e1d67889fb8614ded1af1d4", null ], + [ "trim", "classfl_1_1Operation.html#a9d43cae361f3ad708316caec6c35ba17", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Operation__coll__graph.map b/docs/html/classfl_1_1Operation__coll__graph.map new file mode 100644 index 0000000..b1f969d --- /dev/null +++ b/docs/html/classfl_1_1Operation__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Operation__coll__graph.md5 b/docs/html/classfl_1_1Operation__coll__graph.md5 new file mode 100644 index 0000000..c30c10f --- /dev/null +++ b/docs/html/classfl_1_1Operation__coll__graph.md5 @@ -0,0 +1 @@ +540fb4531c7ad86847da8b90c7f4ba6f \ No newline at end of file diff --git a/docs/html/classfl_1_1Operation__coll__graph.png b/docs/html/classfl_1_1Operation__coll__graph.png new file mode 100644 index 0000000..bc85244 Binary files /dev/null and b/docs/html/classfl_1_1Operation__coll__graph.png differ diff --git a/docs/html/classfl_1_1Operator-members.html b/docs/html/classfl_1_1Operator-members.html new file mode 100644 index 0000000..30827a5 --- /dev/null +++ b/docs/html/classfl_1_1Operator-members.html @@ -0,0 +1,136 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Operator Member List
+
+
+ +

This is the complete list of members for fl::Operator, including all inherited members.

+ + + + + + + + + + +
Expression(bool isOperator)fl::Expression
isOperatorfl::Expression
leftfl::Operator
namefl::Operator
Operator()fl::Operator
rightfl::Operator
toString() const fl::Operatorvirtual
~Expression()fl::Expressionvirtual
~Operator()fl::Operator
+
+ + + + diff --git a/docs/html/classfl_1_1Operator.html b/docs/html/classfl_1_1Operator.html new file mode 100644 index 0000000..ac88080 --- /dev/null +++ b/docs/html/classfl_1_1Operator.html @@ -0,0 +1,270 @@ + + + + + + +fuzzylite: fl::Operator Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Operator Class Reference
+
+
+ +

#include <Expression.h>

+
+Inheritance diagram for fl::Operator:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Operator:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + +

+Public Member Functions

 Operator ()
 
 ~Operator ()
 
std::string toString () const
 
- Public Member Functions inherited from fl::Expression
 Expression (bool isOperator)
 
virtual ~Expression ()
 
+ + + + + + + + + + +

+Public Attributes

std::string name
 
Expressionleft
 
Expressionright
 
- Public Attributes inherited from fl::Expression
bool isOperator
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::Operator::Operator ()
+
+ +
+
+ +
+
+ + + + + + + +
fl::Operator::~Operator ()
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Operator::toString () const
+
+virtual
+
+ +

Implements fl::Expression.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Expression* fl::Operator::left
+
+ +
+
+ +
+
+ + + + +
std::string fl::Operator::name
+
+ +
+
+ +
+
+ + + + +
Expression* fl::Operator::right
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Operator.js b/docs/html/classfl_1_1Operator.js new file mode 100644 index 0000000..003a073 --- /dev/null +++ b/docs/html/classfl_1_1Operator.js @@ -0,0 +1,9 @@ +var classfl_1_1Operator = +[ + [ "Operator", "classfl_1_1Operator.html#a3f3fa3ae5a2efe92e5de7dd8c65656a7", null ], + [ "~Operator", "classfl_1_1Operator.html#a33bb5d7430a9cf054c42f6c62e9ab03b", null ], + [ "toString", "classfl_1_1Operator.html#a324bf32a265ad994f839da41399d44d4", null ], + [ "left", "classfl_1_1Operator.html#aa9eea842958312649f58e0c415a6aaca", null ], + [ "name", "classfl_1_1Operator.html#a6f34cbf29f81626d61ebfbcee491d2af", null ], + [ "right", "classfl_1_1Operator.html#a2d3a4c691493018eb8d1807eca99b414", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Operator__coll__graph.map b/docs/html/classfl_1_1Operator__coll__graph.map new file mode 100644 index 0000000..9972b6c --- /dev/null +++ b/docs/html/classfl_1_1Operator__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Operator__coll__graph.md5 b/docs/html/classfl_1_1Operator__coll__graph.md5 new file mode 100644 index 0000000..a73eee8 --- /dev/null +++ b/docs/html/classfl_1_1Operator__coll__graph.md5 @@ -0,0 +1 @@ +c2a620a9a246e92b871b944502a36cef \ No newline at end of file diff --git a/docs/html/classfl_1_1Operator__coll__graph.png b/docs/html/classfl_1_1Operator__coll__graph.png new file mode 100644 index 0000000..32a141f Binary files /dev/null and b/docs/html/classfl_1_1Operator__coll__graph.png differ diff --git a/docs/html/classfl_1_1Operator__inherit__graph.map b/docs/html/classfl_1_1Operator__inherit__graph.map new file mode 100644 index 0000000..3cd902e --- /dev/null +++ b/docs/html/classfl_1_1Operator__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Operator__inherit__graph.md5 b/docs/html/classfl_1_1Operator__inherit__graph.md5 new file mode 100644 index 0000000..404cca8 --- /dev/null +++ b/docs/html/classfl_1_1Operator__inherit__graph.md5 @@ -0,0 +1 @@ +85d7c56af05922b923a769b976b7a164 \ No newline at end of file diff --git a/docs/html/classfl_1_1Operator__inherit__graph.png b/docs/html/classfl_1_1Operator__inherit__graph.png new file mode 100644 index 0000000..87c36a9 Binary files /dev/null and b/docs/html/classfl_1_1Operator__inherit__graph.png differ diff --git a/docs/html/classfl_1_1OutputVariable-members.html b/docs/html/classfl_1_1OutputVariable-members.html new file mode 100644 index 0000000..b563e43 --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable-members.html @@ -0,0 +1,178 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::OutputVariable Member List
+
+
+ +

This is the complete list of members for fl::OutputVariable, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_defaultValuefl::OutputVariableprotected
_defuzzifierfl::OutputVariableprotected
_enabledfl::Variableprotected
_fuzzyOutputfl::OutputVariableprotected
_lastValidOutputfl::OutputVariableprotected
_lockOutputRangefl::OutputVariableprotected
_lockValidOutputfl::OutputVariableprotected
_maximumfl::Variableprotected
_minimumfl::Variableprotected
_namefl::Variableprotected
_termsfl::Variableprotected
addTerm(Term *term)fl::Variablevirtual
defuzzify()fl::OutputVariablevirtual
defuzzifyNoLocks() const fl::OutputVariablevirtual
fuzzify(scalar x) const fl::Variablevirtual
fuzzyOutput() const fl::OutputVariablevirtual
getDefaultValue() const fl::OutputVariablevirtual
getDefuzzifier() const fl::OutputVariablevirtual
getLastValidOutput() const fl::OutputVariablevirtual
getMaximum() const fl::Variablevirtual
getMinimum() const fl::Variablevirtual
getName() const fl::Variablevirtual
getTerm(int index) const fl::Variablevirtual
getTerm(const std::string &name) const fl::Variablevirtual
hasTerm(const std::string &name) const fl::Variablevirtual
highestMembership(scalar x, scalar *yhighest=NULL) const fl::Variablevirtual
insertTerm(Term *term, int index)fl::Variablevirtual
isEnabled() const fl::Variablevirtual
isLockingOutputRange() const fl::OutputVariablevirtual
isLockingValidOutput() const fl::OutputVariablevirtual
numberOfTerms() const fl::Variablevirtual
OutputVariable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)fl::OutputVariable
range() const fl::Variablevirtual
removeTerm(int index)fl::Variablevirtual
setDefaultValue(scalar defaultValue)fl::OutputVariablevirtual
setDefuzzifier(Defuzzifier *defuzzifier)fl::OutputVariablevirtual
setEnabled(bool enabled)fl::Variablevirtual
setLastValidOutput(scalar defuzzifiedValue)fl::OutputVariablevirtual
setLockOutputRange(bool lockOutputRange)fl::OutputVariablevirtual
setLockValidOutput(bool lockValidOutput)fl::OutputVariablevirtual
setMaximum(scalar maximum)fl::OutputVariablevirtual
setMinimum(scalar minimum)fl::OutputVariablevirtual
setName(const std::string &name)fl::Variablevirtual
setRange(scalar minimum, scalar maximum)fl::Variablevirtual
sort()fl::Variablevirtual
terms() const fl::Variablevirtual
toString() const fl::OutputVariablevirtual
Variable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)fl::Variable
Variable(const Variable &copy)fl::Variable
~OutputVariable()fl::OutputVariablevirtual
~Variable()fl::Variablevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1OutputVariable.html b/docs/html/classfl_1_1OutputVariable.html new file mode 100644 index 0000000..857bd9d --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable.html @@ -0,0 +1,820 @@ + + + + + + +fuzzylite: fl::OutputVariable Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::OutputVariable Class Reference
+
+
+ +

#include <OutputVariable.h>

+
+Inheritance diagram for fl::OutputVariable:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::OutputVariable:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 OutputVariable (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)
 
virtual ~OutputVariable ()
 
virtual AccumulatedfuzzyOutput () const
 
virtual void setMinimum (scalar minimum)
 
virtual void setMaximum (scalar maximum)
 
virtual void setDefuzzifier (Defuzzifier *defuzzifier)
 
virtual DefuzzifiergetDefuzzifier () const
 
virtual void setDefaultValue (scalar defaultValue)
 
virtual scalar getDefaultValue () const
 
virtual void setLastValidOutput (scalar defuzzifiedValue)
 
virtual scalar getLastValidOutput () const
 
virtual void setLockOutputRange (bool lockOutputRange)
 
virtual bool isLockingOutputRange () const
 
virtual void setLockValidOutput (bool lockValidOutput)
 
virtual bool isLockingValidOutput () const
 
virtual scalar defuzzify ()
 
virtual scalar defuzzifyNoLocks () const
 
virtual std::string toString () const
 
- Public Member Functions inherited from fl::Variable
 Variable (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)
 
 Variable (const Variable &copy)
 
virtual ~Variable ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual void setRange (scalar minimum, scalar maximum)
 
virtual scalar range () const
 
virtual scalar getMinimum () const
 
virtual scalar getMaximum () const
 
virtual void setEnabled (bool enabled)
 
virtual bool isEnabled () const
 
virtual std::string fuzzify (scalar x) const
 
virtual TermhighestMembership (scalar x, scalar *yhighest=NULL) const
 
virtual void sort ()
 
virtual void addTerm (Term *term)
 
virtual void insertTerm (Term *term, int index)
 
virtual TermgetTerm (int index) const
 
virtual TermgetTerm (const std::string &name) const
 
virtual bool hasTerm (const std::string &name) const
 
virtual TermremoveTerm (int index)
 
virtual int numberOfTerms () const
 
virtual const std::vector
+< Term * > & 
terms () const
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

Accumulated_fuzzyOutput
 
Defuzzifier_defuzzifier
 
scalar _defaultValue
 
scalar _lastValidOutput
 
bool _lockOutputRange
 
bool _lockValidOutput
 
- Protected Attributes inherited from fl::Variable
std::string _name
 
std::vector< Term * > _terms
 
scalar _minimum
 
scalar _maximum
 
bool _enabled
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::OutputVariable::OutputVariable (const std::string & name = "",
scalar minimum = -fl::inf,
scalar maximum = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::OutputVariable::~OutputVariable ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::OutputVariable::defuzzify ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::OutputVariable::defuzzifyNoLocks () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Accumulated * fl::OutputVariable::fuzzyOutput () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::OutputVariable::getDefaultValue () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::OutputVariable::getDefuzzifier () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::OutputVariable::getLastValidOutput () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::OutputVariable::isLockingOutputRange () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::OutputVariable::isLockingValidOutput () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setDefaultValue (scalar defaultValue)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setDefuzzifier (Defuzzifierdefuzzifier)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setLastValidOutput (scalar defuzzifiedValue)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setLockOutputRange (bool lockOutputRange)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setLockValidOutput (bool lockValidOutput)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setMaximum (scalar maximum)
+
+virtual
+
+ +

Reimplemented from fl::Variable.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::OutputVariable::setMinimum (scalar minimum)
+
+virtual
+
+ +

Reimplemented from fl::Variable.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::OutputVariable::toString () const
+
+virtual
+
+ +

Reimplemented from fl::Variable.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::OutputVariable::_defaultValue
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
Defuzzifier* fl::OutputVariable::_defuzzifier
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
Accumulated* fl::OutputVariable::_fuzzyOutput
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::OutputVariable::_lastValidOutput
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
bool fl::OutputVariable::_lockOutputRange
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
bool fl::OutputVariable::_lockValidOutput
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1OutputVariable.js b/docs/html/classfl_1_1OutputVariable.js new file mode 100644 index 0000000..cdaafad --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable.js @@ -0,0 +1,27 @@ +var classfl_1_1OutputVariable = +[ + [ "OutputVariable", "classfl_1_1OutputVariable.html#a06fc646d572d770fcb8b98f3d9e7f983", null ], + [ "~OutputVariable", "classfl_1_1OutputVariable.html#a76709622720bd073f218c5d376cfbd32", null ], + [ "defuzzify", "classfl_1_1OutputVariable.html#a85e36175f3a81be3a9e0771bd49ae792", null ], + [ "defuzzifyNoLocks", "classfl_1_1OutputVariable.html#a4c92ca99e61d50e264dbf4cbc0d03a28", null ], + [ "fuzzyOutput", "classfl_1_1OutputVariable.html#a6afba2565ac43f2dc0ff28e6e6920b62", null ], + [ "getDefaultValue", "classfl_1_1OutputVariable.html#a77d008ebe5df2837253db89003738f32", null ], + [ "getDefuzzifier", "classfl_1_1OutputVariable.html#a7acdeed68a566c8f3fae09ead1bf534a", null ], + [ "getLastValidOutput", "classfl_1_1OutputVariable.html#af5aa8a7e6adb78d51360c195fa0ab175", null ], + [ "isLockingOutputRange", "classfl_1_1OutputVariable.html#a8c2865737efc814ae8e214dc04eddea0", null ], + [ "isLockingValidOutput", "classfl_1_1OutputVariable.html#a917f7a21983186a0627480dc0044510c", null ], + [ "setDefaultValue", "classfl_1_1OutputVariable.html#a94bc9e87a1682ad448d5112df2112e2b", null ], + [ "setDefuzzifier", "classfl_1_1OutputVariable.html#af77232e3528f0d2a51fa08a19eb8885a", null ], + [ "setLastValidOutput", "classfl_1_1OutputVariable.html#a8e6591c3cb06b16464cff84994d0f8dc", null ], + [ "setLockOutputRange", "classfl_1_1OutputVariable.html#a122de7e1ebaceb865958223d98a77fd2", null ], + [ "setLockValidOutput", "classfl_1_1OutputVariable.html#adbb824cc33473be7299ba289e65ddf1f", null ], + [ "setMaximum", "classfl_1_1OutputVariable.html#a3f9dd085069cee0c226be814ce1b4fc6", null ], + [ "setMinimum", "classfl_1_1OutputVariable.html#af8f150c047b96f26e7ee1be522d18d15", null ], + [ "toString", "classfl_1_1OutputVariable.html#a1791942e79c06f0df511329078a4fa8f", null ], + [ "_defaultValue", "classfl_1_1OutputVariable.html#ae671f7b4d50b1bd0348efca4b18b64ee", null ], + [ "_defuzzifier", "classfl_1_1OutputVariable.html#a631ae981ace3b71c309645f84c31c40d", null ], + [ "_fuzzyOutput", "classfl_1_1OutputVariable.html#a4c790ba61f35ffb40a70465bc4eff269", null ], + [ "_lastValidOutput", "classfl_1_1OutputVariable.html#a45490aadbbfec20202053a2fb76c345c", null ], + [ "_lockOutputRange", "classfl_1_1OutputVariable.html#a81794ae643119692cedcaa8d2584c94e", null ], + [ "_lockValidOutput", "classfl_1_1OutputVariable.html#aa42f02897e6a69c82a86e13473448c7f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1OutputVariable__coll__graph.map b/docs/html/classfl_1_1OutputVariable__coll__graph.map new file mode 100644 index 0000000..cd56bfe --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable__coll__graph.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/classfl_1_1OutputVariable__coll__graph.md5 b/docs/html/classfl_1_1OutputVariable__coll__graph.md5 new file mode 100644 index 0000000..42ae93d --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable__coll__graph.md5 @@ -0,0 +1 @@ +14c0c3be6f65e0aa321c34a5ee398878 \ No newline at end of file diff --git a/docs/html/classfl_1_1OutputVariable__coll__graph.png b/docs/html/classfl_1_1OutputVariable__coll__graph.png new file mode 100644 index 0000000..6de3c02 Binary files /dev/null and b/docs/html/classfl_1_1OutputVariable__coll__graph.png differ diff --git a/docs/html/classfl_1_1OutputVariable__inherit__graph.map b/docs/html/classfl_1_1OutputVariable__inherit__graph.map new file mode 100644 index 0000000..eb1df42 --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1OutputVariable__inherit__graph.md5 b/docs/html/classfl_1_1OutputVariable__inherit__graph.md5 new file mode 100644 index 0000000..d0ad9f1 --- /dev/null +++ b/docs/html/classfl_1_1OutputVariable__inherit__graph.md5 @@ -0,0 +1 @@ +e72a114275bc674ff67673f3dfc9fd2c \ No newline at end of file diff --git a/docs/html/classfl_1_1OutputVariable__inherit__graph.png b/docs/html/classfl_1_1OutputVariable__inherit__graph.png new file mode 100644 index 0000000..424b343 Binary files /dev/null and b/docs/html/classfl_1_1OutputVariable__inherit__graph.png differ diff --git a/docs/html/classfl_1_1PiShape-members.html b/docs/html/classfl_1_1PiShape-members.html new file mode 100644 index 0000000..8a6e182 --- /dev/null +++ b/docs/html/classfl_1_1PiShape-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::PiShape Member List
+
+
+ +

This is the complete list of members for fl::PiShape, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bottomLeftfl::PiShapeprotected
_bottomRightfl::PiShapeprotected
_namefl::Termprotected
_topLeftfl::PiShapeprotected
_topRightfl::PiShapeprotected
className() const fl::PiShapevirtual
configure(const std::string &parameters)fl::PiShapevirtual
constructor()fl::PiShapestatic
copy() const fl::PiShapevirtual
getBottomLeft() const fl::PiShapevirtual
getBottomRight() const fl::PiShapevirtual
getName() const fl::Termvirtual
getTopLeft() const fl::PiShapevirtual
getTopRight() const fl::PiShapevirtual
membership(scalar x) const fl::PiShapevirtual
parameters() const fl::PiShapevirtual
PiShape(const std::string &name="", scalar bottomLeft=fl::nan, scalar topLeft=fl::nan, scalar topRight=fl::nan, scalar bottomRight=fl::nan)fl::PiShape
setBottomLeft(scalar a)fl::PiShapevirtual
setBottomRight(scalar c)fl::PiShapevirtual
setName(const std::string &name)fl::Termvirtual
setTopLeft(scalar b)fl::PiShapevirtual
setTopRight(scalar d)fl::PiShapevirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~PiShape()fl::PiShapevirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1PiShape.html b/docs/html/classfl_1_1PiShape.html new file mode 100644 index 0000000..38abcc9 --- /dev/null +++ b/docs/html/classfl_1_1PiShape.html @@ -0,0 +1,702 @@ + + + + + + +fuzzylite: fl::PiShape Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <PiShape.h>

+
+Inheritance diagram for fl::PiShape:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::PiShape:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 PiShape (const std::string &name="", scalar bottomLeft=fl::nan, scalar topLeft=fl::nan, scalar topRight=fl::nan, scalar bottomRight=fl::nan)
 
virtual ~PiShape ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setBottomLeft (scalar a)
 
virtual scalar getBottomLeft () const
 
virtual void setTopLeft (scalar b)
 
virtual scalar getTopLeft () const
 
virtual void setTopRight (scalar d)
 
virtual scalar getTopRight () const
 
virtual void setBottomRight (scalar c)
 
virtual scalar getBottomRight () const
 
virtual PiShapecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + + + +

+Protected Attributes

scalar _bottomLeft
 
scalar _topLeft
 
scalar _topRight
 
scalar _bottomRight
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::PiShape::PiShape (const std::string & name = "",
scalar bottomLeft = fl::nan,
scalar topLeft = fl::nan,
scalar topRight = fl::nan,
scalar bottomRight = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::PiShape::~PiShape ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::PiShape::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::PiShape::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::PiShape::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PiShape * fl::PiShape::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::PiShape::getBottomLeft () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::PiShape::getBottomRight () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::PiShape::getTopLeft () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::PiShape::getTopRight () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::PiShape::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::PiShape::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::PiShape::setBottomLeft (scalar a)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::PiShape::setBottomRight (scalar c)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::PiShape::setTopLeft (scalar b)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::PiShape::setTopRight (scalar d)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::PiShape::_bottomLeft
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::PiShape::_bottomRight
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::PiShape::_topLeft
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::PiShape::_topRight
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1PiShape.js b/docs/html/classfl_1_1PiShape.js new file mode 100644 index 0000000..cf6f7ab --- /dev/null +++ b/docs/html/classfl_1_1PiShape.js @@ -0,0 +1,23 @@ +var classfl_1_1PiShape = +[ + [ "PiShape", "classfl_1_1PiShape.html#a3c40ddb8438bb35ff31a677b8dead8c4", null ], + [ "~PiShape", "classfl_1_1PiShape.html#a4e775dd0812a93d312c1b88d2ae1c58e", null ], + [ "className", "classfl_1_1PiShape.html#a3f8cdd32ed69468a7eda86894330be37", null ], + [ "configure", "classfl_1_1PiShape.html#a094990367147e1a36889f449f6d038a3", null ], + [ "constructor", "classfl_1_1PiShape.html#ac581e7799ff38f4974ea0762436d286a", null ], + [ "copy", "classfl_1_1PiShape.html#a231d003759000eeed3cc5f4fef8606b5", null ], + [ "getBottomLeft", "classfl_1_1PiShape.html#a3021c7131cfac066661c75b314d0249c", null ], + [ "getBottomRight", "classfl_1_1PiShape.html#ac28ea4bd4efe15c60858d5c19d113801", null ], + [ "getTopLeft", "classfl_1_1PiShape.html#ac6d9a607b36a3eab748355e4835d6fd0", null ], + [ "getTopRight", "classfl_1_1PiShape.html#af4603dfcf2981ba30c0f83b367fad91a", null ], + [ "membership", "classfl_1_1PiShape.html#ad4c0740301f52a2c9703f21ceea769d1", null ], + [ "parameters", "classfl_1_1PiShape.html#a13b09d4230a58b312a9bbd890982c2bc", null ], + [ "setBottomLeft", "classfl_1_1PiShape.html#a8bfe56c1a00846040ea02f564b004723", null ], + [ "setBottomRight", "classfl_1_1PiShape.html#aa3529d73d2f6669aac49e16bef3ba113", null ], + [ "setTopLeft", "classfl_1_1PiShape.html#a9e19511ff789a1b9b4587f4176bda765", null ], + [ "setTopRight", "classfl_1_1PiShape.html#ab9e95a7ff467a1df9a543ad8a03cab3e", null ], + [ "_bottomLeft", "classfl_1_1PiShape.html#aac117c385800e2d294bb420f754e08dd", null ], + [ "_bottomRight", "classfl_1_1PiShape.html#a5afd826af62985d899c0741892f9dd65", null ], + [ "_topLeft", "classfl_1_1PiShape.html#ad3d00a9cdbae079cf73267b9d9c1daaf", null ], + [ "_topRight", "classfl_1_1PiShape.html#ab33f3af8845f990cd73425fabbede063", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1PiShape__coll__graph.map b/docs/html/classfl_1_1PiShape__coll__graph.map new file mode 100644 index 0000000..7c3b5f4 --- /dev/null +++ b/docs/html/classfl_1_1PiShape__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1PiShape__coll__graph.md5 b/docs/html/classfl_1_1PiShape__coll__graph.md5 new file mode 100644 index 0000000..d4e0cae --- /dev/null +++ b/docs/html/classfl_1_1PiShape__coll__graph.md5 @@ -0,0 +1 @@ +f98d39a7a80bc89f4e2cb486ac3ba303 \ No newline at end of file diff --git a/docs/html/classfl_1_1PiShape__coll__graph.png b/docs/html/classfl_1_1PiShape__coll__graph.png new file mode 100644 index 0000000..526cb53 Binary files /dev/null and b/docs/html/classfl_1_1PiShape__coll__graph.png differ diff --git a/docs/html/classfl_1_1PiShape__inherit__graph.map b/docs/html/classfl_1_1PiShape__inherit__graph.map new file mode 100644 index 0000000..94450b3 --- /dev/null +++ b/docs/html/classfl_1_1PiShape__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1PiShape__inherit__graph.md5 b/docs/html/classfl_1_1PiShape__inherit__graph.md5 new file mode 100644 index 0000000..44bbb39 --- /dev/null +++ b/docs/html/classfl_1_1PiShape__inherit__graph.md5 @@ -0,0 +1 @@ +7c6292540f49b64aea720821c8095c60 \ No newline at end of file diff --git a/docs/html/classfl_1_1PiShape__inherit__graph.png b/docs/html/classfl_1_1PiShape__inherit__graph.png new file mode 100644 index 0000000..6c0e010 Binary files /dev/null and b/docs/html/classfl_1_1PiShape__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Proposition-members.html b/docs/html/classfl_1_1Proposition-members.html new file mode 100644 index 0000000..6693922 --- /dev/null +++ b/docs/html/classfl_1_1Proposition-members.html @@ -0,0 +1,135 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Proposition Member List
+
+
+ +

This is the complete list of members for fl::Proposition, including all inherited members.

+ + + + + + + + + +
Expression(bool isOperator)fl::Expression
hedgesfl::Proposition
isOperatorfl::Expression
Proposition()fl::Proposition
termfl::Proposition
toString() const fl::Propositionvirtual
variablefl::Proposition
~Expression()fl::Expressionvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Proposition.html b/docs/html/classfl_1_1Proposition.html new file mode 100644 index 0000000..c65f6e3 --- /dev/null +++ b/docs/html/classfl_1_1Proposition.html @@ -0,0 +1,253 @@ + + + + + + +fuzzylite: fl::Proposition Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Proposition Class Reference
+
+
+ +

#include <Expression.h>

+
+Inheritance diagram for fl::Proposition:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Proposition:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

 Proposition ()
 
std::string toString () const
 
- Public Member Functions inherited from fl::Expression
 Expression (bool isOperator)
 
virtual ~Expression ()
 
+ + + + + + + + + + +

+Public Attributes

Variablevariable
 
std::vector< Hedge * > hedges
 
Termterm
 
- Public Attributes inherited from fl::Expression
bool isOperator
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::Proposition::Proposition ()
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Proposition::toString () const
+
+virtual
+
+ +

Implements fl::Expression.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<Hedge*> fl::Proposition::hedges
+
+ +
+
+ +
+
+ + + + +
Term* fl::Proposition::term
+
+ +
+
+ +
+
+ + + + +
Variable* fl::Proposition::variable
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Proposition.js b/docs/html/classfl_1_1Proposition.js new file mode 100644 index 0000000..3a05859 --- /dev/null +++ b/docs/html/classfl_1_1Proposition.js @@ -0,0 +1,8 @@ +var classfl_1_1Proposition = +[ + [ "Proposition", "classfl_1_1Proposition.html#a1a3ee950c8fa4e4152d67aa16b1124c4", null ], + [ "toString", "classfl_1_1Proposition.html#a4fc5d8e5b865b13faccfbf6f3983bc87", null ], + [ "hedges", "classfl_1_1Proposition.html#a09ad3358683f937dd555118daf929e0e", null ], + [ "term", "classfl_1_1Proposition.html#afe005bc95d5f8b4298ab40c42a78eecb", null ], + [ "variable", "classfl_1_1Proposition.html#a9b987871dbe823c8e959813cb5e5dc47", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Proposition__coll__graph.map b/docs/html/classfl_1_1Proposition__coll__graph.map new file mode 100644 index 0000000..2c04f6e --- /dev/null +++ b/docs/html/classfl_1_1Proposition__coll__graph.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/classfl_1_1Proposition__coll__graph.md5 b/docs/html/classfl_1_1Proposition__coll__graph.md5 new file mode 100644 index 0000000..21397d2 --- /dev/null +++ b/docs/html/classfl_1_1Proposition__coll__graph.md5 @@ -0,0 +1 @@ +355a3a7062da1ad2f8d9867389d54ce0 \ No newline at end of file diff --git a/docs/html/classfl_1_1Proposition__coll__graph.png b/docs/html/classfl_1_1Proposition__coll__graph.png new file mode 100644 index 0000000..ecda398 Binary files /dev/null and b/docs/html/classfl_1_1Proposition__coll__graph.png differ diff --git a/docs/html/classfl_1_1Proposition__inherit__graph.map b/docs/html/classfl_1_1Proposition__inherit__graph.map new file mode 100644 index 0000000..adc6450 --- /dev/null +++ b/docs/html/classfl_1_1Proposition__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Proposition__inherit__graph.md5 b/docs/html/classfl_1_1Proposition__inherit__graph.md5 new file mode 100644 index 0000000..ef0cc4c --- /dev/null +++ b/docs/html/classfl_1_1Proposition__inherit__graph.md5 @@ -0,0 +1 @@ +e59865a3f41f29bd05bb7b33799ec459 \ No newline at end of file diff --git a/docs/html/classfl_1_1Proposition__inherit__graph.png b/docs/html/classfl_1_1Proposition__inherit__graph.png new file mode 100644 index 0000000..cf8f568 Binary files /dev/null and b/docs/html/classfl_1_1Proposition__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Ramp-members.html b/docs/html/classfl_1_1Ramp-members.html new file mode 100644 index 0000000..8bf29f9 --- /dev/null +++ b/docs/html/classfl_1_1Ramp-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Ramp Member List
+
+
+ +

This is the complete list of members for fl::Ramp, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_endfl::Rampprotected
_namefl::Termprotected
_startfl::Rampprotected
className() const fl::Rampvirtual
configure(const std::string &parameters)fl::Rampvirtual
constructor()fl::Rampstatic
copy() const fl::Rampvirtual
getEnd() const fl::Rampvirtual
getName() const fl::Termvirtual
getStart() const fl::Rampvirtual
membership(scalar x) const fl::Rampvirtual
parameters() const fl::Rampvirtual
Ramp(const std::string &name="", scalar start=-fl::inf, scalar end=fl::inf)fl::Ramp
setEnd(scalar end)fl::Rampvirtual
setName(const std::string &name)fl::Termvirtual
setStart(scalar start)fl::Rampvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Ramp()fl::Rampvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Ramp.html b/docs/html/classfl_1_1Ramp.html new file mode 100644 index 0000000..adb5c27 --- /dev/null +++ b/docs/html/classfl_1_1Ramp.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::Ramp Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Ramp.h>

+
+Inheritance diagram for fl::Ramp:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Ramp:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Ramp (const std::string &name="", scalar start=-fl::inf, scalar end=fl::inf)
 
virtual ~Ramp ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setStart (scalar start)
 
virtual scalar getStart () const
 
virtual void setEnd (scalar end)
 
virtual scalar getEnd () const
 
virtual Rampcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _start
 
scalar _end
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Ramp::Ramp (const std::string & name = "",
scalar start = -fl::inf,
scalar end = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Ramp::~Ramp ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Ramp::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Ramp::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Ramp::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Ramp * fl::Ramp::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Ramp::getEnd () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Ramp::getStart () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Ramp::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Ramp::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Ramp::setEnd (scalar end)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Ramp::setStart (scalar start)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Ramp::_end
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Ramp::_start
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Ramp.js b/docs/html/classfl_1_1Ramp.js new file mode 100644 index 0000000..5ead799 --- /dev/null +++ b/docs/html/classfl_1_1Ramp.js @@ -0,0 +1,17 @@ +var classfl_1_1Ramp = +[ + [ "Ramp", "classfl_1_1Ramp.html#aa6ed7deef8f2c02469053e0c72cbec2f", null ], + [ "~Ramp", "classfl_1_1Ramp.html#a0c1010c3f85c5233e716698582d63f07", null ], + [ "className", "classfl_1_1Ramp.html#a8f06e34a6d2576ed3acfe7dd2535800e", null ], + [ "configure", "classfl_1_1Ramp.html#a8a3168d355fb959fa7c3651ac18bccea", null ], + [ "constructor", "classfl_1_1Ramp.html#a340c5b421b4d37f2937d68c10250fa2f", null ], + [ "copy", "classfl_1_1Ramp.html#a1e538377748de2e6de2f38e38fcb9cb7", null ], + [ "getEnd", "classfl_1_1Ramp.html#a119f38fb9f642f8bc450244dfb501138", null ], + [ "getStart", "classfl_1_1Ramp.html#a4c133fee56f32fb9161c8deeb9e71594", null ], + [ "membership", "classfl_1_1Ramp.html#a487ad50106207e65ac5fb6b94eeb7bef", null ], + [ "parameters", "classfl_1_1Ramp.html#a9259fc96fd86481966c24ff7fadd2829", null ], + [ "setEnd", "classfl_1_1Ramp.html#a75fad92d5146124ae5c25d4c4695ba81", null ], + [ "setStart", "classfl_1_1Ramp.html#aad37fbd6f4bfdf7d0e6f588fdc0d554c", null ], + [ "_end", "classfl_1_1Ramp.html#ab51cf85926685a575ae265eed12a362c", null ], + [ "_start", "classfl_1_1Ramp.html#a4ba4665ac5fd0ef2ec129f04c1c3eae0", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Ramp__coll__graph.map b/docs/html/classfl_1_1Ramp__coll__graph.map new file mode 100644 index 0000000..55e11ac --- /dev/null +++ b/docs/html/classfl_1_1Ramp__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Ramp__coll__graph.md5 b/docs/html/classfl_1_1Ramp__coll__graph.md5 new file mode 100644 index 0000000..e27c92d --- /dev/null +++ b/docs/html/classfl_1_1Ramp__coll__graph.md5 @@ -0,0 +1 @@ +4c1c9869b2e69f0d7e164c1387e3ed99 \ No newline at end of file diff --git a/docs/html/classfl_1_1Ramp__coll__graph.png b/docs/html/classfl_1_1Ramp__coll__graph.png new file mode 100644 index 0000000..39d8342 Binary files /dev/null and b/docs/html/classfl_1_1Ramp__coll__graph.png differ diff --git a/docs/html/classfl_1_1Ramp__inherit__graph.map b/docs/html/classfl_1_1Ramp__inherit__graph.map new file mode 100644 index 0000000..e77fb79 --- /dev/null +++ b/docs/html/classfl_1_1Ramp__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Ramp__inherit__graph.md5 b/docs/html/classfl_1_1Ramp__inherit__graph.md5 new file mode 100644 index 0000000..c59984d --- /dev/null +++ b/docs/html/classfl_1_1Ramp__inherit__graph.md5 @@ -0,0 +1 @@ +063940beaa2da5682801d8b3271b0498 \ No newline at end of file diff --git a/docs/html/classfl_1_1Ramp__inherit__graph.png b/docs/html/classfl_1_1Ramp__inherit__graph.png new file mode 100644 index 0000000..07528ac Binary files /dev/null and b/docs/html/classfl_1_1Ramp__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Rectangle-members.html b/docs/html/classfl_1_1Rectangle-members.html new file mode 100644 index 0000000..38d1507 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Rectangle Member List
+
+
+ +

This is the complete list of members for fl::Rectangle, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_endfl::Rectangleprotected
_namefl::Termprotected
_startfl::Rectangleprotected
className() const fl::Rectanglevirtual
configure(const std::string &parameters)fl::Rectanglevirtual
constructor()fl::Rectanglestatic
copy() const fl::Rectanglevirtual
getEnd() const fl::Rectanglevirtual
getName() const fl::Termvirtual
getStart() const fl::Rectanglevirtual
membership(scalar x) const fl::Rectanglevirtual
parameters() const fl::Rectanglevirtual
Rectangle(const std::string &name="", scalar start=-fl::inf, scalar end=fl::inf)fl::Rectangle
setEnd(scalar end)fl::Rectanglevirtual
setName(const std::string &name)fl::Termvirtual
setStart(scalar start)fl::Rectanglevirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Rectangle()fl::Rectanglevirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Rectangle.html b/docs/html/classfl_1_1Rectangle.html new file mode 100644 index 0000000..4a4a183 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::Rectangle Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Rectangle.h>

+
+Inheritance diagram for fl::Rectangle:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Rectangle:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Rectangle (const std::string &name="", scalar start=-fl::inf, scalar end=fl::inf)
 
virtual ~Rectangle ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setStart (scalar start)
 
virtual scalar getStart () const
 
virtual void setEnd (scalar end)
 
virtual scalar getEnd () const
 
virtual Rectanglecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _start
 
scalar _end
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Rectangle::Rectangle (const std::string & name = "",
scalar start = -fl::inf,
scalar end = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Rectangle::~Rectangle ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rectangle::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rectangle::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Rectangle::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Rectangle * fl::Rectangle::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Rectangle::getEnd () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Rectangle::getStart () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Rectangle::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rectangle::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rectangle::setEnd (scalar end)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rectangle::setStart (scalar start)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Rectangle::_end
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Rectangle::_start
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Rectangle.js b/docs/html/classfl_1_1Rectangle.js new file mode 100644 index 0000000..9e767b8 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle.js @@ -0,0 +1,17 @@ +var classfl_1_1Rectangle = +[ + [ "Rectangle", "classfl_1_1Rectangle.html#ab40019b91b2f1711510cebd2872ec2ae", null ], + [ "~Rectangle", "classfl_1_1Rectangle.html#a360223ebc53f3def1fb7ef58d26e9f27", null ], + [ "className", "classfl_1_1Rectangle.html#a939b4731743f1c142eb6b6fffcea0c27", null ], + [ "configure", "classfl_1_1Rectangle.html#ad62883ba5a2345bec73466d50fee9855", null ], + [ "constructor", "classfl_1_1Rectangle.html#a52fa7b8b5da4764993a22c5f76068f12", null ], + [ "copy", "classfl_1_1Rectangle.html#a16850355bc3080c58d098718bc74d693", null ], + [ "getEnd", "classfl_1_1Rectangle.html#ac67297489749e2fcd87ac4e4d8fb01cb", null ], + [ "getStart", "classfl_1_1Rectangle.html#a1fea0ee869b3d2072b7b430e7870c832", null ], + [ "membership", "classfl_1_1Rectangle.html#a7358a312ee158f1559d513818377dca1", null ], + [ "parameters", "classfl_1_1Rectangle.html#a72ef9e6eb3f0dbe4f17f4526529b7713", null ], + [ "setEnd", "classfl_1_1Rectangle.html#a1421c1c000bc6b99dc8a8ce38f3e8e5a", null ], + [ "setStart", "classfl_1_1Rectangle.html#a9a1999b425dbfda2067bf80d3d305c9b", null ], + [ "_end", "classfl_1_1Rectangle.html#a3e607d89ff856e9e770837918b2cff83", null ], + [ "_start", "classfl_1_1Rectangle.html#a702c94e6b27e9758662d00e30e91d174", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Rectangle__coll__graph.map b/docs/html/classfl_1_1Rectangle__coll__graph.map new file mode 100644 index 0000000..9cd8c87 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Rectangle__coll__graph.md5 b/docs/html/classfl_1_1Rectangle__coll__graph.md5 new file mode 100644 index 0000000..74dd6c3 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle__coll__graph.md5 @@ -0,0 +1 @@ +7c0ffa9d5a015352e02326e790ba9d26 \ No newline at end of file diff --git a/docs/html/classfl_1_1Rectangle__coll__graph.png b/docs/html/classfl_1_1Rectangle__coll__graph.png new file mode 100644 index 0000000..c4cf1a7 Binary files /dev/null and b/docs/html/classfl_1_1Rectangle__coll__graph.png differ diff --git a/docs/html/classfl_1_1Rectangle__inherit__graph.map b/docs/html/classfl_1_1Rectangle__inherit__graph.map new file mode 100644 index 0000000..c79c92b --- /dev/null +++ b/docs/html/classfl_1_1Rectangle__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Rectangle__inherit__graph.md5 b/docs/html/classfl_1_1Rectangle__inherit__graph.md5 new file mode 100644 index 0000000..7af7eb0 --- /dev/null +++ b/docs/html/classfl_1_1Rectangle__inherit__graph.md5 @@ -0,0 +1 @@ +208b2e5fd151736e12fd337cbc7ffd1d \ No newline at end of file diff --git a/docs/html/classfl_1_1Rectangle__inherit__graph.png b/docs/html/classfl_1_1Rectangle__inherit__graph.png new file mode 100644 index 0000000..693950b Binary files /dev/null and b/docs/html/classfl_1_1Rectangle__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Rule-members.html b/docs/html/classfl_1_1Rule-members.html new file mode 100644 index 0000000..7f898ab --- /dev/null +++ b/docs/html/classfl_1_1Rule-members.html @@ -0,0 +1,159 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Rule Member List
+
+
+ +

This is the complete list of members for fl::Rule, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_antecedentfl::Ruleprotected
_consequentfl::Ruleprotected
_textfl::Ruleprotected
_weightfl::Ruleprotected
activate(scalar strength, const TNorm *activation) const fl::Rulevirtual
activationDegree(const TNorm *tnorm, const SNorm *snorm) const fl::Rulevirtual
andKeyword()fl::Rulestatic
assignKeyword()fl::Rulestatic
FL_ANDfl::Rulestatic
FL_EQUALSfl::Rulestatic
FL_IFfl::Rulestatic
FL_ISfl::Rulestatic
FL_ORfl::Rulestatic
FL_THENfl::Rulestatic
FL_WITHfl::Rulestatic
getAntecedent() const fl::Rulevirtual
getConsequent() const fl::Rulevirtual
getText() const fl::Rulevirtual
getWeight() const fl::Rulevirtual
ifKeyword()fl::Rulestatic
isKeyword()fl::Rulestatic
orKeyword()fl::Rulestatic
parse(const std::string &rule, const Engine *engine)fl::Rulestatic
Rule()fl::Rule
setAntecedent(Antecedent *antecedent)fl::Rulevirtual
setConsequent(Consequent *consequent)fl::Rulevirtual
setText(const std::string &text)fl::Ruleprotectedvirtual
setWeight(scalar weight)fl::Rulevirtual
thenKeyword()fl::Rulestatic
toString() const fl::Rulevirtual
withKeyword()fl::Rulestatic
~Rule()fl::Rulevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Rule.html b/docs/html/classfl_1_1Rule.html new file mode 100644 index 0000000..69dbd7f --- /dev/null +++ b/docs/html/classfl_1_1Rule.html @@ -0,0 +1,960 @@ + + + + + + +fuzzylite: fl::Rule Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Rule.h>

+
+Collaboration diagram for fl::Rule:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Rule ()
 
virtual ~Rule ()
 
virtual void setAntecedent (Antecedent *antecedent)
 
virtual AntecedentgetAntecedent () const
 
virtual void setConsequent (Consequent *consequent)
 
virtual ConsequentgetConsequent () const
 
virtual scalar activationDegree (const TNorm *tnorm, const SNorm *snorm) const
 
virtual void activate (scalar strength, const TNorm *activation) const
 
virtual void setWeight (scalar weight)
 
virtual scalar getWeight () const
 
virtual std::string getText () const
 
virtual std::string toString () const
 
+ + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static Ruleparse (const std::string &rule, const Engine *engine)
 
static std::string ifKeyword ()
 
static std::string isKeyword ()
 
static std::string assignKeyword ()
 
static std::string thenKeyword ()
 
static std::string andKeyword ()
 
static std::string orKeyword ()
 
static std::string withKeyword ()
 
+ + + + + + + + + + + + + + + +

+Static Public Attributes

static std::string FL_IF = "if"
 
static std::string FL_IS = "is"
 
static std::string FL_EQUALS = "="
 
static std::string FL_THEN = "then"
 
static std::string FL_AND = "and"
 
static std::string FL_OR = "or"
 
static std::string FL_WITH = "with"
 
+ + + +

+Protected Member Functions

virtual void setText (const std::string &text)
 
+ + + + + + + + + +

+Protected Attributes

scalar _weight
 
std::string _text
 
Antecedent_antecedent
 
Consequent_consequent
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::Rule::Rule ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Rule::~Rule ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Rule::activate (scalar strength,
const TNormactivation 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
scalar fl::Rule::activationDegree (const TNormtnorm,
const SNormsnorm 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::andKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::assignKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Antecedent * fl::Rule::getAntecedent () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Consequent * fl::Rule::getConsequent () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::getText () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Rule::getWeight () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::ifKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::isKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::orKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Rule * fl::Rule::parse (const std::string & rule,
const Engineengine 
)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rule::setAntecedent (Antecedentantecedent)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rule::setConsequent (Consequentconsequent)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rule::setText (const std::string & text)
+
+protectedvirtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Rule::setWeight (scalar weight)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::thenKeyword ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::toString () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Rule::withKeyword ()
+
+static
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
Antecedent* fl::Rule::_antecedent
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
Consequent* fl::Rule::_consequent
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::_text
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Rule::_weight
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_AND = "and"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_EQUALS = "="
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_IF = "if"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_IS = "is"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_OR = "or"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_THEN = "then"
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Rule::FL_WITH = "with"
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Rule.js b/docs/html/classfl_1_1Rule.js new file mode 100644 index 0000000..da4f635 --- /dev/null +++ b/docs/html/classfl_1_1Rule.js @@ -0,0 +1,35 @@ +var classfl_1_1Rule = +[ + [ "Rule", "classfl_1_1Rule.html#afea11e9e7ae8634cfadeed23e3e7a941", null ], + [ "~Rule", "classfl_1_1Rule.html#a1fcb07152c4c0990d4ae84e4f7249661", null ], + [ "activate", "classfl_1_1Rule.html#a3bea9718055bcdd1387c2f3f9e5c20b7", null ], + [ "activationDegree", "classfl_1_1Rule.html#a954192f9c76e435bb6a06fcdc85cfacc", null ], + [ "andKeyword", "classfl_1_1Rule.html#a97f0308d02b3b70882b07dd6f0cb0faa", null ], + [ "assignKeyword", "classfl_1_1Rule.html#a01346aa0042f6e19a5b3eb532f60679c", null ], + [ "getAntecedent", "classfl_1_1Rule.html#a79109b35408f02fcc7f093dd0a705645", null ], + [ "getConsequent", "classfl_1_1Rule.html#a3b10652232437ba140686314e2cb68b8", null ], + [ "getText", "classfl_1_1Rule.html#adbeaa04dcd7a6be8697815321f84939e", null ], + [ "getWeight", "classfl_1_1Rule.html#a937d9a3aec0c40a80d151257520003f1", null ], + [ "ifKeyword", "classfl_1_1Rule.html#a86c83c1fda834afadd60eb13a39f642b", null ], + [ "isKeyword", "classfl_1_1Rule.html#a52c84de220b7b3a5b8dff7f451858793", null ], + [ "orKeyword", "classfl_1_1Rule.html#aa039c22128735b014599205e5c6aaae0", null ], + [ "parse", "classfl_1_1Rule.html#a7f255fffc4373cb0510b7199dd4b9b78", null ], + [ "setAntecedent", "classfl_1_1Rule.html#a135a6f061eeb5ebe7686898850a144d3", null ], + [ "setConsequent", "classfl_1_1Rule.html#acbacb0365400543997388562eb2a8099", null ], + [ "setText", "classfl_1_1Rule.html#aeaba5fc5afe18eb656d95358120033f7", null ], + [ "setWeight", "classfl_1_1Rule.html#a1ed414c8b6c9fb759f7fb31e4e600e9d", null ], + [ "thenKeyword", "classfl_1_1Rule.html#a64a4724bc25ff81a788df4cfacbaca07", null ], + [ "toString", "classfl_1_1Rule.html#adfa6e97f1301e0d72292c6f08b9123af", null ], + [ "withKeyword", "classfl_1_1Rule.html#a0a9cb5b41edddb24376b9d76e276df1a", null ], + [ "_antecedent", "classfl_1_1Rule.html#a683eb935711e5635460ccd2aae058799", null ], + [ "_consequent", "classfl_1_1Rule.html#ae89e01c6d92f2299883e4ff4af116e97", null ], + [ "_text", "classfl_1_1Rule.html#a20274fc48a348154088377de031823bf", null ], + [ "_weight", "classfl_1_1Rule.html#abfde18c3de35a6475a65775e322ee737", null ], + [ "FL_AND", "classfl_1_1Rule.html#a6d4f3e6cf5f88fe37322d21f8ddcf895", null ], + [ "FL_EQUALS", "classfl_1_1Rule.html#a36c12c5ae1321335d87334023e01fa84", null ], + [ "FL_IF", "classfl_1_1Rule.html#accfd136c3453600147f92012d08d58da", null ], + [ "FL_IS", "classfl_1_1Rule.html#a70c95c8aba9754c6532035d0e03987cc", null ], + [ "FL_OR", "classfl_1_1Rule.html#afa624470efc917d0a09ae71c91970019", null ], + [ "FL_THEN", "classfl_1_1Rule.html#aa49f7be45b2b600ce6a3117c6a17e973", null ], + [ "FL_WITH", "classfl_1_1Rule.html#acddaccce7360343f2f4c7fe9b0cdfea5", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1RuleBlock-members.html b/docs/html/classfl_1_1RuleBlock-members.html new file mode 100644 index 0000000..ab93958 --- /dev/null +++ b/docs/html/classfl_1_1RuleBlock-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::RuleBlock Member List
+
+
+ +

This is the complete list of members for fl::RuleBlock, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_activationfl::RuleBlockprotected
_conjunctionfl::RuleBlockprotected
_disjunctionfl::RuleBlockprotected
_enabledfl::RuleBlockprotected
_namefl::RuleBlockprotected
_rulesfl::RuleBlockprotected
activate()fl::RuleBlockvirtual
addRule(Rule *rule)fl::RuleBlockvirtual
getActivation() const fl::RuleBlockvirtual
getConjunction() const fl::RuleBlockvirtual
getDisjunction() const fl::RuleBlockvirtual
getName() const fl::RuleBlockvirtual
getRule(int index) const fl::RuleBlockvirtual
insertRule(Rule *rule, int index)fl::RuleBlockvirtual
isEnabled() const fl::RuleBlockvirtual
numberOfRules() const fl::RuleBlockvirtual
removeRule(int index)fl::RuleBlockvirtual
RuleBlock(const std::string &name="")fl::RuleBlock
rules() const fl::RuleBlockvirtual
setActivation(const TNorm *activation)fl::RuleBlockvirtual
setConjunction(const TNorm *conjunction)fl::RuleBlockvirtual
setDisjunction(const SNorm *disjunction)fl::RuleBlockvirtual
setEnabled(bool enabled)fl::RuleBlockvirtual
setName(std::string name)fl::RuleBlockvirtual
toString() const fl::RuleBlockvirtual
~RuleBlock()fl::RuleBlockvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1RuleBlock.html b/docs/html/classfl_1_1RuleBlock.html new file mode 100644 index 0000000..57a8a61 --- /dev/null +++ b/docs/html/classfl_1_1RuleBlock.html @@ -0,0 +1,799 @@ + + + + + + +fuzzylite: fl::RuleBlock Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::RuleBlock Class Reference
+
+
+ +

#include <RuleBlock.h>

+
+Collaboration diagram for fl::RuleBlock:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 RuleBlock (const std::string &name="")
 
virtual ~RuleBlock ()
 
virtual void activate ()
 
virtual void setName (std::string name)
 
virtual std::string getName () const
 
virtual void setConjunction (const TNorm *conjunction)
 
virtual const TNormgetConjunction () const
 
virtual void setDisjunction (const SNorm *disjunction)
 
virtual const SNormgetDisjunction () const
 
virtual void setActivation (const TNorm *activation)
 
virtual const TNormgetActivation () const
 
virtual void setEnabled (bool enabled)
 
virtual bool isEnabled () const
 
virtual std::string toString () const
 
virtual void addRule (Rule *rule)
 
virtual void insertRule (Rule *rule, int index)
 
virtual RulegetRule (int index) const
 
virtual RuleremoveRule (int index)
 
virtual int numberOfRules () const
 
virtual const std::vector
+< Rule * > & 
rules () const
 
+ + + + + + + + + + + + + +

+Protected Attributes

std::vector< Rule * > _rules
 
std::string _name
 
const TNorm_conjunction
 
const SNorm_disjunction
 
const TNorm_activation
 
bool _enabled
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::RuleBlock::RuleBlock (const std::string & name = "")
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::RuleBlock::~RuleBlock ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void fl::RuleBlock::activate ()
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::addRule (Rulerule)
+
+virtual
+
+

Operations for iterable datatype _rules

+

Operations for datatype _rules

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const TNorm * fl::RuleBlock::getActivation () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const TNorm * fl::RuleBlock::getConjunction () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const SNorm * fl::RuleBlock::getDisjunction () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::RuleBlock::getName () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Rule * fl::RuleBlock::getRule (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::RuleBlock::insertRule (Rulerule,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::RuleBlock::isEnabled () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::RuleBlock::numberOfRules () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Rule * fl::RuleBlock::removeRule (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< Rule * > & fl::RuleBlock::rules () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::setActivation (const TNormactivation)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::setConjunction (const TNormconjunction)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::setDisjunction (const SNormdisjunction)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::setEnabled (bool enabled)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::RuleBlock::setName (std::string name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::RuleBlock::toString () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const TNorm* fl::RuleBlock::_activation
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const TNorm* fl::RuleBlock::_conjunction
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const SNorm* fl::RuleBlock::_disjunction
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
bool fl::RuleBlock::_enabled
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::RuleBlock::_name
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<Rule*> fl::RuleBlock::_rules
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1RuleBlock.js b/docs/html/classfl_1_1RuleBlock.js new file mode 100644 index 0000000..72d443e --- /dev/null +++ b/docs/html/classfl_1_1RuleBlock.js @@ -0,0 +1,29 @@ +var classfl_1_1RuleBlock = +[ + [ "RuleBlock", "classfl_1_1RuleBlock.html#ace0c87fdaa860f31bc5c7964b47c2ebc", null ], + [ "~RuleBlock", "classfl_1_1RuleBlock.html#a821fc78689df167ec6e7c8b534e5615b", null ], + [ "activate", "classfl_1_1RuleBlock.html#a4a71297776c25fb87a60d7a6e0c9adc0", null ], + [ "addRule", "classfl_1_1RuleBlock.html#ac22d5325d9f446bbee5a7029f3fde978", null ], + [ "getActivation", "classfl_1_1RuleBlock.html#aece505e71bdb55648d43f907f2569cdd", null ], + [ "getConjunction", "classfl_1_1RuleBlock.html#a797b1eee683e243bba549371660b589b", null ], + [ "getDisjunction", "classfl_1_1RuleBlock.html#a5b429157fdd3b34e31a713a0012eb525", null ], + [ "getName", "classfl_1_1RuleBlock.html#aa5ecbdc1c6d8c58e646a26fc46312dfb", null ], + [ "getRule", "classfl_1_1RuleBlock.html#a44a4516d8e39f0dbda4ea35c55d70f44", null ], + [ "insertRule", "classfl_1_1RuleBlock.html#aa3733a36fa8a578b8eb053952f246259", null ], + [ "isEnabled", "classfl_1_1RuleBlock.html#a64bd2b2ac301dda1a9a60c5bbd82465b", null ], + [ "numberOfRules", "classfl_1_1RuleBlock.html#ab1300746c0e0d6ba3dfe7724dc24ea6d", null ], + [ "removeRule", "classfl_1_1RuleBlock.html#a93a45335aa50f2033fec5146ab1553f9", null ], + [ "rules", "classfl_1_1RuleBlock.html#aa64fb71dae713d530c02cd168d47910d", null ], + [ "setActivation", "classfl_1_1RuleBlock.html#ae61d6c0e0abf753e8f2387dbeb9b96f8", null ], + [ "setConjunction", "classfl_1_1RuleBlock.html#a0063308d826b58c93e794ef7fb2e6aea", null ], + [ "setDisjunction", "classfl_1_1RuleBlock.html#adaa02f1efdbb3769869df13802445f6b", null ], + [ "setEnabled", "classfl_1_1RuleBlock.html#a2ec9c0522dae7ab556a8668d56f50092", null ], + [ "setName", "classfl_1_1RuleBlock.html#a22bd9d7799508a81007549203996634f", null ], + [ "toString", "classfl_1_1RuleBlock.html#a94435fd1ce2df4df3ba5bab4f991ade6", null ], + [ "_activation", "classfl_1_1RuleBlock.html#af7b0fcdd06aec8bf85eec9b8e524e512", null ], + [ "_conjunction", "classfl_1_1RuleBlock.html#ab1bfd4615560a594ca3565cd2be03b4d", null ], + [ "_disjunction", "classfl_1_1RuleBlock.html#a15e8f50bae4e37ca96e8c181663e141b", null ], + [ "_enabled", "classfl_1_1RuleBlock.html#a4c45f750812d0552af1c2dfdfd401475", null ], + [ "_name", "classfl_1_1RuleBlock.html#a9360214a72cf4b5848e48212df2bc17f", null ], + [ "_rules", "classfl_1_1RuleBlock.html#a21c7d3c3b2f78463c49a0067a7e0318c", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1RuleBlock__coll__graph.map b/docs/html/classfl_1_1RuleBlock__coll__graph.map new file mode 100644 index 0000000..3f0f822 --- /dev/null +++ b/docs/html/classfl_1_1RuleBlock__coll__graph.map @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1RuleBlock__coll__graph.md5 b/docs/html/classfl_1_1RuleBlock__coll__graph.md5 new file mode 100644 index 0000000..c6c4719 --- /dev/null +++ b/docs/html/classfl_1_1RuleBlock__coll__graph.md5 @@ -0,0 +1 @@ +8d9be585d3ba6819665b173f3d5158a7 \ No newline at end of file diff --git a/docs/html/classfl_1_1RuleBlock__coll__graph.png b/docs/html/classfl_1_1RuleBlock__coll__graph.png new file mode 100644 index 0000000..18b8728 Binary files /dev/null and b/docs/html/classfl_1_1RuleBlock__coll__graph.png differ diff --git a/docs/html/classfl_1_1Rule__coll__graph.map b/docs/html/classfl_1_1Rule__coll__graph.map new file mode 100644 index 0000000..447991b --- /dev/null +++ b/docs/html/classfl_1_1Rule__coll__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/docs/html/classfl_1_1Rule__coll__graph.md5 b/docs/html/classfl_1_1Rule__coll__graph.md5 new file mode 100644 index 0000000..dff3238 --- /dev/null +++ b/docs/html/classfl_1_1Rule__coll__graph.md5 @@ -0,0 +1 @@ +f940d833194926dac6f73ad49f034cb2 \ No newline at end of file diff --git a/docs/html/classfl_1_1Rule__coll__graph.png b/docs/html/classfl_1_1Rule__coll__graph.png new file mode 100644 index 0000000..a612ebb Binary files /dev/null and b/docs/html/classfl_1_1Rule__coll__graph.png differ diff --git a/docs/html/classfl_1_1SNorm-members.html b/docs/html/classfl_1_1SNorm-members.html new file mode 100644 index 0000000..43c7575 --- /dev/null +++ b/docs/html/classfl_1_1SNorm-members.html @@ -0,0 +1,133 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SNorm Member List
+
+
+ +

This is the complete list of members for fl::SNorm, including all inherited members.

+ + + + + + + +
className() const =0fl::Normpure virtual
compute(scalar a, scalar b) const =0fl::Normpure virtual
Norm()fl::Norminline
SNorm()fl::SNorminline
~Norm()fl::Norminlinevirtual
~SNorm()fl::SNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SNorm.html b/docs/html/classfl_1_1SNorm.html new file mode 100644 index 0000000..e961de5 --- /dev/null +++ b/docs/html/classfl_1_1SNorm.html @@ -0,0 +1,211 @@ + + + + + + +fuzzylite: fl::SNorm Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::SNorm Class Reference
+
+
+ +

#include <SNorm.h>

+
+Inheritance diagram for fl::SNorm:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SNorm:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 SNorm ()
 
virtual ~SNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
virtual std::string className () const =0
 
virtual scalar compute (scalar a, scalar b) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::SNorm::SNorm ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::SNorm::~SNorm ()
+
+inlinevirtual
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1SNorm.js b/docs/html/classfl_1_1SNorm.js new file mode 100644 index 0000000..ab3b922 --- /dev/null +++ b/docs/html/classfl_1_1SNorm.js @@ -0,0 +1,5 @@ +var classfl_1_1SNorm = +[ + [ "SNorm", "classfl_1_1SNorm.html#a57aaa46c8866d1bb249390b3b4c144af", null ], + [ "~SNorm", "classfl_1_1SNorm.html#a95e973ef6bc8e85ed54eb260923c1035", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SNormFactory-members.html b/docs/html/classfl_1_1SNormFactory-members.html new file mode 100644 index 0000000..d351399 --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SNormFactory Member List
+
+
+ +

This is the complete list of members for fl::SNormFactory, including all inherited members.

+ + + + + + + + + + + + +
available() constfl::Factory< SNorm * >virtual
createInstance(const std::string &key) constfl::Factory< SNorm * >virtual
Creator typedeffl::Factory< SNorm * >
deregisterClass(const std::string &key)fl::Factory< SNorm * >virtual
Factory()fl::Factory< SNorm * >
hasRegisteredClass(const std::string &key) constfl::Factory< SNorm * >virtual
mapfl::Factory< SNorm * >protected
registerClass(const std::string &key, Creator creator)fl::Factory< SNorm * >virtual
SNormFactory()fl::SNormFactory
~Factory()fl::Factory< SNorm * >virtual
~SNormFactory()fl::SNormFactoryvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SNormFactory.html b/docs/html/classfl_1_1SNormFactory.html new file mode 100644 index 0000000..0e54416 --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: fl::SNormFactory Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::SNormFactory Class Reference
+
+
+ +

#include <SNormFactory.h>

+
+Inheritance diagram for fl::SNormFactory:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SNormFactory:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SNormFactory ()
 
virtual ~SNormFactory ()
 
- Public Member Functions inherited from fl::Factory< SNorm * >
 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual SNormcreateInstance (const std::string &key) const
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from fl::Factory< SNorm * >
typedef SNorm *(* Creator )()
 
- Protected Attributes inherited from fl::Factory< SNorm * >
std::map< std::string, Creator > map
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::SNormFactory::SNormFactory ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::SNormFactory::~SNormFactory ()
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1SNormFactory.js b/docs/html/classfl_1_1SNormFactory.js new file mode 100644 index 0000000..9a6d32b --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory.js @@ -0,0 +1,5 @@ +var classfl_1_1SNormFactory = +[ + [ "SNormFactory", "classfl_1_1SNormFactory.html#a1d6357b8589db16e37602998735b9151", null ], + [ "~SNormFactory", "classfl_1_1SNormFactory.html#ad5842aa0eb3048900c03ce3d338684c3", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SNormFactory__coll__graph.map b/docs/html/classfl_1_1SNormFactory__coll__graph.map new file mode 100644 index 0000000..0e4c47b --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1SNormFactory__coll__graph.md5 b/docs/html/classfl_1_1SNormFactory__coll__graph.md5 new file mode 100644 index 0000000..1e0369f --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory__coll__graph.md5 @@ -0,0 +1 @@ +3d7e05a6ff5bc9e8548c72fab53a030f \ No newline at end of file diff --git a/docs/html/classfl_1_1SNormFactory__coll__graph.png b/docs/html/classfl_1_1SNormFactory__coll__graph.png new file mode 100644 index 0000000..32b4ecc Binary files /dev/null and b/docs/html/classfl_1_1SNormFactory__coll__graph.png differ diff --git a/docs/html/classfl_1_1SNormFactory__inherit__graph.map b/docs/html/classfl_1_1SNormFactory__inherit__graph.map new file mode 100644 index 0000000..4e8c454 --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1SNormFactory__inherit__graph.md5 b/docs/html/classfl_1_1SNormFactory__inherit__graph.md5 new file mode 100644 index 0000000..b513514 --- /dev/null +++ b/docs/html/classfl_1_1SNormFactory__inherit__graph.md5 @@ -0,0 +1 @@ +236e2fab6552b61f3b13db93e4418f06 \ No newline at end of file diff --git a/docs/html/classfl_1_1SNormFactory__inherit__graph.png b/docs/html/classfl_1_1SNormFactory__inherit__graph.png new file mode 100644 index 0000000..6187e7b Binary files /dev/null and b/docs/html/classfl_1_1SNormFactory__inherit__graph.png differ diff --git a/docs/html/classfl_1_1SNorm__coll__graph.map b/docs/html/classfl_1_1SNorm__coll__graph.map new file mode 100644 index 0000000..a38b562 --- /dev/null +++ b/docs/html/classfl_1_1SNorm__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1SNorm__coll__graph.md5 b/docs/html/classfl_1_1SNorm__coll__graph.md5 new file mode 100644 index 0000000..4b6d511 --- /dev/null +++ b/docs/html/classfl_1_1SNorm__coll__graph.md5 @@ -0,0 +1 @@ +e19ca2e2c139260a8577306ce4bf069c \ No newline at end of file diff --git a/docs/html/classfl_1_1SNorm__coll__graph.png b/docs/html/classfl_1_1SNorm__coll__graph.png new file mode 100644 index 0000000..e9fe3b9 Binary files /dev/null and b/docs/html/classfl_1_1SNorm__coll__graph.png differ diff --git a/docs/html/classfl_1_1SNorm__inherit__graph.map b/docs/html/classfl_1_1SNorm__inherit__graph.map new file mode 100644 index 0000000..5f56146 --- /dev/null +++ b/docs/html/classfl_1_1SNorm__inherit__graph.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/classfl_1_1SNorm__inherit__graph.md5 b/docs/html/classfl_1_1SNorm__inherit__graph.md5 new file mode 100644 index 0000000..50f67da --- /dev/null +++ b/docs/html/classfl_1_1SNorm__inherit__graph.md5 @@ -0,0 +1 @@ +5aea6377526aa1847c3023228a22ce15 \ No newline at end of file diff --git a/docs/html/classfl_1_1SNorm__inherit__graph.png b/docs/html/classfl_1_1SNorm__inherit__graph.png new file mode 100644 index 0000000..85c206d Binary files /dev/null and b/docs/html/classfl_1_1SNorm__inherit__graph.png differ diff --git a/docs/html/classfl_1_1SShape-members.html b/docs/html/classfl_1_1SShape-members.html new file mode 100644 index 0000000..3631da1 --- /dev/null +++ b/docs/html/classfl_1_1SShape-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SShape Member List
+
+
+ +

This is the complete list of members for fl::SShape, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_endfl::SShapeprotected
_namefl::Termprotected
_startfl::SShapeprotected
className() const fl::SShapevirtual
configure(const std::string &parameters)fl::SShapevirtual
constructor()fl::SShapestatic
copy() const fl::SShapevirtual
getEnd() const fl::SShapevirtual
getName() const fl::Termvirtual
getStart() const fl::SShapevirtual
membership(scalar x) const fl::SShapevirtual
parameters() const fl::SShapevirtual
setEnd(scalar end)fl::SShapevirtual
setName(const std::string &name)fl::Termvirtual
setStart(scalar start)fl::SShapevirtual
SShape(const std::string &name="", scalar _start=-fl::inf, scalar _end=fl::inf)fl::SShape
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~SShape()fl::SShapevirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SShape.html b/docs/html/classfl_1_1SShape.html new file mode 100644 index 0000000..3c6d224 --- /dev/null +++ b/docs/html/classfl_1_1SShape.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::SShape Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <SShape.h>

+
+Inheritance diagram for fl::SShape:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SShape:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SShape (const std::string &name="", scalar _start=-fl::inf, scalar _end=fl::inf)
 
virtual ~SShape ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setStart (scalar start)
 
virtual scalar getStart () const
 
virtual void setEnd (scalar end)
 
virtual scalar getEnd () const
 
virtual SShapecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _start
 
scalar _end
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::SShape::SShape (const std::string & name = "",
scalar _start = -fl::inf,
scalar _end = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::SShape::~SShape ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SShape::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SShape::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::SShape::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SShape * fl::SShape::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SShape::getEnd () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SShape::getStart () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::SShape::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SShape::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SShape::setEnd (scalar end)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SShape::setStart (scalar start)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::SShape::_end
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SShape::_start
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1SShape.js b/docs/html/classfl_1_1SShape.js new file mode 100644 index 0000000..412e0bc --- /dev/null +++ b/docs/html/classfl_1_1SShape.js @@ -0,0 +1,17 @@ +var classfl_1_1SShape = +[ + [ "SShape", "classfl_1_1SShape.html#ab49faed746f299e6b6c194e070637f2b", null ], + [ "~SShape", "classfl_1_1SShape.html#ac00269f23058fb9a75ef38bf567ba9cf", null ], + [ "className", "classfl_1_1SShape.html#ae4703c2f06aa41d086f44125c03dae7f", null ], + [ "configure", "classfl_1_1SShape.html#a1dd1a940158dac71e3cdf6833a70046e", null ], + [ "constructor", "classfl_1_1SShape.html#a9a3814c905ec7ecb0be8746959a19c6e", null ], + [ "copy", "classfl_1_1SShape.html#afef1d4cfb56b9c41dc605dec148d1b66", null ], + [ "getEnd", "classfl_1_1SShape.html#a00b9f5874d4c73b6af95cb8cbf904885", null ], + [ "getStart", "classfl_1_1SShape.html#ad8d53ac163ca3a66c537a55f4d3773e0", null ], + [ "membership", "classfl_1_1SShape.html#a95b6da4d1df8716190717e5ff8213928", null ], + [ "parameters", "classfl_1_1SShape.html#a3b10741f63553b1be4fc4daf15cd4a39", null ], + [ "setEnd", "classfl_1_1SShape.html#aad2d8e8c1f6c68079be1cff2453cb20d", null ], + [ "setStart", "classfl_1_1SShape.html#aef70e37103979595a6abceefe24de522", null ], + [ "_end", "classfl_1_1SShape.html#aace3f0789823a5bfda5b468ef966b052", null ], + [ "_start", "classfl_1_1SShape.html#ada38fba887b769e59706741ea315d810", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SShape__coll__graph.map b/docs/html/classfl_1_1SShape__coll__graph.map new file mode 100644 index 0000000..18f0261 --- /dev/null +++ b/docs/html/classfl_1_1SShape__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1SShape__coll__graph.md5 b/docs/html/classfl_1_1SShape__coll__graph.md5 new file mode 100644 index 0000000..2849712 --- /dev/null +++ b/docs/html/classfl_1_1SShape__coll__graph.md5 @@ -0,0 +1 @@ +f6c2c568142204654beeb84018a93632 \ No newline at end of file diff --git a/docs/html/classfl_1_1SShape__coll__graph.png b/docs/html/classfl_1_1SShape__coll__graph.png new file mode 100644 index 0000000..f885cb3 Binary files /dev/null and b/docs/html/classfl_1_1SShape__coll__graph.png differ diff --git a/docs/html/classfl_1_1SShape__inherit__graph.map b/docs/html/classfl_1_1SShape__inherit__graph.map new file mode 100644 index 0000000..ed4d9f6 --- /dev/null +++ b/docs/html/classfl_1_1SShape__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1SShape__inherit__graph.md5 b/docs/html/classfl_1_1SShape__inherit__graph.md5 new file mode 100644 index 0000000..996b68d --- /dev/null +++ b/docs/html/classfl_1_1SShape__inherit__graph.md5 @@ -0,0 +1 @@ +be8a35bdef16a1fd6dcfb01cf92ee492 \ No newline at end of file diff --git a/docs/html/classfl_1_1SShape__inherit__graph.png b/docs/html/classfl_1_1SShape__inherit__graph.png new file mode 100644 index 0000000..c5535b9 Binary files /dev/null and b/docs/html/classfl_1_1SShape__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Seldom-members.html b/docs/html/classfl_1_1Seldom-members.html new file mode 100644 index 0000000..918d667 --- /dev/null +++ b/docs/html/classfl_1_1Seldom-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Seldom Member List
+
+
+ +

This is the complete list of members for fl::Seldom, including all inherited members.

+ + + + + + +
constructor()fl::Seldomstatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Seldomvirtual
name() const fl::Seldomvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Seldom.html b/docs/html/classfl_1_1Seldom.html new file mode 100644 index 0000000..4fe5efe --- /dev/null +++ b/docs/html/classfl_1_1Seldom.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Seldom Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Seldom.h>

+
+Inheritance diagram for fl::Seldom:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Seldom:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Seldom::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Seldom::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Seldom::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Seldom.js b/docs/html/classfl_1_1Seldom.js new file mode 100644 index 0000000..7efc9fe --- /dev/null +++ b/docs/html/classfl_1_1Seldom.js @@ -0,0 +1,6 @@ +var classfl_1_1Seldom = +[ + [ "constructor", "classfl_1_1Seldom.html#a797fa8fa609c431ab15ad81acf8011b6", null ], + [ "hedge", "classfl_1_1Seldom.html#a09ddaa9c37d6f47a93fdca30de9ca76e", null ], + [ "name", "classfl_1_1Seldom.html#a10942e294076f4a7ccf72d83c4ecb771", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Seldom__coll__graph.map b/docs/html/classfl_1_1Seldom__coll__graph.map new file mode 100644 index 0000000..f8b4bc9 --- /dev/null +++ b/docs/html/classfl_1_1Seldom__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Seldom__coll__graph.md5 b/docs/html/classfl_1_1Seldom__coll__graph.md5 new file mode 100644 index 0000000..040767a --- /dev/null +++ b/docs/html/classfl_1_1Seldom__coll__graph.md5 @@ -0,0 +1 @@ +61d4392504a43786f85f60481d634b2d \ No newline at end of file diff --git a/docs/html/classfl_1_1Seldom__coll__graph.png b/docs/html/classfl_1_1Seldom__coll__graph.png new file mode 100644 index 0000000..4439bb8 Binary files /dev/null and b/docs/html/classfl_1_1Seldom__coll__graph.png differ diff --git a/docs/html/classfl_1_1Seldom__inherit__graph.map b/docs/html/classfl_1_1Seldom__inherit__graph.map new file mode 100644 index 0000000..f8b4bc9 --- /dev/null +++ b/docs/html/classfl_1_1Seldom__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Seldom__inherit__graph.md5 b/docs/html/classfl_1_1Seldom__inherit__graph.md5 new file mode 100644 index 0000000..040767a --- /dev/null +++ b/docs/html/classfl_1_1Seldom__inherit__graph.md5 @@ -0,0 +1 @@ +61d4392504a43786f85f60481d634b2d \ No newline at end of file diff --git a/docs/html/classfl_1_1Seldom__inherit__graph.png b/docs/html/classfl_1_1Seldom__inherit__graph.png new file mode 100644 index 0000000..4439bb8 Binary files /dev/null and b/docs/html/classfl_1_1Seldom__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Sigmoid-members.html b/docs/html/classfl_1_1Sigmoid-members.html new file mode 100644 index 0000000..0ccc781 --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Sigmoid Member List
+
+
+ +

This is the complete list of members for fl::Sigmoid, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_inflectionfl::Sigmoidprotected
_namefl::Termprotected
_slopefl::Sigmoidprotected
className() const fl::Sigmoidvirtual
configure(const std::string &parameters)fl::Sigmoidvirtual
constructor()fl::Sigmoidstatic
copy() const fl::Sigmoidvirtual
getInflection() const fl::Sigmoidvirtual
getName() const fl::Termvirtual
getSlope() const fl::Sigmoidvirtual
membership(scalar x) const fl::Sigmoidvirtual
parameters() const fl::Sigmoidvirtual
setInflection(scalar inflection)fl::Sigmoidvirtual
setName(const std::string &name)fl::Termvirtual
setSlope(scalar slope)fl::Sigmoidvirtual
Sigmoid(const std::string &name="", scalar inflection=fl::nan, scalar slope=fl::nan)fl::Sigmoid
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Sigmoid()fl::Sigmoidvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Sigmoid.html b/docs/html/classfl_1_1Sigmoid.html new file mode 100644 index 0000000..12c347a --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::Sigmoid Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Sigmoid.h>

+
+Inheritance diagram for fl::Sigmoid:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Sigmoid:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Sigmoid (const std::string &name="", scalar inflection=fl::nan, scalar slope=fl::nan)
 
virtual ~Sigmoid ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setInflection (scalar inflection)
 
virtual scalar getInflection () const
 
virtual void setSlope (scalar slope)
 
virtual scalar getSlope () const
 
virtual Sigmoidcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _inflection
 
scalar _slope
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Sigmoid::Sigmoid (const std::string & name = "",
scalar inflection = fl::nan,
scalar slope = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Sigmoid::~Sigmoid ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Sigmoid::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Sigmoid::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Sigmoid::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Sigmoid * fl::Sigmoid::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Sigmoid::getInflection () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Sigmoid::getSlope () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Sigmoid::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Sigmoid::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Sigmoid::setInflection (scalar inflection)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Sigmoid::setSlope (scalar slope)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Sigmoid::_inflection
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Sigmoid::_slope
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Sigmoid.js b/docs/html/classfl_1_1Sigmoid.js new file mode 100644 index 0000000..64d89e7 --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid.js @@ -0,0 +1,17 @@ +var classfl_1_1Sigmoid = +[ + [ "Sigmoid", "classfl_1_1Sigmoid.html#a7ac49ce947a1f1e7c983300470c717ea", null ], + [ "~Sigmoid", "classfl_1_1Sigmoid.html#a739b7c89f1ae2c7a1249e0677b2a2b99", null ], + [ "className", "classfl_1_1Sigmoid.html#a041068ed00b5f71d63eaaef85b9965a3", null ], + [ "configure", "classfl_1_1Sigmoid.html#a8ebea71a9b3f4453cf9400d0ea2d72b8", null ], + [ "constructor", "classfl_1_1Sigmoid.html#ab51722fe28e76a1838461ddf2eb38898", null ], + [ "copy", "classfl_1_1Sigmoid.html#a160d05a70c6403039aabbbedd88296a3", null ], + [ "getInflection", "classfl_1_1Sigmoid.html#a7a0d855fc287413f7b740bc4619c350b", null ], + [ "getSlope", "classfl_1_1Sigmoid.html#a83f9471108c479f65d207881f7bece1f", null ], + [ "membership", "classfl_1_1Sigmoid.html#ab704c08f9251bb86c7b6452d277c4b85", null ], + [ "parameters", "classfl_1_1Sigmoid.html#af31208d52da5262004df47169a35db02", null ], + [ "setInflection", "classfl_1_1Sigmoid.html#a30efb9dd268ec57bcd462fe231fd3835", null ], + [ "setSlope", "classfl_1_1Sigmoid.html#a68506ad83b40be87aa62fef391f1bfcf", null ], + [ "_inflection", "classfl_1_1Sigmoid.html#a047e9747674b2e72288301086c060a9d", null ], + [ "_slope", "classfl_1_1Sigmoid.html#a2a1a6c704cb9619c0dc2c71fe723dd8a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidDifference-members.html b/docs/html/classfl_1_1SigmoidDifference-members.html new file mode 100644 index 0000000..0e86b1c --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SigmoidDifference Member List
+
+
+ +

This is the complete list of members for fl::SigmoidDifference, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_fallingfl::SigmoidDifferenceprotected
_leftfl::SigmoidDifferenceprotected
_namefl::Termprotected
_rightfl::SigmoidDifferenceprotected
_risingfl::SigmoidDifferenceprotected
className() const fl::SigmoidDifferencevirtual
configure(const std::string &parameters)fl::SigmoidDifferencevirtual
constructor()fl::SigmoidDifferencestatic
copy() const fl::SigmoidDifferencevirtual
getFalling() const fl::SigmoidDifferencevirtual
getLeft() const fl::SigmoidDifferencevirtual
getName() const fl::Termvirtual
getRight() const fl::SigmoidDifferencevirtual
getRising() const fl::SigmoidDifferencevirtual
membership(scalar x) const fl::SigmoidDifferencevirtual
parameters() const fl::SigmoidDifferencevirtual
setFalling(scalar fallingSlope)fl::SigmoidDifferencevirtual
setLeft(scalar leftInflection)fl::SigmoidDifferencevirtual
setName(const std::string &name)fl::Termvirtual
setRight(scalar rightInflection)fl::SigmoidDifferencevirtual
setRising(scalar risingSlope)fl::SigmoidDifferencevirtual
SigmoidDifference(const std::string &name="", scalar left=fl::nan, scalar rising=fl::nan, scalar falling=fl::nan, scalar right=fl::nan)fl::SigmoidDifference
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~SigmoidDifference()fl::SigmoidDifferencevirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SigmoidDifference.html b/docs/html/classfl_1_1SigmoidDifference.html new file mode 100644 index 0000000..f6ddee9 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference.html @@ -0,0 +1,702 @@ + + + + + + +fuzzylite: fl::SigmoidDifference Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <SigmoidDifference.h>

+
+Inheritance diagram for fl::SigmoidDifference:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SigmoidDifference:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SigmoidDifference (const std::string &name="", scalar left=fl::nan, scalar rising=fl::nan, scalar falling=fl::nan, scalar right=fl::nan)
 
virtual ~SigmoidDifference ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setLeft (scalar leftInflection)
 
virtual scalar getLeft () const
 
virtual void setRising (scalar risingSlope)
 
virtual scalar getRising () const
 
virtual void setFalling (scalar fallingSlope)
 
virtual scalar getFalling () const
 
virtual void setRight (scalar rightInflection)
 
virtual scalar getRight () const
 
virtual SigmoidDifferencecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + + + +

+Protected Attributes

scalar _left
 
scalar _rising
 
scalar _falling
 
scalar _right
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::SigmoidDifference::SigmoidDifference (const std::string & name = "",
scalar left = fl::nan,
scalar rising = fl::nan,
scalar falling = fl::nan,
scalar right = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::SigmoidDifference::~SigmoidDifference ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SigmoidDifference::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidDifference::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::SigmoidDifference::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SigmoidDifference * fl::SigmoidDifference::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidDifference::getFalling () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidDifference::getLeft () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidDifference::getRight () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidDifference::getRising () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::SigmoidDifference::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SigmoidDifference::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidDifference::setFalling (scalar fallingSlope)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidDifference::setLeft (scalar leftInflection)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidDifference::setRight (scalar rightInflection)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidDifference::setRising (scalar risingSlope)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidDifference::_falling
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidDifference::_left
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidDifference::_right
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidDifference::_rising
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1SigmoidDifference.js b/docs/html/classfl_1_1SigmoidDifference.js new file mode 100644 index 0000000..9030504 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference.js @@ -0,0 +1,23 @@ +var classfl_1_1SigmoidDifference = +[ + [ "SigmoidDifference", "classfl_1_1SigmoidDifference.html#a19c58fd4be7f89cdb74642d24f72c4e2", null ], + [ "~SigmoidDifference", "classfl_1_1SigmoidDifference.html#a2b687452721fcf9099cafacdb56becca", null ], + [ "className", "classfl_1_1SigmoidDifference.html#a70668837104e1388972f6ef35a8d92f3", null ], + [ "configure", "classfl_1_1SigmoidDifference.html#ad7abd6cb8a42ac01bc6a280b60a05f5f", null ], + [ "constructor", "classfl_1_1SigmoidDifference.html#abef39f7d6e542a4d2390d84430fbcbd2", null ], + [ "copy", "classfl_1_1SigmoidDifference.html#abb20c3349649e34a62c9ea15c38908bd", null ], + [ "getFalling", "classfl_1_1SigmoidDifference.html#a3b82e5868627b078f6501d60ed370b95", null ], + [ "getLeft", "classfl_1_1SigmoidDifference.html#ada1f5fb685c4a368ef921d9a39066f6b", null ], + [ "getRight", "classfl_1_1SigmoidDifference.html#aa0a0e0156e906e86554171f71226bb21", null ], + [ "getRising", "classfl_1_1SigmoidDifference.html#a866ad6003c772f12617674c419912359", null ], + [ "membership", "classfl_1_1SigmoidDifference.html#a1c222c6d79caa4d34efe3afd43a94742", null ], + [ "parameters", "classfl_1_1SigmoidDifference.html#a7e59ac222159477a0569a1f92118af33", null ], + [ "setFalling", "classfl_1_1SigmoidDifference.html#a89001909ecb959b8b666629ea05522e2", null ], + [ "setLeft", "classfl_1_1SigmoidDifference.html#aaaf6d5dc80dba26bef5c4afacabebc72", null ], + [ "setRight", "classfl_1_1SigmoidDifference.html#a6ac7371a547ce2d21f913fcaba000dc1", null ], + [ "setRising", "classfl_1_1SigmoidDifference.html#ad118c55132e218b17e156ee5e2e48898", null ], + [ "_falling", "classfl_1_1SigmoidDifference.html#aee8ab367cb39e486d41d75ac70171e31", null ], + [ "_left", "classfl_1_1SigmoidDifference.html#a6bb2a9cbf1bec2d66b414ec22f5a2c91", null ], + [ "_right", "classfl_1_1SigmoidDifference.html#aefda31f6ee4fd714ff6d75b9799b7642", null ], + [ "_rising", "classfl_1_1SigmoidDifference.html#aaa9b83b82f261e31c2ad1d083de34e8f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidDifference__coll__graph.map b/docs/html/classfl_1_1SigmoidDifference__coll__graph.map new file mode 100644 index 0000000..f986bd9 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1SigmoidDifference__coll__graph.md5 b/docs/html/classfl_1_1SigmoidDifference__coll__graph.md5 new file mode 100644 index 0000000..eccd3ee --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference__coll__graph.md5 @@ -0,0 +1 @@ +a019b36afd29541c1e421892b6554f28 \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidDifference__coll__graph.png b/docs/html/classfl_1_1SigmoidDifference__coll__graph.png new file mode 100644 index 0000000..9f14b68 Binary files /dev/null and b/docs/html/classfl_1_1SigmoidDifference__coll__graph.png differ diff --git a/docs/html/classfl_1_1SigmoidDifference__inherit__graph.map b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.map new file mode 100644 index 0000000..a9467af --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1SigmoidDifference__inherit__graph.md5 b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.md5 new file mode 100644 index 0000000..68cc8c7 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.md5 @@ -0,0 +1 @@ +8a06ebb4b55f99de48651381c34c3ce5 \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidDifference__inherit__graph.png b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.png new file mode 100644 index 0000000..18366ff Binary files /dev/null and b/docs/html/classfl_1_1SigmoidDifference__inherit__graph.png differ diff --git a/docs/html/classfl_1_1SigmoidProduct-members.html b/docs/html/classfl_1_1SigmoidProduct-members.html new file mode 100644 index 0000000..429c50e --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SigmoidProduct Member List
+
+
+ +

This is the complete list of members for fl::SigmoidProduct, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_fallingfl::SigmoidProductprotected
_leftfl::SigmoidProductprotected
_namefl::Termprotected
_rightfl::SigmoidProductprotected
_risingfl::SigmoidProductprotected
className() const fl::SigmoidProductvirtual
configure(const std::string &parameters)fl::SigmoidProductvirtual
constructor()fl::SigmoidProductstatic
copy() const fl::SigmoidProductvirtual
getFalling() const fl::SigmoidProductvirtual
getLeft() const fl::SigmoidProductvirtual
getName() const fl::Termvirtual
getRight() const fl::SigmoidProductvirtual
getRising() const fl::SigmoidProductvirtual
membership(scalar x) const fl::SigmoidProductvirtual
parameters() const fl::SigmoidProductvirtual
setFalling(scalar fallingSlope)fl::SigmoidProductvirtual
setLeft(scalar leftInflection)fl::SigmoidProductvirtual
setName(const std::string &name)fl::Termvirtual
setRight(scalar rightInflection)fl::SigmoidProductvirtual
setRising(scalar risingSlope)fl::SigmoidProductvirtual
SigmoidProduct(const std::string &name="", scalar left=fl::nan, scalar rising=fl::nan, scalar falling=fl::nan, scalar right=fl::nan)fl::SigmoidProduct
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~SigmoidProduct()fl::SigmoidProductvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SigmoidProduct.html b/docs/html/classfl_1_1SigmoidProduct.html new file mode 100644 index 0000000..1a48ac5 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct.html @@ -0,0 +1,702 @@ + + + + + + +fuzzylite: fl::SigmoidProduct Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <SigmoidProduct.h>

+
+Inheritance diagram for fl::SigmoidProduct:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SigmoidProduct:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SigmoidProduct (const std::string &name="", scalar left=fl::nan, scalar rising=fl::nan, scalar falling=fl::nan, scalar right=fl::nan)
 
virtual ~SigmoidProduct ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setLeft (scalar leftInflection)
 
virtual scalar getLeft () const
 
virtual void setRising (scalar risingSlope)
 
virtual scalar getRising () const
 
virtual void setFalling (scalar fallingSlope)
 
virtual scalar getFalling () const
 
virtual void setRight (scalar rightInflection)
 
virtual scalar getRight () const
 
virtual SigmoidProductcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + + + +

+Protected Attributes

scalar _left
 
scalar _rising
 
scalar _falling
 
scalar _right
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::SigmoidProduct::SigmoidProduct (const std::string & name = "",
scalar left = fl::nan,
scalar rising = fl::nan,
scalar falling = fl::nan,
scalar right = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::SigmoidProduct::~SigmoidProduct ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SigmoidProduct::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidProduct::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::SigmoidProduct::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
SigmoidProduct * fl::SigmoidProduct::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidProduct::getFalling () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidProduct::getLeft () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidProduct::getRight () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::SigmoidProduct::getRising () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::SigmoidProduct::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SigmoidProduct::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidProduct::setFalling (scalar fallingSlope)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidProduct::setLeft (scalar leftInflection)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidProduct::setRight (scalar rightInflection)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::SigmoidProduct::setRising (scalar risingSlope)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidProduct::_falling
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidProduct::_left
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidProduct::_right
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::SigmoidProduct::_rising
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1SigmoidProduct.js b/docs/html/classfl_1_1SigmoidProduct.js new file mode 100644 index 0000000..5229d27 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct.js @@ -0,0 +1,23 @@ +var classfl_1_1SigmoidProduct = +[ + [ "SigmoidProduct", "classfl_1_1SigmoidProduct.html#a372515ab559efe0971d93be1fd450c9a", null ], + [ "~SigmoidProduct", "classfl_1_1SigmoidProduct.html#ab64f25b7a88958654a31a77cee766868", null ], + [ "className", "classfl_1_1SigmoidProduct.html#a57a79ecae4ae191c794daa8f6e7262f0", null ], + [ "configure", "classfl_1_1SigmoidProduct.html#aff50affd81bbd658a4a241de68d8489e", null ], + [ "constructor", "classfl_1_1SigmoidProduct.html#a8accc2d7f727bb9fbc223b2a41656077", null ], + [ "copy", "classfl_1_1SigmoidProduct.html#af4f5e30c2acf6283ba4f0d0b4366d538", null ], + [ "getFalling", "classfl_1_1SigmoidProduct.html#a291521b7a3c5e5c626dc08a6c619ff09", null ], + [ "getLeft", "classfl_1_1SigmoidProduct.html#a97ddb3029c2e53c881ff7be047542af7", null ], + [ "getRight", "classfl_1_1SigmoidProduct.html#a8be0013ba551bc840ef6794e6149e4e9", null ], + [ "getRising", "classfl_1_1SigmoidProduct.html#aed789b39ce575842924f5e25380fce93", null ], + [ "membership", "classfl_1_1SigmoidProduct.html#ae5dc654786106eb7fb9bda80327e050a", null ], + [ "parameters", "classfl_1_1SigmoidProduct.html#a0f44d8a921f634b4f6079eb4d1539f7f", null ], + [ "setFalling", "classfl_1_1SigmoidProduct.html#a728a798b46142bda0cf669a71d0078f0", null ], + [ "setLeft", "classfl_1_1SigmoidProduct.html#affba33a2e2899c829f5c3e4d18aecadc", null ], + [ "setRight", "classfl_1_1SigmoidProduct.html#ae5f48d14eb5213c8cddab30d19a69443", null ], + [ "setRising", "classfl_1_1SigmoidProduct.html#a06246685478bd13b5935660aa273bf54", null ], + [ "_falling", "classfl_1_1SigmoidProduct.html#acf9520217fc3e23030b069944298432b", null ], + [ "_left", "classfl_1_1SigmoidProduct.html#a111018dbf5382cde37c57a898fe4190b", null ], + [ "_right", "classfl_1_1SigmoidProduct.html#ade2ae7a6cb509c0bbe6681e6c5705fa9", null ], + [ "_rising", "classfl_1_1SigmoidProduct.html#aa8288569224e8452d47e73022ac104be", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidProduct__coll__graph.map b/docs/html/classfl_1_1SigmoidProduct__coll__graph.map new file mode 100644 index 0000000..5f04239 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1SigmoidProduct__coll__graph.md5 b/docs/html/classfl_1_1SigmoidProduct__coll__graph.md5 new file mode 100644 index 0000000..3ea15fb --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct__coll__graph.md5 @@ -0,0 +1 @@ +79850d7091c612d40ff561bb88a5c129 \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidProduct__coll__graph.png b/docs/html/classfl_1_1SigmoidProduct__coll__graph.png new file mode 100644 index 0000000..d4c09fa Binary files /dev/null and b/docs/html/classfl_1_1SigmoidProduct__coll__graph.png differ diff --git a/docs/html/classfl_1_1SigmoidProduct__inherit__graph.map b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.map new file mode 100644 index 0000000..f5ce352 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1SigmoidProduct__inherit__graph.md5 b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.md5 new file mode 100644 index 0000000..05a0c18 --- /dev/null +++ b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.md5 @@ -0,0 +1 @@ +096e4802477e10a8963e85f363158876 \ No newline at end of file diff --git a/docs/html/classfl_1_1SigmoidProduct__inherit__graph.png b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.png new file mode 100644 index 0000000..089144f Binary files /dev/null and b/docs/html/classfl_1_1SigmoidProduct__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Sigmoid__coll__graph.map b/docs/html/classfl_1_1Sigmoid__coll__graph.map new file mode 100644 index 0000000..010f086 --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Sigmoid__coll__graph.md5 b/docs/html/classfl_1_1Sigmoid__coll__graph.md5 new file mode 100644 index 0000000..0d98efc --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid__coll__graph.md5 @@ -0,0 +1 @@ +76efea3ad8defe1836caee0b9fe8548e \ No newline at end of file diff --git a/docs/html/classfl_1_1Sigmoid__coll__graph.png b/docs/html/classfl_1_1Sigmoid__coll__graph.png new file mode 100644 index 0000000..c48b066 Binary files /dev/null and b/docs/html/classfl_1_1Sigmoid__coll__graph.png differ diff --git a/docs/html/classfl_1_1Sigmoid__inherit__graph.map b/docs/html/classfl_1_1Sigmoid__inherit__graph.map new file mode 100644 index 0000000..36f5d17 --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Sigmoid__inherit__graph.md5 b/docs/html/classfl_1_1Sigmoid__inherit__graph.md5 new file mode 100644 index 0000000..9d512f0 --- /dev/null +++ b/docs/html/classfl_1_1Sigmoid__inherit__graph.md5 @@ -0,0 +1 @@ +aeab0f074cf619634af8d44e2297d0d0 \ No newline at end of file diff --git a/docs/html/classfl_1_1Sigmoid__inherit__graph.png b/docs/html/classfl_1_1Sigmoid__inherit__graph.png new file mode 100644 index 0000000..c8b5dfa Binary files /dev/null and b/docs/html/classfl_1_1Sigmoid__inherit__graph.png differ diff --git a/docs/html/classfl_1_1SmallestOfMaximum-members.html b/docs/html/classfl_1_1SmallestOfMaximum-members.html new file mode 100644 index 0000000..4e97b50 --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::SmallestOfMaximum Member List
+
+
+ +

This is the complete list of members for fl::SmallestOfMaximum, including all inherited members.

+ + + + + + + + + + + + + + +
_resolutionfl::IntegralDefuzzifierprotected
className() const fl::SmallestOfMaximumvirtual
constructor()fl::SmallestOfMaximumstatic
defaultResolution()fl::IntegralDefuzzifierinlinestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::SmallestOfMaximumvirtual
getResolution() const fl::IntegralDefuzzifiervirtual
IntegralDefuzzifier(int resolution=defaultResolution())fl::IntegralDefuzzifier
setResolution(int resolution)fl::IntegralDefuzzifiervirtual
SmallestOfMaximum(int resolution=defaultResolution())fl::SmallestOfMaximum
~Defuzzifier()fl::Defuzzifierinlinevirtual
~IntegralDefuzzifier()fl::IntegralDefuzzifiervirtual
~SmallestOfMaximum()fl::SmallestOfMaximumvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1SmallestOfMaximum.html b/docs/html/classfl_1_1SmallestOfMaximum.html new file mode 100644 index 0000000..de8babf --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum.html @@ -0,0 +1,320 @@ + + + + + + +fuzzylite: fl::SmallestOfMaximum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::SmallestOfMaximum Class Reference
+
+
+ +

#include <SmallestOfMaximum.h>

+
+Inheritance diagram for fl::SmallestOfMaximum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::SmallestOfMaximum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SmallestOfMaximum (int resolution=defaultResolution())
 
virtual ~SmallestOfMaximum ()
 
virtual std::string className () const
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::IntegralDefuzzifier
 IntegralDefuzzifier (int resolution=defaultResolution())
 
virtual ~IntegralDefuzzifier ()
 
virtual void setResolution (int resolution)
 
virtual int getResolution () const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + + + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
- Static Public Member Functions inherited from fl::IntegralDefuzzifier
static int defaultResolution ()
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from fl::IntegralDefuzzifier
int _resolution
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::SmallestOfMaximum::SmallestOfMaximum (int resolution = defaultResolution())
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::SmallestOfMaximum::~SmallestOfMaximum ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::SmallestOfMaximum::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::SmallestOfMaximum::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::SmallestOfMaximum::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1SmallestOfMaximum.js b/docs/html/classfl_1_1SmallestOfMaximum.js new file mode 100644 index 0000000..6c1e5cf --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum.js @@ -0,0 +1,8 @@ +var classfl_1_1SmallestOfMaximum = +[ + [ "SmallestOfMaximum", "classfl_1_1SmallestOfMaximum.html#a6b7101728e38f14ae134e0637da053cc", null ], + [ "~SmallestOfMaximum", "classfl_1_1SmallestOfMaximum.html#abc20f251007432e11609952c058480a3", null ], + [ "className", "classfl_1_1SmallestOfMaximum.html#a4a7302b8f400d3a78f01e350e35eb6a2", null ], + [ "constructor", "classfl_1_1SmallestOfMaximum.html#af72246930702d987172dbf031140c4d8", null ], + [ "defuzzify", "classfl_1_1SmallestOfMaximum.html#a53a8843c46d80161e6b3a96a48e72d8a", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.map b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.map new file mode 100644 index 0000000..8794fcf --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.md5 b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.md5 new file mode 100644 index 0000000..890b85d --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.md5 @@ -0,0 +1 @@ +dca2cedc56d4b672fc2191281373abc6 \ No newline at end of file diff --git a/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.png b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.png new file mode 100644 index 0000000..3005093 Binary files /dev/null and b/docs/html/classfl_1_1SmallestOfMaximum__coll__graph.png differ diff --git a/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.map b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.map new file mode 100644 index 0000000..8794fcf --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.md5 b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.md5 new file mode 100644 index 0000000..890b85d --- /dev/null +++ b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.md5 @@ -0,0 +1 @@ +dca2cedc56d4b672fc2191281373abc6 \ No newline at end of file diff --git a/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.png b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.png new file mode 100644 index 0000000..3005093 Binary files /dev/null and b/docs/html/classfl_1_1SmallestOfMaximum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Somewhat-members.html b/docs/html/classfl_1_1Somewhat-members.html new file mode 100644 index 0000000..7cf5f11 --- /dev/null +++ b/docs/html/classfl_1_1Somewhat-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Somewhat Member List
+
+
+ +

This is the complete list of members for fl::Somewhat, including all inherited members.

+ + + + + + +
constructor()fl::Somewhatstatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Somewhatvirtual
name() const fl::Somewhatvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Somewhat.html b/docs/html/classfl_1_1Somewhat.html new file mode 100644 index 0000000..bfd5ae8 --- /dev/null +++ b/docs/html/classfl_1_1Somewhat.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Somewhat Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Somewhat.h>

+
+Inheritance diagram for fl::Somewhat:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Somewhat:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Somewhat::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Somewhat::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Somewhat::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Somewhat.js b/docs/html/classfl_1_1Somewhat.js new file mode 100644 index 0000000..e82b165 --- /dev/null +++ b/docs/html/classfl_1_1Somewhat.js @@ -0,0 +1,6 @@ +var classfl_1_1Somewhat = +[ + [ "constructor", "classfl_1_1Somewhat.html#ace3660d876c8ebaa378072a0bf717322", null ], + [ "hedge", "classfl_1_1Somewhat.html#a8e27f4a78dbdb0941b07a2d04234534d", null ], + [ "name", "classfl_1_1Somewhat.html#af3615970e0db67462de0c2ed3656c520", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Somewhat__coll__graph.map b/docs/html/classfl_1_1Somewhat__coll__graph.map new file mode 100644 index 0000000..51c45b0 --- /dev/null +++ b/docs/html/classfl_1_1Somewhat__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Somewhat__coll__graph.md5 b/docs/html/classfl_1_1Somewhat__coll__graph.md5 new file mode 100644 index 0000000..76ec05b --- /dev/null +++ b/docs/html/classfl_1_1Somewhat__coll__graph.md5 @@ -0,0 +1 @@ +ff7268ab2fd4f6b83fb66eb886893180 \ No newline at end of file diff --git a/docs/html/classfl_1_1Somewhat__coll__graph.png b/docs/html/classfl_1_1Somewhat__coll__graph.png new file mode 100644 index 0000000..afc521b Binary files /dev/null and b/docs/html/classfl_1_1Somewhat__coll__graph.png differ diff --git a/docs/html/classfl_1_1Somewhat__inherit__graph.map b/docs/html/classfl_1_1Somewhat__inherit__graph.map new file mode 100644 index 0000000..51c45b0 --- /dev/null +++ b/docs/html/classfl_1_1Somewhat__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Somewhat__inherit__graph.md5 b/docs/html/classfl_1_1Somewhat__inherit__graph.md5 new file mode 100644 index 0000000..76ec05b --- /dev/null +++ b/docs/html/classfl_1_1Somewhat__inherit__graph.md5 @@ -0,0 +1 @@ +ff7268ab2fd4f6b83fb66eb886893180 \ No newline at end of file diff --git a/docs/html/classfl_1_1Somewhat__inherit__graph.png b/docs/html/classfl_1_1Somewhat__inherit__graph.png new file mode 100644 index 0000000..afc521b Binary files /dev/null and b/docs/html/classfl_1_1Somewhat__inherit__graph.png differ diff --git a/docs/html/classfl_1_1TNorm-members.html b/docs/html/classfl_1_1TNorm-members.html new file mode 100644 index 0000000..59c7a8f --- /dev/null +++ b/docs/html/classfl_1_1TNorm-members.html @@ -0,0 +1,133 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::TNorm Member List
+
+
+ +

This is the complete list of members for fl::TNorm, including all inherited members.

+ + + + + + + +
className() const =0fl::Normpure virtual
compute(scalar a, scalar b) const =0fl::Normpure virtual
Norm()fl::Norminline
TNorm()fl::TNorminline
~Norm()fl::Norminlinevirtual
~TNorm()fl::TNorminlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1TNorm.html b/docs/html/classfl_1_1TNorm.html new file mode 100644 index 0000000..53466a2 --- /dev/null +++ b/docs/html/classfl_1_1TNorm.html @@ -0,0 +1,211 @@ + + + + + + +fuzzylite: fl::TNorm Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::TNorm Class Reference
+
+
+ +

#include <TNorm.h>

+
+Inheritance diagram for fl::TNorm:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::TNorm:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 TNorm ()
 
virtual ~TNorm ()
 
- Public Member Functions inherited from fl::Norm
 Norm ()
 
virtual ~Norm ()
 
virtual std::string className () const =0
 
virtual scalar compute (scalar a, scalar b) const =0
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
fl::TNorm::TNorm ()
+
+inline
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual fl::TNorm::~TNorm ()
+
+inlinevirtual
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/docs/html/classfl_1_1TNorm.js b/docs/html/classfl_1_1TNorm.js new file mode 100644 index 0000000..f0681aa --- /dev/null +++ b/docs/html/classfl_1_1TNorm.js @@ -0,0 +1,5 @@ +var classfl_1_1TNorm = +[ + [ "TNorm", "classfl_1_1TNorm.html#a1fdc4f59a4c6398c87343a68c4c21222", null ], + [ "~TNorm", "classfl_1_1TNorm.html#a91e0033f37bbb4749877773695461539", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1TNormFactory-members.html b/docs/html/classfl_1_1TNormFactory-members.html new file mode 100644 index 0000000..1179383 --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::TNormFactory Member List
+
+
+ +

This is the complete list of members for fl::TNormFactory, including all inherited members.

+ + + + + + + + + + + + +
available() constfl::Factory< TNorm * >virtual
createInstance(const std::string &key) constfl::Factory< TNorm * >virtual
Creator typedeffl::Factory< TNorm * >
deregisterClass(const std::string &key)fl::Factory< TNorm * >virtual
Factory()fl::Factory< TNorm * >
hasRegisteredClass(const std::string &key) constfl::Factory< TNorm * >virtual
mapfl::Factory< TNorm * >protected
registerClass(const std::string &key, Creator creator)fl::Factory< TNorm * >virtual
TNormFactory()fl::TNormFactory
~Factory()fl::Factory< TNorm * >virtual
~TNormFactory()fl::TNormFactoryvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1TNormFactory.html b/docs/html/classfl_1_1TNormFactory.html new file mode 100644 index 0000000..e3281eb --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: fl::TNormFactory Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::TNormFactory Class Reference
+
+
+ +

#include <TNormFactory.h>

+
+Inheritance diagram for fl::TNormFactory:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::TNormFactory:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 TNormFactory ()
 
virtual ~TNormFactory ()
 
- Public Member Functions inherited from fl::Factory< TNorm * >
 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual TNormcreateInstance (const std::string &key) const
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from fl::Factory< TNorm * >
typedef TNorm *(* Creator )()
 
- Protected Attributes inherited from fl::Factory< TNorm * >
std::map< std::string, Creator > map
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::TNormFactory::TNormFactory ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::TNormFactory::~TNormFactory ()
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1TNormFactory.js b/docs/html/classfl_1_1TNormFactory.js new file mode 100644 index 0000000..f09d808 --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory.js @@ -0,0 +1,5 @@ +var classfl_1_1TNormFactory = +[ + [ "TNormFactory", "classfl_1_1TNormFactory.html#ad2f476c6d252a4b23d2a007cfd63840a", null ], + [ "~TNormFactory", "classfl_1_1TNormFactory.html#ac99158ca2c3dc21ccfa76f0eed8d21e0", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1TNormFactory__coll__graph.map b/docs/html/classfl_1_1TNormFactory__coll__graph.map new file mode 100644 index 0000000..b35bb73 --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1TNormFactory__coll__graph.md5 b/docs/html/classfl_1_1TNormFactory__coll__graph.md5 new file mode 100644 index 0000000..ec57669 --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory__coll__graph.md5 @@ -0,0 +1 @@ +0e1a05ac26a2c20939f6f2c1bf970222 \ No newline at end of file diff --git a/docs/html/classfl_1_1TNormFactory__coll__graph.png b/docs/html/classfl_1_1TNormFactory__coll__graph.png new file mode 100644 index 0000000..02b4f07 Binary files /dev/null and b/docs/html/classfl_1_1TNormFactory__coll__graph.png differ diff --git a/docs/html/classfl_1_1TNormFactory__inherit__graph.map b/docs/html/classfl_1_1TNormFactory__inherit__graph.map new file mode 100644 index 0000000..68e1132 --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1TNormFactory__inherit__graph.md5 b/docs/html/classfl_1_1TNormFactory__inherit__graph.md5 new file mode 100644 index 0000000..5df022d --- /dev/null +++ b/docs/html/classfl_1_1TNormFactory__inherit__graph.md5 @@ -0,0 +1 @@ +1491729b897dbab2e79a56d6d4bc5401 \ No newline at end of file diff --git a/docs/html/classfl_1_1TNormFactory__inherit__graph.png b/docs/html/classfl_1_1TNormFactory__inherit__graph.png new file mode 100644 index 0000000..7edcf3f Binary files /dev/null and b/docs/html/classfl_1_1TNormFactory__inherit__graph.png differ diff --git a/docs/html/classfl_1_1TNorm__coll__graph.map b/docs/html/classfl_1_1TNorm__coll__graph.map new file mode 100644 index 0000000..65b6c83 --- /dev/null +++ b/docs/html/classfl_1_1TNorm__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1TNorm__coll__graph.md5 b/docs/html/classfl_1_1TNorm__coll__graph.md5 new file mode 100644 index 0000000..50707e8 --- /dev/null +++ b/docs/html/classfl_1_1TNorm__coll__graph.md5 @@ -0,0 +1 @@ +086c3b5ba5762a3c1264d81f9a7321be \ No newline at end of file diff --git a/docs/html/classfl_1_1TNorm__coll__graph.png b/docs/html/classfl_1_1TNorm__coll__graph.png new file mode 100644 index 0000000..a974fd2 Binary files /dev/null and b/docs/html/classfl_1_1TNorm__coll__graph.png differ diff --git a/docs/html/classfl_1_1TNorm__inherit__graph.map b/docs/html/classfl_1_1TNorm__inherit__graph.map new file mode 100644 index 0000000..7eb94f9 --- /dev/null +++ b/docs/html/classfl_1_1TNorm__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/classfl_1_1TNorm__inherit__graph.md5 b/docs/html/classfl_1_1TNorm__inherit__graph.md5 new file mode 100644 index 0000000..df5e15e --- /dev/null +++ b/docs/html/classfl_1_1TNorm__inherit__graph.md5 @@ -0,0 +1 @@ +6c19d35ccbcb2e4cdf499542da6edba1 \ No newline at end of file diff --git a/docs/html/classfl_1_1TNorm__inherit__graph.png b/docs/html/classfl_1_1TNorm__inherit__graph.png new file mode 100644 index 0000000..d0ae59f Binary files /dev/null and b/docs/html/classfl_1_1TNorm__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Term-members.html b/docs/html/classfl_1_1Term-members.html new file mode 100644 index 0000000..398e57d --- /dev/null +++ b/docs/html/classfl_1_1Term-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Term Member List
+
+
+ +

This is the complete list of members for fl::Term, including all inherited members.

+ + + + + + + + + + + + +
_namefl::Termprotected
className() const =0fl::Termpure virtual
configure(const std::string &parameters)=0fl::Termpure virtual
copy() const =0fl::Termpure virtual
getName() const fl::Termvirtual
membership(scalar x) const =0fl::Termpure virtual
parameters() const =0fl::Termpure virtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
~Term()fl::Termvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Term.html b/docs/html/classfl_1_1Term.html new file mode 100644 index 0000000..13a4aa6 --- /dev/null +++ b/docs/html/classfl_1_1Term.html @@ -0,0 +1,444 @@ + + + + + + +fuzzylite: fl::Term Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Term Class Referenceabstract
+
+
+ +

#include <Term.h>

+
+Inheritance diagram for fl::Term:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Term:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
virtual std::string className () const =0
 
virtual std::string parameters () const =0
 
virtual void configure (const std::string &parameters)=0
 
virtual scalar membership (scalar x) const =0
 
virtual Termcopy () const =0
 
+ + + +

+Protected Attributes

std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Term::Term (const std::string & name = "")
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Term::~Term ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Term::className () const
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void fl::Term::configure (const std::string & parameters)
+
+pure virtual
+
+
+ + + +
+
+ + + + + +
+ + + + + + + +
std::string fl::Term::getName () const
+
+virtual
+
+ +
+
+ + + +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Term::parameters () const
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Term::setName (const std::string & name)
+
+virtual
+
+

Sets the name of this term. It must be a valid id (see Op::makeValidId)

+
Parameters
+ + +
name
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Term::toString () const
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string fl::Term::_name
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Term.js b/docs/html/classfl_1_1Term.js new file mode 100644 index 0000000..788e3dd --- /dev/null +++ b/docs/html/classfl_1_1Term.js @@ -0,0 +1,14 @@ +var classfl_1_1Term = +[ + [ "Term", "classfl_1_1Term.html#a62dc23ac6846823fbfd38c1d6cbc7040", null ], + [ "~Term", "classfl_1_1Term.html#a0af99d979bfdc52617ceabce9d1f3cc0", null ], + [ "className", "classfl_1_1Term.html#afd351ca4f67712f630215108a11f32a7", null ], + [ "configure", "classfl_1_1Term.html#a100f48b9e2332a89c2835198a5cc4b10", null ], + [ "copy", "classfl_1_1Term.html#a9f9ea77910a6383bbc1533d83d84716d", null ], + [ "getName", "classfl_1_1Term.html#a0b2db6c39da45e0edc7d3478bb3c25c6", null ], + [ "membership", "classfl_1_1Term.html#ae23daa362e9e6fb780ea967f6ababf0a", null ], + [ "parameters", "classfl_1_1Term.html#abe166cd54a2f9b483472942e3536cb85", null ], + [ "setName", "classfl_1_1Term.html#a54bd381b285d0017ba82a022a113aaf5", null ], + [ "toString", "classfl_1_1Term.html#ad5e7a6c98f286c05f88bf89adac1ca92", null ], + [ "_name", "classfl_1_1Term.html#aa549e2805339c8fe2e41effba52d5bf5", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1TermFactory-members.html b/docs/html/classfl_1_1TermFactory-members.html new file mode 100644 index 0000000..454aead --- /dev/null +++ b/docs/html/classfl_1_1TermFactory-members.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::TermFactory Member List
+
+
+ +

This is the complete list of members for fl::TermFactory, including all inherited members.

+ + + + + + + + + + + + +
available() constfl::Factory< Term * >virtual
createInstance(const std::string &key) constfl::Factory< Term * >virtual
Creator typedeffl::Factory< Term * >
deregisterClass(const std::string &key)fl::Factory< Term * >virtual
Factory()fl::Factory< Term * >
hasRegisteredClass(const std::string &key) constfl::Factory< Term * >virtual
mapfl::Factory< Term * >protected
registerClass(const std::string &key, Creator creator)fl::Factory< Term * >virtual
TermFactory()fl::TermFactory
~Factory()fl::Factory< Term * >virtual
~TermFactory()fl::TermFactoryvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1TermFactory.html b/docs/html/classfl_1_1TermFactory.html new file mode 100644 index 0000000..0cbe9f5 --- /dev/null +++ b/docs/html/classfl_1_1TermFactory.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: fl::TermFactory Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::TermFactory Class Reference
+
+
+ +

#include <TermFactory.h>

+
+Inheritance diagram for fl::TermFactory:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::TermFactory:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 TermFactory ()
 
virtual ~TermFactory ()
 
- Public Member Functions inherited from fl::Factory< Term * >
 Factory ()
 
virtual ~Factory ()
 
virtual void registerClass (const std::string &key, Creator creator)
 
virtual void deregisterClass (const std::string &key)
 
virtual bool hasRegisteredClass (const std::string &key) const
 
virtual std::vector< std::string > available () const
 
virtual TermcreateInstance (const std::string &key) const
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from fl::Factory< Term * >
typedef Term *(* Creator )()
 
- Protected Attributes inherited from fl::Factory< Term * >
std::map< std::string, Creator > map
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::TermFactory::TermFactory ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::TermFactory::~TermFactory ()
+
+virtual
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1TermFactory.js b/docs/html/classfl_1_1TermFactory.js new file mode 100644 index 0000000..a225490 --- /dev/null +++ b/docs/html/classfl_1_1TermFactory.js @@ -0,0 +1,5 @@ +var classfl_1_1TermFactory = +[ + [ "TermFactory", "classfl_1_1TermFactory.html#a9029aa048f82f8474c1fbb834477bbeb", null ], + [ "~TermFactory", "classfl_1_1TermFactory.html#adf9341c40db429dffb486bf7a998ed2f", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1TermFactory__coll__graph.map b/docs/html/classfl_1_1TermFactory__coll__graph.map new file mode 100644 index 0000000..98ac1cf --- /dev/null +++ b/docs/html/classfl_1_1TermFactory__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1TermFactory__coll__graph.md5 b/docs/html/classfl_1_1TermFactory__coll__graph.md5 new file mode 100644 index 0000000..355739c --- /dev/null +++ b/docs/html/classfl_1_1TermFactory__coll__graph.md5 @@ -0,0 +1 @@ +b59d44819cbf7eeb622b41c3fdc917ef \ No newline at end of file diff --git a/docs/html/classfl_1_1TermFactory__coll__graph.png b/docs/html/classfl_1_1TermFactory__coll__graph.png new file mode 100644 index 0000000..500b1b3 Binary files /dev/null and b/docs/html/classfl_1_1TermFactory__coll__graph.png differ diff --git a/docs/html/classfl_1_1TermFactory__inherit__graph.map b/docs/html/classfl_1_1TermFactory__inherit__graph.map new file mode 100644 index 0000000..e6d362c --- /dev/null +++ b/docs/html/classfl_1_1TermFactory__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1TermFactory__inherit__graph.md5 b/docs/html/classfl_1_1TermFactory__inherit__graph.md5 new file mode 100644 index 0000000..c6d7dd0 --- /dev/null +++ b/docs/html/classfl_1_1TermFactory__inherit__graph.md5 @@ -0,0 +1 @@ +45719d44c7d7ed09f53968ad0c8b444f \ No newline at end of file diff --git a/docs/html/classfl_1_1TermFactory__inherit__graph.png b/docs/html/classfl_1_1TermFactory__inherit__graph.png new file mode 100644 index 0000000..e85a4a8 Binary files /dev/null and b/docs/html/classfl_1_1TermFactory__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Term__coll__graph.map b/docs/html/classfl_1_1Term__coll__graph.map new file mode 100644 index 0000000..8a24ff8 --- /dev/null +++ b/docs/html/classfl_1_1Term__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Term__coll__graph.md5 b/docs/html/classfl_1_1Term__coll__graph.md5 new file mode 100644 index 0000000..8e73e3b --- /dev/null +++ b/docs/html/classfl_1_1Term__coll__graph.md5 @@ -0,0 +1 @@ +ec08a88f5b105e52d30975a1912e9a25 \ No newline at end of file diff --git a/docs/html/classfl_1_1Term__coll__graph.png b/docs/html/classfl_1_1Term__coll__graph.png new file mode 100644 index 0000000..ddffee2 Binary files /dev/null and b/docs/html/classfl_1_1Term__coll__graph.png differ diff --git a/docs/html/classfl_1_1Term__inherit__graph.map b/docs/html/classfl_1_1Term__inherit__graph.map new file mode 100644 index 0000000..6ee98de --- /dev/null +++ b/docs/html/classfl_1_1Term__inherit__graph.map @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/classfl_1_1Term__inherit__graph.md5 b/docs/html/classfl_1_1Term__inherit__graph.md5 new file mode 100644 index 0000000..c6531db --- /dev/null +++ b/docs/html/classfl_1_1Term__inherit__graph.md5 @@ -0,0 +1 @@ +93da7b69fcc0ea81e35b1761afe36554 \ No newline at end of file diff --git a/docs/html/classfl_1_1Term__inherit__graph.png b/docs/html/classfl_1_1Term__inherit__graph.png new file mode 100644 index 0000000..ee58c8d Binary files /dev/null and b/docs/html/classfl_1_1Term__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Thresholded-members.html b/docs/html/classfl_1_1Thresholded-members.html new file mode 100644 index 0000000..e1f6778 --- /dev/null +++ b/docs/html/classfl_1_1Thresholded-members.html @@ -0,0 +1,149 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Thresholded Member List
+
+
+ +

This is the complete list of members for fl::Thresholded, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
_activationfl::Thresholdedprotected
_namefl::Termprotected
_termfl::Thresholdedprotected
_thresholdfl::Thresholdedprotected
className() const fl::Thresholdedvirtual
configure(const std::string &parameters)fl::Thresholdedvirtual
copy() const fl::Thresholdedvirtual
getActivation() const fl::Thresholdedvirtual
getName() const fl::Termvirtual
getTerm() const fl::Thresholdedvirtual
getThreshold() const fl::Thresholdedvirtual
membership(scalar x) const fl::Thresholdedvirtual
parameters() const fl::Thresholdedvirtual
setActivation(const TNorm *activation)fl::Thresholdedvirtual
setName(const std::string &name)fl::Termvirtual
setTerm(const Term *term)fl::Thresholdedvirtual
setThreshold(scalar threshold)fl::Thresholdedvirtual
Term(const std::string &name="")fl::Term
Thresholded(const Term *term=NULL, scalar threshold=1.0, const TNorm *activationOperator=NULL)fl::Thresholded
toString() const fl::Termvirtual
~Term()fl::Termvirtual
~Thresholded()fl::Thresholdedvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Thresholded.html b/docs/html/classfl_1_1Thresholded.html new file mode 100644 index 0000000..a9c07f9 --- /dev/null +++ b/docs/html/classfl_1_1Thresholded.html @@ -0,0 +1,588 @@ + + + + + + +fuzzylite: fl::Thresholded Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Thresholded Class Reference
+
+
+ +

#include <Thresholded.h>

+
+Inheritance diagram for fl::Thresholded:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Thresholded:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Thresholded (const Term *term=NULL, scalar threshold=1.0, const TNorm *activationOperator=NULL)
 
virtual ~Thresholded ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setTerm (const Term *term)
 
virtual const TermgetTerm () const
 
virtual void setThreshold (scalar threshold)
 
virtual scalar getThreshold () const
 
virtual void setActivation (const TNorm *activation)
 
virtual const TNormgetActivation () const
 
virtual Thresholdedcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + + + + + + + + +

+Protected Attributes

const Term_term
 
scalar _threshold
 
const TNorm_activation
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Thresholded::Thresholded (const Termterm = NULL,
scalar threshold = 1.0,
const TNormactivationOperator = NULL 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Thresholded::~Thresholded ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Thresholded::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Thresholded::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Thresholded * fl::Thresholded::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const TNorm * fl::Thresholded::getActivation () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const Term * fl::Thresholded::getTerm () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Thresholded::getThreshold () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Thresholded::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Thresholded::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Thresholded::setActivation (const TNormactivation)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Thresholded::setTerm (const Termterm)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Thresholded::setThreshold (scalar threshold)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const TNorm* fl::Thresholded::_activation
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const Term* fl::Thresholded::_term
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Thresholded::_threshold
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Thresholded.js b/docs/html/classfl_1_1Thresholded.js new file mode 100644 index 0000000..7b89624 --- /dev/null +++ b/docs/html/classfl_1_1Thresholded.js @@ -0,0 +1,19 @@ +var classfl_1_1Thresholded = +[ + [ "Thresholded", "classfl_1_1Thresholded.html#a390708b1f0f0f71a5b0ecbebcfe3d533", null ], + [ "~Thresholded", "classfl_1_1Thresholded.html#ac075393794b8c65386bb09ad1e23834b", null ], + [ "className", "classfl_1_1Thresholded.html#acc3ca7d0763b153bc898bb82ef191a55", null ], + [ "configure", "classfl_1_1Thresholded.html#aa79a1332b3db88e72a7a9a9af97a4719", null ], + [ "copy", "classfl_1_1Thresholded.html#a51fa711138205dbef7b4a37b3c1ca15b", null ], + [ "getActivation", "classfl_1_1Thresholded.html#a43e013c005ecd115d3edcdf9741b7567", null ], + [ "getTerm", "classfl_1_1Thresholded.html#a29395c6461a696a9325c4137861b3d8d", null ], + [ "getThreshold", "classfl_1_1Thresholded.html#a32336abe9201687a83cab2cf9681e88b", null ], + [ "membership", "classfl_1_1Thresholded.html#a662f8746c8a308d486232771166fb0fb", null ], + [ "parameters", "classfl_1_1Thresholded.html#a93374bd46ec05cefd21181b377417312", null ], + [ "setActivation", "classfl_1_1Thresholded.html#aa1c213432f49be607b7476e7bec02abe", null ], + [ "setTerm", "classfl_1_1Thresholded.html#ae22fd23d510715a4b300c730ae499f99", null ], + [ "setThreshold", "classfl_1_1Thresholded.html#a9501586c7e7001b3999f1274c958a380", null ], + [ "_activation", "classfl_1_1Thresholded.html#aee777ad4584fbb883754fba22ebf69c4", null ], + [ "_term", "classfl_1_1Thresholded.html#a65669113ccd7b7d644f51e327852288e", null ], + [ "_threshold", "classfl_1_1Thresholded.html#a35e57e00911b7a3ede84b320920a7ebb", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Thresholded__coll__graph.map b/docs/html/classfl_1_1Thresholded__coll__graph.map new file mode 100644 index 0000000..f15699d --- /dev/null +++ b/docs/html/classfl_1_1Thresholded__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/classfl_1_1Thresholded__coll__graph.md5 b/docs/html/classfl_1_1Thresholded__coll__graph.md5 new file mode 100644 index 0000000..f4dea84 --- /dev/null +++ b/docs/html/classfl_1_1Thresholded__coll__graph.md5 @@ -0,0 +1 @@ +74f052c911043ecea85fb5e240ab8f7b \ No newline at end of file diff --git a/docs/html/classfl_1_1Thresholded__coll__graph.png b/docs/html/classfl_1_1Thresholded__coll__graph.png new file mode 100644 index 0000000..ab92b69 Binary files /dev/null and b/docs/html/classfl_1_1Thresholded__coll__graph.png differ diff --git a/docs/html/classfl_1_1Thresholded__inherit__graph.map b/docs/html/classfl_1_1Thresholded__inherit__graph.map new file mode 100644 index 0000000..ff25def --- /dev/null +++ b/docs/html/classfl_1_1Thresholded__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Thresholded__inherit__graph.md5 b/docs/html/classfl_1_1Thresholded__inherit__graph.md5 new file mode 100644 index 0000000..ee8a95c --- /dev/null +++ b/docs/html/classfl_1_1Thresholded__inherit__graph.md5 @@ -0,0 +1 @@ +254e042691854c9af98a604697795211 \ No newline at end of file diff --git a/docs/html/classfl_1_1Thresholded__inherit__graph.png b/docs/html/classfl_1_1Thresholded__inherit__graph.png new file mode 100644 index 0000000..267acc3 Binary files /dev/null and b/docs/html/classfl_1_1Thresholded__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Trapezoid-members.html b/docs/html/classfl_1_1Trapezoid-members.html new file mode 100644 index 0000000..81ce55f --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid-members.html @@ -0,0 +1,153 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Trapezoid Member List
+
+
+ +

This is the complete list of members for fl::Trapezoid, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_afl::Trapezoidprotected
_bfl::Trapezoidprotected
_cfl::Trapezoidprotected
_dfl::Trapezoidprotected
_namefl::Termprotected
className() const fl::Trapezoidvirtual
configure(const std::string &parameters)fl::Trapezoidvirtual
constructor()fl::Trapezoidstatic
copy() const fl::Trapezoidvirtual
getA() const fl::Trapezoidvirtual
getB() const fl::Trapezoidvirtual
getC() const fl::Trapezoidvirtual
getD() const fl::Trapezoidvirtual
getName() const fl::Termvirtual
membership(scalar x) const fl::Trapezoidvirtual
parameters() const fl::Trapezoidvirtual
setA(scalar a)fl::Trapezoidvirtual
setB(scalar b)fl::Trapezoidvirtual
setC(scalar c)fl::Trapezoidvirtual
setD(scalar d)fl::Trapezoidvirtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
Trapezoid(const std::string &name="", scalar a=-fl::inf, scalar b=fl::nan, scalar c=fl::nan, scalar d=fl::inf)fl::Trapezoid
~Term()fl::Termvirtual
~Trapezoid()fl::Trapezoidvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Trapezoid.html b/docs/html/classfl_1_1Trapezoid.html new file mode 100644 index 0000000..7b1187e --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid.html @@ -0,0 +1,702 @@ + + + + + + +fuzzylite: fl::Trapezoid Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Trapezoid.h>

+
+Inheritance diagram for fl::Trapezoid:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Trapezoid:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Trapezoid (const std::string &name="", scalar a=-fl::inf, scalar b=fl::nan, scalar c=fl::nan, scalar d=fl::inf)
 
virtual ~Trapezoid ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setA (scalar a)
 
virtual scalar getA () const
 
virtual void setB (scalar b)
 
virtual scalar getB () const
 
virtual void setC (scalar c)
 
virtual scalar getC () const
 
virtual void setD (scalar d)
 
virtual scalar getD () const
 
virtual Trapezoidcopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + + + +

+Protected Attributes

scalar _a
 
scalar _b
 
scalar _c
 
scalar _d
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Trapezoid::Trapezoid (const std::string & name = "",
scalar a = -fl::inf,
scalar b = fl::nan,
scalar c = fl::nan,
scalar d = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Trapezoid::~Trapezoid ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Trapezoid::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Trapezoid::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Trapezoid::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Trapezoid * fl::Trapezoid::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Trapezoid::getA () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Trapezoid::getB () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Trapezoid::getC () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Trapezoid::getD () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Trapezoid::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Trapezoid::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Trapezoid::setA (scalar a)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Trapezoid::setB (scalar b)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Trapezoid::setC (scalar c)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Trapezoid::setD (scalar d)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Trapezoid::_a
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Trapezoid::_b
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Trapezoid::_c
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Trapezoid::_d
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Trapezoid.js b/docs/html/classfl_1_1Trapezoid.js new file mode 100644 index 0000000..0ba3f98 --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid.js @@ -0,0 +1,23 @@ +var classfl_1_1Trapezoid = +[ + [ "Trapezoid", "classfl_1_1Trapezoid.html#a4dc77e97a1c3135d08b5d5ae9f32ed07", null ], + [ "~Trapezoid", "classfl_1_1Trapezoid.html#ad1379bc03d6b842c920cc29741cb2736", null ], + [ "className", "classfl_1_1Trapezoid.html#a685a066f9e39dc70d2a512c702f384b3", null ], + [ "configure", "classfl_1_1Trapezoid.html#af12f243cd2a2b3b6c0288c52e0bbd7e9", null ], + [ "constructor", "classfl_1_1Trapezoid.html#a926e739b8296315c9a5ce83e916df6d7", null ], + [ "copy", "classfl_1_1Trapezoid.html#a4de88b0acaab4179e40545075c085e7e", null ], + [ "getA", "classfl_1_1Trapezoid.html#ada7f3bc0527d900c772b0851a330ba2d", null ], + [ "getB", "classfl_1_1Trapezoid.html#a572ba414202bad966cb0523081565b86", null ], + [ "getC", "classfl_1_1Trapezoid.html#aeb2022f8184512b566a7619873c35587", null ], + [ "getD", "classfl_1_1Trapezoid.html#ae8149c6a3811c50c80e29f6197bd8f66", null ], + [ "membership", "classfl_1_1Trapezoid.html#a1e31c93218d59c3335ff91ef4fdc0538", null ], + [ "parameters", "classfl_1_1Trapezoid.html#a019ee6474e6cb880a2587e93b893b6e3", null ], + [ "setA", "classfl_1_1Trapezoid.html#a9520c5972c8ef7bf4efa1bc5b8924a6f", null ], + [ "setB", "classfl_1_1Trapezoid.html#abf9b4cdd06a3b3eb39536868e63589dd", null ], + [ "setC", "classfl_1_1Trapezoid.html#af480c59dbc145e11ff0478ac25b57385", null ], + [ "setD", "classfl_1_1Trapezoid.html#a70eb451c7aad4395ec47701f100ca5a6", null ], + [ "_a", "classfl_1_1Trapezoid.html#aac990da5f3bc3b2b4764357f7ac7dc66", null ], + [ "_b", "classfl_1_1Trapezoid.html#a913deb47c560e1b0435a2fc49fcc20ff", null ], + [ "_c", "classfl_1_1Trapezoid.html#a96709e4e121d803da2fefeb6047b92c4", null ], + [ "_d", "classfl_1_1Trapezoid.html#a1ec763e62d23f610abc43b0356a21c54", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Trapezoid__coll__graph.map b/docs/html/classfl_1_1Trapezoid__coll__graph.map new file mode 100644 index 0000000..c5c69a6 --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Trapezoid__coll__graph.md5 b/docs/html/classfl_1_1Trapezoid__coll__graph.md5 new file mode 100644 index 0000000..de02332 --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid__coll__graph.md5 @@ -0,0 +1 @@ +8466918e9a6003de3c4ffda5b0d0884e \ No newline at end of file diff --git a/docs/html/classfl_1_1Trapezoid__coll__graph.png b/docs/html/classfl_1_1Trapezoid__coll__graph.png new file mode 100644 index 0000000..490c997 Binary files /dev/null and b/docs/html/classfl_1_1Trapezoid__coll__graph.png differ diff --git a/docs/html/classfl_1_1Trapezoid__inherit__graph.map b/docs/html/classfl_1_1Trapezoid__inherit__graph.map new file mode 100644 index 0000000..d1fc57e --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Trapezoid__inherit__graph.md5 b/docs/html/classfl_1_1Trapezoid__inherit__graph.md5 new file mode 100644 index 0000000..7710c64 --- /dev/null +++ b/docs/html/classfl_1_1Trapezoid__inherit__graph.md5 @@ -0,0 +1 @@ +064cd2468bc4c4f8d47187443296c1f5 \ No newline at end of file diff --git a/docs/html/classfl_1_1Trapezoid__inherit__graph.png b/docs/html/classfl_1_1Trapezoid__inherit__graph.png new file mode 100644 index 0000000..8198dd6 Binary files /dev/null and b/docs/html/classfl_1_1Trapezoid__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Triangle-members.html b/docs/html/classfl_1_1Triangle-members.html new file mode 100644 index 0000000..b83bbf0 --- /dev/null +++ b/docs/html/classfl_1_1Triangle-members.html @@ -0,0 +1,150 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Triangle Member List
+
+
+ +

This is the complete list of members for fl::Triangle, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
_afl::Triangleprotected
_bfl::Triangleprotected
_cfl::Triangleprotected
_namefl::Termprotected
className() const fl::Trianglevirtual
configure(const std::string &parameters)fl::Trianglevirtual
constructor()fl::Trianglestatic
copy() const fl::Trianglevirtual
getA() const fl::Trianglevirtual
getB() const fl::Trianglevirtual
getC() const fl::Trianglevirtual
getName() const fl::Termvirtual
membership(scalar x) const fl::Trianglevirtual
parameters() const fl::Trianglevirtual
setA(scalar a)fl::Trianglevirtual
setB(scalar b)fl::Trianglevirtual
setC(scalar c)fl::Trianglevirtual
setName(const std::string &name)fl::Termvirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
Triangle(const std::string &name="", scalar a=fl::nan, scalar b=fl::nan, scalar c=fl::nan)fl::Triangle
~Term()fl::Termvirtual
~Triangle()fl::Trianglevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Triangle.html b/docs/html/classfl_1_1Triangle.html new file mode 100644 index 0000000..26ed79f --- /dev/null +++ b/docs/html/classfl_1_1Triangle.html @@ -0,0 +1,623 @@ + + + + + + +fuzzylite: fl::Triangle Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Triangle.h>

+
+Inheritance diagram for fl::Triangle:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Triangle:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Triangle (const std::string &name="", scalar a=fl::nan, scalar b=fl::nan, scalar c=fl::nan)
 
virtual ~Triangle ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setA (scalar a)
 
virtual scalar getA () const
 
virtual void setB (scalar b)
 
virtual scalar getB () const
 
virtual void setC (scalar c)
 
virtual scalar getC () const
 
virtual Trianglecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + + + +

+Protected Attributes

scalar _a
 
scalar _b
 
scalar _c
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Triangle::Triangle (const std::string & name = "",
scalar a = fl::nan,
scalar b = fl::nan,
scalar c = fl::nan 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Triangle::~Triangle ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Triangle::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Triangle::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::Triangle::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Triangle * fl::Triangle::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Triangle::getA () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Triangle::getB () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Triangle::getC () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Triangle::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Triangle::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Triangle::setA (scalar a)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Triangle::setB (scalar b)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Triangle::setC (scalar c)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::Triangle::_a
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Triangle::_b
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Triangle::_c
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Triangle.js b/docs/html/classfl_1_1Triangle.js new file mode 100644 index 0000000..55d982c --- /dev/null +++ b/docs/html/classfl_1_1Triangle.js @@ -0,0 +1,20 @@ +var classfl_1_1Triangle = +[ + [ "Triangle", "classfl_1_1Triangle.html#adf8fd9bd87e88f606cc29daab17d1d75", null ], + [ "~Triangle", "classfl_1_1Triangle.html#a4f50e986809986c82037de5208537e2f", null ], + [ "className", "classfl_1_1Triangle.html#a4d79a8c91f2f3828bbdc7175fdb6e015", null ], + [ "configure", "classfl_1_1Triangle.html#a807a53d3ce8ee520c01c13a76d772f30", null ], + [ "constructor", "classfl_1_1Triangle.html#a7da7dfa0d1e8cb091ca559a5cf8d9351", null ], + [ "copy", "classfl_1_1Triangle.html#a470574b4c57b614454418ccf152da5e1", null ], + [ "getA", "classfl_1_1Triangle.html#a4a7c49f2eef08aa3302ae5e29c82b4a3", null ], + [ "getB", "classfl_1_1Triangle.html#afece31dc006ea9885d4f2dad43f65dd1", null ], + [ "getC", "classfl_1_1Triangle.html#aa694221a73f60c3b131f05e93ab54bf3", null ], + [ "membership", "classfl_1_1Triangle.html#a4a3f37fbb1ed642d3264b0b957d5908b", null ], + [ "parameters", "classfl_1_1Triangle.html#abe8e44ee94cbc0e9e37ecb3e58b4ce46", null ], + [ "setA", "classfl_1_1Triangle.html#a68beb6cf6eedb9e7e939fd1780cf535a", null ], + [ "setB", "classfl_1_1Triangle.html#a60e18f64d3adffc3093b08af105c3449", null ], + [ "setC", "classfl_1_1Triangle.html#a0d34aba217c2c47ad2066244e85502f3", null ], + [ "_a", "classfl_1_1Triangle.html#a69986be1299cd2e18424d5b955f2733f", null ], + [ "_b", "classfl_1_1Triangle.html#accf99c2e84283ba0a5a3d25ac3540991", null ], + [ "_c", "classfl_1_1Triangle.html#a99df4726d6414912e1ac0fba99f68b47", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Triangle__coll__graph.map b/docs/html/classfl_1_1Triangle__coll__graph.map new file mode 100644 index 0000000..6a4bb3c --- /dev/null +++ b/docs/html/classfl_1_1Triangle__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Triangle__coll__graph.md5 b/docs/html/classfl_1_1Triangle__coll__graph.md5 new file mode 100644 index 0000000..203e77f --- /dev/null +++ b/docs/html/classfl_1_1Triangle__coll__graph.md5 @@ -0,0 +1 @@ +1c5a56f8cdf399240a395204bd880683 \ No newline at end of file diff --git a/docs/html/classfl_1_1Triangle__coll__graph.png b/docs/html/classfl_1_1Triangle__coll__graph.png new file mode 100644 index 0000000..e71876e Binary files /dev/null and b/docs/html/classfl_1_1Triangle__coll__graph.png differ diff --git a/docs/html/classfl_1_1Triangle__inherit__graph.map b/docs/html/classfl_1_1Triangle__inherit__graph.map new file mode 100644 index 0000000..dfbaf75 --- /dev/null +++ b/docs/html/classfl_1_1Triangle__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Triangle__inherit__graph.md5 b/docs/html/classfl_1_1Triangle__inherit__graph.md5 new file mode 100644 index 0000000..7758bf4 --- /dev/null +++ b/docs/html/classfl_1_1Triangle__inherit__graph.md5 @@ -0,0 +1 @@ +6edbadd96b9bbdd5d07cfa52009362cb \ No newline at end of file diff --git a/docs/html/classfl_1_1Triangle__inherit__graph.png b/docs/html/classfl_1_1Triangle__inherit__graph.png new file mode 100644 index 0000000..1ad1523 Binary files /dev/null and b/docs/html/classfl_1_1Triangle__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Tsukamoto-members.html b/docs/html/classfl_1_1Tsukamoto-members.html new file mode 100644 index 0000000..9c20d10 --- /dev/null +++ b/docs/html/classfl_1_1Tsukamoto-members.html @@ -0,0 +1,128 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Tsukamoto Member List
+
+
+ +

This is the complete list of members for fl::Tsukamoto, including all inherited members.

+ + +
tsukamoto(const Thresholded *term, scalar minimum, scalar maximum)fl::Tsukamotostatic
+
+ + + + diff --git a/docs/html/classfl_1_1Tsukamoto.html b/docs/html/classfl_1_1Tsukamoto.html new file mode 100644 index 0000000..b70149c --- /dev/null +++ b/docs/html/classfl_1_1Tsukamoto.html @@ -0,0 +1,188 @@ + + + + + + +fuzzylite: fl::Tsukamoto Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Tsukamoto Class Reference
+
+
+ +

#include <Tsukamoto.h>

+
+Collaboration diagram for fl::Tsukamoto:
+
+
Collaboration graph
+ + +
+ + + + +

+Static Public Member Functions

static scalar tsukamoto (const Thresholded *term, scalar minimum, scalar maximum)
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::Tsukamoto::tsukamoto (const Thresholdedterm,
scalar minimum,
scalar maximum 
)
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Tsukamoto.js b/docs/html/classfl_1_1Tsukamoto.js new file mode 100644 index 0000000..abac46a --- /dev/null +++ b/docs/html/classfl_1_1Tsukamoto.js @@ -0,0 +1,4 @@ +var classfl_1_1Tsukamoto = +[ + [ "tsukamoto", "classfl_1_1Tsukamoto.html#a0238b45188674d7fa3e45f09ad016343", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Tsukamoto__coll__graph.map b/docs/html/classfl_1_1Tsukamoto__coll__graph.map new file mode 100644 index 0000000..f4b4b00 --- /dev/null +++ b/docs/html/classfl_1_1Tsukamoto__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1Tsukamoto__coll__graph.md5 b/docs/html/classfl_1_1Tsukamoto__coll__graph.md5 new file mode 100644 index 0000000..95f1acd --- /dev/null +++ b/docs/html/classfl_1_1Tsukamoto__coll__graph.md5 @@ -0,0 +1 @@ +6e21a8ad45a10e529c2ef1ce28a8ab1e \ No newline at end of file diff --git a/docs/html/classfl_1_1Tsukamoto__coll__graph.png b/docs/html/classfl_1_1Tsukamoto__coll__graph.png new file mode 100644 index 0000000..b2c8da4 Binary files /dev/null and b/docs/html/classfl_1_1Tsukamoto__coll__graph.png differ diff --git a/docs/html/classfl_1_1Variable-members.html b/docs/html/classfl_1_1Variable-members.html new file mode 100644 index 0000000..33c24e3 --- /dev/null +++ b/docs/html/classfl_1_1Variable-members.html @@ -0,0 +1,157 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Variable Member List
+
+
+ +

This is the complete list of members for fl::Variable, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_enabledfl::Variableprotected
_maximumfl::Variableprotected
_minimumfl::Variableprotected
_namefl::Variableprotected
_termsfl::Variableprotected
addTerm(Term *term)fl::Variablevirtual
fuzzify(scalar x) const fl::Variablevirtual
getMaximum() const fl::Variablevirtual
getMinimum() const fl::Variablevirtual
getName() const fl::Variablevirtual
getTerm(int index) const fl::Variablevirtual
getTerm(const std::string &name) const fl::Variablevirtual
hasTerm(const std::string &name) const fl::Variablevirtual
highestMembership(scalar x, scalar *yhighest=NULL) const fl::Variablevirtual
insertTerm(Term *term, int index)fl::Variablevirtual
isEnabled() const fl::Variablevirtual
numberOfTerms() const fl::Variablevirtual
range() const fl::Variablevirtual
removeTerm(int index)fl::Variablevirtual
setEnabled(bool enabled)fl::Variablevirtual
setMaximum(scalar maximum)fl::Variablevirtual
setMinimum(scalar minimum)fl::Variablevirtual
setName(const std::string &name)fl::Variablevirtual
setRange(scalar minimum, scalar maximum)fl::Variablevirtual
sort()fl::Variablevirtual
terms() const fl::Variablevirtual
toString() const fl::Variablevirtual
Variable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)fl::Variable
Variable(const Variable &copy)fl::Variable
~Variable()fl::Variablevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Variable.html b/docs/html/classfl_1_1Variable.html new file mode 100644 index 0000000..ab7d523 --- /dev/null +++ b/docs/html/classfl_1_1Variable.html @@ -0,0 +1,954 @@ + + + + + + +fuzzylite: fl::Variable Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Variable Class Reference
+
+
+ +

#include <Variable.h>

+
+Inheritance diagram for fl::Variable:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Variable:
+
+
Collaboration graph
+ + +
+ + + + +

+Classes

struct  SortByCoG
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Variable (const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)
 
 Variable (const Variable &copy)
 
virtual ~Variable ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual void setRange (scalar minimum, scalar maximum)
 
virtual scalar range () const
 
virtual void setMinimum (scalar minimum)
 
virtual scalar getMinimum () const
 
virtual void setMaximum (scalar maximum)
 
virtual scalar getMaximum () const
 
virtual void setEnabled (bool enabled)
 
virtual bool isEnabled () const
 
virtual std::string fuzzify (scalar x) const
 
virtual TermhighestMembership (scalar x, scalar *yhighest=NULL) const
 
virtual std::string toString () const
 
virtual void sort ()
 
virtual void addTerm (Term *term)
 
virtual void insertTerm (Term *term, int index)
 
virtual TermgetTerm (int index) const
 
virtual TermgetTerm (const std::string &name) const
 
virtual bool hasTerm (const std::string &name) const
 
virtual TermremoveTerm (int index)
 
virtual int numberOfTerms () const
 
virtual const std::vector
+< Term * > & 
terms () const
 
+ + + + + + + + + + + +

+Protected Attributes

std::string _name
 
std::vector< Term * > _terms
 
scalar _minimum
 
scalar _maximum
 
bool _enabled
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Variable::Variable (const std::string & name = "",
scalar minimum = -fl::inf,
scalar maximum = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + + + + +
fl::Variable::Variable (const Variablecopy)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Variable::~Variable ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Variable::addTerm (Termterm)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::string fl::Variable::fuzzify (scalar x) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Variable::getMaximum () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Variable::getMinimum () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Variable::getName () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Term * fl::Variable::getTerm (int index) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Term * fl::Variable::getTerm (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool fl::Variable::hasTerm (const std::string & name) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Term * fl::Variable::highestMembership (scalar x,
scalaryhighest = NULL 
) const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Variable::insertTerm (Termterm,
int index 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::Variable::isEnabled () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::Variable::numberOfTerms () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::Variable::range () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Term * fl::Variable::removeTerm (int index)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Variable::setEnabled (bool enabled)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Variable::setMaximum (scalar maximum)
+
+virtual
+
+ +

Reimplemented in fl::OutputVariable.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Variable::setMinimum (scalar minimum)
+
+virtual
+
+ +

Reimplemented in fl::OutputVariable.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::Variable::setName (const std::string & name)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void fl::Variable::setRange (scalar minimum,
scalar maximum 
)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void fl::Variable::sort ()
+
+virtual
+
+

Operations for iterable datatype _terms

+

Operations for datatype _terms

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< Term * > & fl::Variable::terms () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Variable::toString () const
+
+virtual
+
+ +

Reimplemented in fl::OutputVariable, and fl::InputVariable.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
bool fl::Variable::_enabled
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Variable::_maximum
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::Variable::_minimum
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string fl::Variable::_name
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<Term*> fl::Variable::_terms
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Variable.js b/docs/html/classfl_1_1Variable.js new file mode 100644 index 0000000..d810ac0 --- /dev/null +++ b/docs/html/classfl_1_1Variable.js @@ -0,0 +1,34 @@ +var classfl_1_1Variable = +[ + [ "SortByCoG", "structfl_1_1Variable_1_1SortByCoG.html", "structfl_1_1Variable_1_1SortByCoG" ], + [ "Variable", "classfl_1_1Variable.html#ad24d35dc5e23847dd520ab35dd47b66b", null ], + [ "Variable", "classfl_1_1Variable.html#ae2f77db0362e53cfa67decbc05ace0b8", null ], + [ "~Variable", "classfl_1_1Variable.html#a029e3696756f21639f6a476b8ff0b138", null ], + [ "addTerm", "classfl_1_1Variable.html#a7ff7080e2f7a282ab0a66308721b869e", null ], + [ "fuzzify", "classfl_1_1Variable.html#aad41c391557ab0812e05f73896a8169f", null ], + [ "getMaximum", "classfl_1_1Variable.html#abbae3650d5d5a80d2128a59570c4880e", null ], + [ "getMinimum", "classfl_1_1Variable.html#ac2a8e5c9bc47d8fc943a6502381cc501", null ], + [ "getName", "classfl_1_1Variable.html#a26d2334f8afd573c8ebed27c72309338", null ], + [ "getTerm", "classfl_1_1Variable.html#a5502c7010d710663a7b90343f7fa4d34", null ], + [ "getTerm", "classfl_1_1Variable.html#ab7a949d0398629ba35d21f70c75f25c0", null ], + [ "hasTerm", "classfl_1_1Variable.html#a07762ffd5c636e1b37b4233dfa9be1b6", null ], + [ "highestMembership", "classfl_1_1Variable.html#aa3bde8705979a1af1c857f6e17981814", null ], + [ "insertTerm", "classfl_1_1Variable.html#a4c81c1f5479adc40eb552dc5ba9be061", null ], + [ "isEnabled", "classfl_1_1Variable.html#a814019c457f88c4e7ae3ff09bb353d78", null ], + [ "numberOfTerms", "classfl_1_1Variable.html#acda25738675210de35d76514c6c50582", null ], + [ "range", "classfl_1_1Variable.html#aee4811348bc71b992b51bb8b21bf7d0f", null ], + [ "removeTerm", "classfl_1_1Variable.html#aa6ec7f7e00faa114267edf386fde48f9", null ], + [ "setEnabled", "classfl_1_1Variable.html#ab141b7c2a05488b7a92697a80baf298a", null ], + [ "setMaximum", "classfl_1_1Variable.html#aabf0b9cebd1361271e04a602e4b21c92", null ], + [ "setMinimum", "classfl_1_1Variable.html#a9ae979c3dc2e7161c7a79d89700c4b58", null ], + [ "setName", "classfl_1_1Variable.html#aa9482cef47139253fd25a7ed02538e5e", null ], + [ "setRange", "classfl_1_1Variable.html#a643c97119900221fdd7c8e72a0be6ccf", null ], + [ "sort", "classfl_1_1Variable.html#a9fd85e7de334e33318cde13f93f4d5e0", null ], + [ "terms", "classfl_1_1Variable.html#aef34088e135f22788ffedeb338ce580d", null ], + [ "toString", "classfl_1_1Variable.html#acc8e2aada76ea676684b81bb2b5e12c6", null ], + [ "_enabled", "classfl_1_1Variable.html#af3da836e5c21086982d42a53465104c0", null ], + [ "_maximum", "classfl_1_1Variable.html#a53575c5e4f520ef389ba097d3e5a36e9", null ], + [ "_minimum", "classfl_1_1Variable.html#a0c19d07387e35f7b96e88b64249f89d1", null ], + [ "_name", "classfl_1_1Variable.html#add2efa8900070f5f06ffe1497792673a", null ], + [ "_terms", "classfl_1_1Variable.html#a7b4716cb6623bddc24a4084f85e63869", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Variable__coll__graph.map b/docs/html/classfl_1_1Variable__coll__graph.map new file mode 100644 index 0000000..2416ce3 --- /dev/null +++ b/docs/html/classfl_1_1Variable__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1Variable__coll__graph.md5 b/docs/html/classfl_1_1Variable__coll__graph.md5 new file mode 100644 index 0000000..71a7e53 --- /dev/null +++ b/docs/html/classfl_1_1Variable__coll__graph.md5 @@ -0,0 +1 @@ +064cf6f21d846da1e0013830bc249049 \ No newline at end of file diff --git a/docs/html/classfl_1_1Variable__coll__graph.png b/docs/html/classfl_1_1Variable__coll__graph.png new file mode 100644 index 0000000..76f265c Binary files /dev/null and b/docs/html/classfl_1_1Variable__coll__graph.png differ diff --git a/docs/html/classfl_1_1Variable__inherit__graph.map b/docs/html/classfl_1_1Variable__inherit__graph.map new file mode 100644 index 0000000..45f4789 --- /dev/null +++ b/docs/html/classfl_1_1Variable__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/classfl_1_1Variable__inherit__graph.md5 b/docs/html/classfl_1_1Variable__inherit__graph.md5 new file mode 100644 index 0000000..cea3789 --- /dev/null +++ b/docs/html/classfl_1_1Variable__inherit__graph.md5 @@ -0,0 +1 @@ +5a83039c651f26a465acadf529522048 \ No newline at end of file diff --git a/docs/html/classfl_1_1Variable__inherit__graph.png b/docs/html/classfl_1_1Variable__inherit__graph.png new file mode 100644 index 0000000..538958e Binary files /dev/null and b/docs/html/classfl_1_1Variable__inherit__graph.png differ diff --git a/docs/html/classfl_1_1Very-members.html b/docs/html/classfl_1_1Very-members.html new file mode 100644 index 0000000..747a055 --- /dev/null +++ b/docs/html/classfl_1_1Very-members.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Very Member List
+
+
+ +

This is the complete list of members for fl::Very, including all inherited members.

+ + + + + + +
constructor()fl::Verystatic
Hedge()fl::Hedgeinline
hedge(scalar x) const fl::Veryvirtual
name() const fl::Veryvirtual
~Hedge()fl::Hedgeinlinevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1Very.html b/docs/html/classfl_1_1Very.html new file mode 100644 index 0000000..3ad2fdd --- /dev/null +++ b/docs/html/classfl_1_1Very.html @@ -0,0 +1,242 @@ + + + + + + +fuzzylite: fl::Very Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <Very.h>

+
+Inheritance diagram for fl::Very:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Very:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + +

+Public Member Functions

std::string name () const
 
scalar hedge (scalar x) const
 
- Public Member Functions inherited from fl::Hedge
 Hedge ()
 
virtual ~Hedge ()
 
+ + + +

+Static Public Member Functions

static Hedgeconstructor ()
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
Hedge * fl::Very::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::Very::hedge (scalar x) const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Very::name () const
+
+virtual
+
+ +

Implements fl::Hedge.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1Very.js b/docs/html/classfl_1_1Very.js new file mode 100644 index 0000000..fe9cdf8 --- /dev/null +++ b/docs/html/classfl_1_1Very.js @@ -0,0 +1,6 @@ +var classfl_1_1Very = +[ + [ "constructor", "classfl_1_1Very.html#ac69b6207a02d6c7127c62fb9e1d0e4a4", null ], + [ "hedge", "classfl_1_1Very.html#ae331113074c7dee2df941e84e6d7ae85", null ], + [ "name", "classfl_1_1Very.html#a99e7d2e3f703e6b9612adfd56143e9db", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1Very__coll__graph.map b/docs/html/classfl_1_1Very__coll__graph.map new file mode 100644 index 0000000..50119b6 --- /dev/null +++ b/docs/html/classfl_1_1Very__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Very__coll__graph.md5 b/docs/html/classfl_1_1Very__coll__graph.md5 new file mode 100644 index 0000000..4ec6e53 --- /dev/null +++ b/docs/html/classfl_1_1Very__coll__graph.md5 @@ -0,0 +1 @@ +46dac489a9e5f499f5df0ee5b88bc3b8 \ No newline at end of file diff --git a/docs/html/classfl_1_1Very__coll__graph.png b/docs/html/classfl_1_1Very__coll__graph.png new file mode 100644 index 0000000..fafb6b4 Binary files /dev/null and b/docs/html/classfl_1_1Very__coll__graph.png differ diff --git a/docs/html/classfl_1_1Very__inherit__graph.map b/docs/html/classfl_1_1Very__inherit__graph.map new file mode 100644 index 0000000..50119b6 --- /dev/null +++ b/docs/html/classfl_1_1Very__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1Very__inherit__graph.md5 b/docs/html/classfl_1_1Very__inherit__graph.md5 new file mode 100644 index 0000000..4ec6e53 --- /dev/null +++ b/docs/html/classfl_1_1Very__inherit__graph.md5 @@ -0,0 +1 @@ +46dac489a9e5f499f5df0ee5b88bc3b8 \ No newline at end of file diff --git a/docs/html/classfl_1_1Very__inherit__graph.png b/docs/html/classfl_1_1Very__inherit__graph.png new file mode 100644 index 0000000..fafb6b4 Binary files /dev/null and b/docs/html/classfl_1_1Very__inherit__graph.png differ diff --git a/docs/html/classfl_1_1WeightedAverage-members.html b/docs/html/classfl_1_1WeightedAverage-members.html new file mode 100644 index 0000000..8dcd7d9 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::WeightedAverage Member List
+
+
+ +

This is the complete list of members for fl::WeightedAverage, including all inherited members.

+ + + + + + + + +
className() const fl::WeightedAveragevirtual
constructor()fl::WeightedAveragestatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::WeightedAveragevirtual
WeightedAverage()fl::WeightedAverage
~Defuzzifier()fl::Defuzzifierinlinevirtual
~WeightedAverage()fl::WeightedAveragevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1WeightedAverage.html b/docs/html/classfl_1_1WeightedAverage.html new file mode 100644 index 0000000..b34c4b1 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage.html @@ -0,0 +1,301 @@ + + + + + + +fuzzylite: fl::WeightedAverage Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::WeightedAverage Class Reference
+
+
+ +

#include <WeightedAverage.h>

+
+Inheritance diagram for fl::WeightedAverage:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::WeightedAverage:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 WeightedAverage ()
 
virtual ~WeightedAverage ()
 
virtual std::string className () const
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::WeightedAverage::WeightedAverage ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::WeightedAverage::~WeightedAverage ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::WeightedAverage::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::WeightedAverage::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::WeightedAverage::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1WeightedAverage.js b/docs/html/classfl_1_1WeightedAverage.js new file mode 100644 index 0000000..39ad174 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage.js @@ -0,0 +1,8 @@ +var classfl_1_1WeightedAverage = +[ + [ "WeightedAverage", "classfl_1_1WeightedAverage.html#a69cb72ae04264d438690bd0d23f13dd4", null ], + [ "~WeightedAverage", "classfl_1_1WeightedAverage.html#ae6d56b608f1295269b671a0ac0d5c4bf", null ], + [ "className", "classfl_1_1WeightedAverage.html#af130a933b869dad231ccd3748b0377d8", null ], + [ "constructor", "classfl_1_1WeightedAverage.html#ab9a018867fe59c52152ae75b7998b91d", null ], + [ "defuzzify", "classfl_1_1WeightedAverage.html#a992edc31cb46e38191d5f750de37e281", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedAverage__coll__graph.map b/docs/html/classfl_1_1WeightedAverage__coll__graph.map new file mode 100644 index 0000000..9b308c9 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1WeightedAverage__coll__graph.md5 b/docs/html/classfl_1_1WeightedAverage__coll__graph.md5 new file mode 100644 index 0000000..08f0a92 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage__coll__graph.md5 @@ -0,0 +1 @@ +d8931e4fa0797676ab82460784e071f1 \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedAverage__coll__graph.png b/docs/html/classfl_1_1WeightedAverage__coll__graph.png new file mode 100644 index 0000000..eb3d822 Binary files /dev/null and b/docs/html/classfl_1_1WeightedAverage__coll__graph.png differ diff --git a/docs/html/classfl_1_1WeightedAverage__inherit__graph.map b/docs/html/classfl_1_1WeightedAverage__inherit__graph.map new file mode 100644 index 0000000..9b308c9 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1WeightedAverage__inherit__graph.md5 b/docs/html/classfl_1_1WeightedAverage__inherit__graph.md5 new file mode 100644 index 0000000..08f0a92 --- /dev/null +++ b/docs/html/classfl_1_1WeightedAverage__inherit__graph.md5 @@ -0,0 +1 @@ +d8931e4fa0797676ab82460784e071f1 \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedAverage__inherit__graph.png b/docs/html/classfl_1_1WeightedAverage__inherit__graph.png new file mode 100644 index 0000000..eb3d822 Binary files /dev/null and b/docs/html/classfl_1_1WeightedAverage__inherit__graph.png differ diff --git a/docs/html/classfl_1_1WeightedSum-members.html b/docs/html/classfl_1_1WeightedSum-members.html new file mode 100644 index 0000000..3e822ea --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum-members.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::WeightedSum Member List
+
+
+ +

This is the complete list of members for fl::WeightedSum, including all inherited members.

+ + + + + + + + +
className() const fl::WeightedSumvirtual
constructor()fl::WeightedSumstatic
Defuzzifier()fl::Defuzzifierinline
defuzzify(const Term *term, scalar minimum, scalar maximum) const fl::WeightedSumvirtual
WeightedSum()fl::WeightedSum
~Defuzzifier()fl::Defuzzifierinlinevirtual
~WeightedSum()fl::WeightedSumvirtual
+
+ + + + diff --git a/docs/html/classfl_1_1WeightedSum.html b/docs/html/classfl_1_1WeightedSum.html new file mode 100644 index 0000000..f684611 --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum.html @@ -0,0 +1,301 @@ + + + + + + +fuzzylite: fl::WeightedSum Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::WeightedSum Class Reference
+
+
+ +

#include <WeightedSum.h>

+
+Inheritance diagram for fl::WeightedSum:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::WeightedSum:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 WeightedSum ()
 
virtual ~WeightedSum ()
 
virtual std::string className () const
 
virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const
 
- Public Member Functions inherited from fl::Defuzzifier
 Defuzzifier ()
 
virtual ~Defuzzifier ()
 
+ + + +

+Static Public Member Functions

static Defuzzifierconstructor ()
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
fl::WeightedSum::WeightedSum ()
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::WeightedSum::~WeightedSum ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::WeightedSum::className () const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Defuzzifier * fl::WeightedSum::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
scalar fl::WeightedSum::defuzzify (const Termterm,
scalar minimum,
scalar maximum 
) const
+
+virtual
+
+ +

Implements fl::Defuzzifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1WeightedSum.js b/docs/html/classfl_1_1WeightedSum.js new file mode 100644 index 0000000..c3e60a7 --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum.js @@ -0,0 +1,8 @@ +var classfl_1_1WeightedSum = +[ + [ "WeightedSum", "classfl_1_1WeightedSum.html#a98a8278e11abb3a9dea58e9e9d75c6ba", null ], + [ "~WeightedSum", "classfl_1_1WeightedSum.html#a5fee2381ac48d33305cd29387433cfae", null ], + [ "className", "classfl_1_1WeightedSum.html#ada6b20ede0039b4517231ac7f74a0d30", null ], + [ "constructor", "classfl_1_1WeightedSum.html#a5e2bd343178e3b5b82513ba4e8d76302", null ], + [ "defuzzify", "classfl_1_1WeightedSum.html#aa8c7072f42219b9a7100aa16f0e6e427", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedSum__coll__graph.map b/docs/html/classfl_1_1WeightedSum__coll__graph.map new file mode 100644 index 0000000..9f5374c --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1WeightedSum__coll__graph.md5 b/docs/html/classfl_1_1WeightedSum__coll__graph.md5 new file mode 100644 index 0000000..44e0afe --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum__coll__graph.md5 @@ -0,0 +1 @@ +1807ce4de8390aca89bbe008363602a5 \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedSum__coll__graph.png b/docs/html/classfl_1_1WeightedSum__coll__graph.png new file mode 100644 index 0000000..865a95b Binary files /dev/null and b/docs/html/classfl_1_1WeightedSum__coll__graph.png differ diff --git a/docs/html/classfl_1_1WeightedSum__inherit__graph.map b/docs/html/classfl_1_1WeightedSum__inherit__graph.map new file mode 100644 index 0000000..9f5374c --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1WeightedSum__inherit__graph.md5 b/docs/html/classfl_1_1WeightedSum__inherit__graph.md5 new file mode 100644 index 0000000..44e0afe --- /dev/null +++ b/docs/html/classfl_1_1WeightedSum__inherit__graph.md5 @@ -0,0 +1 @@ +1807ce4de8390aca89bbe008363602a5 \ No newline at end of file diff --git a/docs/html/classfl_1_1WeightedSum__inherit__graph.png b/docs/html/classfl_1_1WeightedSum__inherit__graph.png new file mode 100644 index 0000000..865a95b Binary files /dev/null and b/docs/html/classfl_1_1WeightedSum__inherit__graph.png differ diff --git a/docs/html/classfl_1_1ZShape-members.html b/docs/html/classfl_1_1ZShape-members.html new file mode 100644 index 0000000..b15b524 --- /dev/null +++ b/docs/html/classfl_1_1ZShape-members.html @@ -0,0 +1,147 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::ZShape Member List
+
+
+ +

This is the complete list of members for fl::ZShape, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_endfl::ZShapeprotected
_namefl::Termprotected
_startfl::ZShapeprotected
className() const fl::ZShapevirtual
configure(const std::string &parameters)fl::ZShapevirtual
constructor()fl::ZShapestatic
copy() const fl::ZShapevirtual
getEnd() const fl::ZShapevirtual
getName() const fl::Termvirtual
getStart() const fl::ZShapevirtual
membership(scalar x) const fl::ZShapevirtual
parameters() const fl::ZShapevirtual
setEnd(scalar end)fl::ZShapevirtual
setName(const std::string &name)fl::Termvirtual
setStart(scalar start)fl::ZShapevirtual
Term(const std::string &name="")fl::Term
toString() const fl::Termvirtual
ZShape(const std::string &name="", scalar _start=-fl::inf, scalar _end=fl::inf)fl::ZShape
~Term()fl::Termvirtual
~ZShape()fl::ZShapevirtual
+
+ + + + diff --git a/docs/html/classfl_1_1ZShape.html b/docs/html/classfl_1_1ZShape.html new file mode 100644 index 0000000..1ade760 --- /dev/null +++ b/docs/html/classfl_1_1ZShape.html @@ -0,0 +1,544 @@ + + + + + + +fuzzylite: fl::ZShape Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <ZShape.h>

+
+Inheritance diagram for fl::ZShape:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::ZShape:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ZShape (const std::string &name="", scalar _start=-fl::inf, scalar _end=fl::inf)
 
virtual ~ZShape ()
 
virtual std::string className () const
 
virtual std::string parameters () const
 
virtual void configure (const std::string &parameters)
 
virtual scalar membership (scalar x) const
 
virtual void setStart (scalar start)
 
virtual scalar getStart () const
 
virtual void setEnd (scalar end)
 
virtual scalar getEnd () const
 
virtual ZShapecopy () const
 
- Public Member Functions inherited from fl::Term
 Term (const std::string &name="")
 
virtual ~Term ()
 
virtual void setName (const std::string &name)
 
virtual std::string getName () const
 
virtual std::string toString () const
 
+ + + +

+Static Public Member Functions

static Termconstructor ()
 
+ + + + + + + + +

+Protected Attributes

scalar _start
 
scalar _end
 
- Protected Attributes inherited from fl::Term
std::string _name
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::ZShape::ZShape (const std::string & name = "",
scalar _start = -fl::inf,
scalar _end = fl::inf 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::ZShape::~ZShape ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::ZShape::className () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::ZShape::configure (const std::string & parameters)
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Term * fl::ZShape::constructor ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
ZShape * fl::ZShape::copy () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::ZShape::getEnd () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::ZShape::getStart () const
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
scalar fl::ZShape::membership (scalar x) const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::ZShape::parameters () const
+
+virtual
+
+ +

Implements fl::Term.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::ZShape::setEnd (scalar end)
+
+virtual
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::ZShape::setStart (scalar start)
+
+virtual
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
scalar fl::ZShape::_end
+
+protected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::ZShape::_start
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1ZShape.js b/docs/html/classfl_1_1ZShape.js new file mode 100644 index 0000000..fbe01ef --- /dev/null +++ b/docs/html/classfl_1_1ZShape.js @@ -0,0 +1,17 @@ +var classfl_1_1ZShape = +[ + [ "ZShape", "classfl_1_1ZShape.html#a7560999842346f564f689a427b9f2114", null ], + [ "~ZShape", "classfl_1_1ZShape.html#ab2e801c3a211512b7328a71b687f6109", null ], + [ "className", "classfl_1_1ZShape.html#aef7094c49f93f96217d1ae787d0b7686", null ], + [ "configure", "classfl_1_1ZShape.html#a7e044c217eed3571c707641c1b3465c4", null ], + [ "constructor", "classfl_1_1ZShape.html#a81235ae129498b7defc5d247afcefb60", null ], + [ "copy", "classfl_1_1ZShape.html#a8ac998acfc9492859008eeb5a4ca0454", null ], + [ "getEnd", "classfl_1_1ZShape.html#a5fec6776563af1b7de30aa5fd97b6bac", null ], + [ "getStart", "classfl_1_1ZShape.html#a01c48e10ed374c0aea3c0ac578db9e46", null ], + [ "membership", "classfl_1_1ZShape.html#a3cc9f0d130305aa3d7afae44576763e8", null ], + [ "parameters", "classfl_1_1ZShape.html#a628871407ebeeedb924f437c89177061", null ], + [ "setEnd", "classfl_1_1ZShape.html#a0fd3d0fa1a33f23b2c89a2c3b658cc09", null ], + [ "setStart", "classfl_1_1ZShape.html#aacb9f39a1d26b9c50e43908115ddc4b9", null ], + [ "_end", "classfl_1_1ZShape.html#ab6958e4e9d2e5db62e7f62893bcd7afd", null ], + [ "_start", "classfl_1_1ZShape.html#aab9a8bf0737de2680c9a421c2c6ab89e", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1ZShape__coll__graph.map b/docs/html/classfl_1_1ZShape__coll__graph.map new file mode 100644 index 0000000..d11aa8e --- /dev/null +++ b/docs/html/classfl_1_1ZShape__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/classfl_1_1ZShape__coll__graph.md5 b/docs/html/classfl_1_1ZShape__coll__graph.md5 new file mode 100644 index 0000000..f6774e9 --- /dev/null +++ b/docs/html/classfl_1_1ZShape__coll__graph.md5 @@ -0,0 +1 @@ +ede1c413457e519917d4f6c5537a4b36 \ No newline at end of file diff --git a/docs/html/classfl_1_1ZShape__coll__graph.png b/docs/html/classfl_1_1ZShape__coll__graph.png new file mode 100644 index 0000000..84da014 Binary files /dev/null and b/docs/html/classfl_1_1ZShape__coll__graph.png differ diff --git a/docs/html/classfl_1_1ZShape__inherit__graph.map b/docs/html/classfl_1_1ZShape__inherit__graph.map new file mode 100644 index 0000000..81dbc21 --- /dev/null +++ b/docs/html/classfl_1_1ZShape__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/classfl_1_1ZShape__inherit__graph.md5 b/docs/html/classfl_1_1ZShape__inherit__graph.md5 new file mode 100644 index 0000000..dbf7ede --- /dev/null +++ b/docs/html/classfl_1_1ZShape__inherit__graph.md5 @@ -0,0 +1 @@ +618434c8316cef80e818d388f0bfd7d8 \ No newline at end of file diff --git a/docs/html/classfl_1_1ZShape__inherit__graph.png b/docs/html/classfl_1_1ZShape__inherit__graph.png new file mode 100644 index 0000000..cf3caa9 Binary files /dev/null and b/docs/html/classfl_1_1ZShape__inherit__graph.png differ diff --git a/docs/html/classfl_1_1fuzzylite-members.html b/docs/html/classfl_1_1fuzzylite-members.html new file mode 100644 index 0000000..84e2eaf --- /dev/null +++ b/docs/html/classfl_1_1fuzzylite-members.html @@ -0,0 +1,148 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::fuzzylite Member List
+
+
+ +

This is the complete list of members for fl::fuzzylite, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_debugfl::fuzzyliteprotectedstatic
_decimalsfl::fuzzyliteprotectedstatic
_loggingfl::fuzzyliteprotectedstatic
_machepsfl::fuzzyliteprotectedstatic
author()fl::fuzzylitestatic
configuration()fl::fuzzylitestatic
date()fl::fuzzylitestatic
debug()fl::fuzzylitestatic
decimals()fl::fuzzylitestatic
floatingPoint()fl::fuzzylitestatic
fullname()fl::fuzzylitestatic
logging()fl::fuzzylitestatic
longVersion()fl::fuzzylitestatic
macheps()fl::fuzzylitestatic
name()fl::fuzzylitestatic
platform()fl::fuzzylitestatic
setDebug(bool debug)fl::fuzzylitestatic
setDecimals(int decimals)fl::fuzzylitestatic
setLogging(bool logging)fl::fuzzylitestatic
setMachEps(scalar macheps)fl::fuzzylitestatic
version()fl::fuzzylitestatic
+
+ + + + diff --git a/docs/html/classfl_1_1fuzzylite.html b/docs/html/classfl_1_1fuzzylite.html new file mode 100644 index 0000000..ea4f606 --- /dev/null +++ b/docs/html/classfl_1_1fuzzylite.html @@ -0,0 +1,668 @@ + + + + + + +fuzzylite: fl::fuzzylite Class Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

#include <fuzzylite.h>

+
+Collaboration diagram for fl::fuzzylite:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static std::string name ()
 
static std::string fullname ()
 
static std::string version ()
 
static std::string longVersion ()
 
static std::string author ()
 
static std::string date ()
 
static std::string platform ()
 
static std::string configuration ()
 
static std::string floatingPoint ()
 
static bool debug ()
 
static void setDebug (bool debug)
 
static int decimals ()
 
static void setDecimals (int decimals)
 
static scalar macheps ()
 
static void setMachEps (scalar macheps)
 
static bool logging ()
 
static void setLogging (bool logging)
 
+ + + + + + + + + +

+Static Protected Attributes

static int _decimals = 3
 
static scalar _macheps = 1e-5
 
static bool _debug = FL_DEBUG
 
static bool _logging = true
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::author ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::configuration ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::date ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::fuzzylite::debug ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int fl::fuzzylite::decimals ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::floatingPoint ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::fullname ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool fl::fuzzylite::logging ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::longVersion ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
scalar fl::fuzzylite::macheps ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::name ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::platform ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::fuzzylite::setDebug (bool debug)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::fuzzylite::setDecimals (int decimals)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::fuzzylite::setLogging (bool logging)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void fl::fuzzylite::setMachEps (scalar macheps)
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::fuzzylite::version ()
+
+static
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
bool fl::fuzzylite::_debug = FL_DEBUG
+
+staticprotected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
int fl::fuzzylite::_decimals = 3
+
+staticprotected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
bool fl::fuzzylite::_logging = true
+
+staticprotected
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
scalar fl::fuzzylite::_macheps = 1e-5
+
+staticprotected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/classfl_1_1fuzzylite.js b/docs/html/classfl_1_1fuzzylite.js new file mode 100644 index 0000000..6b4f1db --- /dev/null +++ b/docs/html/classfl_1_1fuzzylite.js @@ -0,0 +1,24 @@ +var classfl_1_1fuzzylite = +[ + [ "author", "classfl_1_1fuzzylite.html#ad9c08f16bc85e32173726707dd38d561", null ], + [ "configuration", "classfl_1_1fuzzylite.html#a089930a858fe2f0ad309331f96d403f0", null ], + [ "date", "classfl_1_1fuzzylite.html#ac4ff06e22ed1031e0a3cc1538dea751f", null ], + [ "debug", "classfl_1_1fuzzylite.html#a7ecb3f3d1979043fca3b5b13dc7883be", null ], + [ "decimals", "classfl_1_1fuzzylite.html#af94d7e84ef71e1e0a623483ef029274c", null ], + [ "floatingPoint", "classfl_1_1fuzzylite.html#a6df0949b8d769591ca383985e31414ba", null ], + [ "fullname", "classfl_1_1fuzzylite.html#a4879aa89db2f02c55316cb5bc49b1d65", null ], + [ "logging", "classfl_1_1fuzzylite.html#ac2d3a7652fb4cab32d28f22219140c55", null ], + [ "longVersion", "classfl_1_1fuzzylite.html#a46bb31970b57509e50cf5e17e2caeb3e", null ], + [ "macheps", "classfl_1_1fuzzylite.html#aeec67f83c1315df438540263b6da184d", null ], + [ "name", "classfl_1_1fuzzylite.html#a15221b258922e96bb6ff9e270ec9678e", null ], + [ "platform", "classfl_1_1fuzzylite.html#a8a0e943a752795f49476c3c447f73b29", null ], + [ "setDebug", "classfl_1_1fuzzylite.html#a7ba42a4547287cf82376139c8c84a3ac", null ], + [ "setDecimals", "classfl_1_1fuzzylite.html#ad2cc6e7674b83d2d81f7273892efd655", null ], + [ "setLogging", "classfl_1_1fuzzylite.html#a537521f5a55a706e2b0c5d8cddfd842a", null ], + [ "setMachEps", "classfl_1_1fuzzylite.html#ad30f34196fccf39d165b19f96cab3dc8", null ], + [ "version", "classfl_1_1fuzzylite.html#a8eb9af065085aed7ed5f0fb187c8b43f", null ], + [ "_debug", "classfl_1_1fuzzylite.html#a4aaad0b03eebd83ccfb01a3ffb307d51", null ], + [ "_decimals", "classfl_1_1fuzzylite.html#a1fe97fa6ede2cb612d3d75408cc77913", null ], + [ "_logging", "classfl_1_1fuzzylite.html#ac45078e9cf4b2bd72550e39172bc6b4d", null ], + [ "_macheps", "classfl_1_1fuzzylite.html#af7ac9d34e39f267de40ae3be3aae787c", null ] +]; \ No newline at end of file diff --git a/docs/html/classfl_1_1fuzzylite__coll__graph.map b/docs/html/classfl_1_1fuzzylite__coll__graph.map new file mode 100644 index 0000000..ec05d5e --- /dev/null +++ b/docs/html/classfl_1_1fuzzylite__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/classfl_1_1fuzzylite__coll__graph.md5 b/docs/html/classfl_1_1fuzzylite__coll__graph.md5 new file mode 100644 index 0000000..97c88c0 --- /dev/null +++ b/docs/html/classfl_1_1fuzzylite__coll__graph.md5 @@ -0,0 +1 @@ +22c7e9d519adb302d490dd1d3807e3b2 \ No newline at end of file diff --git a/docs/html/classfl_1_1fuzzylite__coll__graph.png b/docs/html/classfl_1_1fuzzylite__coll__graph.png new file mode 100644 index 0000000..c109036 Binary files /dev/null and b/docs/html/classfl_1_1fuzzylite__coll__graph.png differ diff --git a/docs/html/closed.png b/docs/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/docs/html/closed.png differ diff --git a/docs/html/dir_000000_000001.html b/docs/html/dir_000000_000001.html new file mode 100644 index 0000000..da4fad7 --- /dev/null +++ b/docs/html/dir_000000_000001.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl -> defuzzifier Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000000_000002.html b/docs/html/dir_000000_000002.html new file mode 100644 index 0000000..6527b75 --- /dev/null +++ b/docs/html/dir_000000_000002.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl -> factory Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000000_000004.html b/docs/html/dir_000000_000004.html new file mode 100644 index 0000000..6996c3f --- /dev/null +++ b/docs/html/dir_000000_000004.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl -> imex Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000000_000008.html b/docs/html/dir_000000_000008.html new file mode 100644 index 0000000..c6b4d75 --- /dev/null +++ b/docs/html/dir_000000_000008.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl -> rule Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000000_000010.html b/docs/html/dir_000000_000010.html new file mode 100644 index 0000000..9a6bdd2 --- /dev/null +++ b/docs/html/dir_000000_000010.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl -> variable Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

fl → variable Relation

File in flIncludes file in fl/variable
Headers.hInputVariable.h
Headers.hOutputVariable.h
Headers.hVariable.h
term / Linear.hInputVariable.h
+
+ + + + diff --git a/docs/html/dir_000002_000003.html b/docs/html/dir_000002_000003.html new file mode 100644 index 0000000..09e0373 --- /dev/null +++ b/docs/html/dir_000002_000003.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/factory -> hedge Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

factory → hedge Relation

File in fl/factoryIncludes file in fl/hedge
HedgeFactory.hHedge.h
+
+ + + + diff --git a/docs/html/dir_000002_000005.html b/docs/html/dir_000002_000005.html new file mode 100644 index 0000000..aa43542 --- /dev/null +++ b/docs/html/dir_000002_000005.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/factory -> norm Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

factory → norm Relation

File in fl/factoryIncludes file in fl/norm
SNormFactory.hSNorm.h
TNormFactory.hTNorm.h
+
+ + + + diff --git a/docs/html/dir_000002_000009.html b/docs/html/dir_000002_000009.html new file mode 100644 index 0000000..d62fab6 --- /dev/null +++ b/docs/html/dir_000002_000009.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/factory -> term Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

factory → term Relation

File in fl/factoryIncludes file in fl/term
TermFactory.hTerm.h
+
+ + + + diff --git a/docs/html/dir_000009_000010.html b/docs/html/dir_000009_000010.html new file mode 100644 index 0000000..2e7360c --- /dev/null +++ b/docs/html/dir_000009_000010.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/term -> variable Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

term → variable Relation

File in fl/termIncludes file in fl/variable
Linear.hInputVariable.h
+
+ + + + diff --git a/docs/html/dir_000010_000001.html b/docs/html/dir_000010_000001.html new file mode 100644 index 0000000..38f0d75 --- /dev/null +++ b/docs/html/dir_000010_000001.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/variable -> defuzzifier Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

variable → defuzzifier Relation

File in fl/variableIncludes file in fl/defuzzifier
Variable.hCentroid.h
+
+ + + + diff --git a/docs/html/dir_000010_000005.html b/docs/html/dir_000010_000005.html new file mode 100644 index 0000000..1e2638a --- /dev/null +++ b/docs/html/dir_000010_000005.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: fl/variable -> norm Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

variable → norm Relation

File in fl/variableIncludes file in fl/norm
Variable.hNorm.h
+
+ + + + diff --git a/docs/html/dir_000012_000000.html b/docs/html/dir_000012_000000.html new file mode 100644 index 0000000..e7c9986 --- /dev/null +++ b/docs/html/dir_000012_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/defuzzifier -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000013_000000.html b/docs/html/dir_000013_000000.html new file mode 100644 index 0000000..2c99219 --- /dev/null +++ b/docs/html/dir_000013_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/factory -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

factory → fl Relation

File in src/factoryIncludes file in fl
DefuzzifierFactory.cppdefuzzifier / Bisector.h
DefuzzifierFactory.cppdefuzzifier / Centroid.h
DefuzzifierFactory.cppfactory / DefuzzifierFactory.h
DefuzzifierFactory.cppException.h
DefuzzifierFactory.cppdefuzzifier / LargestOfMaximum.h
DefuzzifierFactory.cppdefuzzifier / MeanOfMaximum.h
DefuzzifierFactory.cppdefuzzifier / SmallestOfMaximum.h
DefuzzifierFactory.cppdefuzzifier / WeightedAverage.h
DefuzzifierFactory.cppdefuzzifier / WeightedSum.h
Factory.cppdefuzzifier / Defuzzifier.h
Factory.cppException.h
Factory.cppfactory / Factory.h
Factory.cpphedge / Hedge.h
Factory.cppnorm / SNorm.h
Factory.cppterm / Term.h
Factory.cppnorm / TNorm.h
FactoryManager.cppfactory / DefuzzifierFactory.h
FactoryManager.cppfactory / FactoryManager.h
FactoryManager.cppfactory / HedgeFactory.h
FactoryManager.cppfactory / SNormFactory.h
FactoryManager.cppfactory / TermFactory.h
FactoryManager.cppfactory / TNormFactory.h
HedgeFactory.cpphedge / Any.h
HedgeFactory.cpphedge / Extremely.h
HedgeFactory.cppfactory / HedgeFactory.h
HedgeFactory.cpphedge / Not.h
HedgeFactory.cpphedge / Seldom.h
HedgeFactory.cpphedge / Somewhat.h
HedgeFactory.cpphedge / Very.h
SNormFactory.cppnorm / s / AlgebraicSum.h
SNormFactory.cppnorm / s / BoundedSum.h
SNormFactory.cppnorm / s / DrasticSum.h
SNormFactory.cppnorm / s / EinsteinSum.h
SNormFactory.cppnorm / s / HamacherSum.h
SNormFactory.cppnorm / s / Maximum.h
SNormFactory.cppnorm / s / NormalizedSum.h
SNormFactory.cppfactory / SNormFactory.h
TermFactory.cppterm / Bell.h
TermFactory.cppterm / Constant.h
TermFactory.cppterm / Discrete.h
TermFactory.cppException.h
TermFactory.cppterm / Function.h
TermFactory.cppterm / Gaussian.h
TermFactory.cppterm / GaussianProduct.h
TermFactory.cppterm / Linear.h
TermFactory.cppterm / PiShape.h
TermFactory.cppterm / Ramp.h
TermFactory.cppterm / Rectangle.h
TermFactory.cppterm / Sigmoid.h
TermFactory.cppterm / SigmoidDifference.h
TermFactory.cppterm / SigmoidProduct.h
TermFactory.cppterm / SShape.h
TermFactory.cppterm / Term.h
TermFactory.cppfactory / TermFactory.h
TermFactory.cppterm / Trapezoid.h
TermFactory.cppterm / Triangle.h
TermFactory.cppterm / ZShape.h
TNormFactory.cppnorm / t / AlgebraicProduct.h
TNormFactory.cppnorm / t / BoundedDifference.h
TNormFactory.cppnorm / t / DrasticProduct.h
TNormFactory.cppnorm / t / EinsteinProduct.h
TNormFactory.cppnorm / t / HamacherProduct.h
TNormFactory.cppnorm / t / Minimum.h
TNormFactory.cppfactory / TNormFactory.h
+
+ + + + diff --git a/docs/html/dir_000014_000000.html b/docs/html/dir_000014_000000.html new file mode 100644 index 0000000..52c7b97 --- /dev/null +++ b/docs/html/dir_000014_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/hedge -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000015_000000.html b/docs/html/dir_000015_000000.html new file mode 100644 index 0000000..5eea8d0 --- /dev/null +++ b/docs/html/dir_000015_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/imex -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000016_000000.html b/docs/html/dir_000016_000000.html new file mode 100644 index 0000000..5229e0f --- /dev/null +++ b/docs/html/dir_000016_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/norm -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000017_000000.html b/docs/html/dir_000017_000000.html new file mode 100644 index 0000000..84e346c --- /dev/null +++ b/docs/html/dir_000017_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/norm/s -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000018_000000.html b/docs/html/dir_000018_000000.html new file mode 100644 index 0000000..87bfdc4 --- /dev/null +++ b/docs/html/dir_000018_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/norm/t -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000019_000000.html b/docs/html/dir_000019_000000.html new file mode 100644 index 0000000..6599987 --- /dev/null +++ b/docs/html/dir_000019_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/rule -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000020_000000.html b/docs/html/dir_000020_000000.html new file mode 100644 index 0000000..e60be76 --- /dev/null +++ b/docs/html/dir_000020_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/term -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_000021_000000.html b/docs/html/dir_000021_000000.html new file mode 100644 index 0000000..603bcb5 --- /dev/null +++ b/docs/html/dir_000021_000000.html @@ -0,0 +1,113 @@ + + + + + + +fuzzylite: src/variable -> fl Relation + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ + + + diff --git a/docs/html/dir_161d5a887887075714729d2b35513d2b.html b/docs/html/dir_161d5a887887075714729d2b35513d2b.html new file mode 100644 index 0000000..39a9bd2 --- /dev/null +++ b/docs/html/dir_161d5a887887075714729d2b35513d2b.html @@ -0,0 +1,168 @@ + + + + + + +fuzzylite: fl/term Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
term Directory Reference
+
+
+
+Directory dependency graph for term:
+
+
fl/term
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  Accumulated.h [code]
 
file  Bell.h [code]
 
file  Constant.h [code]
 
file  Discrete.h [code]
 
file  Function.h [code]
 
file  Gaussian.h [code]
 
file  GaussianProduct.h [code]
 
file  Linear.h [code]
 
file  PiShape.h [code]
 
file  Ramp.h [code]
 
file  Rectangle.h [code]
 
file  Sigmoid.h [code]
 
file  SigmoidDifference.h [code]
 
file  SigmoidProduct.h [code]
 
file  SShape.h [code]
 
file  Term.h [code]
 
file  Thresholded.h [code]
 
file  Trapezoid.h [code]
 
file  Triangle.h [code]
 
file  ZShape.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_161d5a887887075714729d2b35513d2b.js b/docs/html/dir_161d5a887887075714729d2b35513d2b.js new file mode 100644 index 0000000..de98415 --- /dev/null +++ b/docs/html/dir_161d5a887887075714729d2b35513d2b.js @@ -0,0 +1,67 @@ +var dir_161d5a887887075714729d2b35513d2b = +[ + [ "Accumulated.h", "Accumulated_8h.html", [ + [ "Accumulated", "classfl_1_1Accumulated.html", "classfl_1_1Accumulated" ] + ] ], + [ "Bell.h", "Bell_8h.html", [ + [ "Bell", "classfl_1_1Bell.html", "classfl_1_1Bell" ] + ] ], + [ "Constant.h", "Constant_8h.html", [ + [ "Constant", "classfl_1_1Constant.html", "classfl_1_1Constant" ] + ] ], + [ "Discrete.h", "Discrete_8h.html", [ + [ "Discrete", "classfl_1_1Discrete.html", "classfl_1_1Discrete" ] + ] ], + [ "Function.h", "Function_8h.html", [ + [ "Function", "classfl_1_1Function.html", "classfl_1_1Function" ], + [ "Element", "structfl_1_1Function_1_1Element.html", "structfl_1_1Function_1_1Element" ], + [ "Operator", "structfl_1_1Function_1_1Operator.html", "structfl_1_1Function_1_1Operator" ], + [ "BuiltInFunction", "structfl_1_1Function_1_1BuiltInFunction.html", "structfl_1_1Function_1_1BuiltInFunction" ], + [ "Node", "structfl_1_1Function_1_1Node.html", "structfl_1_1Function_1_1Node" ] + ] ], + [ "Gaussian.h", "Gaussian_8h.html", [ + [ "Gaussian", "classfl_1_1Gaussian.html", "classfl_1_1Gaussian" ] + ] ], + [ "GaussianProduct.h", "GaussianProduct_8h.html", [ + [ "GaussianProduct", "classfl_1_1GaussianProduct.html", "classfl_1_1GaussianProduct" ] + ] ], + [ "Linear.h", "Linear_8h.html", [ + [ "Linear", "classfl_1_1Linear.html", "classfl_1_1Linear" ] + ] ], + [ "PiShape.h", "PiShape_8h.html", [ + [ "PiShape", "classfl_1_1PiShape.html", "classfl_1_1PiShape" ] + ] ], + [ "Ramp.h", "Ramp_8h.html", [ + [ "Ramp", "classfl_1_1Ramp.html", "classfl_1_1Ramp" ] + ] ], + [ "Rectangle.h", "Rectangle_8h.html", [ + [ "Rectangle", "classfl_1_1Rectangle.html", "classfl_1_1Rectangle" ] + ] ], + [ "Sigmoid.h", "Sigmoid_8h.html", [ + [ "Sigmoid", "classfl_1_1Sigmoid.html", "classfl_1_1Sigmoid" ] + ] ], + [ "SigmoidDifference.h", "SigmoidDifference_8h.html", [ + [ "SigmoidDifference", "classfl_1_1SigmoidDifference.html", "classfl_1_1SigmoidDifference" ] + ] ], + [ "SigmoidProduct.h", "SigmoidProduct_8h.html", [ + [ "SigmoidProduct", "classfl_1_1SigmoidProduct.html", "classfl_1_1SigmoidProduct" ] + ] ], + [ "SShape.h", "SShape_8h.html", [ + [ "SShape", "classfl_1_1SShape.html", "classfl_1_1SShape" ] + ] ], + [ "Term.h", "Term_8h.html", [ + [ "Term", "classfl_1_1Term.html", "classfl_1_1Term" ] + ] ], + [ "Thresholded.h", "Thresholded_8h.html", [ + [ "Thresholded", "classfl_1_1Thresholded.html", "classfl_1_1Thresholded" ] + ] ], + [ "Trapezoid.h", "Trapezoid_8h.html", [ + [ "Trapezoid", "classfl_1_1Trapezoid.html", "classfl_1_1Trapezoid" ] + ] ], + [ "Triangle.h", "Triangle_8h.html", [ + [ "Triangle", "classfl_1_1Triangle.html", "classfl_1_1Triangle" ] + ] ], + [ "ZShape.h", "ZShape_8h.html", [ + [ "ZShape", "classfl_1_1ZShape.html", "classfl_1_1ZShape" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.map b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.map new file mode 100644 index 0000000..9fafda1 --- /dev/null +++ b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.md5 b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.md5 new file mode 100644 index 0000000..83e7434 --- /dev/null +++ b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.md5 @@ -0,0 +1 @@ +d38f1ccd775e3ebd2fb09c7d43f70bb5 \ No newline at end of file diff --git a/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.png b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.png new file mode 100644 index 0000000..373b0a4 Binary files /dev/null and b/docs/html/dir_161d5a887887075714729d2b35513d2b_dep.png differ diff --git a/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.html b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.html new file mode 100644 index 0000000..86ac0bd --- /dev/null +++ b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.html @@ -0,0 +1,141 @@ + + + + + + +fuzzylite: fl/norm Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
norm Directory Reference
+
+
+
+Directory dependency graph for norm:
+
+
fl/norm
+ + +
+ + + + + + +

+Directories

directory  s
 
directory  t
 
+ + + + + + + +

+Files

file  Norm.h [code]
 
file  SNorm.h [code]
 
file  TNorm.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.js b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.js new file mode 100644 index 0000000..23bcf3b --- /dev/null +++ b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f.js @@ -0,0 +1,14 @@ +var dir_1af8842c1311eb082cb3e223ab89db4f = +[ + [ "s", "dir_40f6c62369d6b06217d4ed139120d9de.html", "dir_40f6c62369d6b06217d4ed139120d9de" ], + [ "t", "dir_83e2dac974ac256d297f4b3ea7389d3b.html", "dir_83e2dac974ac256d297f4b3ea7389d3b" ], + [ "Norm.h", "Norm_8h.html", [ + [ "Norm", "classfl_1_1Norm.html", "classfl_1_1Norm" ] + ] ], + [ "SNorm.h", "SNorm_8h.html", [ + [ "SNorm", "classfl_1_1SNorm.html", "classfl_1_1SNorm" ] + ] ], + [ "TNorm.h", "TNorm_8h.html", [ + [ "TNorm", "classfl_1_1TNorm.html", "classfl_1_1TNorm" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.map b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.map new file mode 100644 index 0000000..4292d5b --- /dev/null +++ b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.md5 b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.md5 new file mode 100644 index 0000000..8e159af --- /dev/null +++ b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.md5 @@ -0,0 +1 @@ +3ab687451df029b7433d26b00cc4dac8 \ No newline at end of file diff --git a/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.png b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.png new file mode 100644 index 0000000..0b721d1 Binary files /dev/null and b/docs/html/dir_1af8842c1311eb082cb3e223ab89db4f_dep.png differ diff --git a/docs/html/dir_23de148878169a119297c667740a54ce.html b/docs/html/dir_23de148878169a119297c667740a54ce.html new file mode 100644 index 0000000..d388073 --- /dev/null +++ b/docs/html/dir_23de148878169a119297c667740a54ce.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/hedge Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
hedge Directory Reference
+
+
+
+Directory dependency graph for hedge:
+
+
src/hedge
+ + +
+ + + + + + + + + + + + + + +

+Files

file  Any.cpp
 
file  Extremely.cpp
 
file  Not.cpp
 
file  Seldom.cpp
 
file  Somewhat.cpp
 
file  Very.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_23de148878169a119297c667740a54ce.js b/docs/html/dir_23de148878169a119297c667740a54ce.js new file mode 100644 index 0000000..49ac08d --- /dev/null +++ b/docs/html/dir_23de148878169a119297c667740a54ce.js @@ -0,0 +1,9 @@ +var dir_23de148878169a119297c667740a54ce = +[ + [ "Any.cpp", "Any_8cpp.html", null ], + [ "Extremely.cpp", "Extremely_8cpp.html", null ], + [ "Not.cpp", "Not_8cpp.html", null ], + [ "Seldom.cpp", "Seldom_8cpp.html", null ], + [ "Somewhat.cpp", "Somewhat_8cpp.html", null ], + [ "Very.cpp", "Very_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_23de148878169a119297c667740a54ce_dep.map b/docs/html/dir_23de148878169a119297c667740a54ce_dep.map new file mode 100644 index 0000000..3bf22e9 --- /dev/null +++ b/docs/html/dir_23de148878169a119297c667740a54ce_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_23de148878169a119297c667740a54ce_dep.md5 b/docs/html/dir_23de148878169a119297c667740a54ce_dep.md5 new file mode 100644 index 0000000..df93ae9 --- /dev/null +++ b/docs/html/dir_23de148878169a119297c667740a54ce_dep.md5 @@ -0,0 +1 @@ +2424dc5c9549c5b6a39b3b50adbd4c29 \ No newline at end of file diff --git a/docs/html/dir_23de148878169a119297c667740a54ce_dep.png b/docs/html/dir_23de148878169a119297c667740a54ce_dep.png new file mode 100644 index 0000000..e5092c9 Binary files /dev/null and b/docs/html/dir_23de148878169a119297c667740a54ce_dep.png differ diff --git a/docs/html/dir_339115f1b781ea71218b7406990eb67d.html b/docs/html/dir_339115f1b781ea71218b7406990eb67d.html new file mode 100644 index 0000000..5820e0b --- /dev/null +++ b/docs/html/dir_339115f1b781ea71218b7406990eb67d.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: src/factory Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
factory Directory Reference
+
+
+
+Directory dependency graph for factory:
+
+
src/factory
+ + +
+ + + + + + + + + + + + + + + + +

+Files

file  DefuzzifierFactory.cpp
 
file  Factory.cpp
 
file  FactoryManager.cpp
 
file  HedgeFactory.cpp
 
file  SNormFactory.cpp
 
file  TermFactory.cpp
 
file  TNormFactory.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_339115f1b781ea71218b7406990eb67d.js b/docs/html/dir_339115f1b781ea71218b7406990eb67d.js new file mode 100644 index 0000000..7f4dd94 --- /dev/null +++ b/docs/html/dir_339115f1b781ea71218b7406990eb67d.js @@ -0,0 +1,10 @@ +var dir_339115f1b781ea71218b7406990eb67d = +[ + [ "DefuzzifierFactory.cpp", "DefuzzifierFactory_8cpp.html", null ], + [ "Factory.cpp", "Factory_8cpp.html", null ], + [ "FactoryManager.cpp", "FactoryManager_8cpp.html", null ], + [ "HedgeFactory.cpp", "HedgeFactory_8cpp.html", null ], + [ "SNormFactory.cpp", "SNormFactory_8cpp.html", null ], + [ "TermFactory.cpp", "TermFactory_8cpp.html", null ], + [ "TNormFactory.cpp", "TNormFactory_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.map b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.map new file mode 100644 index 0000000..ca2f2d1 --- /dev/null +++ b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.md5 b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.md5 new file mode 100644 index 0000000..ebc4780 --- /dev/null +++ b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.md5 @@ -0,0 +1 @@ +76df2921febf5f5dab94da51b8a497e0 \ No newline at end of file diff --git a/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.png b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.png new file mode 100644 index 0000000..e654375 Binary files /dev/null and b/docs/html/dir_339115f1b781ea71218b7406990eb67d_dep.png differ diff --git a/docs/html/dir_346797d119176f7c3021150a06b607ef.html b/docs/html/dir_346797d119176f7c3021150a06b607ef.html new file mode 100644 index 0000000..4a7d36a --- /dev/null +++ b/docs/html/dir_346797d119176f7c3021150a06b607ef.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: src/rule Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
rule Directory Reference
+
+
+
+Directory dependency graph for rule:
+
+
src/rule
+ + +
+ + + + + + + + + + + + +

+Files

file  Antecedent.cpp
 
file  Consequent.cpp
 
file  Expression.cpp
 
file  Rule.cpp
 
file  RuleBlock.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_346797d119176f7c3021150a06b607ef.js b/docs/html/dir_346797d119176f7c3021150a06b607ef.js new file mode 100644 index 0000000..70b0935 --- /dev/null +++ b/docs/html/dir_346797d119176f7c3021150a06b607ef.js @@ -0,0 +1,8 @@ +var dir_346797d119176f7c3021150a06b607ef = +[ + [ "Antecedent.cpp", "Antecedent_8cpp.html", null ], + [ "Consequent.cpp", "Consequent_8cpp.html", null ], + [ "Expression.cpp", "Expression_8cpp.html", null ], + [ "Rule.cpp", "Rule_8cpp.html", null ], + [ "RuleBlock.cpp", "RuleBlock_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.map b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.map new file mode 100644 index 0000000..b9f989d --- /dev/null +++ b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.md5 b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.md5 new file mode 100644 index 0000000..b5db323 --- /dev/null +++ b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.md5 @@ -0,0 +1 @@ +deea98f0637aed01e402c8f2396b8c47 \ No newline at end of file diff --git a/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.png b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.png new file mode 100644 index 0000000..837e000 Binary files /dev/null and b/docs/html/dir_346797d119176f7c3021150a06b607ef_dep.png differ diff --git a/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.html b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.html new file mode 100644 index 0000000..5f1a901 --- /dev/null +++ b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: fl/norm/s Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
s Directory Reference
+
+
+
+Directory dependency graph for s:
+
+
fl/norm/s
+ + +
+ + + + + + + + + + + + + + + + +

+Files

file  AlgebraicSum.h [code]
 
file  BoundedSum.h [code]
 
file  DrasticSum.h [code]
 
file  EinsteinSum.h [code]
 
file  HamacherSum.h [code]
 
file  Maximum.h [code]
 
file  NormalizedSum.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.js b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.js new file mode 100644 index 0000000..24cbac2 --- /dev/null +++ b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de.js @@ -0,0 +1,24 @@ +var dir_40f6c62369d6b06217d4ed139120d9de = +[ + [ "AlgebraicSum.h", "AlgebraicSum_8h.html", [ + [ "AlgebraicSum", "classfl_1_1AlgebraicSum.html", "classfl_1_1AlgebraicSum" ] + ] ], + [ "BoundedSum.h", "BoundedSum_8h.html", [ + [ "BoundedSum", "classfl_1_1BoundedSum.html", "classfl_1_1BoundedSum" ] + ] ], + [ "DrasticSum.h", "DrasticSum_8h.html", [ + [ "DrasticSum", "classfl_1_1DrasticSum.html", "classfl_1_1DrasticSum" ] + ] ], + [ "EinsteinSum.h", "EinsteinSum_8h.html", [ + [ "EinsteinSum", "classfl_1_1EinsteinSum.html", "classfl_1_1EinsteinSum" ] + ] ], + [ "HamacherSum.h", "HamacherSum_8h.html", [ + [ "HamacherSum", "classfl_1_1HamacherSum.html", "classfl_1_1HamacherSum" ] + ] ], + [ "Maximum.h", "Maximum_8h.html", [ + [ "Maximum", "classfl_1_1Maximum.html", "classfl_1_1Maximum" ] + ] ], + [ "NormalizedSum.h", "NormalizedSum_8h.html", [ + [ "NormalizedSum", "classfl_1_1NormalizedSum.html", "classfl_1_1NormalizedSum" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.map b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.map new file mode 100644 index 0000000..a063c24 --- /dev/null +++ b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.md5 b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.md5 new file mode 100644 index 0000000..9d47289 --- /dev/null +++ b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.md5 @@ -0,0 +1 @@ +f93f0ea5e9dfa1b4031f6f08c7ed637a \ No newline at end of file diff --git a/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.png b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.png new file mode 100644 index 0000000..97793f2 Binary files /dev/null and b/docs/html/dir_40f6c62369d6b06217d4ed139120d9de_dep.png differ diff --git a/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.html b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.html new file mode 100644 index 0000000..1b2fcfe --- /dev/null +++ b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: src/norm/t Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
t Directory Reference
+
+
+
+Directory dependency graph for t:
+
+
src/norm/t
+ + +
+ + + + + + + + + + + + + + +

+Files

file  AlgebraicProduct.cpp
 
file  BoundedDifference.cpp
 
file  DrasticProduct.cpp
 
file  EinsteinProduct.cpp
 
file  HamacherProduct.cpp
 
file  Minimum.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.js b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.js new file mode 100644 index 0000000..c1e906e --- /dev/null +++ b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc.js @@ -0,0 +1,9 @@ +var dir_49826fc8f3b398d071db22ee62d7f9dc = +[ + [ "AlgebraicProduct.cpp", "AlgebraicProduct_8cpp.html", null ], + [ "BoundedDifference.cpp", "BoundedDifference_8cpp.html", null ], + [ "DrasticProduct.cpp", "DrasticProduct_8cpp.html", null ], + [ "EinsteinProduct.cpp", "EinsteinProduct_8cpp.html", null ], + [ "HamacherProduct.cpp", "HamacherProduct_8cpp.html", null ], + [ "Minimum.cpp", "Minimum_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.map b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.map new file mode 100644 index 0000000..e946740 --- /dev/null +++ b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.md5 b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.md5 new file mode 100644 index 0000000..08f8e3a --- /dev/null +++ b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.md5 @@ -0,0 +1 @@ +b6835473c95412fd76e830bb2b4e2121 \ No newline at end of file diff --git a/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.png b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.png new file mode 100644 index 0000000..6901cbb Binary files /dev/null and b/docs/html/dir_49826fc8f3b398d071db22ee62d7f9dc_dep.png differ diff --git a/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.html b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.html new file mode 100644 index 0000000..78ee397 --- /dev/null +++ b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.html @@ -0,0 +1,150 @@ + + + + + + +fuzzylite: fl/imex Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
imex Directory Reference
+
+
+
+Directory dependency graph for imex:
+
+
fl/imex
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  CppExporter.h [code]
 
file  Exporter.h [code]
 
file  FclExporter.h [code]
 
file  FclImporter.h [code]
 
file  FisExporter.h [code]
 
file  FisImporter.h [code]
 
file  FldExporter.h [code]
 
file  FllExporter.h [code]
 
file  FllImporter.h [code]
 
file  Importer.h [code]
 
file  JavaExporter.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.js b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.js new file mode 100644 index 0000000..2c4ac4c --- /dev/null +++ b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79.js @@ -0,0 +1,36 @@ +var dir_615c4fbdb742a52431f88625cca1cf79 = +[ + [ "CppExporter.h", "CppExporter_8h.html", [ + [ "CppExporter", "classfl_1_1CppExporter.html", "classfl_1_1CppExporter" ] + ] ], + [ "Exporter.h", "Exporter_8h.html", [ + [ "Exporter", "classfl_1_1Exporter.html", "classfl_1_1Exporter" ] + ] ], + [ "FclExporter.h", "FclExporter_8h.html", [ + [ "FclExporter", "classfl_1_1FclExporter.html", "classfl_1_1FclExporter" ] + ] ], + [ "FclImporter.h", "FclImporter_8h.html", [ + [ "FclImporter", "classfl_1_1FclImporter.html", "classfl_1_1FclImporter" ] + ] ], + [ "FisExporter.h", "FisExporter_8h.html", [ + [ "FisExporter", "classfl_1_1FisExporter.html", "classfl_1_1FisExporter" ] + ] ], + [ "FisImporter.h", "FisImporter_8h.html", [ + [ "FisImporter", "classfl_1_1FisImporter.html", "classfl_1_1FisImporter" ] + ] ], + [ "FldExporter.h", "FldExporter_8h.html", [ + [ "FldExporter", "classfl_1_1FldExporter.html", "classfl_1_1FldExporter" ] + ] ], + [ "FllExporter.h", "FllExporter_8h.html", [ + [ "FllExporter", "classfl_1_1FllExporter.html", "classfl_1_1FllExporter" ] + ] ], + [ "FllImporter.h", "FllImporter_8h.html", [ + [ "FllImporter", "classfl_1_1FllImporter.html", "classfl_1_1FllImporter" ] + ] ], + [ "Importer.h", "Importer_8h.html", [ + [ "Importer", "classfl_1_1Importer.html", "classfl_1_1Importer" ] + ] ], + [ "JavaExporter.h", "JavaExporter_8h.html", [ + [ "JavaExporter", "classfl_1_1JavaExporter.html", "classfl_1_1JavaExporter" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.map b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.map new file mode 100644 index 0000000..573d365 --- /dev/null +++ b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.md5 b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.md5 new file mode 100644 index 0000000..9913f30 --- /dev/null +++ b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.md5 @@ -0,0 +1 @@ +c5c972922777564cb64e685dc1328c87 \ No newline at end of file diff --git a/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.png b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.png new file mode 100644 index 0000000..c6d1c14 Binary files /dev/null and b/docs/html/dir_615c4fbdb742a52431f88625cca1cf79_dep.png differ diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html new file mode 100644 index 0000000..5ba74d0 --- /dev/null +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -0,0 +1,159 @@ + + + + + + +fuzzylite: src Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
src Directory Reference
+
+
+
+Directory dependency graph for src:
+
+
src
+ + +
+ + + + + + + + + + + + + + + + + + +

+Directories

directory  defuzzifier
 
directory  factory
 
directory  hedge
 
directory  imex
 
directory  norm
 
directory  rule
 
directory  term
 
directory  variable
 
+ + + + + + + + + + + + + +

+Files

file  Console.cpp
 
file  Engine.cpp
 
file  Exception.cpp
 
file  fuzzylite.cpp
 
file  main.cpp
 
file  Operation.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js new file mode 100644 index 0000000..d2366ca --- /dev/null +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js @@ -0,0 +1,17 @@ +var dir_68267d1309a1af8e8297ef4c3efbcdba = +[ + [ "defuzzifier", "dir_a28af64c69f937098282ac45c0f90516.html", "dir_a28af64c69f937098282ac45c0f90516" ], + [ "factory", "dir_339115f1b781ea71218b7406990eb67d.html", "dir_339115f1b781ea71218b7406990eb67d" ], + [ "hedge", "dir_23de148878169a119297c667740a54ce.html", "dir_23de148878169a119297c667740a54ce" ], + [ "imex", "dir_cecdad49218b9b3c9c5af30994c8ad3b.html", "dir_cecdad49218b9b3c9c5af30994c8ad3b" ], + [ "norm", "dir_8b219120625e1fa7ab4c92a860dcf9e1.html", "dir_8b219120625e1fa7ab4c92a860dcf9e1" ], + [ "rule", "dir_346797d119176f7c3021150a06b607ef.html", "dir_346797d119176f7c3021150a06b607ef" ], + [ "term", "dir_f015963f69ae14c534311f2118856536.html", "dir_f015963f69ae14c534311f2118856536" ], + [ "variable", "dir_dd920bd76ff7422f03265981cd757b41.html", "dir_dd920bd76ff7422f03265981cd757b41" ], + [ "Console.cpp", "Console_8cpp.html", null ], + [ "Engine.cpp", "Engine_8cpp.html", null ], + [ "Exception.cpp", "Exception_8cpp.html", null ], + [ "fuzzylite.cpp", "fuzzylite_8cpp.html", null ], + [ "main.cpp", "main_8cpp.html", "main_8cpp" ], + [ "Operation.cpp", "Operation_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map new file mode 100644 index 0000000..de07fa2 --- /dev/null +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 new file mode 100644 index 0000000..c6fa0f2 --- /dev/null +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 @@ -0,0 +1 @@ +416923e8312f80f2548d775ee2a6d89c \ No newline at end of file diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png new file mode 100644 index 0000000..a0a5dda Binary files /dev/null and b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png differ diff --git a/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.html b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.html new file mode 100644 index 0000000..f38d723 --- /dev/null +++ b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.html @@ -0,0 +1,138 @@ + + + + + + +fuzzylite: fl/rule Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
rule Directory Reference
+
+
+
+Directory dependency graph for rule:
+
+
fl/rule
+ + +
+ + + + + + + + + + + + +

+Files

file  Antecedent.h [code]
 
file  Consequent.h [code]
 
file  Expression.h [code]
 
file  Rule.h [code]
 
file  RuleBlock.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.js b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.js new file mode 100644 index 0000000..2c8e8b4 --- /dev/null +++ b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066.js @@ -0,0 +1,20 @@ +var dir_7c2f64c83e4ef2f8c111ffefe4999066 = +[ + [ "Antecedent.h", "Antecedent_8h.html", [ + [ "Antecedent", "classfl_1_1Antecedent.html", "classfl_1_1Antecedent" ] + ] ], + [ "Consequent.h", "Consequent_8h.html", [ + [ "Consequent", "classfl_1_1Consequent.html", "classfl_1_1Consequent" ] + ] ], + [ "Expression.h", "Expression_8h.html", [ + [ "Expression", "classfl_1_1Expression.html", "classfl_1_1Expression" ], + [ "Proposition", "classfl_1_1Proposition.html", "classfl_1_1Proposition" ], + [ "Operator", "classfl_1_1Operator.html", "classfl_1_1Operator" ] + ] ], + [ "Rule.h", "Rule_8h.html", [ + [ "Rule", "classfl_1_1Rule.html", "classfl_1_1Rule" ] + ] ], + [ "RuleBlock.h", "RuleBlock_8h.html", [ + [ "RuleBlock", "classfl_1_1RuleBlock.html", "classfl_1_1RuleBlock" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.map b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.map new file mode 100644 index 0000000..28517c9 --- /dev/null +++ b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.md5 b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.md5 new file mode 100644 index 0000000..4d096cb --- /dev/null +++ b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.md5 @@ -0,0 +1 @@ +4f10b5d4bb7ec98c5436f3ca8265b2f9 \ No newline at end of file diff --git a/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.png b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.png new file mode 100644 index 0000000..3bf77f1 Binary files /dev/null and b/docs/html/dir_7c2f64c83e4ef2f8c111ffefe4999066_dep.png differ diff --git a/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.html b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.html new file mode 100644 index 0000000..abba0d6 --- /dev/null +++ b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: fl/norm/t Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
t Directory Reference
+
+
+
+Directory dependency graph for t:
+
+
fl/norm/t
+ + +
+ + + + + + + + + + + + + + +

+Files

file  AlgebraicProduct.h [code]
 
file  BoundedDifference.h [code]
 
file  DrasticProduct.h [code]
 
file  EinsteinProduct.h [code]
 
file  HamacherProduct.h [code]
 
file  Minimum.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.js b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.js new file mode 100644 index 0000000..4b92dd7 --- /dev/null +++ b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b.js @@ -0,0 +1,21 @@ +var dir_83e2dac974ac256d297f4b3ea7389d3b = +[ + [ "AlgebraicProduct.h", "AlgebraicProduct_8h.html", [ + [ "AlgebraicProduct", "classfl_1_1AlgebraicProduct.html", "classfl_1_1AlgebraicProduct" ] + ] ], + [ "BoundedDifference.h", "BoundedDifference_8h.html", [ + [ "BoundedDifference", "classfl_1_1BoundedDifference.html", "classfl_1_1BoundedDifference" ] + ] ], + [ "DrasticProduct.h", "DrasticProduct_8h.html", [ + [ "DrasticProduct", "classfl_1_1DrasticProduct.html", "classfl_1_1DrasticProduct" ] + ] ], + [ "EinsteinProduct.h", "EinsteinProduct_8h.html", [ + [ "EinsteinProduct", "classfl_1_1EinsteinProduct.html", "classfl_1_1EinsteinProduct" ] + ] ], + [ "HamacherProduct.h", "HamacherProduct_8h.html", [ + [ "HamacherProduct", "classfl_1_1HamacherProduct.html", "classfl_1_1HamacherProduct" ] + ] ], + [ "Minimum.h", "Minimum_8h.html", [ + [ "Minimum", "classfl_1_1Minimum.html", "classfl_1_1Minimum" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.map b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.map new file mode 100644 index 0000000..deb1968 --- /dev/null +++ b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.md5 b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.md5 new file mode 100644 index 0000000..1d7d5dc --- /dev/null +++ b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.md5 @@ -0,0 +1 @@ +6e8399f542e3ed21e5c44e1f0599bfa0 \ No newline at end of file diff --git a/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.png b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.png new file mode 100644 index 0000000..6d1a600 Binary files /dev/null and b/docs/html/dir_83e2dac974ac256d297f4b3ea7389d3b_dep.png differ diff --git a/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.html b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.html new file mode 100644 index 0000000..05f076c --- /dev/null +++ b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.html @@ -0,0 +1,132 @@ + + + + + + +fuzzylite: src/norm Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
norm Directory Reference
+
+
+
+Directory dependency graph for norm:
+
+
src/norm
+ + +
+ + + + + + +

+Directories

directory  s
 
directory  t
 
+
+
+ + + + diff --git a/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.js b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.js new file mode 100644 index 0000000..dbaf91e --- /dev/null +++ b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1.js @@ -0,0 +1,5 @@ +var dir_8b219120625e1fa7ab4c92a860dcf9e1 = +[ + [ "s", "dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.html", "dir_e7ad4502f5ebd0b23aa3ffe30e6f686b" ], + [ "t", "dir_49826fc8f3b398d071db22ee62d7f9dc.html", "dir_49826fc8f3b398d071db22ee62d7f9dc" ] +]; \ No newline at end of file diff --git a/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.map b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.map new file mode 100644 index 0000000..8ce86bd --- /dev/null +++ b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.md5 b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.md5 new file mode 100644 index 0000000..5b1bff5 --- /dev/null +++ b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.md5 @@ -0,0 +1 @@ +a11763bbf4dd21845d36a8432c0e1e86 \ No newline at end of file diff --git a/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.png b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.png new file mode 100644 index 0000000..b265602 Binary files /dev/null and b/docs/html/dir_8b219120625e1fa7ab4c92a860dcf9e1_dep.png differ diff --git a/docs/html/dir_a28af64c69f937098282ac45c0f90516.html b/docs/html/dir_a28af64c69f937098282ac45c0f90516.html new file mode 100644 index 0000000..19b6136 --- /dev/null +++ b/docs/html/dir_a28af64c69f937098282ac45c0f90516.html @@ -0,0 +1,146 @@ + + + + + + +fuzzylite: src/defuzzifier Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
defuzzifier Directory Reference
+
+
+
+Directory dependency graph for defuzzifier:
+
+
src/defuzzifier
+ + +
+ + + + + + + + + + + + + + + + + + + + +

+Files

file  Bisector.cpp
 
file  Centroid.cpp
 
file  IntegralDefuzzifier.cpp
 
file  LargestOfMaximum.cpp
 
file  MeanOfMaximum.cpp
 
file  SmallestOfMaximum.cpp
 
file  Tsukamoto.cpp
 
file  WeightedAverage.cpp
 
file  WeightedSum.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_a28af64c69f937098282ac45c0f90516.js b/docs/html/dir_a28af64c69f937098282ac45c0f90516.js new file mode 100644 index 0000000..e31d416 --- /dev/null +++ b/docs/html/dir_a28af64c69f937098282ac45c0f90516.js @@ -0,0 +1,12 @@ +var dir_a28af64c69f937098282ac45c0f90516 = +[ + [ "Bisector.cpp", "Bisector_8cpp.html", null ], + [ "Centroid.cpp", "Centroid_8cpp.html", null ], + [ "IntegralDefuzzifier.cpp", "IntegralDefuzzifier_8cpp.html", null ], + [ "LargestOfMaximum.cpp", "LargestOfMaximum_8cpp.html", null ], + [ "MeanOfMaximum.cpp", "MeanOfMaximum_8cpp.html", null ], + [ "SmallestOfMaximum.cpp", "SmallestOfMaximum_8cpp.html", null ], + [ "Tsukamoto.cpp", "Tsukamoto_8cpp.html", null ], + [ "WeightedAverage.cpp", "WeightedAverage_8cpp.html", null ], + [ "WeightedSum.cpp", "WeightedSum_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.map b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.map new file mode 100644 index 0000000..0559112 --- /dev/null +++ b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.md5 b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.md5 new file mode 100644 index 0000000..09bf1e0 --- /dev/null +++ b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.md5 @@ -0,0 +1 @@ +1058dac6beaea22afe540eb91a27b614 \ No newline at end of file diff --git a/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.png b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.png new file mode 100644 index 0000000..b707afa Binary files /dev/null and b/docs/html/dir_a28af64c69f937098282ac45c0f90516_dep.png differ diff --git a/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.html b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.html new file mode 100644 index 0000000..1770589 --- /dev/null +++ b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: fl/hedge Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
hedge Directory Reference
+
+
+
+Directory dependency graph for hedge:
+
+
fl/hedge
+ + +
+ + + + + + + + + + + + + + + + +

+Files

file  Any.h [code]
 
file  Extremely.h [code]
 
file  Hedge.h [code]
 
file  Not.h [code]
 
file  Seldom.h [code]
 
file  Somewhat.h [code]
 
file  Very.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.js b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.js new file mode 100644 index 0000000..e05dbe9 --- /dev/null +++ b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c.js @@ -0,0 +1,24 @@ +var dir_ae4fd117ed058af620a7f9c6b122246c = +[ + [ "Any.h", "Any_8h.html", [ + [ "Any", "classfl_1_1Any.html", "classfl_1_1Any" ] + ] ], + [ "Extremely.h", "Extremely_8h.html", [ + [ "Extremely", "classfl_1_1Extremely.html", "classfl_1_1Extremely" ] + ] ], + [ "Hedge.h", "Hedge_8h.html", [ + [ "Hedge", "classfl_1_1Hedge.html", "classfl_1_1Hedge" ] + ] ], + [ "Not.h", "Not_8h.html", [ + [ "Not", "classfl_1_1Not.html", "classfl_1_1Not" ] + ] ], + [ "Seldom.h", "Seldom_8h.html", [ + [ "Seldom", "classfl_1_1Seldom.html", "classfl_1_1Seldom" ] + ] ], + [ "Somewhat.h", "Somewhat_8h.html", [ + [ "Somewhat", "classfl_1_1Somewhat.html", "classfl_1_1Somewhat" ] + ] ], + [ "Very.h", "Very_8h.html", [ + [ "Very", "classfl_1_1Very.html", "classfl_1_1Very" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.map b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.map new file mode 100644 index 0000000..a0848b0 --- /dev/null +++ b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.md5 b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.md5 new file mode 100644 index 0000000..7db9217 --- /dev/null +++ b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.md5 @@ -0,0 +1 @@ +02ea089cdfe06a35fc836f991ef628bb \ No newline at end of file diff --git a/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.png b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.png new file mode 100644 index 0000000..7533d26 Binary files /dev/null and b/docs/html/dir_ae4fd117ed058af620a7f9c6b122246c_dep.png differ diff --git a/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.html b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.html new file mode 100644 index 0000000..04b1a91 --- /dev/null +++ b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: fl/factory Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
factory Directory Reference
+
+
+
+Directory dependency graph for factory:
+
+
fl/factory
+ + +
+ + + + + + + + + + + + + + + + +

+Files

file  DefuzzifierFactory.h [code]
 
file  Factory.h [code]
 
file  FactoryManager.h [code]
 
file  HedgeFactory.h [code]
 
file  SNormFactory.h [code]
 
file  TermFactory.h [code]
 
file  TNormFactory.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.js b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.js new file mode 100644 index 0000000..90fa808 --- /dev/null +++ b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150.js @@ -0,0 +1,24 @@ +var dir_b3a7a25080b519a3641d9ccfed70d150 = +[ + [ "DefuzzifierFactory.h", "DefuzzifierFactory_8h.html", [ + [ "DefuzzifierFactory", "classfl_1_1DefuzzifierFactory.html", "classfl_1_1DefuzzifierFactory" ] + ] ], + [ "Factory.h", "Factory_8h.html", [ + [ "Factory", "classfl_1_1Factory.html", "classfl_1_1Factory" ] + ] ], + [ "FactoryManager.h", "FactoryManager_8h.html", [ + [ "FactoryManager", "classfl_1_1FactoryManager.html", "classfl_1_1FactoryManager" ] + ] ], + [ "HedgeFactory.h", "HedgeFactory_8h.html", [ + [ "HedgeFactory", "classfl_1_1HedgeFactory.html", "classfl_1_1HedgeFactory" ] + ] ], + [ "SNormFactory.h", "SNormFactory_8h.html", [ + [ "SNormFactory", "classfl_1_1SNormFactory.html", "classfl_1_1SNormFactory" ] + ] ], + [ "TermFactory.h", "TermFactory_8h.html", [ + [ "TermFactory", "classfl_1_1TermFactory.html", "classfl_1_1TermFactory" ] + ] ], + [ "TNormFactory.h", "TNormFactory_8h.html", [ + [ "TNormFactory", "classfl_1_1TNormFactory.html", "classfl_1_1TNormFactory" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.map b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.map new file mode 100644 index 0000000..c7f61db --- /dev/null +++ b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.md5 b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.md5 new file mode 100644 index 0000000..cc8864c --- /dev/null +++ b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.md5 @@ -0,0 +1 @@ +ed15fd33b430a0855e3dfc06fd429b6e \ No newline at end of file diff --git a/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.png b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.png new file mode 100644 index 0000000..412b0c2 Binary files /dev/null and b/docs/html/dir_b3a7a25080b519a3641d9ccfed70d150_dep.png differ diff --git a/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.html b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.html new file mode 100644 index 0000000..f48c8eb --- /dev/null +++ b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.html @@ -0,0 +1,159 @@ + + + + + + +fuzzylite: fl Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl Directory Reference
+
+
+
+Directory dependency graph for fl:
+
+
fl
+ + +
+ + + + + + + + + + + + + + + + + + +

+Directories

directory  defuzzifier
 
directory  factory
 
directory  hedge
 
directory  imex
 
directory  norm
 
directory  rule
 
directory  term
 
directory  variable
 
+ + + + + + + + + + + + + +

+Files

file  Console.h [code]
 
file  Engine.h [code]
 
file  Exception.h [code]
 
file  fuzzylite.h [code]
 
file  Headers.h [code]
 
file  Operation.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.js b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.js new file mode 100644 index 0000000..2f6351a --- /dev/null +++ b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b.js @@ -0,0 +1,23 @@ +var dir_ca839787d91adf1c2a8e5c582e02170b = +[ + [ "defuzzifier", "dir_e37372f7558ffd49ec7feacdd1690968.html", "dir_e37372f7558ffd49ec7feacdd1690968" ], + [ "factory", "dir_b3a7a25080b519a3641d9ccfed70d150.html", "dir_b3a7a25080b519a3641d9ccfed70d150" ], + [ "hedge", "dir_ae4fd117ed058af620a7f9c6b122246c.html", "dir_ae4fd117ed058af620a7f9c6b122246c" ], + [ "imex", "dir_615c4fbdb742a52431f88625cca1cf79.html", "dir_615c4fbdb742a52431f88625cca1cf79" ], + [ "norm", "dir_1af8842c1311eb082cb3e223ab89db4f.html", "dir_1af8842c1311eb082cb3e223ab89db4f" ], + [ "rule", "dir_7c2f64c83e4ef2f8c111ffefe4999066.html", "dir_7c2f64c83e4ef2f8c111ffefe4999066" ], + [ "term", "dir_161d5a887887075714729d2b35513d2b.html", "dir_161d5a887887075714729d2b35513d2b" ], + [ "variable", "dir_e70d9782a398e4e71c1c31b664156fa5.html", "dir_e70d9782a398e4e71c1c31b664156fa5" ], + [ "Console.h", "Console_8h.html", [ + [ "Console", "classfl_1_1Console.html", "classfl_1_1Console" ] + ] ], + [ "Engine.h", "Engine_8h.html", [ + [ "Engine", "classfl_1_1Engine.html", "classfl_1_1Engine" ] + ] ], + [ "Exception.h", "Exception_8h.html", [ + [ "Exception", "classfl_1_1Exception.html", "classfl_1_1Exception" ] + ] ], + [ "fuzzylite.h", "fuzzylite_8h.html", "fuzzylite_8h" ], + [ "Headers.h", "Headers_8h.html", null ], + [ "Operation.h", "Operation_8h.html", "Operation_8h" ] +]; \ No newline at end of file diff --git a/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.map b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.map new file mode 100644 index 0000000..6efa8d8 --- /dev/null +++ b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.map @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.md5 b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.md5 new file mode 100644 index 0000000..e40cebd --- /dev/null +++ b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.md5 @@ -0,0 +1 @@ +83850494cf58067b7ef78046f7863bea \ No newline at end of file diff --git a/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.png b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.png new file mode 100644 index 0000000..999e129 Binary files /dev/null and b/docs/html/dir_ca839787d91adf1c2a8e5c582e02170b_dep.png differ diff --git a/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.html b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.html new file mode 100644 index 0000000..931a225 --- /dev/null +++ b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.html @@ -0,0 +1,146 @@ + + + + + + +fuzzylite: src/imex Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
imex Directory Reference
+
+
+
+Directory dependency graph for imex:
+
+
src/imex
+ + +
+ + + + + + + + + + + + + + + + + + + + +

+Files

file  CppExporter.cpp
 
file  FclExporter.cpp
 
file  FclImporter.cpp
 
file  FisExporter.cpp
 
file  FisImporter.cpp
 
file  FldExporter.cpp
 
file  FllExporter.cpp
 
file  FllImporter.cpp
 
file  JavaExporter.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.js b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.js new file mode 100644 index 0000000..a9fb50b --- /dev/null +++ b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b.js @@ -0,0 +1,12 @@ +var dir_cecdad49218b9b3c9c5af30994c8ad3b = +[ + [ "CppExporter.cpp", "CppExporter_8cpp.html", null ], + [ "FclExporter.cpp", "FclExporter_8cpp.html", null ], + [ "FclImporter.cpp", "FclImporter_8cpp.html", null ], + [ "FisExporter.cpp", "FisExporter_8cpp.html", null ], + [ "FisImporter.cpp", "FisImporter_8cpp.html", null ], + [ "FldExporter.cpp", "FldExporter_8cpp.html", null ], + [ "FllExporter.cpp", "FllExporter_8cpp.html", null ], + [ "FllImporter.cpp", "FllImporter_8cpp.html", null ], + [ "JavaExporter.cpp", "JavaExporter_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.map b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.map new file mode 100644 index 0000000..0838ae7 --- /dev/null +++ b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.md5 b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.md5 new file mode 100644 index 0000000..77d0ee2 --- /dev/null +++ b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.md5 @@ -0,0 +1 @@ +76e0725fd09867cf8449f5386976a3e9 \ No newline at end of file diff --git a/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.png b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.png new file mode 100644 index 0000000..1ebd8bf Binary files /dev/null and b/docs/html/dir_cecdad49218b9b3c9c5af30994c8ad3b_dep.png differ diff --git a/docs/html/dir_dd920bd76ff7422f03265981cd757b41.html b/docs/html/dir_dd920bd76ff7422f03265981cd757b41.html new file mode 100644 index 0000000..a626acf --- /dev/null +++ b/docs/html/dir_dd920bd76ff7422f03265981cd757b41.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: src/variable Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
variable Directory Reference
+
+
+
+Directory dependency graph for variable:
+
+
src/variable
+ + +
+ + + + + + + + +

+Files

file  InputVariable.cpp
 
file  OutputVariable.cpp
 
file  Variable.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_dd920bd76ff7422f03265981cd757b41.js b/docs/html/dir_dd920bd76ff7422f03265981cd757b41.js new file mode 100644 index 0000000..fc7f189 --- /dev/null +++ b/docs/html/dir_dd920bd76ff7422f03265981cd757b41.js @@ -0,0 +1,6 @@ +var dir_dd920bd76ff7422f03265981cd757b41 = +[ + [ "InputVariable.cpp", "InputVariable_8cpp.html", null ], + [ "OutputVariable.cpp", "OutputVariable_8cpp.html", null ], + [ "Variable.cpp", "Variable_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.map b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.map new file mode 100644 index 0000000..776d205 --- /dev/null +++ b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.md5 b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.md5 new file mode 100644 index 0000000..ef344a5 --- /dev/null +++ b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.md5 @@ -0,0 +1 @@ +3cd13b678f37d72b60b2a1a36c80fde4 \ No newline at end of file diff --git a/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.png b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.png new file mode 100644 index 0000000..a4d24f9 Binary files /dev/null and b/docs/html/dir_dd920bd76ff7422f03265981cd757b41_dep.png differ diff --git a/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.html b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.html new file mode 100644 index 0000000..ba4fbc7 --- /dev/null +++ b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.html @@ -0,0 +1,148 @@ + + + + + + +fuzzylite: fl/defuzzifier Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
defuzzifier Directory Reference
+
+
+
+Directory dependency graph for defuzzifier:
+
+
fl/defuzzifier
+ + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Files

file  Bisector.h [code]
 
file  Centroid.h [code]
 
file  Defuzzifier.h [code]
 
file  IntegralDefuzzifier.h [code]
 
file  LargestOfMaximum.h [code]
 
file  MeanOfMaximum.h [code]
 
file  SmallestOfMaximum.h [code]
 
file  Tsukamoto.h [code]
 
file  WeightedAverage.h [code]
 
file  WeightedSum.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.js b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.js new file mode 100644 index 0000000..22629d4 --- /dev/null +++ b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968.js @@ -0,0 +1,33 @@ +var dir_e37372f7558ffd49ec7feacdd1690968 = +[ + [ "Bisector.h", "Bisector_8h.html", [ + [ "Bisector", "classfl_1_1Bisector.html", "classfl_1_1Bisector" ] + ] ], + [ "Centroid.h", "Centroid_8h.html", [ + [ "Centroid", "classfl_1_1Centroid.html", "classfl_1_1Centroid" ] + ] ], + [ "Defuzzifier.h", "Defuzzifier_8h.html", [ + [ "Defuzzifier", "classfl_1_1Defuzzifier.html", "classfl_1_1Defuzzifier" ] + ] ], + [ "IntegralDefuzzifier.h", "IntegralDefuzzifier_8h.html", [ + [ "IntegralDefuzzifier", "classfl_1_1IntegralDefuzzifier.html", "classfl_1_1IntegralDefuzzifier" ] + ] ], + [ "LargestOfMaximum.h", "LargestOfMaximum_8h.html", [ + [ "LargestOfMaximum", "classfl_1_1LargestOfMaximum.html", "classfl_1_1LargestOfMaximum" ] + ] ], + [ "MeanOfMaximum.h", "MeanOfMaximum_8h.html", [ + [ "MeanOfMaximum", "classfl_1_1MeanOfMaximum.html", "classfl_1_1MeanOfMaximum" ] + ] ], + [ "SmallestOfMaximum.h", "SmallestOfMaximum_8h.html", [ + [ "SmallestOfMaximum", "classfl_1_1SmallestOfMaximum.html", "classfl_1_1SmallestOfMaximum" ] + ] ], + [ "Tsukamoto.h", "Tsukamoto_8h.html", [ + [ "Tsukamoto", "classfl_1_1Tsukamoto.html", "classfl_1_1Tsukamoto" ] + ] ], + [ "WeightedAverage.h", "WeightedAverage_8h.html", [ + [ "WeightedAverage", "classfl_1_1WeightedAverage.html", "classfl_1_1WeightedAverage" ] + ] ], + [ "WeightedSum.h", "WeightedSum_8h.html", [ + [ "WeightedSum", "classfl_1_1WeightedSum.html", "classfl_1_1WeightedSum" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.map b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.map new file mode 100644 index 0000000..5011309 --- /dev/null +++ b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.md5 b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.md5 new file mode 100644 index 0000000..4106b49 --- /dev/null +++ b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.md5 @@ -0,0 +1 @@ +47aba643da067d8fc65581f8cefeba1c \ No newline at end of file diff --git a/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.png b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.png new file mode 100644 index 0000000..00af4ef Binary files /dev/null and b/docs/html/dir_e37372f7558ffd49ec7feacdd1690968_dep.png differ diff --git a/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.html b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.html new file mode 100644 index 0000000..fca973e --- /dev/null +++ b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.html @@ -0,0 +1,134 @@ + + + + + + +fuzzylite: fl/variable Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
variable Directory Reference
+
+
+
+Directory dependency graph for variable:
+
+
fl/variable
+ + +
+ + + + + + + + +

+Files

file  InputVariable.h [code]
 
file  OutputVariable.h [code]
 
file  Variable.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.js b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.js new file mode 100644 index 0000000..227f433 --- /dev/null +++ b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5.js @@ -0,0 +1,13 @@ +var dir_e70d9782a398e4e71c1c31b664156fa5 = +[ + [ "InputVariable.h", "InputVariable_8h.html", [ + [ "InputVariable", "classfl_1_1InputVariable.html", "classfl_1_1InputVariable" ] + ] ], + [ "OutputVariable.h", "OutputVariable_8h.html", [ + [ "OutputVariable", "classfl_1_1OutputVariable.html", "classfl_1_1OutputVariable" ] + ] ], + [ "Variable.h", "Variable_8h.html", [ + [ "Variable", "classfl_1_1Variable.html", "classfl_1_1Variable" ], + [ "SortByCoG", "structfl_1_1Variable_1_1SortByCoG.html", "structfl_1_1Variable_1_1SortByCoG" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.map b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.map new file mode 100644 index 0000000..fa2f2fd --- /dev/null +++ b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.map @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.md5 b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.md5 new file mode 100644 index 0000000..b689075 --- /dev/null +++ b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.md5 @@ -0,0 +1 @@ +26c303a9fce5ef8b7c877767fd8fb348 \ No newline at end of file diff --git a/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.png b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.png new file mode 100644 index 0000000..bd014ad Binary files /dev/null and b/docs/html/dir_e70d9782a398e4e71c1c31b664156fa5_dep.png differ diff --git a/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.html b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.html new file mode 100644 index 0000000..c19a200 --- /dev/null +++ b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: src/norm/s Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
s Directory Reference
+
+
+
+Directory dependency graph for s:
+
+
src/norm/s
+ + +
+ + + + + + + + + + + + + + + + +

+Files

file  AlgebraicSum.cpp
 
file  BoundedSum.cpp
 
file  DrasticSum.cpp
 
file  EinsteinSum.cpp
 
file  HamacherSum.cpp
 
file  Maximum.cpp
 
file  NormalizedSum.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.js b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.js new file mode 100644 index 0000000..4f77577 --- /dev/null +++ b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.js @@ -0,0 +1,10 @@ +var dir_e7ad4502f5ebd0b23aa3ffe30e6f686b = +[ + [ "AlgebraicSum.cpp", "AlgebraicSum_8cpp.html", null ], + [ "BoundedSum.cpp", "BoundedSum_8cpp.html", null ], + [ "DrasticSum.cpp", "DrasticSum_8cpp.html", null ], + [ "EinsteinSum.cpp", "EinsteinSum_8cpp.html", null ], + [ "HamacherSum.cpp", "HamacherSum_8cpp.html", null ], + [ "Maximum.cpp", "Maximum_8cpp.html", null ], + [ "NormalizedSum.cpp", "NormalizedSum_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.map b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.map new file mode 100644 index 0000000..8f9ca27 --- /dev/null +++ b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.md5 b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.md5 new file mode 100644 index 0000000..51d25cf --- /dev/null +++ b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.md5 @@ -0,0 +1 @@ +23ab0d85bc1c87e742103ba9b8c46e5f \ No newline at end of file diff --git a/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.png b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.png new file mode 100644 index 0000000..46454e7 Binary files /dev/null and b/docs/html/dir_e7ad4502f5ebd0b23aa3ffe30e6f686b_dep.png differ diff --git a/docs/html/dir_f015963f69ae14c534311f2118856536.html b/docs/html/dir_f015963f69ae14c534311f2118856536.html new file mode 100644 index 0000000..abc2af0 --- /dev/null +++ b/docs/html/dir_f015963f69ae14c534311f2118856536.html @@ -0,0 +1,168 @@ + + + + + + +fuzzylite: src/term Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
term Directory Reference
+
+
+
+Directory dependency graph for term:
+
+
src/term
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  Accumulated.cpp
 
file  Bell.cpp
 
file  Constant.cpp
 
file  Discrete.cpp
 
file  Function.cpp
 
file  Gaussian.cpp
 
file  GaussianProduct.cpp
 
file  Linear.cpp
 
file  PiShape.cpp
 
file  Ramp.cpp
 
file  Rectangle.cpp
 
file  Sigmoid.cpp
 
file  SigmoidDifference.cpp
 
file  SigmoidProduct.cpp
 
file  SShape.cpp
 
file  Term.cpp
 
file  Thresholded.cpp
 
file  Trapezoid.cpp
 
file  Triangle.cpp
 
file  ZShape.cpp
 
+
+
+ + + + diff --git a/docs/html/dir_f015963f69ae14c534311f2118856536.js b/docs/html/dir_f015963f69ae14c534311f2118856536.js new file mode 100644 index 0000000..7c3ad3d --- /dev/null +++ b/docs/html/dir_f015963f69ae14c534311f2118856536.js @@ -0,0 +1,23 @@ +var dir_f015963f69ae14c534311f2118856536 = +[ + [ "Accumulated.cpp", "Accumulated_8cpp.html", null ], + [ "Bell.cpp", "Bell_8cpp.html", null ], + [ "Constant.cpp", "Constant_8cpp.html", null ], + [ "Discrete.cpp", "Discrete_8cpp.html", null ], + [ "Function.cpp", "Function_8cpp.html", null ], + [ "Gaussian.cpp", "Gaussian_8cpp.html", null ], + [ "GaussianProduct.cpp", "GaussianProduct_8cpp.html", null ], + [ "Linear.cpp", "Linear_8cpp.html", null ], + [ "PiShape.cpp", "PiShape_8cpp.html", null ], + [ "Ramp.cpp", "Ramp_8cpp.html", null ], + [ "Rectangle.cpp", "Rectangle_8cpp.html", null ], + [ "Sigmoid.cpp", "Sigmoid_8cpp.html", null ], + [ "SigmoidDifference.cpp", "SigmoidDifference_8cpp.html", null ], + [ "SigmoidProduct.cpp", "SigmoidProduct_8cpp.html", null ], + [ "SShape.cpp", "SShape_8cpp.html", null ], + [ "Term.cpp", "Term_8cpp.html", null ], + [ "Thresholded.cpp", "Thresholded_8cpp.html", null ], + [ "Trapezoid.cpp", "Trapezoid_8cpp.html", null ], + [ "Triangle.cpp", "Triangle_8cpp.html", null ], + [ "ZShape.cpp", "ZShape_8cpp.html", null ] +]; \ No newline at end of file diff --git a/docs/html/dir_f015963f69ae14c534311f2118856536_dep.map b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.map new file mode 100644 index 0000000..e9e7a60 --- /dev/null +++ b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/dir_f015963f69ae14c534311f2118856536_dep.md5 b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.md5 new file mode 100644 index 0000000..7e59481 --- /dev/null +++ b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.md5 @@ -0,0 +1 @@ +0f07c70728b71426af953c66824a7070 \ No newline at end of file diff --git a/docs/html/dir_f015963f69ae14c534311f2118856536_dep.png b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.png new file mode 100644 index 0000000..dd23997 Binary files /dev/null and b/docs/html/dir_f015963f69ae14c534311f2118856536_dep.png differ diff --git a/docs/html/doxygen.css b/docs/html/doxygen.css new file mode 100644 index 0000000..dabaff2 --- /dev/null +++ b/docs/html/doxygen.css @@ -0,0 +1,1184 @@ +/* The standard CSS for doxygen 1.8.3.1 */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 5px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 2px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/docs/html/doxygen.png b/docs/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/docs/html/doxygen.png differ diff --git a/docs/html/dynsections.js b/docs/html/dynsections.js new file mode 100644 index 0000000..ed092c7 --- /dev/null +++ b/docs/html/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +fuzzylite: File List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
o-fl
|o+defuzzifier
|o+factory
|o+hedge
|o+imex
|o+norm
|o+rule
|o+term
|o+variable
|o*Console.h
|o*Engine.h
|o*Exception.h
|o*fuzzylite.h
|o*Headers.h
|\*Operation.h
\-src
 o+defuzzifier
 o+factory
 o+hedge
 o+imex
 o+norm
 o+rule
 o+term
 o+variable
 o*Console.cpp
 o*Engine.cpp
 o*Exception.cpp
 o*fuzzylite.cpp
 o*main.cpp
 \*Operation.cpp
+
+
+
+ + + + diff --git a/docs/html/files.js b/docs/html/files.js new file mode 100644 index 0000000..4f51b5f --- /dev/null +++ b/docs/html/files.js @@ -0,0 +1,5 @@ +var files = +[ + [ "fl", "dir_ca839787d91adf1c2a8e5c582e02170b.html", "dir_ca839787d91adf1c2a8e5c582e02170b" ], + [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] +]; \ No newline at end of file diff --git a/docs/html/ftv2blank.png b/docs/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/docs/html/ftv2blank.png differ diff --git a/docs/html/ftv2cl.png b/docs/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/docs/html/ftv2cl.png differ diff --git a/docs/html/ftv2doc.png b/docs/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/docs/html/ftv2doc.png differ diff --git a/docs/html/ftv2folderclosed.png b/docs/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/docs/html/ftv2folderclosed.png differ diff --git a/docs/html/ftv2folderopen.png b/docs/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/docs/html/ftv2folderopen.png differ diff --git a/docs/html/ftv2lastnode.png b/docs/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/docs/html/ftv2lastnode.png differ diff --git a/docs/html/ftv2link.png b/docs/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/docs/html/ftv2link.png differ diff --git a/docs/html/ftv2mlastnode.png b/docs/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/docs/html/ftv2mlastnode.png differ diff --git a/docs/html/ftv2mnode.png b/docs/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/docs/html/ftv2mnode.png differ diff --git a/docs/html/ftv2mo.png b/docs/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/docs/html/ftv2mo.png differ diff --git a/docs/html/ftv2node.png b/docs/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/docs/html/ftv2node.png differ diff --git a/docs/html/ftv2ns.png b/docs/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/docs/html/ftv2ns.png differ diff --git a/docs/html/ftv2plastnode.png b/docs/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/docs/html/ftv2plastnode.png differ diff --git a/docs/html/ftv2pnode.png b/docs/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/docs/html/ftv2pnode.png differ diff --git a/docs/html/ftv2splitbar.png b/docs/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/docs/html/ftv2splitbar.png differ diff --git a/docs/html/ftv2vertline.png b/docs/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/docs/html/ftv2vertline.png differ diff --git a/docs/html/functions.html b/docs/html/functions.html new file mode 100644 index 0000000..636df4c --- /dev/null +++ b/docs/html/functions.html @@ -0,0 +1,395 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- _ -

+
+
+ + + + diff --git a/docs/html/functions_0x61.html b/docs/html/functions_0x61.html new file mode 100644 index 0000000..2d6af29 --- /dev/null +++ b/docs/html/functions_0x61.html @@ -0,0 +1,220 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- a -

+
+
+ + + + diff --git a/docs/html/functions_0x62.html b/docs/html/functions_0x62.html new file mode 100644 index 0000000..5e868b8 --- /dev/null +++ b/docs/html/functions_0x62.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- b -

+
+
+ + + + diff --git a/docs/html/functions_0x63.html b/docs/html/functions_0x63.html new file mode 100644 index 0000000..ed991ef --- /dev/null +++ b/docs/html/functions_0x63.html @@ -0,0 +1,357 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- c -

+
+
+ + + + diff --git a/docs/html/functions_0x64.html b/docs/html/functions_0x64.html new file mode 100644 index 0000000..3a422e1 --- /dev/null +++ b/docs/html/functions_0x64.html @@ -0,0 +1,208 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- d -

+
+
+ + + + diff --git a/docs/html/functions_0x65.html b/docs/html/functions_0x65.html new file mode 100644 index 0000000..3b0c307 --- /dev/null +++ b/docs/html/functions_0x65.html @@ -0,0 +1,223 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- e -

+
+
+ + + + diff --git a/docs/html/functions_0x66.html b/docs/html/functions_0x66.html new file mode 100644 index 0000000..0fbf9b7 --- /dev/null +++ b/docs/html/functions_0x66.html @@ -0,0 +1,247 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- f -

+
+
+ + + + diff --git a/docs/html/functions_0x67.html b/docs/html/functions_0x67.html new file mode 100644 index 0000000..3e3a2b2 --- /dev/null +++ b/docs/html/functions_0x67.html @@ -0,0 +1,367 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- g -

+
+
+ + + + diff --git a/docs/html/functions_0x68.html b/docs/html/functions_0x68.html new file mode 100644 index 0000000..a7a093e --- /dev/null +++ b/docs/html/functions_0x68.html @@ -0,0 +1,206 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- h -

+
+
+ + + + diff --git a/docs/html/functions_0x69.html b/docs/html/functions_0x69.html new file mode 100644 index 0000000..b979027 --- /dev/null +++ b/docs/html/functions_0x69.html @@ -0,0 +1,271 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- i -

+
+
+ + + + diff --git a/docs/html/functions_0x6a.html b/docs/html/functions_0x6a.html new file mode 100644 index 0000000..c91c708 --- /dev/null +++ b/docs/html/functions_0x6a.html @@ -0,0 +1,169 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- j -

+
+
+ + + + diff --git a/docs/html/functions_0x6b.html b/docs/html/functions_0x6b.html new file mode 100644 index 0000000..42cc309 --- /dev/null +++ b/docs/html/functions_0x6b.html @@ -0,0 +1,187 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- k -

+
+
+ + + + diff --git a/docs/html/functions_0x6c.html b/docs/html/functions_0x6c.html new file mode 100644 index 0000000..2016ae0 --- /dev/null +++ b/docs/html/functions_0x6c.html @@ -0,0 +1,194 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- l -

+
+
+ + + + diff --git a/docs/html/functions_0x6d.html b/docs/html/functions_0x6d.html new file mode 100644 index 0000000..3ea4b6f --- /dev/null +++ b/docs/html/functions_0x6d.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- m -

+
+
+ + + + diff --git a/docs/html/functions_0x6e.html b/docs/html/functions_0x6e.html new file mode 100644 index 0000000..26caaec --- /dev/null +++ b/docs/html/functions_0x6e.html @@ -0,0 +1,214 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- n -

+
+
+ + + + diff --git a/docs/html/functions_0x6f.html b/docs/html/functions_0x6f.html new file mode 100644 index 0000000..006a247 --- /dev/null +++ b/docs/html/functions_0x6f.html @@ -0,0 +1,182 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- o -

+
+
+ + + + diff --git a/docs/html/functions_0x70.html b/docs/html/functions_0x70.html new file mode 100644 index 0000000..d473f20 --- /dev/null +++ b/docs/html/functions_0x70.html @@ -0,0 +1,256 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- p -

+
+
+ + + + diff --git a/docs/html/functions_0x72.html b/docs/html/functions_0x72.html new file mode 100644 index 0000000..8bbf773 --- /dev/null +++ b/docs/html/functions_0x72.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- r -

+
+
+ + + + diff --git a/docs/html/functions_0x73.html b/docs/html/functions_0x73.html new file mode 100644 index 0000000..84dbe66 --- /dev/null +++ b/docs/html/functions_0x73.html @@ -0,0 +1,419 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- s -

+
+
+ + + + diff --git a/docs/html/functions_0x74.html b/docs/html/functions_0x74.html new file mode 100644 index 0000000..7b427fa --- /dev/null +++ b/docs/html/functions_0x74.html @@ -0,0 +1,280 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- t -

+
+
+ + + + diff --git a/docs/html/functions_0x75.html b/docs/html/functions_0x75.html new file mode 100644 index 0000000..0e0bb34 --- /dev/null +++ b/docs/html/functions_0x75.html @@ -0,0 +1,172 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- u -

+
+
+ + + + diff --git a/docs/html/functions_0x76.html b/docs/html/functions_0x76.html new file mode 100644 index 0000000..58ff104 --- /dev/null +++ b/docs/html/functions_0x76.html @@ -0,0 +1,181 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- v -

+
+
+ + + + diff --git a/docs/html/functions_0x77.html b/docs/html/functions_0x77.html new file mode 100644 index 0000000..3967576 --- /dev/null +++ b/docs/html/functions_0x77.html @@ -0,0 +1,175 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- w -

+
+
+ + + + diff --git a/docs/html/functions_0x78.html b/docs/html/functions_0x78.html new file mode 100644 index 0000000..9fa6580 --- /dev/null +++ b/docs/html/functions_0x78.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- x -

+
+
+ + + + diff --git a/docs/html/functions_0x79.html b/docs/html/functions_0x79.html new file mode 100644 index 0000000..39ddd1d --- /dev/null +++ b/docs/html/functions_0x79.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- y -

+
+
+ + + + diff --git a/docs/html/functions_0x7a.html b/docs/html/functions_0x7a.html new file mode 100644 index 0000000..0919576 --- /dev/null +++ b/docs/html/functions_0x7a.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- z -

+
+
+ + + + diff --git a/docs/html/functions_0x7e.html b/docs/html/functions_0x7e.html new file mode 100644 index 0000000..540682e --- /dev/null +++ b/docs/html/functions_0x7e.html @@ -0,0 +1,346 @@ + + + + + + +fuzzylite: Class Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- ~ -

+
+
+ + + + diff --git a/docs/html/functions_dup.js b/docs/html/functions_dup.js new file mode 100644 index 0000000..ce1c605 --- /dev/null +++ b/docs/html/functions_dup.js @@ -0,0 +1,30 @@ +var functions_dup = +[ + [ "_", "functions.html", null ], + [ "a", "functions_0x61.html", null ], + [ "b", "functions_0x62.html", null ], + [ "c", "functions_0x63.html", null ], + [ "d", "functions_0x64.html", null ], + [ "e", "functions_0x65.html", null ], + [ "f", "functions_0x66.html", null ], + [ "g", "functions_0x67.html", null ], + [ "h", "functions_0x68.html", null ], + [ "i", "functions_0x69.html", null ], + [ "j", "functions_0x6a.html", null ], + [ "k", "functions_0x6b.html", null ], + [ "l", "functions_0x6c.html", null ], + [ "m", "functions_0x6d.html", null ], + [ "n", "functions_0x6e.html", null ], + [ "o", "functions_0x6f.html", null ], + [ "p", "functions_0x70.html", null ], + [ "r", "functions_0x72.html", null ], + [ "s", "functions_0x73.html", null ], + [ "t", "functions_0x74.html", null ], + [ "u", "functions_0x75.html", null ], + [ "v", "functions_0x76.html", null ], + [ "w", "functions_0x77.html", null ], + [ "x", "functions_0x78.html", null ], + [ "y", "functions_0x79.html", null ], + [ "z", "functions_0x7a.html", null ], + [ "~", "functions_0x7e.html", null ] +]; \ No newline at end of file diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html new file mode 100644 index 0000000..ab7a650 --- /dev/null +++ b/docs/html/functions_func.html @@ -0,0 +1,210 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+
+
+ + + + diff --git a/docs/html/functions_func.js b/docs/html/functions_func.js new file mode 100644 index 0000000..f08de46 --- /dev/null +++ b/docs/html/functions_func.js @@ -0,0 +1,26 @@ +var functions_func = +[ + [ "a", "functions_func.html", null ], + [ "b", "functions_func_0x62.html", null ], + [ "c", "functions_func_0x63.html", null ], + [ "d", "functions_func_0x64.html", null ], + [ "e", "functions_func_0x65.html", null ], + [ "f", "functions_func_0x66.html", null ], + [ "g", "functions_func_0x67.html", null ], + [ "h", "functions_func_0x68.html", null ], + [ "i", "functions_func_0x69.html", null ], + [ "j", "functions_func_0x6a.html", null ], + [ "l", "functions_func_0x6c.html", null ], + [ "m", "functions_func_0x6d.html", null ], + [ "n", "functions_func_0x6e.html", null ], + [ "o", "functions_func_0x6f.html", null ], + [ "p", "functions_func_0x70.html", null ], + [ "r", "functions_func_0x72.html", null ], + [ "s", "functions_func_0x73.html", null ], + [ "t", "functions_func_0x74.html", null ], + [ "u", "functions_func_0x75.html", null ], + [ "v", "functions_func_0x76.html", null ], + [ "w", "functions_func_0x77.html", null ], + [ "z", "functions_func_0x7a.html", null ], + [ "~", "functions_func_0x7e.html", null ] +]; \ No newline at end of file diff --git a/docs/html/functions_func_0x62.html b/docs/html/functions_func_0x62.html new file mode 100644 index 0000000..09a2f53 --- /dev/null +++ b/docs/html/functions_func_0x62.html @@ -0,0 +1,171 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- b -

+
+
+ + + + diff --git a/docs/html/functions_func_0x63.html b/docs/html/functions_func_0x63.html new file mode 100644 index 0000000..51b826d --- /dev/null +++ b/docs/html/functions_func_0x63.html @@ -0,0 +1,343 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- c -

+
+
+ + + + diff --git a/docs/html/functions_func_0x64.html b/docs/html/functions_func_0x64.html new file mode 100644 index 0000000..c3d1611 --- /dev/null +++ b/docs/html/functions_func_0x64.html @@ -0,0 +1,204 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- d -

+
+
+ + + + diff --git a/docs/html/functions_func_0x65.html b/docs/html/functions_func_0x65.html new file mode 100644 index 0000000..2b8e4fa --- /dev/null +++ b/docs/html/functions_func_0x65.html @@ -0,0 +1,219 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- e -

+
+
+ + + + diff --git a/docs/html/functions_func_0x66.html b/docs/html/functions_func_0x66.html new file mode 100644 index 0000000..c0f8ed9 --- /dev/null +++ b/docs/html/functions_func_0x66.html @@ -0,0 +1,213 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- f -

+
+
+ + + + diff --git a/docs/html/functions_func_0x67.html b/docs/html/functions_func_0x67.html new file mode 100644 index 0000000..41892ca --- /dev/null +++ b/docs/html/functions_func_0x67.html @@ -0,0 +1,363 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- g -

+
+
+ + + + diff --git a/docs/html/functions_func_0x68.html b/docs/html/functions_func_0x68.html new file mode 100644 index 0000000..b4dc99d --- /dev/null +++ b/docs/html/functions_func_0x68.html @@ -0,0 +1,201 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- h -

+
+
+ + + + diff --git a/docs/html/functions_func_0x69.html b/docs/html/functions_func_0x69.html new file mode 100644 index 0000000..e049c50 --- /dev/null +++ b/docs/html/functions_func_0x69.html @@ -0,0 +1,265 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- i -

+
+
+ + + + diff --git a/docs/html/functions_func_0x6a.html b/docs/html/functions_func_0x6a.html new file mode 100644 index 0000000..55c231b --- /dev/null +++ b/docs/html/functions_func_0x6a.html @@ -0,0 +1,165 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- j -

+
+
+ + + + diff --git a/docs/html/functions_func_0x6c.html b/docs/html/functions_func_0x6c.html new file mode 100644 index 0000000..5e63ac4 --- /dev/null +++ b/docs/html/functions_func_0x6c.html @@ -0,0 +1,186 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- l -

+
+
+ + + + diff --git a/docs/html/functions_func_0x6d.html b/docs/html/functions_func_0x6d.html new file mode 100644 index 0000000..624d0e5 --- /dev/null +++ b/docs/html/functions_func_0x6d.html @@ -0,0 +1,212 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/docs/html/functions_func_0x6e.html b/docs/html/functions_func_0x6e.html new file mode 100644 index 0000000..0e8ad5c --- /dev/null +++ b/docs/html/functions_func_0x6e.html @@ -0,0 +1,208 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- n -

+
+
+ + + + diff --git a/docs/html/functions_func_0x6f.html b/docs/html/functions_func_0x6f.html new file mode 100644 index 0000000..1d19410 --- /dev/null +++ b/docs/html/functions_func_0x6f.html @@ -0,0 +1,175 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- o -

+
+
+ + + + diff --git a/docs/html/functions_func_0x70.html b/docs/html/functions_func_0x70.html new file mode 100644 index 0000000..2f39176 --- /dev/null +++ b/docs/html/functions_func_0x70.html @@ -0,0 +1,247 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- p -

+
+
+ + + + diff --git a/docs/html/functions_func_0x72.html b/docs/html/functions_func_0x72.html new file mode 100644 index 0000000..d0a0ab2 --- /dev/null +++ b/docs/html/functions_func_0x72.html @@ -0,0 +1,208 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- r -

+
+
+ + + + diff --git a/docs/html/functions_func_0x73.html b/docs/html/functions_func_0x73.html new file mode 100644 index 0000000..c33f1fa --- /dev/null +++ b/docs/html/functions_func_0x73.html @@ -0,0 +1,415 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- s -

+
+
+ + + + diff --git a/docs/html/functions_func_0x74.html b/docs/html/functions_func_0x74.html new file mode 100644 index 0000000..a1542de --- /dev/null +++ b/docs/html/functions_func_0x74.html @@ -0,0 +1,273 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- t -

+
+
+ + + + diff --git a/docs/html/functions_func_0x75.html b/docs/html/functions_func_0x75.html new file mode 100644 index 0000000..1858ed0 --- /dev/null +++ b/docs/html/functions_func_0x75.html @@ -0,0 +1,162 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- u -

+
+
+ + + + diff --git a/docs/html/functions_func_0x76.html b/docs/html/functions_func_0x76.html new file mode 100644 index 0000000..aed6947 --- /dev/null +++ b/docs/html/functions_func_0x76.html @@ -0,0 +1,165 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- v -

+
+
+ + + + diff --git a/docs/html/functions_func_0x77.html b/docs/html/functions_func_0x77.html new file mode 100644 index 0000000..585c7f2 --- /dev/null +++ b/docs/html/functions_func_0x77.html @@ -0,0 +1,171 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- w -

+
+
+ + + + diff --git a/docs/html/functions_func_0x7a.html b/docs/html/functions_func_0x7a.html new file mode 100644 index 0000000..52c0ac8 --- /dev/null +++ b/docs/html/functions_func_0x7a.html @@ -0,0 +1,162 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- z -

+
+
+ + + + diff --git a/docs/html/functions_func_0x7e.html b/docs/html/functions_func_0x7e.html new file mode 100644 index 0000000..f84fbf0 --- /dev/null +++ b/docs/html/functions_func_0x7e.html @@ -0,0 +1,342 @@ + + + + + + +fuzzylite: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- ~ -

+
+
+ + + + diff --git a/docs/html/functions_type.html b/docs/html/functions_type.html new file mode 100644 index 0000000..f198bf2 --- /dev/null +++ b/docs/html/functions_type.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Class Members - Typedefs + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html new file mode 100644 index 0000000..1880f8c --- /dev/null +++ b/docs/html/functions_vars.html @@ -0,0 +1,583 @@ + + + + + + +fuzzylite: Class Members - Variables + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- k -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+ + +

- x -

+ + +

- y -

+
+
+ + + + diff --git a/docs/html/fuzzylite.png b/docs/html/fuzzylite.png new file mode 100644 index 0000000..53d2b10 Binary files /dev/null and b/docs/html/fuzzylite.png differ diff --git a/docs/html/fuzzylite_8cpp.html b/docs/html/fuzzylite_8cpp.html new file mode 100644 index 0000000..6c717c6 --- /dev/null +++ b/docs/html/fuzzylite_8cpp.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: src/fuzzylite.cpp File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fuzzylite.cpp File Reference
+
+
+
#include "fl/fuzzylite.h"
+
+Include dependency graph for fuzzylite.cpp:
+
+
+ + +
+
+ + + +

+Namespaces

namespace  fl
 
+
+
+ + + + diff --git a/docs/html/fuzzylite_8cpp__incl.map b/docs/html/fuzzylite_8cpp__incl.map new file mode 100644 index 0000000..1ac5f8e --- /dev/null +++ b/docs/html/fuzzylite_8cpp__incl.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/fuzzylite_8cpp__incl.md5 b/docs/html/fuzzylite_8cpp__incl.md5 new file mode 100644 index 0000000..0223d29 --- /dev/null +++ b/docs/html/fuzzylite_8cpp__incl.md5 @@ -0,0 +1 @@ +abafcb4f8324bca7ffd4d13aeb8bde13 \ No newline at end of file diff --git a/docs/html/fuzzylite_8cpp__incl.png b/docs/html/fuzzylite_8cpp__incl.png new file mode 100644 index 0000000..300d606 Binary files /dev/null and b/docs/html/fuzzylite_8cpp__incl.png differ diff --git a/docs/html/fuzzylite_8h.html b/docs/html/fuzzylite_8h.html new file mode 100644 index 0000000..3a2ec65 --- /dev/null +++ b/docs/html/fuzzylite_8h.html @@ -0,0 +1,373 @@ + + + + + + +fuzzylite: fl/fuzzylite.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fuzzylite.h File Reference
+
+
+
#include <iostream>
+#include <sstream>
+#include <limits>
+
+Include dependency graph for fuzzylite.h:
+
+
+ + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  fl::fuzzylite
 
+ + + +

+Namespaces

namespace  fl
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define FL_VERSION   "?"
 
#define FL_DATE   "?"
 
#define FL_BUILD_PATH   ""
 
#define FL__FILE__   std::string(__FILE__).substr(std::string(FL_BUILD_PATH).size())
 
#define FL_LOG_PREFIX   FL__FILE__ << " [" << __LINE__ << "]:"
 
#define FL_AT   FL__FILE__, __LINE__, __FUNCTION__
 
#define FL_LOG(message)   if (fl::fuzzylite::logging()){std::cout << FL_LOG_PREFIX << message << std::endl;}
 
#define FL_LOGP(message)   if (fl::fuzzylite::logging()){std::cout << message << std::endl;}
 
#define FL_DEBUG   false
 
#define FL_BEGIN_DEBUG_BLOCK   if (fl::fuzzylite::debug()){
 
#define FL_END_DEBUG_BLOCK   }
 
#define FL_DBG(message)
 
#define FL_EXPORT
 
+ + + +

+Typedefs

typedef double fl::scalar
 
+ + + + + +

+Variables

static const scalar fl::nan = std::numeric_limits<scalar>::quiet_NaN()
 
static const scalar fl::inf = std::numeric_limits<scalar>::infinity()
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define FL__FILE__   std::string(__FILE__).substr(std::string(FL_BUILD_PATH).size())
+
+ +
+
+ +
+
+ + + + +
#define FL_AT   FL__FILE__, __LINE__, __FUNCTION__
+
+ +
+
+ +
+
+ + + + +
#define FL_BEGIN_DEBUG_BLOCK   if (fl::fuzzylite::debug()){
+
+ +
+
+ +
+
+ + + + +
#define FL_BUILD_PATH   ""
+
+ +
+
+ +
+
+ + + + +
#define FL_DATE   "?"
+
+ +
+
+ +
+
+ + + + + + + + +
#define FL_DBG( message)
+
+Value:
FL_BEGIN_DEBUG_BLOCK \
+
std::cout << FL__FILE__ << "::" << __FUNCTION__ << "[" << __LINE__ << "]:" \
+
<< message << std::endl;\
+
FL_END_DEBUG_BLOCK
+
+
+
+ +
+
+ + + + +
#define FL_DEBUG   false
+
+ +
+
+ +
+
+ + + + +
#define FL_END_DEBUG_BLOCK   }
+
+ +
+
+ +
+
+ + + + +
#define FL_EXPORT
+
+ +
+
+ +
+
+ + + + + + + + +
#define FL_LOG( message)   if (fl::fuzzylite::logging()){std::cout << FL_LOG_PREFIX << message << std::endl;}
+
+ +
+
+ +
+
+ + + + +
#define FL_LOG_PREFIX   FL__FILE__ << " [" << __LINE__ << "]:"
+
+ +
+
+ +
+
+ + + + + + + + +
#define FL_LOGP( message)   if (fl::fuzzylite::logging()){std::cout << message << std::endl;}
+
+ +
+
+ +
+
+ + + + +
#define FL_VERSION   "?"
+
+ +
+
+
+
+ + + + diff --git a/docs/html/fuzzylite_8h.js b/docs/html/fuzzylite_8h.js new file mode 100644 index 0000000..8f0d89c --- /dev/null +++ b/docs/html/fuzzylite_8h.js @@ -0,0 +1,20 @@ +var fuzzylite_8h = +[ + [ "fuzzylite", "classfl_1_1fuzzylite.html", "classfl_1_1fuzzylite" ], + [ "FL__FILE__", "fuzzylite_8h.html#a3a8805bbd95046da97c4233e548826df", null ], + [ "FL_AT", "fuzzylite_8h.html#a79d6c0af9f3f337643496f2f81f5ba1d", null ], + [ "FL_BEGIN_DEBUG_BLOCK", "fuzzylite_8h.html#a18236efc548b42b6a767fd99e36c196f", null ], + [ "FL_BUILD_PATH", "fuzzylite_8h.html#a784dc3ea21a0ba359537da155a00e61d", null ], + [ "FL_DATE", "fuzzylite_8h.html#a62d4b835802d5d8e8e14cfa0a35f4181", null ], + [ "FL_DBG", "fuzzylite_8h.html#a05084ec1207bb07770b8663cfe5c95d0", null ], + [ "FL_DEBUG", "fuzzylite_8h.html#a923af823da4f8ccb7d3a71cda2011862", null ], + [ "FL_END_DEBUG_BLOCK", "fuzzylite_8h.html#a92b7a322a6b3854fb0f7469d26f61fc2", null ], + [ "FL_EXPORT", "fuzzylite_8h.html#aa9ba29a18aee9d738370a06eeb4470fc", null ], + [ "FL_LOG", "fuzzylite_8h.html#ac1b133a2f567fc5de2a07db84638138d", null ], + [ "FL_LOG_PREFIX", "fuzzylite_8h.html#a6b930a844b4fa50fe63a178ae5b1d896", null ], + [ "FL_LOGP", "fuzzylite_8h.html#af63fafdda4cae2ad4c11ada9492d8f4a", null ], + [ "FL_VERSION", "fuzzylite_8h.html#a94499c96b5f3ca212d90a2c41f947a67", null ], + [ "scalar", "fuzzylite_8h.html#a7c31a28fa2ed8960a0eb0a779744b689", null ], + [ "inf", "fuzzylite_8h.html#a9ce9b761c2cbab8d04a2eae44e63c1f1", null ], + [ "nan", "fuzzylite_8h.html#ac0141619ed9a08fb175cc92f134720e3", null ] +]; \ No newline at end of file diff --git a/docs/html/fuzzylite_8h__dep__incl.map b/docs/html/fuzzylite_8h__dep__incl.map new file mode 100644 index 0000000..412c13b --- /dev/null +++ b/docs/html/fuzzylite_8h__dep__incl.map @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/fuzzylite_8h__dep__incl.md5 b/docs/html/fuzzylite_8h__dep__incl.md5 new file mode 100644 index 0000000..b4e3266 --- /dev/null +++ b/docs/html/fuzzylite_8h__dep__incl.md5 @@ -0,0 +1 @@ +7c722fc026a9b347204878d10f06177e \ No newline at end of file diff --git a/docs/html/fuzzylite_8h__dep__incl.png b/docs/html/fuzzylite_8h__dep__incl.png new file mode 100644 index 0000000..104bebd Binary files /dev/null and b/docs/html/fuzzylite_8h__dep__incl.png differ diff --git a/docs/html/fuzzylite_8h__incl.map b/docs/html/fuzzylite_8h__incl.map new file mode 100644 index 0000000..d8a6a87 --- /dev/null +++ b/docs/html/fuzzylite_8h__incl.map @@ -0,0 +1,2 @@ + + diff --git a/docs/html/fuzzylite_8h__incl.md5 b/docs/html/fuzzylite_8h__incl.md5 new file mode 100644 index 0000000..bfda48d --- /dev/null +++ b/docs/html/fuzzylite_8h__incl.md5 @@ -0,0 +1 @@ +bc2e55ca2e505205292d9948aff81ba7 \ No newline at end of file diff --git a/docs/html/fuzzylite_8h__incl.png b/docs/html/fuzzylite_8h__incl.png new file mode 100644 index 0000000..51068ae Binary files /dev/null and b/docs/html/fuzzylite_8h__incl.png differ diff --git a/docs/html/fuzzylite_8h_source.html b/docs/html/fuzzylite_8h_source.html new file mode 100644 index 0000000..d6f7ca5 --- /dev/null +++ b/docs/html/fuzzylite_8h_source.html @@ -0,0 +1,270 @@ + + + + + + +fuzzylite: fl/fuzzylite.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fuzzylite.h
+
+
+Go to the documentation of this file.
1 /* Copyright 2013 Juan Rada-Vilela
+
2 
+
3  Licensed under the Apache License, Version 2.0 (the "License");
+
4  you may not use this file except in compliance with the License.
+
5  You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9  Unless required by applicable law or agreed to in writing, software
+
10  distributed under the License is distributed on an "AS IS" BASIS,
+
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12  See the License for the specific language governing permissions and
+
13  limitations under the License.
+
14  */
+
15 
+
16 /*
+
17  * File: fuzzylite.h
+
18  * Author: jcrada
+
19  *
+
20  * Created on 1 February 2013, 10:47 AM
+
21  */
+
22 
+
23 #ifndef FL_FUZZYLITE_H
+
24 #define FL_FUZZYLITE_H
+
25 
+
26 
+
27 #include <iostream>
+
28 #include <sstream>
+
29 #include <limits>
+
30 
+
31 #ifndef FL_VERSION
+
32 #define FL_VERSION "?"
+
33 #endif
+
34 
+
35 #ifndef FL_DATE
+
36 #define FL_DATE "?"
+
37 #endif
+
38 
+
39 #ifndef FL_BUILD_PATH
+
40 #define FL_BUILD_PATH ""
+
41 #endif
+
42 
+
43 namespace fl {
+
44 #ifdef FL_USE_FLOAT
+
45  typedef float scalar;
+
46 #else
+
47  typedef double scalar;
+
48 #endif
+
49 
+
50  static const scalar nan = std::numeric_limits<scalar>::quiet_NaN();
+
51  static const scalar inf = std::numeric_limits<scalar>::infinity();
+
52 }
+
53 
+
54 #define FL__FILE__ std::string(__FILE__).substr(std::string(FL_BUILD_PATH).size())
+
55 
+
56 #define FL_LOG_PREFIX FL__FILE__ << " [" << __LINE__ << "]:"
+
57 
+
58 #define FL_AT FL__FILE__, __LINE__, __FUNCTION__
+
59 
+
60 
+
61 #define FL_LOG(message) if (fl::fuzzylite::logging()){std::cout << FL_LOG_PREFIX << message << std::endl;}
+
62 #define FL_LOGP(message) if (fl::fuzzylite::logging()){std::cout << message << std::endl;}
+
63 
+
64 #ifndef FL_DEBUG
+
65 #define FL_DEBUG false
+
66 #endif
+
67 
+
68 #define FL_BEGIN_DEBUG_BLOCK if (fl::fuzzylite::debug()){
+
69 #define FL_END_DEBUG_BLOCK }
+
70 
+
71 #define FL_DBG(message) FL_BEGIN_DEBUG_BLOCK \
+
72  std::cout << FL__FILE__ << "::" << __FUNCTION__ << "[" << __LINE__ << "]:" \
+
73  << message << std::endl;\
+
74  FL_END_DEBUG_BLOCK
+
75 
+
76 //class FL_EXPORT is require to build DLLs in Windows.
+
77 #ifdef FL_WINDOWS
+
78 #define FL_EXPORT __declspec(dllexport)
+
79 #else
+
80 #define FL_EXPORT
+
81 #endif
+
82 
+
83 #ifdef FL_WINDOWS
+
84 #include <ciso646> //alternative operator spellings:
+
85 //#define and &&
+
86 //#define or ||
+
87 //#define not !
+
88 //#define bitand &
+
89 //#define bitor |
+
90 
+
91 //TODO: add these functions in Windows
+
92 //#define acosh(x)
+
93 //#define asinh(x)
+
94 //#define atanh(x)
+
95 //#define log1p
+
96 
+
97 //to ignore warnings dealing with exceptions in Windows:
+
98 //http://msdn.microsoft.com/en-us/library/sa28fef8%28v=vs.80%29.aspx
+
99 #pragma warning(disable:4290) //C++ exception specification ignored except to indicate a function is not __declspec(nothrow)
+
100 
+
101 #pragma warning(disable:4251) //Windows NMake complains I should have pointers in all headers instead of stack allocated objects. For example, std::string* instead of std::string.
+
102 
+
103 #pragma warning(disable:4127) //Ignore conditional expression constant of FL_DBG and alike
+
104 
+
105 #pragma warning(disable:4706) //Ignore assignments within conditional expressions in Tsukamoto.
+
106 #else
+
107 #endif
+
108 
+
109 namespace fl {
+
110 
+ +
112  protected:
+
113  static int _decimals;
+
114  static scalar _macheps;
+
115  static bool _debug;
+
116  static bool _logging;
+
117 
+
118  public:
+
119  static std::string name();
+
120  static std::string fullname();
+
121  static std::string version();
+
122  static std::string longVersion();
+
123  static std::string author();
+
124 
+
125  static std::string date();
+
126  static std::string platform();
+
127  static std::string configuration();
+
128 
+
129  static std::string floatingPoint();
+
130 
+
131  static bool debug();
+
132  static void setDebug(bool debug);
+
133 
+
134  static int decimals();
+
135  static void setDecimals(int decimals);
+
136 
+
137  static scalar macheps();
+
138  static void setMachEps(scalar macheps);
+
139 
+
140  static bool logging();
+
141  static void setLogging(bool logging);
+
142  };
+
143 }
+
144 
+
145 
+
146 #endif /* FL_FUZZYLITE_H */
+
147 
+
+
+ + + + diff --git a/docs/html/globals.html b/docs/html/globals.html new file mode 100644 index 0000000..8aa1dc3 --- /dev/null +++ b/docs/html/globals.html @@ -0,0 +1,172 @@ + + + + + + +fuzzylite: File Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+
+
+ + + + diff --git a/docs/html/globals_defs.html b/docs/html/globals_defs.html new file mode 100644 index 0000000..f59646f --- /dev/null +++ b/docs/html/globals_defs.html @@ -0,0 +1,166 @@ + + + + + + +fuzzylite: File Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html new file mode 100644 index 0000000..30a2bf0 --- /dev/null +++ b/docs/html/globals_func.html @@ -0,0 +1,133 @@ + + + + + + +fuzzylite: File Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/graph_legend.html b/docs/html/graph_legend.html new file mode 100644 index 0000000..36eb019 --- /dev/null +++ b/docs/html/graph_legend.html @@ -0,0 +1,180 @@ + + + + + + +fuzzylite: Graph Legend + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

+
/*! Invisible class because of truncation */
+
class Invisible { };
+
+
/*! Truncated class, inheritance relation is hidden */
+
class Truncated : public Invisible { };
+
+
/* Class not documented with doxygen comments */
+
class Undocumented { };
+
+
/*! Class that is inherited using public inheritance */
+
class PublicBase : public Truncated { };
+
+
/*! A template class */
+
template<class T> class Templ { };
+
+
/*! Class that is inherited using protected inheritance */
+
class ProtectedBase { };
+
+
/*! Class that is inherited using private inheritance */
+
class PrivateBase { };
+
+
/*! Class that is used by the Inherited class */
+
class Used { };
+
+
/*! Super class that inherits a number of other classes */
+
class Inherited : public PublicBase,
+
protected ProtectedBase,
+
private PrivateBase,
+
public Undocumented,
+
public Templ<int>
+
{
+
private:
+
Used *m_usedClass;
+
};
+

This will result in the following graph:

+
+ +
+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a grey border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +
+
+
+ + + + diff --git a/docs/html/graph_legend.md5 b/docs/html/graph_legend.md5 new file mode 100644 index 0000000..b6f44f5 --- /dev/null +++ b/docs/html/graph_legend.md5 @@ -0,0 +1 @@ +bc590f7814d4a5928660b951f90bd59b \ No newline at end of file diff --git a/docs/html/graph_legend.png b/docs/html/graph_legend.png new file mode 100644 index 0000000..573ebdc Binary files /dev/null and b/docs/html/graph_legend.png differ diff --git a/docs/html/hierarchy.html b/docs/html/hierarchy.html new file mode 100644 index 0000000..8acb18a --- /dev/null +++ b/docs/html/hierarchy.html @@ -0,0 +1,227 @@ + + + + + + +fuzzylite: Class Hierarchy + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
+

Go to the graphical class hierarchy

+This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
oCfl::Antecedent
oCfl::Consequent
oCfl::Console
oCfl::Defuzzifier
|oCfl::IntegralDefuzzifier
||oCfl::Bisector
||oCfl::Centroid
||oCfl::LargestOfMaximum
||oCfl::MeanOfMaximum
||\Cfl::SmallestOfMaximum
|oCfl::WeightedAverage
|\Cfl::WeightedSum
oCfl::Function::Element
|oCfl::Function::BuiltInFunction
|\Cfl::Function::Operator
oCfl::EngineA fuzzy engine
oCstd::exceptionSTL class
|\Cfl::Exception
oCfl::Exporter
|oCfl::CppExporter
|oCfl::FclExporter
|oCfl::FisExporter
|oCfl::FldExporter
|oCfl::FllExporter
|\Cfl::JavaExporter
oCfl::Expression
|oCfl::Operator
|\Cfl::Proposition
oCfl::Factory< T >
oCfl::Factory< Defuzzifier * >
|\Cfl::DefuzzifierFactory
oCfl::Factory< Hedge * >
|\Cfl::HedgeFactory
oCfl::Factory< SNorm * >
|\Cfl::SNormFactory
oCfl::Factory< Term * >
|\Cfl::TermFactory
oCfl::Factory< TNorm * >
|\Cfl::TNormFactory
oCfl::FactoryManager
oCfl::fuzzylite
oCfl::Hedge
|oCfl::Any
|oCfl::Extremely
|oCfl::Not
|oCfl::Seldom
|oCfl::Somewhat
|\Cfl::Very
oCfl::Importer
|oCfl::FclImporter
|oCfl::FisImporter
|\Cfl::FllImporter
oCfl::Function::Node
oCfl::Norm
|oCfl::SNorm
||oCfl::AlgebraicSum
||oCfl::BoundedSum
||oCfl::DrasticSum
||oCfl::EinsteinSum
||oCfl::HamacherSum
||oCfl::Maximum
||\Cfl::NormalizedSum
|\Cfl::TNorm
| oCfl::AlgebraicProduct
| oCfl::BoundedDifference
| oCfl::DrasticProduct
| oCfl::EinsteinProduct
| oCfl::HamacherProduct
| \Cfl::Minimum
oCfl::Operation
oCfl::Rule
oCfl::RuleBlock
oCfl::Variable::SortByCoG
oCfl::Term
|oCfl::Accumulated
|oCfl::Bell
|oCfl::Constant
|oCfl::Discrete
|oCfl::Function
|oCfl::Gaussian
|oCfl::GaussianProduct
|oCfl::Linear
|oCfl::PiShape
|oCfl::Ramp
|oCfl::Rectangle
|oCfl::Sigmoid
|oCfl::SigmoidDifference
|oCfl::SigmoidProduct
|oCfl::SShape
|oCfl::Thresholded
|oCfl::Trapezoid
|oCfl::Triangle
|\Cfl::ZShape
oCfl::Tsukamoto
\Cfl::Variable
 oCfl::InputVariable
 \Cfl::OutputVariable
+
+
+
+ + + + diff --git a/docs/html/hierarchy.js b/docs/html/hierarchy.js new file mode 100644 index 0000000..31d4bca --- /dev/null +++ b/docs/html/hierarchy.js @@ -0,0 +1,118 @@ +var hierarchy = +[ + [ "fl::Antecedent", "classfl_1_1Antecedent.html", null ], + [ "fl::Consequent", "classfl_1_1Consequent.html", null ], + [ "fl::Console", "classfl_1_1Console.html", null ], + [ "fl::Defuzzifier", "classfl_1_1Defuzzifier.html", [ + [ "fl::IntegralDefuzzifier", "classfl_1_1IntegralDefuzzifier.html", [ + [ "fl::Bisector", "classfl_1_1Bisector.html", null ], + [ "fl::Centroid", "classfl_1_1Centroid.html", null ], + [ "fl::LargestOfMaximum", "classfl_1_1LargestOfMaximum.html", null ], + [ "fl::MeanOfMaximum", "classfl_1_1MeanOfMaximum.html", null ], + [ "fl::SmallestOfMaximum", "classfl_1_1SmallestOfMaximum.html", null ] + ] ], + [ "fl::WeightedAverage", "classfl_1_1WeightedAverage.html", null ], + [ "fl::WeightedSum", "classfl_1_1WeightedSum.html", null ] + ] ], + [ "fl::Function::Element", "structfl_1_1Function_1_1Element.html", [ + [ "fl::Function::BuiltInFunction", "structfl_1_1Function_1_1BuiltInFunction.html", null ], + [ "fl::Function::Operator", "structfl_1_1Function_1_1Operator.html", null ] + ] ], + [ "fl::Engine", "classfl_1_1Engine.html", null ], + [ "std::exception", null, [ + [ "fl::Exception", "classfl_1_1Exception.html", null ] + ] ], + [ "fl::Exporter", "classfl_1_1Exporter.html", [ + [ "fl::CppExporter", "classfl_1_1CppExporter.html", null ], + [ "fl::FclExporter", "classfl_1_1FclExporter.html", null ], + [ "fl::FisExporter", "classfl_1_1FisExporter.html", null ], + [ "fl::FldExporter", "classfl_1_1FldExporter.html", null ], + [ "fl::FllExporter", "classfl_1_1FllExporter.html", null ], + [ "fl::JavaExporter", "classfl_1_1JavaExporter.html", null ] + ] ], + [ "fl::Expression", "classfl_1_1Expression.html", [ + [ "fl::Operator", "classfl_1_1Operator.html", null ], + [ "fl::Proposition", "classfl_1_1Proposition.html", null ] + ] ], + [ "fl::Factory< T >", "classfl_1_1Factory.html", null ], + [ "fl::Factory< Defuzzifier * >", "classfl_1_1Factory.html", [ + [ "fl::DefuzzifierFactory", "classfl_1_1DefuzzifierFactory.html", null ] + ] ], + [ "fl::Factory< Hedge * >", "classfl_1_1Factory.html", [ + [ "fl::HedgeFactory", "classfl_1_1HedgeFactory.html", null ] + ] ], + [ "fl::Factory< SNorm * >", "classfl_1_1Factory.html", [ + [ "fl::SNormFactory", "classfl_1_1SNormFactory.html", null ] + ] ], + [ "fl::Factory< Term * >", "classfl_1_1Factory.html", [ + [ "fl::TermFactory", "classfl_1_1TermFactory.html", null ] + ] ], + [ "fl::Factory< TNorm * >", "classfl_1_1Factory.html", [ + [ "fl::TNormFactory", "classfl_1_1TNormFactory.html", null ] + ] ], + [ "fl::FactoryManager", "classfl_1_1FactoryManager.html", null ], + [ "fl::fuzzylite", "classfl_1_1fuzzylite.html", null ], + [ "fl::Hedge", "classfl_1_1Hedge.html", [ + [ "fl::Any", "classfl_1_1Any.html", null ], + [ "fl::Extremely", "classfl_1_1Extremely.html", null ], + [ "fl::Not", "classfl_1_1Not.html", null ], + [ "fl::Seldom", "classfl_1_1Seldom.html", null ], + [ "fl::Somewhat", "classfl_1_1Somewhat.html", null ], + [ "fl::Very", "classfl_1_1Very.html", null ] + ] ], + [ "fl::Importer", "classfl_1_1Importer.html", [ + [ "fl::FclImporter", "classfl_1_1FclImporter.html", null ], + [ "fl::FisImporter", "classfl_1_1FisImporter.html", null ], + [ "fl::FllImporter", "classfl_1_1FllImporter.html", null ] + ] ], + [ "fl::Function::Node", "structfl_1_1Function_1_1Node.html", null ], + [ "fl::Norm", "classfl_1_1Norm.html", [ + [ "fl::SNorm", "classfl_1_1SNorm.html", [ + [ "fl::AlgebraicSum", "classfl_1_1AlgebraicSum.html", null ], + [ "fl::BoundedSum", "classfl_1_1BoundedSum.html", null ], + [ "fl::DrasticSum", "classfl_1_1DrasticSum.html", null ], + [ "fl::EinsteinSum", "classfl_1_1EinsteinSum.html", null ], + [ "fl::HamacherSum", "classfl_1_1HamacherSum.html", null ], + [ "fl::Maximum", "classfl_1_1Maximum.html", null ], + [ "fl::NormalizedSum", "classfl_1_1NormalizedSum.html", null ] + ] ], + [ "fl::TNorm", "classfl_1_1TNorm.html", [ + [ "fl::AlgebraicProduct", "classfl_1_1AlgebraicProduct.html", null ], + [ "fl::BoundedDifference", "classfl_1_1BoundedDifference.html", null ], + [ "fl::DrasticProduct", "classfl_1_1DrasticProduct.html", null ], + [ "fl::EinsteinProduct", "classfl_1_1EinsteinProduct.html", null ], + [ "fl::HamacherProduct", "classfl_1_1HamacherProduct.html", null ], + [ "fl::Minimum", "classfl_1_1Minimum.html", null ] + ] ] + ] ], + [ "fl::Operation", "classfl_1_1Operation.html", null ], + [ "fl::Rule", "classfl_1_1Rule.html", null ], + [ "fl::RuleBlock", "classfl_1_1RuleBlock.html", null ], + [ "fl::Variable::SortByCoG", "structfl_1_1Variable_1_1SortByCoG.html", null ], + [ "fl::Term", "classfl_1_1Term.html", [ + [ "fl::Accumulated", "classfl_1_1Accumulated.html", null ], + [ "fl::Bell", "classfl_1_1Bell.html", null ], + [ "fl::Constant", "classfl_1_1Constant.html", null ], + [ "fl::Discrete", "classfl_1_1Discrete.html", null ], + [ "fl::Function", "classfl_1_1Function.html", null ], + [ "fl::Gaussian", "classfl_1_1Gaussian.html", null ], + [ "fl::GaussianProduct", "classfl_1_1GaussianProduct.html", null ], + [ "fl::Linear", "classfl_1_1Linear.html", null ], + [ "fl::PiShape", "classfl_1_1PiShape.html", null ], + [ "fl::Ramp", "classfl_1_1Ramp.html", null ], + [ "fl::Rectangle", "classfl_1_1Rectangle.html", null ], + [ "fl::Sigmoid", "classfl_1_1Sigmoid.html", null ], + [ "fl::SigmoidDifference", "classfl_1_1SigmoidDifference.html", null ], + [ "fl::SigmoidProduct", "classfl_1_1SigmoidProduct.html", null ], + [ "fl::SShape", "classfl_1_1SShape.html", null ], + [ "fl::Thresholded", "classfl_1_1Thresholded.html", null ], + [ "fl::Trapezoid", "classfl_1_1Trapezoid.html", null ], + [ "fl::Triangle", "classfl_1_1Triangle.html", null ], + [ "fl::ZShape", "classfl_1_1ZShape.html", null ] + ] ], + [ "fl::Tsukamoto", "classfl_1_1Tsukamoto.html", null ], + [ "fl::Variable", "classfl_1_1Variable.html", [ + [ "fl::InputVariable", "classfl_1_1InputVariable.html", null ], + [ "fl::OutputVariable", "classfl_1_1OutputVariable.html", null ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/index.html b/docs/html/index.html new file mode 100644 index 0000000..9647dad --- /dev/null +++ b/docs/html/index.html @@ -0,0 +1,116 @@ + + + + + + +fuzzylite: Main Page + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fuzzylite Documentation
+
+
+
+
+ + + + diff --git a/docs/html/inherit_graph_0.map b/docs/html/inherit_graph_0.map new file mode 100644 index 0000000..edacae0 --- /dev/null +++ b/docs/html/inherit_graph_0.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_0.md5 b/docs/html/inherit_graph_0.md5 new file mode 100644 index 0000000..1275cb5 --- /dev/null +++ b/docs/html/inherit_graph_0.md5 @@ -0,0 +1 @@ +423b40d3e4ad678001d2ea4b6365130e \ No newline at end of file diff --git a/docs/html/inherit_graph_0.png b/docs/html/inherit_graph_0.png new file mode 100644 index 0000000..a18fe20 Binary files /dev/null and b/docs/html/inherit_graph_0.png differ diff --git a/docs/html/inherit_graph_1.map b/docs/html/inherit_graph_1.map new file mode 100644 index 0000000..3f753fc --- /dev/null +++ b/docs/html/inherit_graph_1.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_1.md5 b/docs/html/inherit_graph_1.md5 new file mode 100644 index 0000000..278d362 --- /dev/null +++ b/docs/html/inherit_graph_1.md5 @@ -0,0 +1 @@ +a99f9f2887901b5c029e7930c6e23860 \ No newline at end of file diff --git a/docs/html/inherit_graph_1.png b/docs/html/inherit_graph_1.png new file mode 100644 index 0000000..7a9740d Binary files /dev/null and b/docs/html/inherit_graph_1.png differ diff --git a/docs/html/inherit_graph_10.map b/docs/html/inherit_graph_10.map new file mode 100644 index 0000000..d21e6f1 --- /dev/null +++ b/docs/html/inherit_graph_10.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_10.md5 b/docs/html/inherit_graph_10.md5 new file mode 100644 index 0000000..b8627fd --- /dev/null +++ b/docs/html/inherit_graph_10.md5 @@ -0,0 +1 @@ +88b586647bd675069322c02fd1a6e92e \ No newline at end of file diff --git a/docs/html/inherit_graph_10.png b/docs/html/inherit_graph_10.png new file mode 100644 index 0000000..a073952 Binary files /dev/null and b/docs/html/inherit_graph_10.png differ diff --git a/docs/html/inherit_graph_11.map b/docs/html/inherit_graph_11.map new file mode 100644 index 0000000..bfb4763 --- /dev/null +++ b/docs/html/inherit_graph_11.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_11.md5 b/docs/html/inherit_graph_11.md5 new file mode 100644 index 0000000..99b1cb3 --- /dev/null +++ b/docs/html/inherit_graph_11.md5 @@ -0,0 +1 @@ +46647ff28daba06e6d244d7e9bad5bd1 \ No newline at end of file diff --git a/docs/html/inherit_graph_11.png b/docs/html/inherit_graph_11.png new file mode 100644 index 0000000..644f4af Binary files /dev/null and b/docs/html/inherit_graph_11.png differ diff --git a/docs/html/inherit_graph_12.map b/docs/html/inherit_graph_12.map new file mode 100644 index 0000000..cec385e --- /dev/null +++ b/docs/html/inherit_graph_12.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_12.md5 b/docs/html/inherit_graph_12.md5 new file mode 100644 index 0000000..61f3071 --- /dev/null +++ b/docs/html/inherit_graph_12.md5 @@ -0,0 +1 @@ +a4567190b9d4cee84492e52f6a7eef0d \ No newline at end of file diff --git a/docs/html/inherit_graph_12.png b/docs/html/inherit_graph_12.png new file mode 100644 index 0000000..86963cd Binary files /dev/null and b/docs/html/inherit_graph_12.png differ diff --git a/docs/html/inherit_graph_13.map b/docs/html/inherit_graph_13.map new file mode 100644 index 0000000..607794d --- /dev/null +++ b/docs/html/inherit_graph_13.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_13.md5 b/docs/html/inherit_graph_13.md5 new file mode 100644 index 0000000..8de3382 --- /dev/null +++ b/docs/html/inherit_graph_13.md5 @@ -0,0 +1 @@ +97ef6e4e7e1803a625cd1fa4a7de60a5 \ No newline at end of file diff --git a/docs/html/inherit_graph_13.png b/docs/html/inherit_graph_13.png new file mode 100644 index 0000000..35f0663 Binary files /dev/null and b/docs/html/inherit_graph_13.png differ diff --git a/docs/html/inherit_graph_14.map b/docs/html/inherit_graph_14.map new file mode 100644 index 0000000..e1305be --- /dev/null +++ b/docs/html/inherit_graph_14.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_14.md5 b/docs/html/inherit_graph_14.md5 new file mode 100644 index 0000000..46177a2 --- /dev/null +++ b/docs/html/inherit_graph_14.md5 @@ -0,0 +1 @@ +8e32b055e7500c8783782d27fc53c7d0 \ No newline at end of file diff --git a/docs/html/inherit_graph_14.png b/docs/html/inherit_graph_14.png new file mode 100644 index 0000000..6dd8691 Binary files /dev/null and b/docs/html/inherit_graph_14.png differ diff --git a/docs/html/inherit_graph_15.map b/docs/html/inherit_graph_15.map new file mode 100644 index 0000000..2c8ce94 --- /dev/null +++ b/docs/html/inherit_graph_15.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/inherit_graph_15.md5 b/docs/html/inherit_graph_15.md5 new file mode 100644 index 0000000..c785073 --- /dev/null +++ b/docs/html/inherit_graph_15.md5 @@ -0,0 +1 @@ +56635ba4304dd39d1a7a149bdf572706 \ No newline at end of file diff --git a/docs/html/inherit_graph_15.png b/docs/html/inherit_graph_15.png new file mode 100644 index 0000000..2e9f0bf Binary files /dev/null and b/docs/html/inherit_graph_15.png differ diff --git a/docs/html/inherit_graph_16.map b/docs/html/inherit_graph_16.map new file mode 100644 index 0000000..4bb52d2 --- /dev/null +++ b/docs/html/inherit_graph_16.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_16.md5 b/docs/html/inherit_graph_16.md5 new file mode 100644 index 0000000..b8d156e --- /dev/null +++ b/docs/html/inherit_graph_16.md5 @@ -0,0 +1 @@ +d0a65c4aa26c44e568e049839948a6dd \ No newline at end of file diff --git a/docs/html/inherit_graph_16.png b/docs/html/inherit_graph_16.png new file mode 100644 index 0000000..00131bb Binary files /dev/null and b/docs/html/inherit_graph_16.png differ diff --git a/docs/html/inherit_graph_17.map b/docs/html/inherit_graph_17.map new file mode 100644 index 0000000..1cec4ae --- /dev/null +++ b/docs/html/inherit_graph_17.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_17.md5 b/docs/html/inherit_graph_17.md5 new file mode 100644 index 0000000..4f20e24 --- /dev/null +++ b/docs/html/inherit_graph_17.md5 @@ -0,0 +1 @@ +562e0e465f35705b2ac48fcaca202983 \ No newline at end of file diff --git a/docs/html/inherit_graph_17.png b/docs/html/inherit_graph_17.png new file mode 100644 index 0000000..2debb0d Binary files /dev/null and b/docs/html/inherit_graph_17.png differ diff --git a/docs/html/inherit_graph_18.map b/docs/html/inherit_graph_18.map new file mode 100644 index 0000000..7633848 --- /dev/null +++ b/docs/html/inherit_graph_18.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/inherit_graph_18.md5 b/docs/html/inherit_graph_18.md5 new file mode 100644 index 0000000..8798d0b --- /dev/null +++ b/docs/html/inherit_graph_18.md5 @@ -0,0 +1 @@ +3b6d010c0c44fab06ebd7c998590a50f \ No newline at end of file diff --git a/docs/html/inherit_graph_18.png b/docs/html/inherit_graph_18.png new file mode 100644 index 0000000..c391424 Binary files /dev/null and b/docs/html/inherit_graph_18.png differ diff --git a/docs/html/inherit_graph_19.map b/docs/html/inherit_graph_19.map new file mode 100644 index 0000000..85d3563 --- /dev/null +++ b/docs/html/inherit_graph_19.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/docs/html/inherit_graph_19.md5 b/docs/html/inherit_graph_19.md5 new file mode 100644 index 0000000..6ce5dd4 --- /dev/null +++ b/docs/html/inherit_graph_19.md5 @@ -0,0 +1 @@ +edabf160c801a72d7622ac66b9bc1150 \ No newline at end of file diff --git a/docs/html/inherit_graph_19.png b/docs/html/inherit_graph_19.png new file mode 100644 index 0000000..4a30140 Binary files /dev/null and b/docs/html/inherit_graph_19.png differ diff --git a/docs/html/inherit_graph_2.map b/docs/html/inherit_graph_2.map new file mode 100644 index 0000000..7873240 --- /dev/null +++ b/docs/html/inherit_graph_2.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_2.md5 b/docs/html/inherit_graph_2.md5 new file mode 100644 index 0000000..73917a0 --- /dev/null +++ b/docs/html/inherit_graph_2.md5 @@ -0,0 +1 @@ +485395048e1819fe4e7d778087bfcada \ No newline at end of file diff --git a/docs/html/inherit_graph_2.png b/docs/html/inherit_graph_2.png new file mode 100644 index 0000000..35acd14 Binary files /dev/null and b/docs/html/inherit_graph_2.png differ diff --git a/docs/html/inherit_graph_20.map b/docs/html/inherit_graph_20.map new file mode 100644 index 0000000..9c04bfc --- /dev/null +++ b/docs/html/inherit_graph_20.map @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/docs/html/inherit_graph_20.md5 b/docs/html/inherit_graph_20.md5 new file mode 100644 index 0000000..568962f --- /dev/null +++ b/docs/html/inherit_graph_20.md5 @@ -0,0 +1 @@ +80a9617dcce7f8818a956348f25802a4 \ No newline at end of file diff --git a/docs/html/inherit_graph_20.png b/docs/html/inherit_graph_20.png new file mode 100644 index 0000000..eeefe83 Binary files /dev/null and b/docs/html/inherit_graph_20.png differ diff --git a/docs/html/inherit_graph_21.map b/docs/html/inherit_graph_21.map new file mode 100644 index 0000000..5e1f588 --- /dev/null +++ b/docs/html/inherit_graph_21.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_21.md5 b/docs/html/inherit_graph_21.md5 new file mode 100644 index 0000000..1264c61 --- /dev/null +++ b/docs/html/inherit_graph_21.md5 @@ -0,0 +1 @@ +0478f18309f970bb5d78332aa6b8917f \ No newline at end of file diff --git a/docs/html/inherit_graph_21.png b/docs/html/inherit_graph_21.png new file mode 100644 index 0000000..cef5623 Binary files /dev/null and b/docs/html/inherit_graph_21.png differ diff --git a/docs/html/inherit_graph_22.map b/docs/html/inherit_graph_22.map new file mode 100644 index 0000000..9c8b5dc --- /dev/null +++ b/docs/html/inherit_graph_22.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_22.md5 b/docs/html/inherit_graph_22.md5 new file mode 100644 index 0000000..952736d --- /dev/null +++ b/docs/html/inherit_graph_22.md5 @@ -0,0 +1 @@ +7a08be84e0d949076801d7b3f18151bd \ No newline at end of file diff --git a/docs/html/inherit_graph_22.png b/docs/html/inherit_graph_22.png new file mode 100644 index 0000000..d6440b6 Binary files /dev/null and b/docs/html/inherit_graph_22.png differ diff --git a/docs/html/inherit_graph_23.map b/docs/html/inherit_graph_23.map new file mode 100644 index 0000000..8e2dad2 --- /dev/null +++ b/docs/html/inherit_graph_23.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_23.md5 b/docs/html/inherit_graph_23.md5 new file mode 100644 index 0000000..b76db01 --- /dev/null +++ b/docs/html/inherit_graph_23.md5 @@ -0,0 +1 @@ +35e647c52fa0e31abc6c0475535f10a9 \ No newline at end of file diff --git a/docs/html/inherit_graph_23.png b/docs/html/inherit_graph_23.png new file mode 100644 index 0000000..bde2081 Binary files /dev/null and b/docs/html/inherit_graph_23.png differ diff --git a/docs/html/inherit_graph_24.map b/docs/html/inherit_graph_24.map new file mode 100644 index 0000000..666a31c --- /dev/null +++ b/docs/html/inherit_graph_24.map @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/inherit_graph_24.md5 b/docs/html/inherit_graph_24.md5 new file mode 100644 index 0000000..3de21a2 --- /dev/null +++ b/docs/html/inherit_graph_24.md5 @@ -0,0 +1 @@ +d710abaffeba4e6160bed6ee8d345631 \ No newline at end of file diff --git a/docs/html/inherit_graph_24.png b/docs/html/inherit_graph_24.png new file mode 100644 index 0000000..6992fd1 Binary files /dev/null and b/docs/html/inherit_graph_24.png differ diff --git a/docs/html/inherit_graph_25.map b/docs/html/inherit_graph_25.map new file mode 100644 index 0000000..73c4d9d --- /dev/null +++ b/docs/html/inherit_graph_25.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_25.md5 b/docs/html/inherit_graph_25.md5 new file mode 100644 index 0000000..773876c --- /dev/null +++ b/docs/html/inherit_graph_25.md5 @@ -0,0 +1 @@ +64b1fc926ded9770fa3e3ac67b9c6440 \ No newline at end of file diff --git a/docs/html/inherit_graph_25.png b/docs/html/inherit_graph_25.png new file mode 100644 index 0000000..aaeed85 Binary files /dev/null and b/docs/html/inherit_graph_25.png differ diff --git a/docs/html/inherit_graph_26.map b/docs/html/inherit_graph_26.map new file mode 100644 index 0000000..46aa523 --- /dev/null +++ b/docs/html/inherit_graph_26.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/inherit_graph_26.md5 b/docs/html/inherit_graph_26.md5 new file mode 100644 index 0000000..594bd4f --- /dev/null +++ b/docs/html/inherit_graph_26.md5 @@ -0,0 +1 @@ +3dc89495bf4a02bdfb4c54982d17c782 \ No newline at end of file diff --git a/docs/html/inherit_graph_26.png b/docs/html/inherit_graph_26.png new file mode 100644 index 0000000..51b0218 Binary files /dev/null and b/docs/html/inherit_graph_26.png differ diff --git a/docs/html/inherit_graph_27.map b/docs/html/inherit_graph_27.map new file mode 100644 index 0000000..b132f16 --- /dev/null +++ b/docs/html/inherit_graph_27.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_27.md5 b/docs/html/inherit_graph_27.md5 new file mode 100644 index 0000000..fdb5779 --- /dev/null +++ b/docs/html/inherit_graph_27.md5 @@ -0,0 +1 @@ +08ae5f0cc29563501244336a635e24f2 \ No newline at end of file diff --git a/docs/html/inherit_graph_27.png b/docs/html/inherit_graph_27.png new file mode 100644 index 0000000..16a2bbf Binary files /dev/null and b/docs/html/inherit_graph_27.png differ diff --git a/docs/html/inherit_graph_3.map b/docs/html/inherit_graph_3.map new file mode 100644 index 0000000..b4264c6 --- /dev/null +++ b/docs/html/inherit_graph_3.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/docs/html/inherit_graph_3.md5 b/docs/html/inherit_graph_3.md5 new file mode 100644 index 0000000..339cc1c --- /dev/null +++ b/docs/html/inherit_graph_3.md5 @@ -0,0 +1 @@ +014cf08c487bf209c2ac56f7656b323f \ No newline at end of file diff --git a/docs/html/inherit_graph_3.png b/docs/html/inherit_graph_3.png new file mode 100644 index 0000000..ebdda94 Binary files /dev/null and b/docs/html/inherit_graph_3.png differ diff --git a/docs/html/inherit_graph_4.map b/docs/html/inherit_graph_4.map new file mode 100644 index 0000000..cadf40c --- /dev/null +++ b/docs/html/inherit_graph_4.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/inherit_graph_4.md5 b/docs/html/inherit_graph_4.md5 new file mode 100644 index 0000000..60af271 --- /dev/null +++ b/docs/html/inherit_graph_4.md5 @@ -0,0 +1 @@ +e6de74a2ca92e247735874fd7ae6663d \ No newline at end of file diff --git a/docs/html/inherit_graph_4.png b/docs/html/inherit_graph_4.png new file mode 100644 index 0000000..731e3b5 Binary files /dev/null and b/docs/html/inherit_graph_4.png differ diff --git a/docs/html/inherit_graph_5.map b/docs/html/inherit_graph_5.map new file mode 100644 index 0000000..0bee6be --- /dev/null +++ b/docs/html/inherit_graph_5.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_5.md5 b/docs/html/inherit_graph_5.md5 new file mode 100644 index 0000000..14b4157 --- /dev/null +++ b/docs/html/inherit_graph_5.md5 @@ -0,0 +1 @@ +10f1759b821a73fc1218183b55b9628e \ No newline at end of file diff --git a/docs/html/inherit_graph_5.png b/docs/html/inherit_graph_5.png new file mode 100644 index 0000000..2a1fd77 Binary files /dev/null and b/docs/html/inherit_graph_5.png differ diff --git a/docs/html/inherit_graph_6.map b/docs/html/inherit_graph_6.map new file mode 100644 index 0000000..36ef414 --- /dev/null +++ b/docs/html/inherit_graph_6.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/docs/html/inherit_graph_6.md5 b/docs/html/inherit_graph_6.md5 new file mode 100644 index 0000000..2289e36 --- /dev/null +++ b/docs/html/inherit_graph_6.md5 @@ -0,0 +1 @@ +d5ab48bb2fb7e38c6aa80e40c082ee58 \ No newline at end of file diff --git a/docs/html/inherit_graph_6.png b/docs/html/inherit_graph_6.png new file mode 100644 index 0000000..22bcfcf Binary files /dev/null and b/docs/html/inherit_graph_6.png differ diff --git a/docs/html/inherit_graph_7.map b/docs/html/inherit_graph_7.map new file mode 100644 index 0000000..9210cbb --- /dev/null +++ b/docs/html/inherit_graph_7.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/inherit_graph_7.md5 b/docs/html/inherit_graph_7.md5 new file mode 100644 index 0000000..12c0b6e --- /dev/null +++ b/docs/html/inherit_graph_7.md5 @@ -0,0 +1 @@ +b5c05cfe5c9e887ece11af4f66838fa7 \ No newline at end of file diff --git a/docs/html/inherit_graph_7.png b/docs/html/inherit_graph_7.png new file mode 100644 index 0000000..8eff44a Binary files /dev/null and b/docs/html/inherit_graph_7.png differ diff --git a/docs/html/inherit_graph_8.map b/docs/html/inherit_graph_8.map new file mode 100644 index 0000000..b24e86c --- /dev/null +++ b/docs/html/inherit_graph_8.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_8.md5 b/docs/html/inherit_graph_8.md5 new file mode 100644 index 0000000..8800438 --- /dev/null +++ b/docs/html/inherit_graph_8.md5 @@ -0,0 +1 @@ +8ec4e7fe2e176ba865de98f6c25d86f4 \ No newline at end of file diff --git a/docs/html/inherit_graph_8.png b/docs/html/inherit_graph_8.png new file mode 100644 index 0000000..38ea770 Binary files /dev/null and b/docs/html/inherit_graph_8.png differ diff --git a/docs/html/inherit_graph_9.map b/docs/html/inherit_graph_9.map new file mode 100644 index 0000000..0945e1d --- /dev/null +++ b/docs/html/inherit_graph_9.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/inherit_graph_9.md5 b/docs/html/inherit_graph_9.md5 new file mode 100644 index 0000000..b8d54d3 --- /dev/null +++ b/docs/html/inherit_graph_9.md5 @@ -0,0 +1 @@ +47e37e1c2bb8db9d7e820b29a272f1cb \ No newline at end of file diff --git a/docs/html/inherit_graph_9.png b/docs/html/inherit_graph_9.png new file mode 100644 index 0000000..75a9df8 Binary files /dev/null and b/docs/html/inherit_graph_9.png differ diff --git a/docs/html/inherits.html b/docs/html/inherits.html new file mode 100644 index 0000000..33669c4 --- /dev/null +++ b/docs/html/inherits.html @@ -0,0 +1,240 @@ + + + + + + +fuzzylite: Class Hierarchy + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+
+
+ + + + diff --git a/docs/html/jquery.js b/docs/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/docs/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
+ +
+
main.cpp File Reference
+
+
+
#include "fl/Headers.h"
+#include <typeinfo>
+#include <iomanip>
+#include <cstdlib>
+#include <signal.h>
+#include <fstream>
+
+Include dependency graph for main.cpp:
+
+
+ + +
+
+ + + + + +

+Functions

void exportAllExamples (const std::string &from, const std::string &to)
 
int main (int argc, char **argv)
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void exportAllExamples (const std::string & from,
const std::string & to 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int main (int argc,
char ** argv 
)
+
+ +
+
+ + + + + + diff --git a/docs/html/main_8cpp.js b/docs/html/main_8cpp.js new file mode 100644 index 0000000..a70068a --- /dev/null +++ b/docs/html/main_8cpp.js @@ -0,0 +1,5 @@ +var main_8cpp = +[ + [ "exportAllExamples", "main_8cpp.html#a2c51c31f8231e9629bb80fd37ced3e46", null ], + [ "main", "main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627", null ] +]; \ No newline at end of file diff --git a/docs/html/main_8cpp__incl.map b/docs/html/main_8cpp__incl.map new file mode 100644 index 0000000..0edd362 --- /dev/null +++ b/docs/html/main_8cpp__incl.map @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/main_8cpp__incl.md5 b/docs/html/main_8cpp__incl.md5 new file mode 100644 index 0000000..6d9b683 --- /dev/null +++ b/docs/html/main_8cpp__incl.md5 @@ -0,0 +1 @@ +7db94adc5d3f056e00fc4e3370bc8747 \ No newline at end of file diff --git a/docs/html/main_8cpp__incl.png b/docs/html/main_8cpp__incl.png new file mode 100644 index 0000000..c912252 Binary files /dev/null and b/docs/html/main_8cpp__incl.png differ diff --git a/docs/html/namespacefl.html b/docs/html/namespacefl.html new file mode 100644 index 0000000..d32af6a --- /dev/null +++ b/docs/html/namespacefl.html @@ -0,0 +1,384 @@ + + + + + + +fuzzylite: fl Namespace Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl Namespace Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  Console
 
class  Bisector
 
class  Centroid
 
class  Defuzzifier
 
class  IntegralDefuzzifier
 
class  LargestOfMaximum
 
class  MeanOfMaximum
 
class  SmallestOfMaximum
 
class  Tsukamoto
 
class  WeightedAverage
 
class  WeightedSum
 
class  Engine
 A fuzzy engine. More...
 
class  Exception
 
class  DefuzzifierFactory
 
class  Factory
 
class  FactoryManager
 
class  HedgeFactory
 
class  SNormFactory
 
class  TermFactory
 
class  TNormFactory
 
class  fuzzylite
 
class  Any
 
class  Extremely
 
class  Hedge
 
class  Not
 
class  Seldom
 
class  Somewhat
 
class  Very
 
class  CppExporter
 
class  Exporter
 
class  FclExporter
 
class  FclImporter
 
class  FisExporter
 
class  FisImporter
 
class  FldExporter
 
class  FllExporter
 
class  FllImporter
 
class  Importer
 
class  JavaExporter
 
class  Norm
 
class  AlgebraicSum
 
class  BoundedSum
 
class  DrasticSum
 
class  EinsteinSum
 
class  HamacherSum
 
class  Maximum
 
class  NormalizedSum
 
class  SNorm
 
class  AlgebraicProduct
 
class  BoundedDifference
 
class  DrasticProduct
 
class  EinsteinProduct
 
class  HamacherProduct
 
class  Minimum
 
class  TNorm
 
class  Operation
 
class  Antecedent
 
class  Consequent
 
class  Expression
 
class  Proposition
 
class  Operator
 
class  Rule
 
class  RuleBlock
 
class  Accumulated
 
class  Bell
 
class  Constant
 
class  Discrete
 
class  Function
 
class  Gaussian
 
class  GaussianProduct
 
class  Linear
 
class  PiShape
 
class  Ramp
 
class  Rectangle
 
class  Sigmoid
 
class  SigmoidDifference
 
class  SigmoidProduct
 
class  SShape
 
class  Term
 
class  Thresholded
 
class  Trapezoid
 
class  Triangle
 
class  ZShape
 
class  InputVariable
 
class  OutputVariable
 
class  Variable
 
+ + + + + +

+Typedefs

typedef double scalar
 
typedef Operation Op
 
+ + + + + +

+Variables

static const scalar nan = std::numeric_limits<scalar>::quiet_NaN()
 
static const scalar inf = std::numeric_limits<scalar>::infinity()
 
+

Typedef Documentation

+ +
+
+ + + + +
typedef Operation fl::Op
+
+ +
+
+ +
+
+ + + + +
typedef double fl::scalar
+
+ +
+
+

Variable Documentation

+ +
+
+ + + + + +
+ + + + +
const scalar fl::inf = std::numeric_limits<scalar>::infinity()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + +
const scalar fl::nan = std::numeric_limits<scalar>::quiet_NaN()
+
+static
+
+ +
+
+
+
+ + + + diff --git a/docs/html/namespacefl.js b/docs/html/namespacefl.js new file mode 100644 index 0000000..0deb009 --- /dev/null +++ b/docs/html/namespacefl.js @@ -0,0 +1,89 @@ +var namespacefl = +[ + [ "Console", "classfl_1_1Console.html", "classfl_1_1Console" ], + [ "Bisector", "classfl_1_1Bisector.html", "classfl_1_1Bisector" ], + [ "Centroid", "classfl_1_1Centroid.html", "classfl_1_1Centroid" ], + [ "Defuzzifier", "classfl_1_1Defuzzifier.html", "classfl_1_1Defuzzifier" ], + [ "IntegralDefuzzifier", "classfl_1_1IntegralDefuzzifier.html", "classfl_1_1IntegralDefuzzifier" ], + [ "LargestOfMaximum", "classfl_1_1LargestOfMaximum.html", "classfl_1_1LargestOfMaximum" ], + [ "MeanOfMaximum", "classfl_1_1MeanOfMaximum.html", "classfl_1_1MeanOfMaximum" ], + [ "SmallestOfMaximum", "classfl_1_1SmallestOfMaximum.html", "classfl_1_1SmallestOfMaximum" ], + [ "Tsukamoto", "classfl_1_1Tsukamoto.html", "classfl_1_1Tsukamoto" ], + [ "WeightedAverage", "classfl_1_1WeightedAverage.html", "classfl_1_1WeightedAverage" ], + [ "WeightedSum", "classfl_1_1WeightedSum.html", "classfl_1_1WeightedSum" ], + [ "Engine", "classfl_1_1Engine.html", "classfl_1_1Engine" ], + [ "Exception", "classfl_1_1Exception.html", "classfl_1_1Exception" ], + [ "DefuzzifierFactory", "classfl_1_1DefuzzifierFactory.html", "classfl_1_1DefuzzifierFactory" ], + [ "Factory", "classfl_1_1Factory.html", "classfl_1_1Factory" ], + [ "FactoryManager", "classfl_1_1FactoryManager.html", "classfl_1_1FactoryManager" ], + [ "HedgeFactory", "classfl_1_1HedgeFactory.html", "classfl_1_1HedgeFactory" ], + [ "SNormFactory", "classfl_1_1SNormFactory.html", "classfl_1_1SNormFactory" ], + [ "TermFactory", "classfl_1_1TermFactory.html", "classfl_1_1TermFactory" ], + [ "TNormFactory", "classfl_1_1TNormFactory.html", "classfl_1_1TNormFactory" ], + [ "fuzzylite", "classfl_1_1fuzzylite.html", "classfl_1_1fuzzylite" ], + [ "Any", "classfl_1_1Any.html", "classfl_1_1Any" ], + [ "Extremely", "classfl_1_1Extremely.html", "classfl_1_1Extremely" ], + [ "Hedge", "classfl_1_1Hedge.html", "classfl_1_1Hedge" ], + [ "Not", "classfl_1_1Not.html", "classfl_1_1Not" ], + [ "Seldom", "classfl_1_1Seldom.html", "classfl_1_1Seldom" ], + [ "Somewhat", "classfl_1_1Somewhat.html", "classfl_1_1Somewhat" ], + [ "Very", "classfl_1_1Very.html", "classfl_1_1Very" ], + [ "CppExporter", "classfl_1_1CppExporter.html", "classfl_1_1CppExporter" ], + [ "Exporter", "classfl_1_1Exporter.html", "classfl_1_1Exporter" ], + [ "FclExporter", "classfl_1_1FclExporter.html", "classfl_1_1FclExporter" ], + [ "FclImporter", "classfl_1_1FclImporter.html", "classfl_1_1FclImporter" ], + [ "FisExporter", "classfl_1_1FisExporter.html", "classfl_1_1FisExporter" ], + [ "FisImporter", "classfl_1_1FisImporter.html", "classfl_1_1FisImporter" ], + [ "FldExporter", "classfl_1_1FldExporter.html", "classfl_1_1FldExporter" ], + [ "FllExporter", "classfl_1_1FllExporter.html", "classfl_1_1FllExporter" ], + [ "FllImporter", "classfl_1_1FllImporter.html", "classfl_1_1FllImporter" ], + [ "Importer", "classfl_1_1Importer.html", "classfl_1_1Importer" ], + [ "JavaExporter", "classfl_1_1JavaExporter.html", "classfl_1_1JavaExporter" ], + [ "Norm", "classfl_1_1Norm.html", "classfl_1_1Norm" ], + [ "AlgebraicSum", "classfl_1_1AlgebraicSum.html", "classfl_1_1AlgebraicSum" ], + [ "BoundedSum", "classfl_1_1BoundedSum.html", "classfl_1_1BoundedSum" ], + [ "DrasticSum", "classfl_1_1DrasticSum.html", "classfl_1_1DrasticSum" ], + [ "EinsteinSum", "classfl_1_1EinsteinSum.html", "classfl_1_1EinsteinSum" ], + [ "HamacherSum", "classfl_1_1HamacherSum.html", "classfl_1_1HamacherSum" ], + [ "Maximum", "classfl_1_1Maximum.html", "classfl_1_1Maximum" ], + [ "NormalizedSum", "classfl_1_1NormalizedSum.html", "classfl_1_1NormalizedSum" ], + [ "SNorm", "classfl_1_1SNorm.html", "classfl_1_1SNorm" ], + [ "AlgebraicProduct", "classfl_1_1AlgebraicProduct.html", "classfl_1_1AlgebraicProduct" ], + [ "BoundedDifference", "classfl_1_1BoundedDifference.html", "classfl_1_1BoundedDifference" ], + [ "DrasticProduct", "classfl_1_1DrasticProduct.html", "classfl_1_1DrasticProduct" ], + [ "EinsteinProduct", "classfl_1_1EinsteinProduct.html", "classfl_1_1EinsteinProduct" ], + [ "HamacherProduct", "classfl_1_1HamacherProduct.html", "classfl_1_1HamacherProduct" ], + [ "Minimum", "classfl_1_1Minimum.html", "classfl_1_1Minimum" ], + [ "TNorm", "classfl_1_1TNorm.html", "classfl_1_1TNorm" ], + [ "Operation", "classfl_1_1Operation.html", "classfl_1_1Operation" ], + [ "Antecedent", "classfl_1_1Antecedent.html", "classfl_1_1Antecedent" ], + [ "Consequent", "classfl_1_1Consequent.html", "classfl_1_1Consequent" ], + [ "Expression", "classfl_1_1Expression.html", "classfl_1_1Expression" ], + [ "Proposition", "classfl_1_1Proposition.html", "classfl_1_1Proposition" ], + [ "Operator", "classfl_1_1Operator.html", "classfl_1_1Operator" ], + [ "Rule", "classfl_1_1Rule.html", "classfl_1_1Rule" ], + [ "RuleBlock", "classfl_1_1RuleBlock.html", "classfl_1_1RuleBlock" ], + [ "Accumulated", "classfl_1_1Accumulated.html", "classfl_1_1Accumulated" ], + [ "Bell", "classfl_1_1Bell.html", "classfl_1_1Bell" ], + [ "Constant", "classfl_1_1Constant.html", "classfl_1_1Constant" ], + [ "Discrete", "classfl_1_1Discrete.html", "classfl_1_1Discrete" ], + [ "Function", "classfl_1_1Function.html", "classfl_1_1Function" ], + [ "Gaussian", "classfl_1_1Gaussian.html", "classfl_1_1Gaussian" ], + [ "GaussianProduct", "classfl_1_1GaussianProduct.html", "classfl_1_1GaussianProduct" ], + [ "Linear", "classfl_1_1Linear.html", "classfl_1_1Linear" ], + [ "PiShape", "classfl_1_1PiShape.html", "classfl_1_1PiShape" ], + [ "Ramp", "classfl_1_1Ramp.html", "classfl_1_1Ramp" ], + [ "Rectangle", "classfl_1_1Rectangle.html", "classfl_1_1Rectangle" ], + [ "Sigmoid", "classfl_1_1Sigmoid.html", "classfl_1_1Sigmoid" ], + [ "SigmoidDifference", "classfl_1_1SigmoidDifference.html", "classfl_1_1SigmoidDifference" ], + [ "SigmoidProduct", "classfl_1_1SigmoidProduct.html", "classfl_1_1SigmoidProduct" ], + [ "SShape", "classfl_1_1SShape.html", "classfl_1_1SShape" ], + [ "Term", "classfl_1_1Term.html", "classfl_1_1Term" ], + [ "Thresholded", "classfl_1_1Thresholded.html", "classfl_1_1Thresholded" ], + [ "Trapezoid", "classfl_1_1Trapezoid.html", "classfl_1_1Trapezoid" ], + [ "Triangle", "classfl_1_1Triangle.html", "classfl_1_1Triangle" ], + [ "ZShape", "classfl_1_1ZShape.html", "classfl_1_1ZShape" ], + [ "InputVariable", "classfl_1_1InputVariable.html", "classfl_1_1InputVariable" ], + [ "OutputVariable", "classfl_1_1OutputVariable.html", "classfl_1_1OutputVariable" ], + [ "Variable", "classfl_1_1Variable.html", "classfl_1_1Variable" ] +]; \ No newline at end of file diff --git a/docs/html/namespacemembers.html b/docs/html/namespacemembers.html new file mode 100644 index 0000000..c93a172 --- /dev/null +++ b/docs/html/namespacemembers.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
    +
  • inf +: fl +
  • +
  • nan +: fl +
  • +
  • Op +: fl +
  • +
  • scalar +: fl +
  • +
+
+
+ + + + diff --git a/docs/html/namespacemembers_type.html b/docs/html/namespacemembers_type.html new file mode 100644 index 0000000..db673a9 --- /dev/null +++ b/docs/html/namespacemembers_type.html @@ -0,0 +1,133 @@ + + + + + + +fuzzylite: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
    +
  • Op +: fl +
  • +
  • scalar +: fl +
  • +
+
+
+ + + + diff --git a/docs/html/namespacemembers_vars.html b/docs/html/namespacemembers_vars.html new file mode 100644 index 0000000..9ce5f94 --- /dev/null +++ b/docs/html/namespacemembers_vars.html @@ -0,0 +1,133 @@ + + + + + + +fuzzylite: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
    +
  • inf +: fl +
  • +
  • nan +: fl +
  • +
+
+
+ + + + diff --git a/docs/html/namespaces.html b/docs/html/namespaces.html new file mode 100644 index 0000000..2c4920e --- /dev/null +++ b/docs/html/namespaces.html @@ -0,0 +1,127 @@ + + + + + + +fuzzylite: Namespace List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Namespace List
+
+
+
Here is a list of all namespaces with brief descriptions:
+ + +
\Nfl
+
+
+
+ + + + diff --git a/docs/html/namespaces.js b/docs/html/namespaces.js new file mode 100644 index 0000000..1a587f1 --- /dev/null +++ b/docs/html/namespaces.js @@ -0,0 +1,4 @@ +var namespaces = +[ + [ "fl", "namespacefl.html", null ] +]; \ No newline at end of file diff --git a/docs/html/nav_f.png b/docs/html/nav_f.png new file mode 100644 index 0000000..72a58a5 Binary files /dev/null and b/docs/html/nav_f.png differ diff --git a/docs/html/nav_g.png b/docs/html/nav_g.png new file mode 100644 index 0000000..9681f15 Binary files /dev/null and b/docs/html/nav_g.png differ diff --git a/docs/html/nav_h.png b/docs/html/nav_h.png new file mode 100644 index 0000000..33389b1 Binary files /dev/null and b/docs/html/nav_h.png differ diff --git a/docs/html/navtree.css b/docs/html/navtree.css new file mode 100644 index 0000000..41a9cb9 --- /dev/null +++ b/docs/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 250px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/docs/html/navtree.js b/docs/html/navtree.js new file mode 100644 index 0000000..67bd217 --- /dev/null +++ b/docs/html/navtree.js @@ -0,0 +1,538 @@ +var NAVTREE = +[ + [ "fuzzylite", "index.html", [ + [ "Namespaces", null, [ + [ "Namespace List", "namespaces.html", "namespaces" ], + [ "Namespace Members", "namespacemembers.html", [ + [ "All", "namespacemembers.html", null ], + [ "Variables", "namespacemembers_vars.html", null ], + [ "Typedefs", "namespacemembers_type.html", null ] + ] ] + ] ], + [ "Classes", null, [ + [ "Class List", "annotated.html", "annotated" ], + [ "Class Index", "classes.html", null ], + [ "Class Hierarchy", "hierarchy.html", "hierarchy" ], + [ "Class Members", "functions.html", [ + [ "All", "functions.html", "functions_dup" ], + [ "Functions", "functions_func.html", "functions_func" ], + [ "Variables", "functions_vars.html", null ], + [ "Typedefs", "functions_type.html", null ] + ] ] + ] ], + [ "Files", null, [ + [ "File List", "files.html", "files" ], + [ "File Members", "globals.html", [ + [ "All", "globals.html", null ], + [ "Functions", "globals_func.html", null ], + [ "Macros", "globals_defs.html", null ] + ] ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"Accumulated_8cpp.html", +"classfl_1_1Accumulated.html#a0ef8d87d708683434bde5e9509cab2ae", +"classfl_1_1Extremely.html#ab3f7c2b91e53db88e1e61e79ebd301cf", +"classfl_1_1IntegralDefuzzifier.html#ae95e4a62f1443fd56e6b0a6aa72ae7c9", +"classfl_1_1RuleBlock.html#ae61d6c0e0abf753e8f2387dbeb9b96f8", +"classfl_1_1fuzzylite.html#ac45078e9cf4b2bd72550e39172bc6b4d" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does not work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + var imgNode = document.createElement("img"); + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.width = 16; + imgNode.height = 22; + imgNode.border = 0; + if (node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.src = node.relpath+"ftv2pnode.png"; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft' || + anchor.parent().attr('class')=='fieldtype' || + anchor.parent().is(':header')) + { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = $(location).attr('hash'); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } + gotoAnchor(anchor,aname,false); +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } else if (!animationInProgress) { + $('#doc-content').scrollTop(0); + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + navTo(o,toroot,window.location.hash,relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/docs/html/navtreeindex0.js b/docs/html/navtreeindex0.js new file mode 100644 index 0000000..c7a89a1 --- /dev/null +++ b/docs/html/navtreeindex0.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX0 = +{ +"Accumulated_8cpp.html":[2,0,1,6,0], +"Accumulated_8h.html":[2,0,0,6,0], +"Accumulated_8h_source.html":[2,0,0,6,0], +"AlgebraicProduct_8cpp.html":[2,0,1,4,1,0], +"AlgebraicProduct_8h.html":[2,0,0,4,1,0], +"AlgebraicProduct_8h_source.html":[2,0,0,4,1,0], +"AlgebraicSum_8cpp.html":[2,0,1,4,0,0], +"AlgebraicSum_8h.html":[2,0,0,4,0,0], +"AlgebraicSum_8h_source.html":[2,0,0,4,0,0], +"Antecedent_8cpp.html":[2,0,1,5,0], +"Antecedent_8h.html":[2,0,0,5,0], +"Antecedent_8h_source.html":[2,0,0,5,0], +"Any_8cpp.html":[2,0,1,2,0], +"Any_8h.html":[2,0,0,2,0], +"Any_8h_source.html":[2,0,0,2,0], +"Bell_8cpp.html":[2,0,1,6,1], +"Bell_8h.html":[2,0,0,6,1], +"Bell_8h_source.html":[2,0,0,6,1], +"Bisector_8cpp.html":[2,0,1,0,0], +"Bisector_8h.html":[2,0,0,0,0], +"Bisector_8h_source.html":[2,0,0,0,0], +"BoundedDifference_8cpp.html":[2,0,1,4,1,1], +"BoundedDifference_8h.html":[2,0,0,4,1,1], +"BoundedDifference_8h_source.html":[2,0,0,4,1,1], +"BoundedSum_8cpp.html":[2,0,1,4,0,1], +"BoundedSum_8h.html":[2,0,0,4,0,1], +"BoundedSum_8h_source.html":[2,0,0,4,0,1], +"Centroid_8cpp.html":[2,0,1,0,1], +"Centroid_8h.html":[2,0,0,0,1], +"Centroid_8h_source.html":[2,0,0,0,1], +"Consequent_8cpp.html":[2,0,1,5,1], +"Consequent_8h.html":[2,0,0,5,1], +"Consequent_8h_source.html":[2,0,0,5,1], +"Console_8cpp.html":[2,0,1,8], +"Console_8h.html":[2,0,0,8], +"Console_8h_source.html":[2,0,0,8], +"Constant_8cpp.html":[2,0,1,6,2], +"Constant_8h.html":[2,0,0,6,2], +"Constant_8h_source.html":[2,0,0,6,2], +"CppExporter_8cpp.html":[2,0,1,3,0], +"CppExporter_8h.html":[2,0,0,3,0], +"CppExporter_8h_source.html":[2,0,0,3,0], +"DefuzzifierFactory_8cpp.html":[2,0,1,1,0], +"DefuzzifierFactory_8h.html":[2,0,0,1,0], +"DefuzzifierFactory_8h_source.html":[2,0,0,1,0], +"Defuzzifier_8h.html":[2,0,0,0,2], +"Defuzzifier_8h_source.html":[2,0,0,0,2], +"Discrete_8cpp.html":[2,0,1,6,3], +"Discrete_8h.html":[2,0,0,6,3], +"Discrete_8h_source.html":[2,0,0,6,3], +"DrasticProduct_8cpp.html":[2,0,1,4,1,2], +"DrasticProduct_8h.html":[2,0,0,4,1,2], +"DrasticProduct_8h_source.html":[2,0,0,4,1,2], +"DrasticSum_8cpp.html":[2,0,1,4,0,2], +"DrasticSum_8h.html":[2,0,0,4,0,2], +"DrasticSum_8h_source.html":[2,0,0,4,0,2], +"EinsteinProduct_8cpp.html":[2,0,1,4,1,3], +"EinsteinProduct_8h.html":[2,0,0,4,1,3], +"EinsteinProduct_8h_source.html":[2,0,0,4,1,3], +"EinsteinSum_8cpp.html":[2,0,1,4,0,3], +"EinsteinSum_8h.html":[2,0,0,4,0,3], +"EinsteinSum_8h_source.html":[2,0,0,4,0,3], +"Engine_8cpp.html":[2,0,1,9], +"Engine_8h.html":[2,0,0,9], +"Engine_8h_source.html":[2,0,0,9], +"Exception_8cpp.html":[2,0,1,10], +"Exception_8h.html":[2,0,0,10], +"Exception_8h_source.html":[2,0,0,10], +"Exporter_8h.html":[2,0,0,3,1], +"Exporter_8h_source.html":[2,0,0,3,1], +"Expression_8cpp.html":[2,0,1,5,2], +"Expression_8h.html":[2,0,0,5,2], +"Expression_8h_source.html":[2,0,0,5,2], +"Extremely_8cpp.html":[2,0,1,2,1], +"Extremely_8h.html":[2,0,0,2,1], +"Extremely_8h_source.html":[2,0,0,2,1], +"FactoryManager_8cpp.html":[2,0,1,1,2], +"FactoryManager_8h.html":[2,0,0,1,2], +"FactoryManager_8h_source.html":[2,0,0,1,2], +"Factory_8cpp.html":[2,0,1,1,1], +"Factory_8h.html":[2,0,0,1,1], +"Factory_8h_source.html":[2,0,0,1,1], +"FclExporter_8cpp.html":[2,0,1,3,1], +"FclExporter_8h.html":[2,0,0,3,2], +"FclExporter_8h_source.html":[2,0,0,3,2], +"FclImporter_8cpp.html":[2,0,1,3,2], +"FclImporter_8h.html":[2,0,0,3,3], +"FclImporter_8h_source.html":[2,0,0,3,3], +"FisExporter_8cpp.html":[2,0,1,3,3], +"FisExporter_8h.html":[2,0,0,3,4], +"FisExporter_8h_source.html":[2,0,0,3,4], +"FisImporter_8cpp.html":[2,0,1,3,4], +"FisImporter_8h.html":[2,0,0,3,5], +"FisImporter_8h_source.html":[2,0,0,3,5], +"FldExporter_8cpp.html":[2,0,1,3,5], +"FldExporter_8h.html":[2,0,0,3,6], +"FldExporter_8h_source.html":[2,0,0,3,6], +"FllExporter_8cpp.html":[2,0,1,3,6], +"FllExporter_8h.html":[2,0,0,3,7], +"FllExporter_8h_source.html":[2,0,0,3,7], +"FllImporter_8cpp.html":[2,0,1,3,7], +"FllImporter_8h.html":[2,0,0,3,8], +"FllImporter_8h_source.html":[2,0,0,3,8], +"Function_8cpp.html":[2,0,1,6,4], +"Function_8h.html":[2,0,0,6,4], +"Function_8h_source.html":[2,0,0,6,4], +"GaussianProduct_8cpp.html":[2,0,1,6,6], +"GaussianProduct_8h.html":[2,0,0,6,6], +"GaussianProduct_8h_source.html":[2,0,0,6,6], +"Gaussian_8cpp.html":[2,0,1,6,5], +"Gaussian_8h.html":[2,0,0,6,5], +"Gaussian_8h_source.html":[2,0,0,6,5], +"HamacherProduct_8cpp.html":[2,0,1,4,1,4], +"HamacherProduct_8h.html":[2,0,0,4,1,4], +"HamacherProduct_8h_source.html":[2,0,0,4,1,4], +"HamacherSum_8cpp.html":[2,0,1,4,0,4], +"HamacherSum_8h.html":[2,0,0,4,0,4], +"HamacherSum_8h_source.html":[2,0,0,4,0,4], +"Headers_8h.html":[2,0,0,12], +"Headers_8h_source.html":[2,0,0,12], +"HedgeFactory_8cpp.html":[2,0,1,1,3], +"HedgeFactory_8h.html":[2,0,0,1,3], +"HedgeFactory_8h_source.html":[2,0,0,1,3], +"Hedge_8h.html":[2,0,0,2,2], +"Hedge_8h_source.html":[2,0,0,2,2], +"Importer_8h.html":[2,0,0,3,9], +"Importer_8h_source.html":[2,0,0,3,9], +"InputVariable_8cpp.html":[2,0,1,7,0], +"InputVariable_8h.html":[2,0,0,7,0], +"InputVariable_8h_source.html":[2,0,0,7,0], +"IntegralDefuzzifier_8cpp.html":[2,0,1,0,2], +"IntegralDefuzzifier_8h.html":[2,0,0,0,3], +"IntegralDefuzzifier_8h_source.html":[2,0,0,0,3], +"JavaExporter_8cpp.html":[2,0,1,3,8], +"JavaExporter_8h.html":[2,0,0,3,10], +"JavaExporter_8h_source.html":[2,0,0,3,10], +"LargestOfMaximum_8cpp.html":[2,0,1,0,3], +"LargestOfMaximum_8h.html":[2,0,0,0,4], +"LargestOfMaximum_8h_source.html":[2,0,0,0,4], +"Linear_8cpp.html":[2,0,1,6,7], +"Linear_8h.html":[2,0,0,6,7], +"Linear_8h_source.html":[2,0,0,6,7], +"Maximum_8cpp.html":[2,0,1,4,0,5], +"Maximum_8h.html":[2,0,0,4,0,5], +"Maximum_8h_source.html":[2,0,0,4,0,5], +"MeanOfMaximum_8cpp.html":[2,0,1,0,4], +"MeanOfMaximum_8h.html":[2,0,0,0,5], +"MeanOfMaximum_8h_source.html":[2,0,0,0,5], +"Minimum_8cpp.html":[2,0,1,4,1,5], +"Minimum_8h.html":[2,0,0,4,1,5], +"Minimum_8h_source.html":[2,0,0,4,1,5], +"Norm_8h.html":[2,0,0,4,2], +"Norm_8h_source.html":[2,0,0,4,2], +"NormalizedSum_8cpp.html":[2,0,1,4,0,6], +"NormalizedSum_8h.html":[2,0,0,4,0,6], +"NormalizedSum_8h_source.html":[2,0,0,4,0,6], +"Not_8cpp.html":[2,0,1,2,2], +"Not_8h.html":[2,0,0,2,3], +"Not_8h_source.html":[2,0,0,2,3], +"Operation_8cpp.html":[2,0,1,13], +"Operation_8h.html":[2,0,0,13], +"Operation_8h.html#a204e02abcb4377f336a7b2af450992ac":[2,0,0,13,1], +"Operation_8h_source.html":[2,0,0,13], +"OutputVariable_8cpp.html":[2,0,1,7,1], +"OutputVariable_8h.html":[2,0,0,7,1], +"OutputVariable_8h_source.html":[2,0,0,7,1], +"PiShape_8cpp.html":[2,0,1,6,8], +"PiShape_8h.html":[2,0,0,6,8], +"PiShape_8h_source.html":[2,0,0,6,8], +"Ramp_8cpp.html":[2,0,1,6,9], +"Ramp_8h.html":[2,0,0,6,9], +"Ramp_8h_source.html":[2,0,0,6,9], +"Rectangle_8cpp.html":[2,0,1,6,10], +"Rectangle_8h.html":[2,0,0,6,10], +"Rectangle_8h_source.html":[2,0,0,6,10], +"RuleBlock_8cpp.html":[2,0,1,5,4], +"RuleBlock_8h.html":[2,0,0,5,4], +"RuleBlock_8h_source.html":[2,0,0,5,4], +"Rule_8cpp.html":[2,0,1,5,3], +"Rule_8h.html":[2,0,0,5,3], +"Rule_8h_source.html":[2,0,0,5,3], +"SNormFactory_8cpp.html":[2,0,1,1,4], +"SNormFactory_8h.html":[2,0,0,1,4], +"SNormFactory_8h_source.html":[2,0,0,1,4], +"SNorm_8h.html":[2,0,0,4,3], +"SNorm_8h_source.html":[2,0,0,4,3], +"SShape_8cpp.html":[2,0,1,6,14], +"SShape_8h.html":[2,0,0,6,14], +"SShape_8h_source.html":[2,0,0,6,14], +"Seldom_8cpp.html":[2,0,1,2,3], +"Seldom_8h.html":[2,0,0,2,4], +"Seldom_8h_source.html":[2,0,0,2,4], +"SigmoidDifference_8cpp.html":[2,0,1,6,12], +"SigmoidDifference_8h.html":[2,0,0,6,12], +"SigmoidDifference_8h_source.html":[2,0,0,6,12], +"SigmoidProduct_8cpp.html":[2,0,1,6,13], +"SigmoidProduct_8h.html":[2,0,0,6,13], +"SigmoidProduct_8h_source.html":[2,0,0,6,13], +"Sigmoid_8cpp.html":[2,0,1,6,11], +"Sigmoid_8h.html":[2,0,0,6,11], +"Sigmoid_8h_source.html":[2,0,0,6,11], +"SmallestOfMaximum_8cpp.html":[2,0,1,0,5], +"SmallestOfMaximum_8h.html":[2,0,0,0,6], +"SmallestOfMaximum_8h_source.html":[2,0,0,0,6], +"Somewhat_8cpp.html":[2,0,1,2,4], +"Somewhat_8h.html":[2,0,0,2,5], +"Somewhat_8h_source.html":[2,0,0,2,5], +"TNormFactory_8cpp.html":[2,0,1,1,6], +"TNormFactory_8h.html":[2,0,0,1,6], +"TNormFactory_8h_source.html":[2,0,0,1,6], +"TNorm_8h.html":[2,0,0,4,4], +"TNorm_8h_source.html":[2,0,0,4,4], +"TermFactory_8cpp.html":[2,0,1,1,5], +"TermFactory_8h.html":[2,0,0,1,5], +"TermFactory_8h_source.html":[2,0,0,1,5], +"Term_8cpp.html":[2,0,1,6,15], +"Term_8h.html":[2,0,0,6,15], +"Term_8h_source.html":[2,0,0,6,15], +"Thresholded_8cpp.html":[2,0,1,6,16], +"Thresholded_8h.html":[2,0,0,6,16], +"Thresholded_8h_source.html":[2,0,0,6,16], +"Trapezoid_8cpp.html":[2,0,1,6,17], +"Trapezoid_8h.html":[2,0,0,6,17], +"Trapezoid_8h_source.html":[2,0,0,6,17], +"Triangle_8cpp.html":[2,0,1,6,18], +"Triangle_8h.html":[2,0,0,6,18], +"Triangle_8h_source.html":[2,0,0,6,18], +"Tsukamoto_8cpp.html":[2,0,1,0,6], +"Tsukamoto_8h.html":[2,0,0,0,7], +"Tsukamoto_8h_source.html":[2,0,0,0,7], +"Variable_8cpp.html":[2,0,1,7,2], +"Variable_8h.html":[2,0,0,7,2], +"Variable_8h_source.html":[2,0,0,7,2], +"Very_8cpp.html":[2,0,1,2,5], +"Very_8h.html":[2,0,0,2,6], +"Very_8h_source.html":[2,0,0,2,6], +"WeightedAverage_8cpp.html":[2,0,1,0,7], +"WeightedAverage_8h.html":[2,0,0,0,8], +"WeightedAverage_8h_source.html":[2,0,0,0,8], +"WeightedSum_8cpp.html":[2,0,1,0,8], +"WeightedSum_8h.html":[2,0,0,0,9], +"WeightedSum_8h_source.html":[2,0,0,0,9], +"ZShape_8cpp.html":[2,0,1,6,19], +"ZShape_8h.html":[2,0,0,6,19], +"ZShape_8h_source.html":[2,0,0,6,19], +"annotated.html":[1,0], +"classes.html":[1,1], +"classfl_1_1Accumulated.html":[1,0,0,63], +"classfl_1_1Accumulated.html#a07ed6f18e909e52e788e1355b4a4f954":[1,0,0,63,1], +"classfl_1_1Accumulated.html#a0b2857802f93cc3d212d28aa2253b28a":[1,0,0,63,10] +}; diff --git a/docs/html/navtreeindex1.js b/docs/html/navtreeindex1.js new file mode 100644 index 0000000..feae108 --- /dev/null +++ b/docs/html/navtreeindex1.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX1 = +{ +"classfl_1_1Accumulated.html#a0ef8d87d708683434bde5e9509cab2ae":[1,0,0,63,18], +"classfl_1_1Accumulated.html#a1f9ebe6cd3e1d485cb02c2bdc966c4e0":[1,0,0,63,6], +"classfl_1_1Accumulated.html#a24a5d995ff0ba0c18e65ce11d8298aee":[1,0,0,63,13], +"classfl_1_1Accumulated.html#a2803372b6a40302d26f333cfb077485f":[1,0,0,63,0], +"classfl_1_1Accumulated.html#a282298974d6e86153e28dedf8f10d863":[1,0,0,63,23], +"classfl_1_1Accumulated.html#a336f8ce1a931c18e67f157ce774080f8":[1,0,0,63,16], +"classfl_1_1Accumulated.html#a35cbbe5cfe41d3e0fc8518878562c4ae":[1,0,0,63,22], +"classfl_1_1Accumulated.html#a377dd3dbdcab84eaf2b7017f97c0dafc":[1,0,0,63,2], +"classfl_1_1Accumulated.html#a4e466f3818b4107b206d069ee7bb96b3":[1,0,0,63,12], +"classfl_1_1Accumulated.html#a50d93d91e226d8b791ba47d55c693006":[1,0,0,63,20], +"classfl_1_1Accumulated.html#a5b68d40eea8ee151bdd934a3451b6bc6":[1,0,0,63,14], +"classfl_1_1Accumulated.html#a5bdf5ea19e6cecc1641812f2f2265079":[1,0,0,63,19], +"classfl_1_1Accumulated.html#a62b067a72e5002d0306cf579371a341b":[1,0,0,63,17], +"classfl_1_1Accumulated.html#a6e09df7fc6458109639270fef538113e":[1,0,0,63,5], +"classfl_1_1Accumulated.html#a7f68b0eb8f8f0b2b190dc8df9d14d202":[1,0,0,63,11], +"classfl_1_1Accumulated.html#a87c58504eb0f9c015d39ef52830e417c":[1,0,0,63,21], +"classfl_1_1Accumulated.html#aa6f958cd1f0d0388b8a826bb05ccb589":[1,0,0,63,7], +"classfl_1_1Accumulated.html#ab71e90489aca781218d76a89750b8954":[1,0,0,63,8], +"classfl_1_1Accumulated.html#ade66c6bfa57957cfb7863196977fcf79":[1,0,0,63,4], +"classfl_1_1Accumulated.html#ae0ab9364938b0b5fb65f7b851cdcb7b0":[1,0,0,63,9], +"classfl_1_1Accumulated.html#aeaad3e5de094846a4315fe0f681893d7":[1,0,0,63,3], +"classfl_1_1Accumulated.html#afd7642b314f4fef57c219dcc002f89de":[1,0,0,63,15], +"classfl_1_1AlgebraicProduct.html":[1,0,0,48], +"classfl_1_1AlgebraicProduct.html#a798f75aa2e6d8e777dbc76ada79eea07":[1,0,0,48,1], +"classfl_1_1AlgebraicProduct.html#add0dde390da48895eb8cb944a12fad95":[1,0,0,48,2], +"classfl_1_1AlgebraicProduct.html#afc4c7bb507394d91444ef8e7c882ec94":[1,0,0,48,0], +"classfl_1_1AlgebraicSum.html":[1,0,0,40], +"classfl_1_1AlgebraicSum.html#a58ebd1085298edae70e83c80cd941998":[1,0,0,40,0], +"classfl_1_1AlgebraicSum.html#a7b3658b08bdb4eb8dd15b136ea9b49fb":[1,0,0,40,2], +"classfl_1_1AlgebraicSum.html#ac033b9566fb87b54239a8b0317fac0eb":[1,0,0,40,1], +"classfl_1_1Antecedent.html":[1,0,0,56], +"classfl_1_1Antecedent.html#a06d8dd233ec6458c52bd8bbc45d16c2c":[1,0,0,56,10], +"classfl_1_1Antecedent.html#a12119d5422525d7ed3e284def2dea085":[1,0,0,56,2], +"classfl_1_1Antecedent.html#a262a8155a7c4553651a2a5da1883c75f":[1,0,0,56,5], +"classfl_1_1Antecedent.html#a56ee133cd72dba23a17c366e99a0e863":[1,0,0,56,9], +"classfl_1_1Antecedent.html#a589174fb0b4068f6d747cf4edf4899fe":[1,0,0,56,1], +"classfl_1_1Antecedent.html#a640d2a6ddf95888caae813c6b52b888e":[1,0,0,56,6], +"classfl_1_1Antecedent.html#a659603cb3f1e1d4600ac683115dd9214":[1,0,0,56,0], +"classfl_1_1Antecedent.html#a7af43cf7a789faecc8d5f5af0b979826":[1,0,0,56,7], +"classfl_1_1Antecedent.html#a891c6666c7ac4ee3920ce9984cf4f661":[1,0,0,56,4], +"classfl_1_1Antecedent.html#a8e2953d8665346ae849ae4e43a3805e2":[1,0,0,56,3], +"classfl_1_1Antecedent.html#ae878e411cf3694a1eb35f1d5ce66eff8":[1,0,0,56,8], +"classfl_1_1Any.html":[1,0,0,21], +"classfl_1_1Any.html#a814b592e793aebed249ec86305f52d70":[1,0,0,21,2], +"classfl_1_1Any.html#a82e3e007681db89fe0a15a18967e78ec":[1,0,0,21,1], +"classfl_1_1Any.html#af944ba3b9262145b414c3df6eb2538d9":[1,0,0,21,0], +"classfl_1_1Bell.html":[1,0,0,64], +"classfl_1_1Bell.html#a1f597089a0d16d2156423972bb99fd86":[1,0,0,64,5], +"classfl_1_1Bell.html#a5130acddf2553e82e1783ba4fa5cf9bc":[1,0,0,64,0], +"classfl_1_1Bell.html#a5e625b1b3d23632a4015dd734adddb6f":[1,0,0,64,9], +"classfl_1_1Bell.html#a6376f7a04d0f9eb34570df2e7654185a":[1,0,0,64,8], +"classfl_1_1Bell.html#a70b83dc932935491affbfb6cce75f899":[1,0,0,64,1], +"classfl_1_1Bell.html#a712423c00763794af97e587b9b7a80e3":[1,0,0,64,14], +"classfl_1_1Bell.html#a736e86bd14209b408550319acec84f4d":[1,0,0,64,2], +"classfl_1_1Bell.html#a790113e260b56c8157dae26563c93047":[1,0,0,64,4], +"classfl_1_1Bell.html#a8dde2f9d6b81e8db85ba0e8b31af33a8":[1,0,0,64,15], +"classfl_1_1Bell.html#a960a043c5b9486f4beaee839e08a18ed":[1,0,0,64,16], +"classfl_1_1Bell.html#aa9fa72582f52c5f77199255fbb7eb143":[1,0,0,64,11], +"classfl_1_1Bell.html#aae77173e96178a51456728aac257cf20":[1,0,0,64,6], +"classfl_1_1Bell.html#ac603bb9f288f046396065531002c2289":[1,0,0,64,13], +"classfl_1_1Bell.html#acb216a3c64f828863376dc7e54fb6bf5":[1,0,0,64,7], +"classfl_1_1Bell.html#acb2dd9453a7a4d057b68209d217ce15a":[1,0,0,64,10], +"classfl_1_1Bell.html#ae12d623035391bfa9558a5dade284906":[1,0,0,64,3], +"classfl_1_1Bell.html#af04aa0bb8c014bb9dbe148e670029ac4":[1,0,0,64,12], +"classfl_1_1Bisector.html":[1,0,0,1], +"classfl_1_1Bisector.html#a2f6e48aa8878a1f1c1151567508439b0":[1,0,0,1,3], +"classfl_1_1Bisector.html#a41f7bc1425d65fcbb0ecb174a293a6f9":[1,0,0,1,0], +"classfl_1_1Bisector.html#ad2e056a53f33840bc3ed9f8ac1e4f6dc":[1,0,0,1,1], +"classfl_1_1Bisector.html#ad621b50c85866eb4f5c5c7cdbe6e186b":[1,0,0,1,2], +"classfl_1_1BoundedDifference.html":[1,0,0,49], +"classfl_1_1BoundedDifference.html#a2935d9b24208f63851852756656957d9":[1,0,0,49,0], +"classfl_1_1BoundedDifference.html#a4c9841789dd22a3a9ead2a4b9abc037b":[1,0,0,49,1], +"classfl_1_1BoundedDifference.html#a6f415a9da6922d3e8ba65bc26e79ed45":[1,0,0,49,2], +"classfl_1_1BoundedSum.html":[1,0,0,41], +"classfl_1_1BoundedSum.html#a7776c5491977e8550a3d23088b08ade7":[1,0,0,41,0], +"classfl_1_1BoundedSum.html#ab3db0d46bd3286255341f71d4d31f49f":[1,0,0,41,1], +"classfl_1_1BoundedSum.html#ade0d52fa377abd3a26cfe6c09ced0fed":[1,0,0,41,2], +"classfl_1_1Centroid.html":[1,0,0,2], +"classfl_1_1Centroid.html#a01d2bf1ac98a8a8d2b890cb93da10948":[1,0,0,2,0], +"classfl_1_1Centroid.html#a1586f46937ae6e30619b3701da77ad6d":[1,0,0,2,2], +"classfl_1_1Centroid.html#a5f6034e17f3db370035e538f2e91ac67":[1,0,0,2,1], +"classfl_1_1Centroid.html#aadcf7c0e9636ef902bf72de806795eae":[1,0,0,2,3], +"classfl_1_1Consequent.html":[1,0,0,57], +"classfl_1_1Consequent.html#a00e74219c15cd773f1574a7bbd43bf09":[1,0,0,57,0], +"classfl_1_1Consequent.html#a1709f58b4dffc2669b8a2ca1b22b3427":[1,0,0,57,2], +"classfl_1_1Consequent.html#a1868f2235ddddf5c3a55128d6816f8bd":[1,0,0,57,4], +"classfl_1_1Consequent.html#a5bec22a386abfa9de6f22f9697933cec":[1,0,0,57,5], +"classfl_1_1Consequent.html#a69b0e225945376db67cfb288206e2d3e":[1,0,0,57,1], +"classfl_1_1Consequent.html#aa568ed0bdc9deeec35ba44e5f183c059":[1,0,0,57,3], +"classfl_1_1Consequent.html#afa623758e3674ea30a3b462dd9f26118":[1,0,0,57,6], +"classfl_1_1Console.html":[1,0,0,0], +"classfl_1_1Console.html#a1fb5194708c34f694c0ad6c598833dbe":[1,0,0,0,12], +"classfl_1_1Console.html#a374934d6528911c7c70bfdb5a3fae470":[1,0,0,0,11], +"classfl_1_1Console.html#a3dc66beb5d7b32ae2396077ddd0596d0":[1,0,0,0,5], +"classfl_1_1Console.html#a42d877375cee8afdc38eabaadd6f3342":[1,0,0,0,0], +"classfl_1_1Console.html#a45d009d7a9d01765bacba57daaa39664":[1,0,0,0,10], +"classfl_1_1Console.html#a6d90c2b31cbe4657d464fcbd2ce6d863":[1,0,0,0,1], +"classfl_1_1Console.html#a948fd183ea62decbd166af3d98a27b68":[1,0,0,0,6], +"classfl_1_1Console.html#aab4578da4e63f52d190e92a14059e371":[1,0,0,0,9], +"classfl_1_1Console.html#ab75b47c714606140a237e820c395062d":[1,0,0,0,3], +"classfl_1_1Console.html#ace6178ad0a280b0ca8717ba5f6ed20d5":[1,0,0,0,4], +"classfl_1_1Console.html#acf42edfb62782fdbc2ebeb0765947144":[1,0,0,0,13], +"classfl_1_1Console.html#ad02a59bfac8e4c3c4972ef24485b486e":[1,0,0,0,2], +"classfl_1_1Console.html#ad943273bdaf462b24899b991ec7d18df":[1,0,0,0,8], +"classfl_1_1Console.html#af62f7d4a453962b9d6ee99071ff12305":[1,0,0,0,14], +"classfl_1_1Console.html#afa0ff04c5f0afb8eb8ff94f62ae2c453":[1,0,0,0,15], +"classfl_1_1Console.html#afb3c16a3e549e43207d672f25db3e4c5":[1,0,0,0,7], +"classfl_1_1Constant.html":[1,0,0,65], +"classfl_1_1Constant.html#a046ec6627286462ec829570f95759545":[1,0,0,65,1], +"classfl_1_1Constant.html#a06e65296b22772b0c7f6f800e287ef5e":[1,0,0,65,9], +"classfl_1_1Constant.html#a29a7ced3d9b7b372b1364942afe0e6c2":[1,0,0,65,0], +"classfl_1_1Constant.html#a79dcb419cca8b8ae9fe367ce7b6f15df":[1,0,0,65,4], +"classfl_1_1Constant.html#aab50f02de66ba9ae804d0a38a4e9e0b2":[1,0,0,65,8], +"classfl_1_1Constant.html#ab1df75b525300e26f3bfdd16dc3c8bd2":[1,0,0,65,7], +"classfl_1_1Constant.html#ab223859f8fed5eb28c311cee7f2bd7b5":[1,0,0,65,2], +"classfl_1_1Constant.html#ac6835a40aededed1a361cc2d6612828b":[1,0,0,65,5], +"classfl_1_1Constant.html#ae6af66c02a42a87630447148236feb70":[1,0,0,65,10], +"classfl_1_1Constant.html#aeb0f191cb82182bfb3ca5b925c38eb6d":[1,0,0,65,3], +"classfl_1_1Constant.html#af5b789b84ac38c739e29bd94c75452d4":[1,0,0,65,6], +"classfl_1_1CppExporter.html":[1,0,0,28], +"classfl_1_1CppExporter.html#a2686897fc63df2046e4d6d0c6c6e5625":[1,0,0,28,0], +"classfl_1_1CppExporter.html#a2d0088f77d76ed43583bd6e0397172d0":[1,0,0,28,7], +"classfl_1_1CppExporter.html#a322a3988ae5979f49151dcc9936ca2b6":[1,0,0,28,8], +"classfl_1_1CppExporter.html#a4470fb4b7889c9f6c8171d98a149d5f3":[1,0,0,28,1], +"classfl_1_1CppExporter.html#a47f209db0dfed0a607e776ac247c0734":[1,0,0,28,11], +"classfl_1_1CppExporter.html#a76425dec96f525c34e1d866251691083":[1,0,0,28,4], +"classfl_1_1CppExporter.html#a87230aba083ceaf79039f019aaf522ef":[1,0,0,28,3], +"classfl_1_1CppExporter.html#abd3167e16610d23bc8de551a5a5153b2":[1,0,0,28,5], +"classfl_1_1CppExporter.html#ac4e09fd612c8f44efd50567721d075d2":[1,0,0,28,9], +"classfl_1_1CppExporter.html#acebe9d5514eef5082fe159b9d5227f5a":[1,0,0,28,6], +"classfl_1_1CppExporter.html#acf9ce2274bf72448e53d8958a2259087":[1,0,0,28,2], +"classfl_1_1CppExporter.html#afd018e5e813a1bc846dcbf13b6ce1ccf":[1,0,0,28,10], +"classfl_1_1Defuzzifier.html":[1,0,0,3], +"classfl_1_1Defuzzifier.html#a511b8deb0f5e67855cd7973a42f0e199":[1,0,0,3,2], +"classfl_1_1Defuzzifier.html#a667711a04b2083365ed78a1a2afc99b8":[1,0,0,3,0], +"classfl_1_1Defuzzifier.html#a9c3115230b182b30f7a46aa2876e9662":[1,0,0,3,1], +"classfl_1_1Defuzzifier.html#a9d339cf9c564154d85e27320a0ac8507":[1,0,0,3,3], +"classfl_1_1DefuzzifierFactory.html":[1,0,0,13], +"classfl_1_1DefuzzifierFactory.html#a30781e202b3392bf24054d7b204de206":[1,0,0,13,0], +"classfl_1_1DefuzzifierFactory.html#af20e6ca540bf6f6b7f121f53a41645c3":[1,0,0,13,1], +"classfl_1_1Discrete.html":[1,0,0,66], +"classfl_1_1Discrete.html#a0b4cd4a9ab92864e89482d7705e0e173":[1,0,0,66,13], +"classfl_1_1Discrete.html#a4faa32776cbb19cd9b1b9d9b76e3a043":[1,0,0,66,7], +"classfl_1_1Discrete.html#a5f595f95b1b25eb4b898504d61e78128":[1,0,0,66,2], +"classfl_1_1Discrete.html#a7b172dd91676e087381da2bb72f24ab5":[1,0,0,66,5], +"classfl_1_1Discrete.html#a84cf30021a29ecb406b7c01b743aa54f":[1,0,0,66,11], +"classfl_1_1Discrete.html#a880c08615cd8aca2e66b02ba7eaa80bc":[1,0,0,66,6], +"classfl_1_1Discrete.html#a97b4d0a07be68da9213354537a28d91a":[1,0,0,66,12], +"classfl_1_1Discrete.html#aa775899affa4f5ce1c5fe590db4fce75":[1,0,0,66,8], +"classfl_1_1Discrete.html#ab1e99bcda141227f8fa5c91d7f1cbae9":[1,0,0,66,0], +"classfl_1_1Discrete.html#ab83fb843c4953eb9e31d8da2b45511e1":[1,0,0,66,9], +"classfl_1_1Discrete.html#add3bf20449f16b386fae2cd933f649f6":[1,0,0,66,1], +"classfl_1_1Discrete.html#ae258f2ba052fd7c18c471e3b52992e5f":[1,0,0,66,10], +"classfl_1_1Discrete.html#ae97f1963a45e12bbe4aac3dd0abe7c9c":[1,0,0,66,4], +"classfl_1_1Discrete.html#af129934d2b820f343c4918a556f13d13":[1,0,0,66,3], +"classfl_1_1DrasticProduct.html":[1,0,0,50], +"classfl_1_1DrasticProduct.html#a0d21f5ba71a20178afeccb073fc42805":[1,0,0,50,0], +"classfl_1_1DrasticProduct.html#a3ba3bf3ceb8bdca67887d7a391c24bf0":[1,0,0,50,2], +"classfl_1_1DrasticProduct.html#a8229dba8e0892e727d166277534c4998":[1,0,0,50,1], +"classfl_1_1DrasticSum.html":[1,0,0,42], +"classfl_1_1DrasticSum.html#acb789b71a2ef7a1cdd955e4bd623e537":[1,0,0,42,0], +"classfl_1_1DrasticSum.html#ae5540e7817df1c392ae35ecd2b27d2e2":[1,0,0,42,1], +"classfl_1_1DrasticSum.html#af41c2612de772b60e85486719924a19a":[1,0,0,42,2], +"classfl_1_1EinsteinProduct.html":[1,0,0,51], +"classfl_1_1EinsteinProduct.html#a42d8f66c7082903157291f248ce19016":[1,0,0,51,0], +"classfl_1_1EinsteinProduct.html#a80d026cdac33661c87f770a75380137f":[1,0,0,51,1], +"classfl_1_1EinsteinProduct.html#ae48735984fa4af8aadc04a866bc7f95b":[1,0,0,51,2], +"classfl_1_1EinsteinSum.html":[1,0,0,43], +"classfl_1_1EinsteinSum.html#a26069692ad549ed9329ac44524d53019":[1,0,0,43,2], +"classfl_1_1EinsteinSum.html#ab53c8b600c40a7b7d3dcbc33edcc01e6":[1,0,0,43,1], +"classfl_1_1EinsteinSum.html#aec42a24b948620986abc0cf91f32b644":[1,0,0,43,0], +"classfl_1_1Engine.html":[1,0,0,11], +"classfl_1_1Engine.html#a042c2d297ef2f399ff5205a751250cf1":[1,0,0,11,50], +"classfl_1_1Engine.html#a04966ed53d33272421ef3fd1892d2f39":[1,0,0,11,13], +"classfl_1_1Engine.html#a0ad848e4b8676d7c57ce5ce9aaf347dd":[1,0,0,11,21], +"classfl_1_1Engine.html#a0ade8efb4d5def737107beda95cd194c":[1,0,0,11,35], +"classfl_1_1Engine.html#a0b00a2479143189023bdbf92e6f1275b":[1,0,0,11,43], +"classfl_1_1Engine.html#a0cc9382b2782fc17cb253ad71e12648a":[1,0,0,11,0], +"classfl_1_1Engine.html#a231be0ae11c7594760b90e54dce0eb2c":[1,0,0,11,24], +"classfl_1_1Engine.html#a2981da39b56ea615c9b18ae367deb2b8":[1,0,0,11,20], +"classfl_1_1Engine.html#a32b38de0b3079c254c7de7a1404f3e4c":[1,0,0,11,31], +"classfl_1_1Engine.html#a3370e83e016907dc4c48d8bfe714699e":[1,0,0,11,14], +"classfl_1_1Engine.html#a36fb40cdddec82a664515d75fecb197e":[1,0,0,11,10], +"classfl_1_1Engine.html#a385c393a1b6a81b3fa4370a3d9ae5e1e":[1,0,0,11,25], +"classfl_1_1Engine.html#a3986929c751fa14c5e91ad899442bd1e":[1,0,0,11,32], +"classfl_1_1Engine.html#a49806c12fc00793a8170b6b3cbb55ca7":[1,0,0,11,49], +"classfl_1_1Engine.html#a545f4b8cb62d3430c4ebceb94e50198c":[1,0,0,11,3], +"classfl_1_1Engine.html#a59d3b93579d829483730bc4c33c93909":[1,0,0,11,4], +"classfl_1_1Engine.html#a5b4ba98e071767d219624416c4b6008e":[1,0,0,11,1], +"classfl_1_1Engine.html#a5f335382428fc07d10b2e19b07ad3169":[1,0,0,11,18], +"classfl_1_1Engine.html#a6810105266cdc2a801ae9e9fc56edc27":[1,0,0,11,33], +"classfl_1_1Engine.html#a6899dd3759b1046152d4df4ff0650d9b":[1,0,0,11,46], +"classfl_1_1Engine.html#a7420c4284e7056be4be23ae8bd5d8806":[1,0,0,11,23], +"classfl_1_1Engine.html#a7c419900a49065d34bdf09c7cc9c3360":[1,0,0,11,41], +"classfl_1_1Engine.html#a7c455e9bc27ea5befe893b0f9d6b978b":[1,0,0,11,40], +"classfl_1_1Engine.html#a8506b08c5b0703303216d8a6a9fc5177":[1,0,0,11,11], +"classfl_1_1Engine.html#a879e2b74ad7f219a591e8c65674e3870":[1,0,0,11,2], +"classfl_1_1Engine.html#a8cd360e285096ee2b0c526b38d64f76d":[1,0,0,11,37], +"classfl_1_1Engine.html#a8ec2e0d92edaa708911317ebd1dcf076":[1,0,0,11,9], +"classfl_1_1Engine.html#a9513599df6c3f5216014935270b0a48a":[1,0,0,11,12], +"classfl_1_1Engine.html#a971cb8784678daa1cfddffdf882df414":[1,0,0,11,51], +"classfl_1_1Engine.html#a99c84543af90e05a4dc75a160603101d":[1,0,0,11,16], +"classfl_1_1Engine.html#a9c107245f0d4492291860d0c3b4e0600":[1,0,0,11,22], +"classfl_1_1Engine.html#aa09efb6fdcbf04b7a4d055af57a28bf6":[1,0,0,11,38], +"classfl_1_1Engine.html#aa74eb71ff2a9c55c4167072cf5b1bb4b":[1,0,0,11,30], +"classfl_1_1Engine.html#aaa9d918b11334996a412e1d254d2e613":[1,0,0,11,8], +"classfl_1_1Engine.html#aaab1df1f00cf869177d9b89c1d959547":[1,0,0,11,42], +"classfl_1_1Engine.html#aab610c741f61f413d74017d2cf65f002":[1,0,0,11,44], +"classfl_1_1Engine.html#aaf00bd5a56c4d0cdb19274104cfdbbbf":[1,0,0,11,26], +"classfl_1_1Engine.html#aaff1c85f1f4b3c846ee2a79507f32080":[1,0,0,11,29], +"classfl_1_1Engine.html#ab1aa8ab2f8f6375f713b42d6fb36ca1a":[1,0,0,11,45], +"classfl_1_1Engine.html#ab2543f14f73a53e81cd66fb572a89e33":[1,0,0,11,36], +"classfl_1_1Engine.html#aca04b618fd840e8f15bdbc7869176307":[1,0,0,11,17], +"classfl_1_1Engine.html#aca6a1d466e724e072b9fafe4543ac24c":[1,0,0,11,7], +"classfl_1_1Engine.html#acb630b203d3ad271031a239ed3d395db":[1,0,0,11,15], +"classfl_1_1Engine.html#ad223b542db52763b4307141dd1743ac8":[1,0,0,11,47], +"classfl_1_1Engine.html#ad3b1b9e448d7183406d3c36eb06e1653":[1,0,0,11,28], +"classfl_1_1Engine.html#ad4f0d7d9984f9fa6a232c995f1560425":[1,0,0,11,6], +"classfl_1_1Engine.html#ad9abfd28ae7b029a3dddb9683dcef13b":[1,0,0,11,39], +"classfl_1_1Engine.html#adb3bb3a9d43f04a3e2222250770b7628":[1,0,0,11,5], +"classfl_1_1Engine.html#adfacce3db1568a16e685faa865e8b55a":[1,0,0,11,27], +"classfl_1_1Engine.html#aedaccca7f6bf3bd39e0f552d2b5e2804":[1,0,0,11,34], +"classfl_1_1Engine.html#af5fb1a60a176eeb626d216fc6543d2a4":[1,0,0,11,19], +"classfl_1_1Engine.html#afe5a903a3c7e0d9f56224d7c640c84e8":[1,0,0,11,48], +"classfl_1_1Exception.html":[1,0,0,12], +"classfl_1_1Exception.html#a0f3a3e2cf6e03bcd887cbd17b32b6017":[1,0,0,12,11], +"classfl_1_1Exception.html#a11a8e6d81b6604e559dc5ed895fdd6fc":[1,0,0,12,0], +"classfl_1_1Exception.html#a1f606bf37e5cd79274f606dd8b8697cf":[1,0,0,12,10], +"classfl_1_1Exception.html#a356f4b32b778f34f6d6216d7088eedd7":[1,0,0,12,6], +"classfl_1_1Exception.html#a6b2c996dbe10a2ce28e2a3028b7a60ba":[1,0,0,12,1], +"classfl_1_1Exception.html#a79d8db2ee6a5bb5e09e946d8e614668e":[1,0,0,12,8], +"classfl_1_1Exception.html#a8293b05db9f8bfa87607de1bb7397990":[1,0,0,12,4], +"classfl_1_1Exception.html#aa8626724f221a050a1c4f7130392fcbf":[1,0,0,12,7], +"classfl_1_1Exception.html#abb466081bb58ff8ec77ed18837d98c80":[1,0,0,12,9], +"classfl_1_1Exception.html#ae4fed8d0b27b56a239a683ee7fd9cec4":[1,0,0,12,2], +"classfl_1_1Exception.html#af2828c0abaff2130600f41d0f1fa6ce6":[1,0,0,12,5], +"classfl_1_1Exception.html#af82048d1815c64ffbf146c2f20549ddb":[1,0,0,12,3], +"classfl_1_1Exporter.html":[1,0,0,29], +"classfl_1_1Exporter.html#a4532bc9161aa197ecbb2223974f43136":[1,0,0,29,3], +"classfl_1_1Exporter.html#aab49a9590298c2d405a96b69e39776f4":[1,0,0,29,0], +"classfl_1_1Exporter.html#ab5319c12e3b59565951467c39988a707":[1,0,0,29,1], +"classfl_1_1Exporter.html#aff99f85f68f8f4c8b2755f2dcc435f11":[1,0,0,29,2], +"classfl_1_1Expression.html":[1,0,0,58], +"classfl_1_1Expression.html#a1604308ff2cef911123653a3457fd990":[1,0,0,58,1], +"classfl_1_1Expression.html#a2a1d3e1e62ed8397c1247ecc4ad5b2d7":[1,0,0,58,0], +"classfl_1_1Expression.html#a80b60d4107b7604bb6f56976321c6d30":[1,0,0,58,2], +"classfl_1_1Expression.html#abd3159cedfb0d6ae5fde256262b96d03":[1,0,0,58,3], +"classfl_1_1Extremely.html":[1,0,0,22], +"classfl_1_1Extremely.html#a3a361fd4f0df11ea76f6d4664953cd8d":[1,0,0,22,2], +"classfl_1_1Extremely.html#a43167e853dee9cb90fbbe913c067612a":[1,0,0,22,1] +}; diff --git a/docs/html/navtreeindex2.js b/docs/html/navtreeindex2.js new file mode 100644 index 0000000..e395493 --- /dev/null +++ b/docs/html/navtreeindex2.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX2 = +{ +"classfl_1_1Extremely.html#ab3f7c2b91e53db88e1e61e79ebd301cf":[1,0,0,22,0], +"classfl_1_1Factory.html":[1,0,0,14], +"classfl_1_1Factory.html#a03cb6f9f2a99ad3ac0c699066cd6c327":[1,0,0,14,4], +"classfl_1_1Factory.html#a3f8636d79418ca1b5818767e586e6b0f":[1,0,0,14,0], +"classfl_1_1Factory.html#a56895637d3aa26a36bb5f3e93adba041":[1,0,0,14,2], +"classfl_1_1Factory.html#a7c1a3ab1b264eec096a25bb321fa106a":[1,0,0,14,7], +"classfl_1_1Factory.html#a842cdc776d7e85eab1a53c3bf36fabbc":[1,0,0,14,1], +"classfl_1_1Factory.html#ac5d4eb344eea176184f45c30b306f7b0":[1,0,0,14,3], +"classfl_1_1Factory.html#acb4595793affb9ad8c736a8f8167c7e4":[1,0,0,14,6], +"classfl_1_1Factory.html#acb8a5da88390e5c4fd01f8e56b7d6fe5":[1,0,0,14,5], +"classfl_1_1Factory.html#ade25fed3fa637513c5292c4abe565752":[1,0,0,14,8], +"classfl_1_1FactoryManager.html":[1,0,0,15], +"classfl_1_1FactoryManager.html#a0f50385692a67eab5d5ef5664570f225":[1,0,0,15,11], +"classfl_1_1FactoryManager.html#a15cbc26ca18266f48d69a61c3a5669fd":[1,0,0,15,8], +"classfl_1_1FactoryManager.html#a1a194828b4c6c6e50b8e050917def9b3":[1,0,0,15,10], +"classfl_1_1FactoryManager.html#a2075eced79dd07507f5ac94dfff11255":[1,0,0,15,2], +"classfl_1_1FactoryManager.html#a286530241e195e0faff93d38393afea6":[1,0,0,15,1], +"classfl_1_1FactoryManager.html#a41e78756d39885587a70b94f09e5350d":[1,0,0,15,18], +"classfl_1_1FactoryManager.html#a6287e95f9501f08495ef9277847e25b6":[1,0,0,15,17], +"classfl_1_1FactoryManager.html#a6d3b72825d0832d52949e4d1f603699e":[1,0,0,15,6], +"classfl_1_1FactoryManager.html#a6dfc605dcd7542e15c7489d41a8ad891":[1,0,0,15,5], +"classfl_1_1FactoryManager.html#a751ba1be322868a9c8756ec9bd116c74":[1,0,0,15,4], +"classfl_1_1FactoryManager.html#a83b695b1c664038b38f0fcf366ca4632":[1,0,0,15,12], +"classfl_1_1FactoryManager.html#a88fdfe634b35c34aabc9cce41748bbef":[1,0,0,15,14], +"classfl_1_1FactoryManager.html#a8b58509c864378c20b45a4a2b90d816f":[1,0,0,15,16], +"classfl_1_1FactoryManager.html#a8bc18de05f499f5c3792c53b9bc792e1":[1,0,0,15,9], +"classfl_1_1FactoryManager.html#aa94791620fbe7d48ffd7878ebae052ae":[1,0,0,15,0], +"classfl_1_1FactoryManager.html#abcd343824f484712cace3796d35a0c24":[1,0,0,15,15], +"classfl_1_1FactoryManager.html#abfc5c5c5faa761711c5a9e6efba0732c":[1,0,0,15,13], +"classfl_1_1FactoryManager.html#ae5d6541dc878760638c244c5ec34ddde":[1,0,0,15,7], +"classfl_1_1FactoryManager.html#af9d096bfb369da99be19325ec5cb1431":[1,0,0,15,3], +"classfl_1_1FclExporter.html":[1,0,0,30], +"classfl_1_1FclExporter.html#a2217ded0027c175476672f60a20e74e9":[1,0,0,30,7], +"classfl_1_1FclExporter.html#a316cd5181e2024fae9997745cfc8ac33":[1,0,0,30,8], +"classfl_1_1FclExporter.html#a752ac81d142301a3f0b18f415cd4bdd3":[1,0,0,30,10], +"classfl_1_1FclExporter.html#a80c793f25bb29d33903e204b4cf9f3d8":[1,0,0,30,1], +"classfl_1_1FclExporter.html#a89882e3c7d382b12d6ad018e9aa7d2db":[1,0,0,30,6], +"classfl_1_1FclExporter.html#a998704afa9d4e247d287ff3496c31e05":[1,0,0,30,3], +"classfl_1_1FclExporter.html#aab0d463ecb759bccbf2d88a08d6eda6a":[1,0,0,30,9], +"classfl_1_1FclExporter.html#aad7f1de7316a63a55bf469ae3aa5f886":[1,0,0,30,0], +"classfl_1_1FclExporter.html#ac2dbb5edf24eb8aa4df8aac1e0dc27f6":[1,0,0,30,2], +"classfl_1_1FclExporter.html#ae256ee281c36e58bb8a1492b54d6de58":[1,0,0,30,4], +"classfl_1_1FclExporter.html#af001ef5820ca086eee179ccfefcc32d2":[1,0,0,30,5], +"classfl_1_1FclImporter.html":[1,0,0,31], +"classfl_1_1FclImporter.html#a02c680d209cbcafb198d0e3906b88ffc":[1,0,0,31,1], +"classfl_1_1FclImporter.html#a07f6ec79bc059b30019d70c7531a6cd8":[1,0,0,31,3], +"classfl_1_1FclImporter.html#a1762774e5b20cae794130516e5a1df84":[1,0,0,31,17], +"classfl_1_1FclImporter.html#a35548905d0df960647dd7d3c5f6c1265":[1,0,0,31,10], +"classfl_1_1FclImporter.html#a3f04690c634633246b6c139567d4a97f":[1,0,0,31,13], +"classfl_1_1FclImporter.html#a5935e886b62107adf3c9292f10674f92":[1,0,0,31,4], +"classfl_1_1FclImporter.html#a5a58eca83e8cd52b0795406a04e377e4":[1,0,0,31,15], +"classfl_1_1FclImporter.html#a65ea4bf1bca4958eedb0a43a458ba94f":[1,0,0,31,6], +"classfl_1_1FclImporter.html#a8803a4df1678e47cfe29547bba2798fe":[1,0,0,31,16], +"classfl_1_1FclImporter.html#a9079102376dcf6603f614b499b68d6fe":[1,0,0,31,14], +"classfl_1_1FclImporter.html#aa30426cf04bbab3bae3fddd32ce0b3c7":[1,0,0,31,2], +"classfl_1_1FclImporter.html#aae7fea6fa14aead4e1deb8712cbc5ac2":[1,0,0,31,5], +"classfl_1_1FclImporter.html#ac6a10fba4faa0f4bde790122cbbf7d77":[1,0,0,31,7], +"classfl_1_1FclImporter.html#acfc6c8ac6ccae43e744581389b39bddb":[1,0,0,31,12], +"classfl_1_1FclImporter.html#ad2a79c4d700db15cc8f647ebdbb3137d":[1,0,0,31,9], +"classfl_1_1FclImporter.html#aeb6708f65ece9205d5b4a2e756c33fe7":[1,0,0,31,0], +"classfl_1_1FclImporter.html#aef76d58fa8b7d6615b62fcceb9f65b24":[1,0,0,31,8], +"classfl_1_1FclImporter.html#af44344f1e6a6844a7dc092c2ebb1a2ff":[1,0,0,31,11], +"classfl_1_1FisExporter.html":[1,0,0,32], +"classfl_1_1FisExporter.html#a059187846eed86957d38b17a15601ccb":[1,0,0,32,1], +"classfl_1_1FisExporter.html#a2095faa4bc9438ad9ddc73adb0491575":[1,0,0,32,2], +"classfl_1_1FisExporter.html#a2a1446ffbfec0bcfb85e708e108e41da":[1,0,0,32,9], +"classfl_1_1FisExporter.html#a2d9d3bba19f92fd9c4e2dfbe3f57c1f9":[1,0,0,32,11], +"classfl_1_1FisExporter.html#a3639ee279c13b289215e2f010d7b0317":[1,0,0,32,10], +"classfl_1_1FisExporter.html#a3c768b12f50268d82d2185d03815cd49":[1,0,0,32,4], +"classfl_1_1FisExporter.html#a5c2629c979ea16c2539b77bf7fae4be2":[1,0,0,32,12], +"classfl_1_1FisExporter.html#a82368569fc8fda27cd9c59e4b7710ca2":[1,0,0,32,7], +"classfl_1_1FisExporter.html#a8e7cdf87f0c6bc2c22679f18af7290d7":[1,0,0,32,0], +"classfl_1_1FisExporter.html#a99519ab6acc89c845dd93b4ed8d3b040":[1,0,0,32,8], +"classfl_1_1FisExporter.html#aa28acbe2499c3bbd19f13ad6052c40d3":[1,0,0,32,6], +"classfl_1_1FisExporter.html#ac0f2cb9aa613b3a985aa0357ac83a2a3":[1,0,0,32,5], +"classfl_1_1FisExporter.html#adc49761903862ad0f676242eead90273":[1,0,0,32,13], +"classfl_1_1FisExporter.html#ae9eacd64e24abc161cfdbd870c0ee261":[1,0,0,32,3], +"classfl_1_1FisImporter.html":[1,0,0,33], +"classfl_1_1FisImporter.html#a15e8b93a30f925e7b8c80b99c36a67b5":[1,0,0,33,9], +"classfl_1_1FisImporter.html#a174c4585abf07f233fbf08f0d24321fd":[1,0,0,33,12], +"classfl_1_1FisImporter.html#a1bc09706aab7de024d61a3209f8588b2":[1,0,0,33,3], +"classfl_1_1FisImporter.html#a3114d30446f59a3a7c1b9cccf1ca48d6":[1,0,0,33,4], +"classfl_1_1FisImporter.html#a413d8eb624516006fdb21a55084ea94a":[1,0,0,33,15], +"classfl_1_1FisImporter.html#a5a01cdde2f9c95e379991ab62664d013":[1,0,0,33,1], +"classfl_1_1FisImporter.html#a5dc8ba46e949ceb3dcff619c77e77086":[1,0,0,33,14], +"classfl_1_1FisImporter.html#a62938780ffe9ca9c3c214cb95ee6f4fd":[1,0,0,33,2], +"classfl_1_1FisImporter.html#a69a07f5204d45a6369f5148bd88f09a2":[1,0,0,33,7], +"classfl_1_1FisImporter.html#a6a979d9d88de1761227bdc595448d164":[1,0,0,33,6], +"classfl_1_1FisImporter.html#a70ec174f0c030f7413de42b55e520e7f":[1,0,0,33,5], +"classfl_1_1FisImporter.html#a95632dfa7aa5abb29882043dd197083d":[1,0,0,33,11], +"classfl_1_1FisImporter.html#ac7d0266c915104de96c5fc3b0f428920":[1,0,0,33,13], +"classfl_1_1FisImporter.html#ac83ea8cf1ec0755ce8ef97de4cd7b6d1":[1,0,0,33,0], +"classfl_1_1FisImporter.html#adfcf55ffd93f7f6dde089d8a7ba5d9a4":[1,0,0,33,10], +"classfl_1_1FisImporter.html#aeea249f5b5985bd7b7e7541677f909c3":[1,0,0,33,8], +"classfl_1_1FldExporter.html":[1,0,0,34], +"classfl_1_1FldExporter.html#a006a568997e2111bab3ab05cda5e92d7":[1,0,0,34,7], +"classfl_1_1FldExporter.html#a46c654ab86fc338f8574f2e6ea2fb413":[1,0,0,34,5], +"classfl_1_1FldExporter.html#a51b260e8046f2acae03d0e8bd29746b2":[1,0,0,34,10], +"classfl_1_1FldExporter.html#a51e75da5a6bc7ff06c30f8a3aed263d1":[1,0,0,34,8], +"classfl_1_1FldExporter.html#a751a24d775758a74d32fff38210c413e":[1,0,0,34,2], +"classfl_1_1FldExporter.html#a7f0ee3eec187356fd87f29be4679bde5":[1,0,0,34,4], +"classfl_1_1FldExporter.html#a8c785e9652876bc2859f24fd2246550d":[1,0,0,34,9], +"classfl_1_1FldExporter.html#a98c42aea98c09d15b7c5c6b8b48e3c42":[1,0,0,34,6], +"classfl_1_1FldExporter.html#ae6f89726bc9bb33ef8c36bcc1ebe6440":[1,0,0,34,1], +"classfl_1_1FldExporter.html#af65de1ba2bd518a03740679be9756bf0":[1,0,0,34,0], +"classfl_1_1FldExporter.html#afacb9f57e490cb9574fb741ddc71e63b":[1,0,0,34,3], +"classfl_1_1FllExporter.html":[1,0,0,35], +"classfl_1_1FllExporter.html#a173b52acdd66b05f7d2ff9f9d3a77034":[1,0,0,35,7], +"classfl_1_1FllExporter.html#a1963248233121774fadf9b470426b1ab":[1,0,0,35,10], +"classfl_1_1FllExporter.html#a2fff42124d24833c1bcf888e64e0fb46":[1,0,0,35,17], +"classfl_1_1FllExporter.html#a3d7af60d0ffc198ddac94258117be327":[1,0,0,35,0], +"classfl_1_1FllExporter.html#a4401275536a96781f153603234d038e9":[1,0,0,35,1], +"classfl_1_1FllExporter.html#a4ac7b293fbb4890933c52b459c09cf77":[1,0,0,35,3], +"classfl_1_1FllExporter.html#a4e1b33a482aa35baffcad435db58f101":[1,0,0,35,9], +"classfl_1_1FllExporter.html#a4ef591a02dab3796d640cb7a22bdd182":[1,0,0,35,16], +"classfl_1_1FllExporter.html#a51a3cd0489b0525764d660aeea5b4d8e":[1,0,0,35,8], +"classfl_1_1FllExporter.html#a51df80793d85e99767482d63fd3bd295":[1,0,0,35,12], +"classfl_1_1FllExporter.html#a600838fc90eeb0d6e9c1955c42d3bb0a":[1,0,0,35,2], +"classfl_1_1FllExporter.html#a79fa45d5098091e5c5c2b40aaec12b1a":[1,0,0,35,14], +"classfl_1_1FllExporter.html#a98a633468756e7756ba12ffe2d6de3ff":[1,0,0,35,5], +"classfl_1_1FllExporter.html#a9c801344e238cb062adeed29cf72d8b7":[1,0,0,35,13], +"classfl_1_1FllExporter.html#aae32c417cf85a08f92f17697009a69f4":[1,0,0,35,4], +"classfl_1_1FllExporter.html#ad61fc9d9ddae0fe112af2ef15b573ccd":[1,0,0,35,6], +"classfl_1_1FllExporter.html#ad725c500e88aeaa14a03760027a608a2":[1,0,0,35,15], +"classfl_1_1FllExporter.html#ae1ae84e6bb6e4089a5c72ebd7a7a7792":[1,0,0,35,11], +"classfl_1_1FllImporter.html":[1,0,0,36], +"classfl_1_1FllImporter.html#a06be484393fba92045bad88340f7956e":[1,0,0,36,11], +"classfl_1_1FllImporter.html#a20931ea569c4b63b0b64dff564f97a8b":[1,0,0,36,9], +"classfl_1_1FllImporter.html#a219f0cf485902342e830385dc0467dc1":[1,0,0,36,15], +"classfl_1_1FllImporter.html#a2aec511802a61fa8ac76f21104282368":[1,0,0,36,1], +"classfl_1_1FllImporter.html#a3199e6251bf66df0d038394474640805":[1,0,0,36,8], +"classfl_1_1FllImporter.html#a3920c6f5399e67238a2f8d6cfdc03158":[1,0,0,36,12], +"classfl_1_1FllImporter.html#a5d93989dab7442e22fdd6073d00f17c3":[1,0,0,36,4], +"classfl_1_1FllImporter.html#a5e73ac41fb4d1423c3d90cb3a90ec2aa":[1,0,0,36,17], +"classfl_1_1FllImporter.html#a66c9812e8aac48ead888b02e69079396":[1,0,0,36,0], +"classfl_1_1FllImporter.html#a79b008375ec6e8b3523e75c93698b14e":[1,0,0,36,3], +"classfl_1_1FllImporter.html#ab1a1894cc656683fb5dfab587609fab4":[1,0,0,36,13], +"classfl_1_1FllImporter.html#ab301d5397d204347f583067a07c15082":[1,0,0,36,7], +"classfl_1_1FllImporter.html#ab9df69e5ff68f25bf2fb95fdf9b55f34":[1,0,0,36,18], +"classfl_1_1FllImporter.html#abdd31292205140522f73410becb9d436":[1,0,0,36,16], +"classfl_1_1FllImporter.html#ac3c96b230a304c1d2a13a9e6d77f3a4f":[1,0,0,36,5], +"classfl_1_1FllImporter.html#ad555651cd0a08e0d061c0162343f021c":[1,0,0,36,10], +"classfl_1_1FllImporter.html#ad60b4b4752e8d1c90826d9362a985dba":[1,0,0,36,14], +"classfl_1_1FllImporter.html#ad8a8138ff6532113ca4dea3926b8e138":[1,0,0,36,2], +"classfl_1_1FllImporter.html#af2df9fd1883d408233b4818f138c2122":[1,0,0,36,6], +"classfl_1_1Function.html":[1,0,0,67], +"classfl_1_1Function.html#a03eeaf1ff7ccfa41e482731f687faeeb":[1,0,0,67,29], +"classfl_1_1Function.html#a0d9c8b2711ebd2a7eeeca0d4726cc235":[1,0,0,67,20], +"classfl_1_1Function.html#a10ce03251388d331bf22f95602c2df89":[1,0,0,67,37], +"classfl_1_1Function.html#a170910c5be1bf1c62ebdf0af75edad5d":[1,0,0,67,33], +"classfl_1_1Function.html#a21ce8486c656f1ffa37ae8a6982820d7":[1,0,0,67,15], +"classfl_1_1Function.html#a2286377811867e4e380ad51efb18222a":[1,0,0,67,9], +"classfl_1_1Function.html#a243bf3006438367a6c4fc06f3e286fa2":[1,0,0,67,28], +"classfl_1_1Function.html#a264ef402c9c4f20d2174ba7d3ecea384":[1,0,0,67,16], +"classfl_1_1Function.html#a2afc9a85368f4a3bfed8d4850ebeb437":[1,0,0,67,30], +"classfl_1_1Function.html#a3467f99b6dd817795f3af06039d91db5":[1,0,0,67,36], +"classfl_1_1Function.html#a3480f8ae860d507fd6253340471421bd":[1,0,0,67,8], +"classfl_1_1Function.html#a38c3011d499a84d262b4ba895e4b3700":[1,0,0,67,19], +"classfl_1_1Function.html#a3e900c3e371a7d6047415b9821c44e95":[1,0,0,67,26], +"classfl_1_1Function.html#a4533c58e472bc9f0deee6ed3d7309f48":[1,0,0,67,7], +"classfl_1_1Function.html#a56edfcdbbbf5701f030d6e0f5e9684a6":[1,0,0,67,35], +"classfl_1_1Function.html#a62b753626cf4bd6dac6be17ae6c4191b":[1,0,0,67,32], +"classfl_1_1Function.html#a6775b642c60d04148d25996707d4647f":[1,0,0,67,25], +"classfl_1_1Function.html#a72bdd02409670aa19301d1856cc3f4be":[1,0,0,67,4], +"classfl_1_1Function.html#a8ed158f59ff063c0c7ee3333fafd288d":[1,0,0,67,14], +"classfl_1_1Function.html#a90c6da801dd404158a35c0fdf1888c76":[1,0,0,67,34], +"classfl_1_1Function.html#a9a545f733f56ab80350232facf1f110f":[1,0,0,67,24], +"classfl_1_1Function.html#aa2ffba8fe6fc5cccc762a87116e9ff5a":[1,0,0,67,11], +"classfl_1_1Function.html#aa4abc71ff0a3a9c334f6953dd62e1777":[1,0,0,67,27], +"classfl_1_1Function.html#aa604f2c6525cca5b85afecd016048b6f":[1,0,0,67,18], +"classfl_1_1Function.html#abc8ce853954a826a82ccbecd7bab249f":[1,0,0,67,17], +"classfl_1_1Function.html#ac357b08779c1c3145f9e1311f71ae791":[1,0,0,67,23], +"classfl_1_1Function.html#acff7c0f580b0a4a3e7739e5bbe9a3c42":[1,0,0,67,5], +"classfl_1_1Function.html#ad58b9d3ca96c588dfd7001a35f575f45":[1,0,0,67,31], +"classfl_1_1Function.html#ad6769a713c7b7e6804a23cef200f3ad2":[1,0,0,67,6], +"classfl_1_1Function.html#ad9e34b8bb78b233a100625135bea7fe2":[1,0,0,67,13], +"classfl_1_1Function.html#ae100c79063c8bad3eca0beb5433b0a28":[1,0,0,67,22], +"classfl_1_1Function.html#ae7ef261750a6fac102c88b5338cc24e0":[1,0,0,67,21], +"classfl_1_1Function.html#aef18ddabe54b7039c877ecc592e875be":[1,0,0,67,10], +"classfl_1_1Function.html#af6ce5d6fa38c1bf08cccf1b2b102332e":[1,0,0,67,12], +"classfl_1_1Gaussian.html":[1,0,0,68], +"classfl_1_1Gaussian.html#a246604f064ff03ef393bc32d31cb2e93":[1,0,0,68,4], +"classfl_1_1Gaussian.html#a35273744e774551c342d061c44437680":[1,0,0,68,10], +"classfl_1_1Gaussian.html#a3afa7aadb27e046ed07d5c77e9a878b5":[1,0,0,68,12], +"classfl_1_1Gaussian.html#a4fe36a7eabff87f9f589e4fc2b225954":[1,0,0,68,2], +"classfl_1_1Gaussian.html#a54d80135fdacc54f4889dc724491f44f":[1,0,0,68,13], +"classfl_1_1Gaussian.html#a7cf9cfc964bbbf96b7bf8203559926de":[1,0,0,68,1], +"classfl_1_1Gaussian.html#a98c6cd11415682fedee70afbd7ab006a":[1,0,0,68,0], +"classfl_1_1Gaussian.html#aa6b16380ba030cd4f1520c2d78ab950e":[1,0,0,68,8], +"classfl_1_1Gaussian.html#aafb1c9093523491dd4bc6fe83fed82ff":[1,0,0,68,6], +"classfl_1_1Gaussian.html#ab302be9787169b20f2f6ca7a26a8afe0":[1,0,0,68,7], +"classfl_1_1Gaussian.html#abe3ef5f8b925c0c8010f2112ff1585be":[1,0,0,68,9], +"classfl_1_1Gaussian.html#abfe6341c9e2f016a8be779e58014280d":[1,0,0,68,5], +"classfl_1_1Gaussian.html#ad1ad9bad1f1d2096fa4d2f95b6288320":[1,0,0,68,3], +"classfl_1_1Gaussian.html#adfbe578e478af2a0b646f8ce7e326c59":[1,0,0,68,11], +"classfl_1_1GaussianProduct.html":[1,0,0,69], +"classfl_1_1GaussianProduct.html#a0f805a13ecbd9f4148174dc597e192dd":[1,0,0,69,7], +"classfl_1_1GaussianProduct.html#a1220b0085a00f8109b49501b346f29d7":[1,0,0,69,8], +"classfl_1_1GaussianProduct.html#a299baa7ccb7368d1aea50a4e88023988":[1,0,0,69,13], +"classfl_1_1GaussianProduct.html#a2be8509987e2e2d8e0dc388fe2009aab":[1,0,0,69,12], +"classfl_1_1GaussianProduct.html#a2f28afe006e31b0d5e78d8026654b016":[1,0,0,69,14], +"classfl_1_1GaussianProduct.html#a566dbd763abb96ea82d70d3a3aa357d4":[1,0,0,69,17], +"classfl_1_1GaussianProduct.html#a6053012a905ecb9e0b3a7d8fcfddb997":[1,0,0,69,2], +"classfl_1_1GaussianProduct.html#a6325913403a8d5a752e7eef82b8fe4c9":[1,0,0,69,18], +"classfl_1_1GaussianProduct.html#a6486b89913270c8caafda0526de24843":[1,0,0,69,9], +"classfl_1_1GaussianProduct.html#a650bcc4bf3a59bdf315806ca0699e626":[1,0,0,69,15], +"classfl_1_1GaussianProduct.html#a8e3524f455a0eadc98e91012e7abc034":[1,0,0,69,4], +"classfl_1_1GaussianProduct.html#aace6b4c7794393c72584036e49d30982":[1,0,0,69,0], +"classfl_1_1GaussianProduct.html#ab109d8ecd2334f8d627ceda8d7cd5b1f":[1,0,0,69,19], +"classfl_1_1GaussianProduct.html#ab34f0db33867495381322cd11d85bf5d":[1,0,0,69,10], +"classfl_1_1GaussianProduct.html#ab5c2aff8ec77cabbafbcbacc93f4c3a8":[1,0,0,69,1], +"classfl_1_1GaussianProduct.html#abaa001011b04d82044a6d121e82f4393":[1,0,0,69,3], +"classfl_1_1GaussianProduct.html#ac4de1d4f1d2a3305440d8a79ba9fd7b3":[1,0,0,69,6], +"classfl_1_1GaussianProduct.html#ac82273731d30e6f9b4a406d9a863376b":[1,0,0,69,5], +"classfl_1_1GaussianProduct.html#acb0046558c2b810abb9566afe149f444":[1,0,0,69,16], +"classfl_1_1GaussianProduct.html#af7c07284dd611729ac9c3a1d51798963":[1,0,0,69,11], +"classfl_1_1HamacherProduct.html":[1,0,0,52], +"classfl_1_1HamacherProduct.html#a074cd7680f13dc4e4a83d009336310fc":[1,0,0,52,0], +"classfl_1_1HamacherProduct.html#aa643c0983dd731952efb16996303ed2a":[1,0,0,52,2], +"classfl_1_1HamacherProduct.html#aa66725360da0eaf658f03380baacc35c":[1,0,0,52,1], +"classfl_1_1HamacherSum.html":[1,0,0,44], +"classfl_1_1HamacherSum.html#a97477ae807a703cf7c0d150a4a4e94c4":[1,0,0,44,2], +"classfl_1_1HamacherSum.html#a9a369bb11910179a3e9501df02d20d39":[1,0,0,44,0], +"classfl_1_1HamacherSum.html#ad8a6b4101561349694daee12ef32a960":[1,0,0,44,1], +"classfl_1_1Hedge.html":[1,0,0,23], +"classfl_1_1Hedge.html#a3370874611a2880c05ca1d35dd6e8159":[1,0,0,23,0], +"classfl_1_1Hedge.html#a547d5526c4c921d7a61db29f2e76a88c":[1,0,0,23,3], +"classfl_1_1Hedge.html#a98c94b3f1f62bedaf01d36ceed4cf837":[1,0,0,23,2], +"classfl_1_1Hedge.html#a990b388bcdf071d72ed55d6b31df0c69":[1,0,0,23,1], +"classfl_1_1HedgeFactory.html":[1,0,0,16], +"classfl_1_1HedgeFactory.html#a734e0398afcbc1cec74b21e3d0759e75":[1,0,0,16,1], +"classfl_1_1HedgeFactory.html#a78d107303d37226af09a285314b1255a":[1,0,0,16,0], +"classfl_1_1Importer.html":[1,0,0,37], +"classfl_1_1Importer.html#a41a5100eb0d3b3a7ec92781c105490a2":[1,0,0,37,2], +"classfl_1_1Importer.html#a5d5f32f7522c0e263b7833315e529f1f":[1,0,0,37,0], +"classfl_1_1Importer.html#a8b8cfaab1076414317917a2f983fc995":[1,0,0,37,3], +"classfl_1_1Importer.html#aa80d4e41105f57759edeb802e48e5d88":[1,0,0,37,1], +"classfl_1_1InputVariable.html":[1,0,0,83], +"classfl_1_1InputVariable.html#a34ff3317b73342a2a8abf3652f6e8277":[1,0,0,83,0], +"classfl_1_1InputVariable.html#a40085be4ae61578ff1ddcf53f012834e":[1,0,0,83,4], +"classfl_1_1InputVariable.html#ab80f6c5816de487663b97e1e38e3b8cf":[1,0,0,83,3], +"classfl_1_1InputVariable.html#abe998a09cc17fd8d66edae2b5e6e3afe":[1,0,0,83,5], +"classfl_1_1InputVariable.html#aee34f9cbcdc7c758f609ca4500624788":[1,0,0,83,2], +"classfl_1_1InputVariable.html#af8524cb2fae0f1417fe8ffc27a181090":[1,0,0,83,1], +"classfl_1_1IntegralDefuzzifier.html":[1,0,0,4], +"classfl_1_1IntegralDefuzzifier.html#a24ce1ae1d1a8d9c4dc286789b0300b6d":[1,0,0,4,2], +"classfl_1_1IntegralDefuzzifier.html#a6ab681f34359792ec867ae78f403f1da":[1,0,0,4,1], +"classfl_1_1IntegralDefuzzifier.html#a7819eddcff32da2826d990080cf52bc1":[1,0,0,4,5], +"classfl_1_1IntegralDefuzzifier.html#a84b9bd1f647763fc87ddb0877f62c91a":[1,0,0,4,3], +"classfl_1_1IntegralDefuzzifier.html#aa8331e20bd5cc79ce77c5c63bd5fa220":[1,0,0,4,0] +}; diff --git a/docs/html/navtreeindex3.js b/docs/html/navtreeindex3.js new file mode 100644 index 0000000..e977308 --- /dev/null +++ b/docs/html/navtreeindex3.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX3 = +{ +"classfl_1_1IntegralDefuzzifier.html#ae95e4a62f1443fd56e6b0a6aa72ae7c9":[1,0,0,4,4], +"classfl_1_1JavaExporter.html":[1,0,0,38], +"classfl_1_1JavaExporter.html#a210bc87a9517587d0c5c26380290705d":[1,0,0,38,2], +"classfl_1_1JavaExporter.html#a354872e403512edbaced4d8f865a965c":[1,0,0,38,9], +"classfl_1_1JavaExporter.html#a4308b8e8efe759c20ff1cc9a1287a003":[1,0,0,38,8], +"classfl_1_1JavaExporter.html#a7c357afdb6391ec44215e575e1f3cb7a":[1,0,0,38,1], +"classfl_1_1JavaExporter.html#a94a80476fdc585b6b23a7b3627ce9d66":[1,0,0,38,3], +"classfl_1_1JavaExporter.html#a98c789ad1a6eaea25cd7aafb41cd2012":[1,0,0,38,0], +"classfl_1_1JavaExporter.html#aa3178924725d70c06fe0a6e93b1e3238":[1,0,0,38,5], +"classfl_1_1JavaExporter.html#aa58115648623ced606d0eba39ab27c78":[1,0,0,38,4], +"classfl_1_1JavaExporter.html#ae8043db7b3be3720456396d5ea1f1856":[1,0,0,38,6], +"classfl_1_1JavaExporter.html#aeff64c84585ae1dd69751e2a86ba9acd":[1,0,0,38,10], +"classfl_1_1JavaExporter.html#af7d8739f58620e3398e60ab818334114":[1,0,0,38,7], +"classfl_1_1LargestOfMaximum.html":[1,0,0,5], +"classfl_1_1LargestOfMaximum.html#a1690cf2d7dff0434ed1c0c9d3c29ab6d":[1,0,0,5,0], +"classfl_1_1LargestOfMaximum.html#a918f4bf0b8a72898bc1f3bfdf5dc438c":[1,0,0,5,2], +"classfl_1_1LargestOfMaximum.html#ab608bf2abef9246ddd261766356f9d25":[1,0,0,5,3], +"classfl_1_1LargestOfMaximum.html#ad1c94612d3d86d99c9f4ad1ff9cbe092":[1,0,0,5,1], +"classfl_1_1LargestOfMaximum.html#af837a7283ef6051f5e7c82544b66407c":[1,0,0,5,4], +"classfl_1_1Linear.html":[1,0,0,70], +"classfl_1_1Linear.html#a062a9df614c8438b5e67d00ff141bb75":[1,0,0,70,10], +"classfl_1_1Linear.html#a08f34f405942b06b9265fe65b043ae3f":[1,0,0,70,4], +"classfl_1_1Linear.html#a0dfcc75d129a7a1e0580fd2937a7bcc2":[1,0,0,70,8], +"classfl_1_1Linear.html#a1abc4256576543b69ef00a64e47661b4":[1,0,0,70,7], +"classfl_1_1Linear.html#a2b44ce9614e5d983181eb3f0a9ed2a55":[1,0,0,70,5], +"classfl_1_1Linear.html#a4f3bb5a40be78904b5629f2f0aad8c41":[1,0,0,70,6], +"classfl_1_1Linear.html#a4f7012009a7fb8451811b71246c71dfb":[1,0,0,70,1], +"classfl_1_1Linear.html#a5c00c0c8a4c20a8a75c161fe3be97497":[1,0,0,70,3], +"classfl_1_1Linear.html#a7867e3422a5f07339246f3bd245ac91b":[1,0,0,70,12], +"classfl_1_1Linear.html#a9aefe07bc50a793ad81d4e302b6486b8":[1,0,0,70,0], +"classfl_1_1Linear.html#aa80366e763e98a80201e8b941c502291":[1,0,0,70,2], +"classfl_1_1Linear.html#aa95cffe598a7b14f5cb3a8089d6ae4f5":[1,0,0,70,11], +"classfl_1_1Linear.html#ac31901027e4e59deadab95327918a976":[1,0,0,70,13], +"classfl_1_1Linear.html#afa98a39fca7b8bc7b444e8448882f3e2":[1,0,0,70,9], +"classfl_1_1Maximum.html":[1,0,0,45], +"classfl_1_1Maximum.html#ab07e483cf7d4a42d0b55f0afde7fbb1b":[1,0,0,45,0], +"classfl_1_1Maximum.html#ab6a77d56b0010c61dab9aff6eef8d69e":[1,0,0,45,2], +"classfl_1_1Maximum.html#acb31d24e4ea1c2840145d3c518d1d56a":[1,0,0,45,1], +"classfl_1_1MeanOfMaximum.html":[1,0,0,6], +"classfl_1_1MeanOfMaximum.html#a16bcac98f46e237a557299adf7bd4803":[1,0,0,6,4], +"classfl_1_1MeanOfMaximum.html#a550b5af2c02d13cf7f520892eed5a192":[1,0,0,6,0], +"classfl_1_1MeanOfMaximum.html#a6e37a3a564519a75f345cac5ae31f4af":[1,0,0,6,2], +"classfl_1_1MeanOfMaximum.html#a8831f3fc9884f33c119892f0c6383f51":[1,0,0,6,1], +"classfl_1_1MeanOfMaximum.html#aac3c40bd6b4e4fbe0c568f45cc2b6c23":[1,0,0,6,3], +"classfl_1_1Minimum.html":[1,0,0,53], +"classfl_1_1Minimum.html#a904a65beab278e3a089faf7204a3aa1e":[1,0,0,53,1], +"classfl_1_1Minimum.html#aaadf3d67f63d3af4aacb6c889027f041":[1,0,0,53,0], +"classfl_1_1Minimum.html#afe8e6b8aeb6276acd1de8ff123448db9":[1,0,0,53,2], +"classfl_1_1Norm.html":[1,0,0,39], +"classfl_1_1Norm.html#a037d23877edd010bcbf267772df56b67":[1,0,0,39,0], +"classfl_1_1Norm.html#a46fdc326f3a2cddece49dc1f26dd969a":[1,0,0,39,3], +"classfl_1_1Norm.html#a481057fe48f921bcba97d0bc51846089":[1,0,0,39,1], +"classfl_1_1Norm.html#a65614aa0776f7f9dab701cc3eac1b025":[1,0,0,39,2], +"classfl_1_1NormalizedSum.html":[1,0,0,46], +"classfl_1_1NormalizedSum.html#a35feeeb1815ccd77968ce7668021bc81":[1,0,0,46,1], +"classfl_1_1NormalizedSum.html#a914dc1469e8551fb007e6a9ebc2ead25":[1,0,0,46,2], +"classfl_1_1NormalizedSum.html#acca8ee239c9be60ba1ab618cf5b1b291":[1,0,0,46,0], +"classfl_1_1Not.html":[1,0,0,24], +"classfl_1_1Not.html#a396267c88a293a6e1e0fb6a71a529f3f":[1,0,0,24,2], +"classfl_1_1Not.html#a8abf3c49d780b093da7614c47c70bd63":[1,0,0,24,1], +"classfl_1_1Not.html#ae75fb1d44510bfd4338228dbbd773f0d":[1,0,0,24,0], +"classfl_1_1Operation.html":[1,0,0,55], +"classfl_1_1Operation.html#a00a16cb50581466396239084567a69d9":[1,0,0,55,23], +"classfl_1_1Operation.html#a013681c3803db34e8ea86e23d31659a7":[1,0,0,55,39], +"classfl_1_1Operation.html#a05320a82f0759c66c85bf2f1470753ef":[1,0,0,55,11], +"classfl_1_1Operation.html#a0a221a37f9320e0994e1d9aee4af9fec":[1,0,0,55,9], +"classfl_1_1Operation.html#a0a61cdee4e1d67889fb8614ded1af1d4":[1,0,0,55,40], +"classfl_1_1Operation.html#a0e6c4231f378126709c3525973bea54e":[1,0,0,55,32], +"classfl_1_1Operation.html#a1103130aed65ace38a366c50ae2e7dad":[1,0,0,55,18], +"classfl_1_1Operation.html#a1bea3d159125f8c193329bec0333df48":[1,0,0,55,31], +"classfl_1_1Operation.html#a1cf6a6acc56ba71d35a2cd766c095243":[1,0,0,55,13], +"classfl_1_1Operation.html#a1e3b19ecb5599aaef117962f5a98ddac":[1,0,0,55,29], +"classfl_1_1Operation.html#a24a8b09a91b15766261d2929125d8069":[1,0,0,55,36], +"classfl_1_1Operation.html#a26398c2a7adf50032bdd6a1758988175":[1,0,0,55,12], +"classfl_1_1Operation.html#a2684ad6ae0b3ddda245ab58b706c6b8f":[1,0,0,55,1], +"classfl_1_1Operation.html#a2d55752e3bf2f6bf8bc48b3d22a2f506":[1,0,0,55,5], +"classfl_1_1Operation.html#a33778a1ae2ccbe4f1187737dfdb5556f":[1,0,0,55,15], +"classfl_1_1Operation.html#a3a9ae8d5c79846d8ea7efef9242990e0":[1,0,0,55,38], +"classfl_1_1Operation.html#a3bd473932d3b8353e40af877c467b324":[1,0,0,55,6], +"classfl_1_1Operation.html#a3fd742ebe803b311b3dc3c0db2fe82ae":[1,0,0,55,27], +"classfl_1_1Operation.html#a51e639fd4862ad97169f0638c9257bbb":[1,0,0,55,25], +"classfl_1_1Operation.html#a5bfb04163bcf6cdb7859f0f4a8bb9fd5":[1,0,0,55,34], +"classfl_1_1Operation.html#a60c60482b67760369150130596fe5331":[1,0,0,55,4], +"classfl_1_1Operation.html#a62eaeb9a80c982e70c2e1397b79c0beb":[1,0,0,55,16], +"classfl_1_1Operation.html#a68bc7cb26cc0ef3f21643e628d5f5fc5":[1,0,0,55,33], +"classfl_1_1Operation.html#a6c988814edbd4dc11ea8f1d81ecbc249":[1,0,0,55,22], +"classfl_1_1Operation.html#a6d59606686bb29794d3811004934d5e7":[1,0,0,55,19], +"classfl_1_1Operation.html#a74d7e8bc4a4be3c2f7e7474e0d69f7eb":[1,0,0,55,20], +"classfl_1_1Operation.html#a7b850cc7676978e71fae37040008903b":[1,0,0,55,0], +"classfl_1_1Operation.html#a7c6bb139fc09adb0c9bfe0929c75c7ff":[1,0,0,55,2], +"classfl_1_1Operation.html#a8626d08eb181ed5a36acf703d9a2baba":[1,0,0,55,26], +"classfl_1_1Operation.html#a8fdf0a07a29557ed149271a7f02b5524":[1,0,0,55,21], +"classfl_1_1Operation.html#a9946abbfa68ed8ee889532a96af71957":[1,0,0,55,17], +"classfl_1_1Operation.html#a9d43cae361f3ad708316caec6c35ba17":[1,0,0,55,41], +"classfl_1_1Operation.html#aa3889ff75f5738822785d237d6390a6a":[1,0,0,55,35], +"classfl_1_1Operation.html#aae38b451d0206cdd3d5e8ae6632a69cf":[1,0,0,55,37], +"classfl_1_1Operation.html#ac0877e14c96f64e9230ca8d0ed0fa9eb":[1,0,0,55,10], +"classfl_1_1Operation.html#ad38f4063108778da509a9d4e6ff86ba8":[1,0,0,55,30], +"classfl_1_1Operation.html#ad717f0ee307b2423a6859c6df7757d74":[1,0,0,55,28], +"classfl_1_1Operation.html#ad781d21609ff3e063257d94304418283":[1,0,0,55,7], +"classfl_1_1Operation.html#adf97aff3b12b6755a9f77c9299868cb2":[1,0,0,55,3], +"classfl_1_1Operation.html#af90151331ed26fad1b39f3a989040f1a":[1,0,0,55,14], +"classfl_1_1Operation.html#afa219e0326d298b15c92f732c591ceaa":[1,0,0,55,8], +"classfl_1_1Operation.html#afbeb97277d6491ed88fe680633a64e15":[1,0,0,55,24], +"classfl_1_1Operator.html":[1,0,0,60], +"classfl_1_1Operator.html#a2d3a4c691493018eb8d1807eca99b414":[1,0,0,60,5], +"classfl_1_1Operator.html#a324bf32a265ad994f839da41399d44d4":[1,0,0,60,2], +"classfl_1_1Operator.html#a33bb5d7430a9cf054c42f6c62e9ab03b":[1,0,0,60,1], +"classfl_1_1Operator.html#a3f3fa3ae5a2efe92e5de7dd8c65656a7":[1,0,0,60,0], +"classfl_1_1Operator.html#a6f34cbf29f81626d61ebfbcee491d2af":[1,0,0,60,4], +"classfl_1_1Operator.html#aa9eea842958312649f58e0c415a6aaca":[1,0,0,60,3], +"classfl_1_1OutputVariable.html":[1,0,0,84], +"classfl_1_1OutputVariable.html#a06fc646d572d770fcb8b98f3d9e7f983":[1,0,0,84,0], +"classfl_1_1OutputVariable.html#a122de7e1ebaceb865958223d98a77fd2":[1,0,0,84,13], +"classfl_1_1OutputVariable.html#a1791942e79c06f0df511329078a4fa8f":[1,0,0,84,17], +"classfl_1_1OutputVariable.html#a3f9dd085069cee0c226be814ce1b4fc6":[1,0,0,84,15], +"classfl_1_1OutputVariable.html#a45490aadbbfec20202053a2fb76c345c":[1,0,0,84,21], +"classfl_1_1OutputVariable.html#a4c790ba61f35ffb40a70465bc4eff269":[1,0,0,84,20], +"classfl_1_1OutputVariable.html#a4c92ca99e61d50e264dbf4cbc0d03a28":[1,0,0,84,3], +"classfl_1_1OutputVariable.html#a631ae981ace3b71c309645f84c31c40d":[1,0,0,84,19], +"classfl_1_1OutputVariable.html#a6afba2565ac43f2dc0ff28e6e6920b62":[1,0,0,84,4], +"classfl_1_1OutputVariable.html#a76709622720bd073f218c5d376cfbd32":[1,0,0,84,1], +"classfl_1_1OutputVariable.html#a77d008ebe5df2837253db89003738f32":[1,0,0,84,5], +"classfl_1_1OutputVariable.html#a7acdeed68a566c8f3fae09ead1bf534a":[1,0,0,84,6], +"classfl_1_1OutputVariable.html#a81794ae643119692cedcaa8d2584c94e":[1,0,0,84,22], +"classfl_1_1OutputVariable.html#a85e36175f3a81be3a9e0771bd49ae792":[1,0,0,84,2], +"classfl_1_1OutputVariable.html#a8c2865737efc814ae8e214dc04eddea0":[1,0,0,84,8], +"classfl_1_1OutputVariable.html#a8e6591c3cb06b16464cff84994d0f8dc":[1,0,0,84,12], +"classfl_1_1OutputVariable.html#a917f7a21983186a0627480dc0044510c":[1,0,0,84,9], +"classfl_1_1OutputVariable.html#a94bc9e87a1682ad448d5112df2112e2b":[1,0,0,84,10], +"classfl_1_1OutputVariable.html#aa42f02897e6a69c82a86e13473448c7f":[1,0,0,84,23], +"classfl_1_1OutputVariable.html#adbb824cc33473be7299ba289e65ddf1f":[1,0,0,84,14], +"classfl_1_1OutputVariable.html#ae671f7b4d50b1bd0348efca4b18b64ee":[1,0,0,84,18], +"classfl_1_1OutputVariable.html#af5aa8a7e6adb78d51360c195fa0ab175":[1,0,0,84,7], +"classfl_1_1OutputVariable.html#af77232e3528f0d2a51fa08a19eb8885a":[1,0,0,84,11], +"classfl_1_1OutputVariable.html#af8f150c047b96f26e7ee1be522d18d15":[1,0,0,84,16], +"classfl_1_1PiShape.html":[1,0,0,71], +"classfl_1_1PiShape.html#a094990367147e1a36889f449f6d038a3":[1,0,0,71,3], +"classfl_1_1PiShape.html#a13b09d4230a58b312a9bbd890982c2bc":[1,0,0,71,11], +"classfl_1_1PiShape.html#a231d003759000eeed3cc5f4fef8606b5":[1,0,0,71,5], +"classfl_1_1PiShape.html#a3021c7131cfac066661c75b314d0249c":[1,0,0,71,6], +"classfl_1_1PiShape.html#a3c40ddb8438bb35ff31a677b8dead8c4":[1,0,0,71,0], +"classfl_1_1PiShape.html#a3f8cdd32ed69468a7eda86894330be37":[1,0,0,71,2], +"classfl_1_1PiShape.html#a4e775dd0812a93d312c1b88d2ae1c58e":[1,0,0,71,1], +"classfl_1_1PiShape.html#a5afd826af62985d899c0741892f9dd65":[1,0,0,71,17], +"classfl_1_1PiShape.html#a8bfe56c1a00846040ea02f564b004723":[1,0,0,71,12], +"classfl_1_1PiShape.html#a9e19511ff789a1b9b4587f4176bda765":[1,0,0,71,14], +"classfl_1_1PiShape.html#aa3529d73d2f6669aac49e16bef3ba113":[1,0,0,71,13], +"classfl_1_1PiShape.html#aac117c385800e2d294bb420f754e08dd":[1,0,0,71,16], +"classfl_1_1PiShape.html#ab33f3af8845f990cd73425fabbede063":[1,0,0,71,19], +"classfl_1_1PiShape.html#ab9e95a7ff467a1df9a543ad8a03cab3e":[1,0,0,71,15], +"classfl_1_1PiShape.html#ac28ea4bd4efe15c60858d5c19d113801":[1,0,0,71,7], +"classfl_1_1PiShape.html#ac581e7799ff38f4974ea0762436d286a":[1,0,0,71,4], +"classfl_1_1PiShape.html#ac6d9a607b36a3eab748355e4835d6fd0":[1,0,0,71,8], +"classfl_1_1PiShape.html#ad3d00a9cdbae079cf73267b9d9c1daaf":[1,0,0,71,18], +"classfl_1_1PiShape.html#ad4c0740301f52a2c9703f21ceea769d1":[1,0,0,71,10], +"classfl_1_1PiShape.html#af4603dfcf2981ba30c0f83b367fad91a":[1,0,0,71,9], +"classfl_1_1Proposition.html":[1,0,0,59], +"classfl_1_1Proposition.html#a09ad3358683f937dd555118daf929e0e":[1,0,0,59,2], +"classfl_1_1Proposition.html#a1a3ee950c8fa4e4152d67aa16b1124c4":[1,0,0,59,0], +"classfl_1_1Proposition.html#a4fc5d8e5b865b13faccfbf6f3983bc87":[1,0,0,59,1], +"classfl_1_1Proposition.html#a9b987871dbe823c8e959813cb5e5dc47":[1,0,0,59,4], +"classfl_1_1Proposition.html#afe005bc95d5f8b4298ab40c42a78eecb":[1,0,0,59,3], +"classfl_1_1Ramp.html":[1,0,0,72], +"classfl_1_1Ramp.html#a0c1010c3f85c5233e716698582d63f07":[1,0,0,72,1], +"classfl_1_1Ramp.html#a119f38fb9f642f8bc450244dfb501138":[1,0,0,72,6], +"classfl_1_1Ramp.html#a1e538377748de2e6de2f38e38fcb9cb7":[1,0,0,72,5], +"classfl_1_1Ramp.html#a340c5b421b4d37f2937d68c10250fa2f":[1,0,0,72,4], +"classfl_1_1Ramp.html#a487ad50106207e65ac5fb6b94eeb7bef":[1,0,0,72,8], +"classfl_1_1Ramp.html#a4ba4665ac5fd0ef2ec129f04c1c3eae0":[1,0,0,72,13], +"classfl_1_1Ramp.html#a4c133fee56f32fb9161c8deeb9e71594":[1,0,0,72,7], +"classfl_1_1Ramp.html#a75fad92d5146124ae5c25d4c4695ba81":[1,0,0,72,10], +"classfl_1_1Ramp.html#a8a3168d355fb959fa7c3651ac18bccea":[1,0,0,72,3], +"classfl_1_1Ramp.html#a8f06e34a6d2576ed3acfe7dd2535800e":[1,0,0,72,2], +"classfl_1_1Ramp.html#a9259fc96fd86481966c24ff7fadd2829":[1,0,0,72,9], +"classfl_1_1Ramp.html#aa6ed7deef8f2c02469053e0c72cbec2f":[1,0,0,72,0], +"classfl_1_1Ramp.html#aad37fbd6f4bfdf7d0e6f588fdc0d554c":[1,0,0,72,11], +"classfl_1_1Ramp.html#ab51cf85926685a575ae265eed12a362c":[1,0,0,72,12], +"classfl_1_1Rectangle.html":[1,0,0,73], +"classfl_1_1Rectangle.html#a1421c1c000bc6b99dc8a8ce38f3e8e5a":[1,0,0,73,10], +"classfl_1_1Rectangle.html#a16850355bc3080c58d098718bc74d693":[1,0,0,73,5], +"classfl_1_1Rectangle.html#a1fea0ee869b3d2072b7b430e7870c832":[1,0,0,73,7], +"classfl_1_1Rectangle.html#a360223ebc53f3def1fb7ef58d26e9f27":[1,0,0,73,1], +"classfl_1_1Rectangle.html#a3e607d89ff856e9e770837918b2cff83":[1,0,0,73,12], +"classfl_1_1Rectangle.html#a52fa7b8b5da4764993a22c5f76068f12":[1,0,0,73,4], +"classfl_1_1Rectangle.html#a702c94e6b27e9758662d00e30e91d174":[1,0,0,73,13], +"classfl_1_1Rectangle.html#a72ef9e6eb3f0dbe4f17f4526529b7713":[1,0,0,73,9], +"classfl_1_1Rectangle.html#a7358a312ee158f1559d513818377dca1":[1,0,0,73,8], +"classfl_1_1Rectangle.html#a939b4731743f1c142eb6b6fffcea0c27":[1,0,0,73,2], +"classfl_1_1Rectangle.html#a9a1999b425dbfda2067bf80d3d305c9b":[1,0,0,73,11], +"classfl_1_1Rectangle.html#ab40019b91b2f1711510cebd2872ec2ae":[1,0,0,73,0], +"classfl_1_1Rectangle.html#ac67297489749e2fcd87ac4e4d8fb01cb":[1,0,0,73,6], +"classfl_1_1Rectangle.html#ad62883ba5a2345bec73466d50fee9855":[1,0,0,73,3], +"classfl_1_1Rule.html":[1,0,0,61], +"classfl_1_1Rule.html#a01346aa0042f6e19a5b3eb532f60679c":[1,0,0,61,5], +"classfl_1_1Rule.html#a0a9cb5b41edddb24376b9d76e276df1a":[1,0,0,61,20], +"classfl_1_1Rule.html#a135a6f061eeb5ebe7686898850a144d3":[1,0,0,61,14], +"classfl_1_1Rule.html#a1ed414c8b6c9fb759f7fb31e4e600e9d":[1,0,0,61,17], +"classfl_1_1Rule.html#a1fcb07152c4c0990d4ae84e4f7249661":[1,0,0,61,1], +"classfl_1_1Rule.html#a20274fc48a348154088377de031823bf":[1,0,0,61,23], +"classfl_1_1Rule.html#a36c12c5ae1321335d87334023e01fa84":[1,0,0,61,26], +"classfl_1_1Rule.html#a3b10652232437ba140686314e2cb68b8":[1,0,0,61,7], +"classfl_1_1Rule.html#a3bea9718055bcdd1387c2f3f9e5c20b7":[1,0,0,61,2], +"classfl_1_1Rule.html#a52c84de220b7b3a5b8dff7f451858793":[1,0,0,61,11], +"classfl_1_1Rule.html#a64a4724bc25ff81a788df4cfacbaca07":[1,0,0,61,18], +"classfl_1_1Rule.html#a683eb935711e5635460ccd2aae058799":[1,0,0,61,21], +"classfl_1_1Rule.html#a6d4f3e6cf5f88fe37322d21f8ddcf895":[1,0,0,61,25], +"classfl_1_1Rule.html#a70c95c8aba9754c6532035d0e03987cc":[1,0,0,61,28], +"classfl_1_1Rule.html#a79109b35408f02fcc7f093dd0a705645":[1,0,0,61,6], +"classfl_1_1Rule.html#a7f255fffc4373cb0510b7199dd4b9b78":[1,0,0,61,13], +"classfl_1_1Rule.html#a86c83c1fda834afadd60eb13a39f642b":[1,0,0,61,10], +"classfl_1_1Rule.html#a937d9a3aec0c40a80d151257520003f1":[1,0,0,61,9], +"classfl_1_1Rule.html#a954192f9c76e435bb6a06fcdc85cfacc":[1,0,0,61,3], +"classfl_1_1Rule.html#a97f0308d02b3b70882b07dd6f0cb0faa":[1,0,0,61,4], +"classfl_1_1Rule.html#aa039c22128735b014599205e5c6aaae0":[1,0,0,61,12], +"classfl_1_1Rule.html#aa49f7be45b2b600ce6a3117c6a17e973":[1,0,0,61,30], +"classfl_1_1Rule.html#abfde18c3de35a6475a65775e322ee737":[1,0,0,61,24], +"classfl_1_1Rule.html#acbacb0365400543997388562eb2a8099":[1,0,0,61,15], +"classfl_1_1Rule.html#accfd136c3453600147f92012d08d58da":[1,0,0,61,27], +"classfl_1_1Rule.html#acddaccce7360343f2f4c7fe9b0cdfea5":[1,0,0,61,31], +"classfl_1_1Rule.html#adbeaa04dcd7a6be8697815321f84939e":[1,0,0,61,8], +"classfl_1_1Rule.html#adfa6e97f1301e0d72292c6f08b9123af":[1,0,0,61,19], +"classfl_1_1Rule.html#ae89e01c6d92f2299883e4ff4af116e97":[1,0,0,61,22], +"classfl_1_1Rule.html#aeaba5fc5afe18eb656d95358120033f7":[1,0,0,61,16], +"classfl_1_1Rule.html#afa624470efc917d0a09ae71c91970019":[1,0,0,61,29], +"classfl_1_1Rule.html#afea11e9e7ae8634cfadeed23e3e7a941":[1,0,0,61,0], +"classfl_1_1RuleBlock.html":[1,0,0,62], +"classfl_1_1RuleBlock.html#a0063308d826b58c93e794ef7fb2e6aea":[1,0,0,62,15], +"classfl_1_1RuleBlock.html#a15e8f50bae4e37ca96e8c181663e141b":[1,0,0,62,22], +"classfl_1_1RuleBlock.html#a21c7d3c3b2f78463c49a0067a7e0318c":[1,0,0,62,25], +"classfl_1_1RuleBlock.html#a22bd9d7799508a81007549203996634f":[1,0,0,62,18], +"classfl_1_1RuleBlock.html#a2ec9c0522dae7ab556a8668d56f50092":[1,0,0,62,17], +"classfl_1_1RuleBlock.html#a44a4516d8e39f0dbda4ea35c55d70f44":[1,0,0,62,8], +"classfl_1_1RuleBlock.html#a4a71297776c25fb87a60d7a6e0c9adc0":[1,0,0,62,2], +"classfl_1_1RuleBlock.html#a4c45f750812d0552af1c2dfdfd401475":[1,0,0,62,23], +"classfl_1_1RuleBlock.html#a5b429157fdd3b34e31a713a0012eb525":[1,0,0,62,6], +"classfl_1_1RuleBlock.html#a64bd2b2ac301dda1a9a60c5bbd82465b":[1,0,0,62,10], +"classfl_1_1RuleBlock.html#a797b1eee683e243bba549371660b589b":[1,0,0,62,5], +"classfl_1_1RuleBlock.html#a821fc78689df167ec6e7c8b534e5615b":[1,0,0,62,1], +"classfl_1_1RuleBlock.html#a9360214a72cf4b5848e48212df2bc17f":[1,0,0,62,24], +"classfl_1_1RuleBlock.html#a93a45335aa50f2033fec5146ab1553f9":[1,0,0,62,12], +"classfl_1_1RuleBlock.html#a94435fd1ce2df4df3ba5bab4f991ade6":[1,0,0,62,19], +"classfl_1_1RuleBlock.html#aa3733a36fa8a578b8eb053952f246259":[1,0,0,62,9], +"classfl_1_1RuleBlock.html#aa5ecbdc1c6d8c58e646a26fc46312dfb":[1,0,0,62,7], +"classfl_1_1RuleBlock.html#aa64fb71dae713d530c02cd168d47910d":[1,0,0,62,13], +"classfl_1_1RuleBlock.html#ab1300746c0e0d6ba3dfe7724dc24ea6d":[1,0,0,62,11], +"classfl_1_1RuleBlock.html#ab1bfd4615560a594ca3565cd2be03b4d":[1,0,0,62,21], +"classfl_1_1RuleBlock.html#ac22d5325d9f446bbee5a7029f3fde978":[1,0,0,62,3], +"classfl_1_1RuleBlock.html#ace0c87fdaa860f31bc5c7964b47c2ebc":[1,0,0,62,0], +"classfl_1_1RuleBlock.html#adaa02f1efdbb3769869df13802445f6b":[1,0,0,62,16] +}; diff --git a/docs/html/navtreeindex4.js b/docs/html/navtreeindex4.js new file mode 100644 index 0000000..c276da5 --- /dev/null +++ b/docs/html/navtreeindex4.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX4 = +{ +"classfl_1_1RuleBlock.html#ae61d6c0e0abf753e8f2387dbeb9b96f8":[1,0,0,62,14], +"classfl_1_1RuleBlock.html#aece505e71bdb55648d43f907f2569cdd":[1,0,0,62,4], +"classfl_1_1RuleBlock.html#af7b0fcdd06aec8bf85eec9b8e524e512":[1,0,0,62,20], +"classfl_1_1SNorm.html":[1,0,0,47], +"classfl_1_1SNorm.html#a57aaa46c8866d1bb249390b3b4c144af":[1,0,0,47,0], +"classfl_1_1SNorm.html#a95e973ef6bc8e85ed54eb260923c1035":[1,0,0,47,1], +"classfl_1_1SNormFactory.html":[1,0,0,17], +"classfl_1_1SNormFactory.html#a1d6357b8589db16e37602998735b9151":[1,0,0,17,0], +"classfl_1_1SNormFactory.html#ad5842aa0eb3048900c03ce3d338684c3":[1,0,0,17,1], +"classfl_1_1SShape.html":[1,0,0,77], +"classfl_1_1SShape.html#a00b9f5874d4c73b6af95cb8cbf904885":[1,0,0,77,6], +"classfl_1_1SShape.html#a1dd1a940158dac71e3cdf6833a70046e":[1,0,0,77,3], +"classfl_1_1SShape.html#a3b10741f63553b1be4fc4daf15cd4a39":[1,0,0,77,9], +"classfl_1_1SShape.html#a95b6da4d1df8716190717e5ff8213928":[1,0,0,77,8], +"classfl_1_1SShape.html#a9a3814c905ec7ecb0be8746959a19c6e":[1,0,0,77,4], +"classfl_1_1SShape.html#aace3f0789823a5bfda5b468ef966b052":[1,0,0,77,12], +"classfl_1_1SShape.html#aad2d8e8c1f6c68079be1cff2453cb20d":[1,0,0,77,10], +"classfl_1_1SShape.html#ab49faed746f299e6b6c194e070637f2b":[1,0,0,77,0], +"classfl_1_1SShape.html#ac00269f23058fb9a75ef38bf567ba9cf":[1,0,0,77,1], +"classfl_1_1SShape.html#ad8d53ac163ca3a66c537a55f4d3773e0":[1,0,0,77,7], +"classfl_1_1SShape.html#ada38fba887b769e59706741ea315d810":[1,0,0,77,13], +"classfl_1_1SShape.html#ae4703c2f06aa41d086f44125c03dae7f":[1,0,0,77,2], +"classfl_1_1SShape.html#aef70e37103979595a6abceefe24de522":[1,0,0,77,11], +"classfl_1_1SShape.html#afef1d4cfb56b9c41dc605dec148d1b66":[1,0,0,77,5], +"classfl_1_1Seldom.html":[1,0,0,25], +"classfl_1_1Seldom.html#a09ddaa9c37d6f47a93fdca30de9ca76e":[1,0,0,25,1], +"classfl_1_1Seldom.html#a10942e294076f4a7ccf72d83c4ecb771":[1,0,0,25,2], +"classfl_1_1Seldom.html#a797fa8fa609c431ab15ad81acf8011b6":[1,0,0,25,0], +"classfl_1_1Sigmoid.html":[1,0,0,74], +"classfl_1_1Sigmoid.html#a041068ed00b5f71d63eaaef85b9965a3":[1,0,0,74,2], +"classfl_1_1Sigmoid.html#a047e9747674b2e72288301086c060a9d":[1,0,0,74,12], +"classfl_1_1Sigmoid.html#a160d05a70c6403039aabbbedd88296a3":[1,0,0,74,5], +"classfl_1_1Sigmoid.html#a2a1a6c704cb9619c0dc2c71fe723dd8a":[1,0,0,74,13], +"classfl_1_1Sigmoid.html#a30efb9dd268ec57bcd462fe231fd3835":[1,0,0,74,10], +"classfl_1_1Sigmoid.html#a68506ad83b40be87aa62fef391f1bfcf":[1,0,0,74,11], +"classfl_1_1Sigmoid.html#a739b7c89f1ae2c7a1249e0677b2a2b99":[1,0,0,74,1], +"classfl_1_1Sigmoid.html#a7a0d855fc287413f7b740bc4619c350b":[1,0,0,74,6], +"classfl_1_1Sigmoid.html#a7ac49ce947a1f1e7c983300470c717ea":[1,0,0,74,0], +"classfl_1_1Sigmoid.html#a83f9471108c479f65d207881f7bece1f":[1,0,0,74,7], +"classfl_1_1Sigmoid.html#a8ebea71a9b3f4453cf9400d0ea2d72b8":[1,0,0,74,3], +"classfl_1_1Sigmoid.html#ab51722fe28e76a1838461ddf2eb38898":[1,0,0,74,4], +"classfl_1_1Sigmoid.html#ab704c08f9251bb86c7b6452d277c4b85":[1,0,0,74,8], +"classfl_1_1Sigmoid.html#af31208d52da5262004df47169a35db02":[1,0,0,74,9], +"classfl_1_1SigmoidDifference.html":[1,0,0,75], +"classfl_1_1SigmoidDifference.html#a19c58fd4be7f89cdb74642d24f72c4e2":[1,0,0,75,0], +"classfl_1_1SigmoidDifference.html#a1c222c6d79caa4d34efe3afd43a94742":[1,0,0,75,10], +"classfl_1_1SigmoidDifference.html#a2b687452721fcf9099cafacdb56becca":[1,0,0,75,1], +"classfl_1_1SigmoidDifference.html#a3b82e5868627b078f6501d60ed370b95":[1,0,0,75,6], +"classfl_1_1SigmoidDifference.html#a6ac7371a547ce2d21f913fcaba000dc1":[1,0,0,75,14], +"classfl_1_1SigmoidDifference.html#a6bb2a9cbf1bec2d66b414ec22f5a2c91":[1,0,0,75,17], +"classfl_1_1SigmoidDifference.html#a70668837104e1388972f6ef35a8d92f3":[1,0,0,75,2], +"classfl_1_1SigmoidDifference.html#a7e59ac222159477a0569a1f92118af33":[1,0,0,75,11], +"classfl_1_1SigmoidDifference.html#a866ad6003c772f12617674c419912359":[1,0,0,75,9], +"classfl_1_1SigmoidDifference.html#a89001909ecb959b8b666629ea05522e2":[1,0,0,75,12], +"classfl_1_1SigmoidDifference.html#aa0a0e0156e906e86554171f71226bb21":[1,0,0,75,8], +"classfl_1_1SigmoidDifference.html#aaa9b83b82f261e31c2ad1d083de34e8f":[1,0,0,75,19], +"classfl_1_1SigmoidDifference.html#aaaf6d5dc80dba26bef5c4afacabebc72":[1,0,0,75,13], +"classfl_1_1SigmoidDifference.html#abb20c3349649e34a62c9ea15c38908bd":[1,0,0,75,5], +"classfl_1_1SigmoidDifference.html#abef39f7d6e542a4d2390d84430fbcbd2":[1,0,0,75,4], +"classfl_1_1SigmoidDifference.html#ad118c55132e218b17e156ee5e2e48898":[1,0,0,75,15], +"classfl_1_1SigmoidDifference.html#ad7abd6cb8a42ac01bc6a280b60a05f5f":[1,0,0,75,3], +"classfl_1_1SigmoidDifference.html#ada1f5fb685c4a368ef921d9a39066f6b":[1,0,0,75,7], +"classfl_1_1SigmoidDifference.html#aee8ab367cb39e486d41d75ac70171e31":[1,0,0,75,16], +"classfl_1_1SigmoidDifference.html#aefda31f6ee4fd714ff6d75b9799b7642":[1,0,0,75,18], +"classfl_1_1SigmoidProduct.html":[1,0,0,76], +"classfl_1_1SigmoidProduct.html#a06246685478bd13b5935660aa273bf54":[1,0,0,76,15], +"classfl_1_1SigmoidProduct.html#a0f44d8a921f634b4f6079eb4d1539f7f":[1,0,0,76,11], +"classfl_1_1SigmoidProduct.html#a111018dbf5382cde37c57a898fe4190b":[1,0,0,76,17], +"classfl_1_1SigmoidProduct.html#a291521b7a3c5e5c626dc08a6c619ff09":[1,0,0,76,6], +"classfl_1_1SigmoidProduct.html#a372515ab559efe0971d93be1fd450c9a":[1,0,0,76,0], +"classfl_1_1SigmoidProduct.html#a57a79ecae4ae191c794daa8f6e7262f0":[1,0,0,76,2], +"classfl_1_1SigmoidProduct.html#a728a798b46142bda0cf669a71d0078f0":[1,0,0,76,12], +"classfl_1_1SigmoidProduct.html#a8accc2d7f727bb9fbc223b2a41656077":[1,0,0,76,4], +"classfl_1_1SigmoidProduct.html#a8be0013ba551bc840ef6794e6149e4e9":[1,0,0,76,8], +"classfl_1_1SigmoidProduct.html#a97ddb3029c2e53c881ff7be047542af7":[1,0,0,76,7], +"classfl_1_1SigmoidProduct.html#aa8288569224e8452d47e73022ac104be":[1,0,0,76,19], +"classfl_1_1SigmoidProduct.html#ab64f25b7a88958654a31a77cee766868":[1,0,0,76,1], +"classfl_1_1SigmoidProduct.html#acf9520217fc3e23030b069944298432b":[1,0,0,76,16], +"classfl_1_1SigmoidProduct.html#ade2ae7a6cb509c0bbe6681e6c5705fa9":[1,0,0,76,18], +"classfl_1_1SigmoidProduct.html#ae5dc654786106eb7fb9bda80327e050a":[1,0,0,76,10], +"classfl_1_1SigmoidProduct.html#ae5f48d14eb5213c8cddab30d19a69443":[1,0,0,76,14], +"classfl_1_1SigmoidProduct.html#aed789b39ce575842924f5e25380fce93":[1,0,0,76,9], +"classfl_1_1SigmoidProduct.html#af4f5e30c2acf6283ba4f0d0b4366d538":[1,0,0,76,5], +"classfl_1_1SigmoidProduct.html#aff50affd81bbd658a4a241de68d8489e":[1,0,0,76,3], +"classfl_1_1SigmoidProduct.html#affba33a2e2899c829f5c3e4d18aecadc":[1,0,0,76,13], +"classfl_1_1SmallestOfMaximum.html":[1,0,0,7], +"classfl_1_1SmallestOfMaximum.html#a4a7302b8f400d3a78f01e350e35eb6a2":[1,0,0,7,2], +"classfl_1_1SmallestOfMaximum.html#a53a8843c46d80161e6b3a96a48e72d8a":[1,0,0,7,4], +"classfl_1_1SmallestOfMaximum.html#a6b7101728e38f14ae134e0637da053cc":[1,0,0,7,0], +"classfl_1_1SmallestOfMaximum.html#abc20f251007432e11609952c058480a3":[1,0,0,7,1], +"classfl_1_1SmallestOfMaximum.html#af72246930702d987172dbf031140c4d8":[1,0,0,7,3], +"classfl_1_1Somewhat.html":[1,0,0,26], +"classfl_1_1Somewhat.html#a8e27f4a78dbdb0941b07a2d04234534d":[1,0,0,26,1], +"classfl_1_1Somewhat.html#ace3660d876c8ebaa378072a0bf717322":[1,0,0,26,0], +"classfl_1_1Somewhat.html#af3615970e0db67462de0c2ed3656c520":[1,0,0,26,2], +"classfl_1_1TNorm.html":[1,0,0,54], +"classfl_1_1TNorm.html#a1fdc4f59a4c6398c87343a68c4c21222":[1,0,0,54,0], +"classfl_1_1TNorm.html#a91e0033f37bbb4749877773695461539":[1,0,0,54,1], +"classfl_1_1TNormFactory.html":[1,0,0,19], +"classfl_1_1TNormFactory.html#ac99158ca2c3dc21ccfa76f0eed8d21e0":[1,0,0,19,1], +"classfl_1_1TNormFactory.html#ad2f476c6d252a4b23d2a007cfd63840a":[1,0,0,19,0], +"classfl_1_1Term.html":[1,0,0,78], +"classfl_1_1Term.html#a0af99d979bfdc52617ceabce9d1f3cc0":[1,0,0,78,1], +"classfl_1_1Term.html#a0b2db6c39da45e0edc7d3478bb3c25c6":[1,0,0,78,5], +"classfl_1_1Term.html#a100f48b9e2332a89c2835198a5cc4b10":[1,0,0,78,3], +"classfl_1_1Term.html#a54bd381b285d0017ba82a022a113aaf5":[1,0,0,78,8], +"classfl_1_1Term.html#a62dc23ac6846823fbfd38c1d6cbc7040":[1,0,0,78,0], +"classfl_1_1Term.html#a9f9ea77910a6383bbc1533d83d84716d":[1,0,0,78,4], +"classfl_1_1Term.html#aa549e2805339c8fe2e41effba52d5bf5":[1,0,0,78,10], +"classfl_1_1Term.html#abe166cd54a2f9b483472942e3536cb85":[1,0,0,78,7], +"classfl_1_1Term.html#ad5e7a6c98f286c05f88bf89adac1ca92":[1,0,0,78,9], +"classfl_1_1Term.html#ae23daa362e9e6fb780ea967f6ababf0a":[1,0,0,78,6], +"classfl_1_1Term.html#afd351ca4f67712f630215108a11f32a7":[1,0,0,78,2], +"classfl_1_1TermFactory.html":[1,0,0,18], +"classfl_1_1TermFactory.html#a9029aa048f82f8474c1fbb834477bbeb":[1,0,0,18,0], +"classfl_1_1TermFactory.html#adf9341c40db429dffb486bf7a998ed2f":[1,0,0,18,1], +"classfl_1_1Thresholded.html":[1,0,0,79], +"classfl_1_1Thresholded.html#a29395c6461a696a9325c4137861b3d8d":[1,0,0,79,6], +"classfl_1_1Thresholded.html#a32336abe9201687a83cab2cf9681e88b":[1,0,0,79,7], +"classfl_1_1Thresholded.html#a35e57e00911b7a3ede84b320920a7ebb":[1,0,0,79,15], +"classfl_1_1Thresholded.html#a390708b1f0f0f71a5b0ecbebcfe3d533":[1,0,0,79,0], +"classfl_1_1Thresholded.html#a43e013c005ecd115d3edcdf9741b7567":[1,0,0,79,5], +"classfl_1_1Thresholded.html#a51fa711138205dbef7b4a37b3c1ca15b":[1,0,0,79,4], +"classfl_1_1Thresholded.html#a65669113ccd7b7d644f51e327852288e":[1,0,0,79,14], +"classfl_1_1Thresholded.html#a662f8746c8a308d486232771166fb0fb":[1,0,0,79,8], +"classfl_1_1Thresholded.html#a93374bd46ec05cefd21181b377417312":[1,0,0,79,9], +"classfl_1_1Thresholded.html#a9501586c7e7001b3999f1274c958a380":[1,0,0,79,12], +"classfl_1_1Thresholded.html#aa1c213432f49be607b7476e7bec02abe":[1,0,0,79,10], +"classfl_1_1Thresholded.html#aa79a1332b3db88e72a7a9a9af97a4719":[1,0,0,79,3], +"classfl_1_1Thresholded.html#ac075393794b8c65386bb09ad1e23834b":[1,0,0,79,1], +"classfl_1_1Thresholded.html#acc3ca7d0763b153bc898bb82ef191a55":[1,0,0,79,2], +"classfl_1_1Thresholded.html#ae22fd23d510715a4b300c730ae499f99":[1,0,0,79,11], +"classfl_1_1Thresholded.html#aee777ad4584fbb883754fba22ebf69c4":[1,0,0,79,13], +"classfl_1_1Trapezoid.html":[1,0,0,80], +"classfl_1_1Trapezoid.html#a019ee6474e6cb880a2587e93b893b6e3":[1,0,0,80,11], +"classfl_1_1Trapezoid.html#a1e31c93218d59c3335ff91ef4fdc0538":[1,0,0,80,10], +"classfl_1_1Trapezoid.html#a1ec763e62d23f610abc43b0356a21c54":[1,0,0,80,19], +"classfl_1_1Trapezoid.html#a4dc77e97a1c3135d08b5d5ae9f32ed07":[1,0,0,80,0], +"classfl_1_1Trapezoid.html#a4de88b0acaab4179e40545075c085e7e":[1,0,0,80,5], +"classfl_1_1Trapezoid.html#a572ba414202bad966cb0523081565b86":[1,0,0,80,7], +"classfl_1_1Trapezoid.html#a685a066f9e39dc70d2a512c702f384b3":[1,0,0,80,2], +"classfl_1_1Trapezoid.html#a70eb451c7aad4395ec47701f100ca5a6":[1,0,0,80,15], +"classfl_1_1Trapezoid.html#a913deb47c560e1b0435a2fc49fcc20ff":[1,0,0,80,17], +"classfl_1_1Trapezoid.html#a926e739b8296315c9a5ce83e916df6d7":[1,0,0,80,4], +"classfl_1_1Trapezoid.html#a9520c5972c8ef7bf4efa1bc5b8924a6f":[1,0,0,80,12], +"classfl_1_1Trapezoid.html#a96709e4e121d803da2fefeb6047b92c4":[1,0,0,80,18], +"classfl_1_1Trapezoid.html#aac990da5f3bc3b2b4764357f7ac7dc66":[1,0,0,80,16], +"classfl_1_1Trapezoid.html#abf9b4cdd06a3b3eb39536868e63589dd":[1,0,0,80,13], +"classfl_1_1Trapezoid.html#ad1379bc03d6b842c920cc29741cb2736":[1,0,0,80,1], +"classfl_1_1Trapezoid.html#ada7f3bc0527d900c772b0851a330ba2d":[1,0,0,80,6], +"classfl_1_1Trapezoid.html#ae8149c6a3811c50c80e29f6197bd8f66":[1,0,0,80,9], +"classfl_1_1Trapezoid.html#aeb2022f8184512b566a7619873c35587":[1,0,0,80,8], +"classfl_1_1Trapezoid.html#af12f243cd2a2b3b6c0288c52e0bbd7e9":[1,0,0,80,3], +"classfl_1_1Trapezoid.html#af480c59dbc145e11ff0478ac25b57385":[1,0,0,80,14], +"classfl_1_1Triangle.html":[1,0,0,81], +"classfl_1_1Triangle.html#a0d34aba217c2c47ad2066244e85502f3":[1,0,0,81,13], +"classfl_1_1Triangle.html#a470574b4c57b614454418ccf152da5e1":[1,0,0,81,5], +"classfl_1_1Triangle.html#a4a3f37fbb1ed642d3264b0b957d5908b":[1,0,0,81,9], +"classfl_1_1Triangle.html#a4a7c49f2eef08aa3302ae5e29c82b4a3":[1,0,0,81,6], +"classfl_1_1Triangle.html#a4d79a8c91f2f3828bbdc7175fdb6e015":[1,0,0,81,2], +"classfl_1_1Triangle.html#a4f50e986809986c82037de5208537e2f":[1,0,0,81,1], +"classfl_1_1Triangle.html#a60e18f64d3adffc3093b08af105c3449":[1,0,0,81,12], +"classfl_1_1Triangle.html#a68beb6cf6eedb9e7e939fd1780cf535a":[1,0,0,81,11], +"classfl_1_1Triangle.html#a69986be1299cd2e18424d5b955f2733f":[1,0,0,81,14], +"classfl_1_1Triangle.html#a7da7dfa0d1e8cb091ca559a5cf8d9351":[1,0,0,81,4], +"classfl_1_1Triangle.html#a807a53d3ce8ee520c01c13a76d772f30":[1,0,0,81,3], +"classfl_1_1Triangle.html#a99df4726d6414912e1ac0fba99f68b47":[1,0,0,81,16], +"classfl_1_1Triangle.html#aa694221a73f60c3b131f05e93ab54bf3":[1,0,0,81,8], +"classfl_1_1Triangle.html#abe8e44ee94cbc0e9e37ecb3e58b4ce46":[1,0,0,81,10], +"classfl_1_1Triangle.html#accf99c2e84283ba0a5a3d25ac3540991":[1,0,0,81,15], +"classfl_1_1Triangle.html#adf8fd9bd87e88f606cc29daab17d1d75":[1,0,0,81,0], +"classfl_1_1Triangle.html#afece31dc006ea9885d4f2dad43f65dd1":[1,0,0,81,7], +"classfl_1_1Tsukamoto.html":[1,0,0,8], +"classfl_1_1Tsukamoto.html#a0238b45188674d7fa3e45f09ad016343":[1,0,0,8,0], +"classfl_1_1Variable.html":[1,0,0,85], +"classfl_1_1Variable.html#a029e3696756f21639f6a476b8ff0b138":[1,0,0,85,3], +"classfl_1_1Variable.html#a07762ffd5c636e1b37b4233dfa9be1b6":[1,0,0,85,11], +"classfl_1_1Variable.html#a0c19d07387e35f7b96e88b64249f89d1":[1,0,0,85,28], +"classfl_1_1Variable.html#a26d2334f8afd573c8ebed27c72309338":[1,0,0,85,8], +"classfl_1_1Variable.html#a4c81c1f5479adc40eb552dc5ba9be061":[1,0,0,85,13], +"classfl_1_1Variable.html#a53575c5e4f520ef389ba097d3e5a36e9":[1,0,0,85,27], +"classfl_1_1Variable.html#a5502c7010d710663a7b90343f7fa4d34":[1,0,0,85,9], +"classfl_1_1Variable.html#a643c97119900221fdd7c8e72a0be6ccf":[1,0,0,85,22], +"classfl_1_1Variable.html#a7b4716cb6623bddc24a4084f85e63869":[1,0,0,85,30], +"classfl_1_1Variable.html#a7ff7080e2f7a282ab0a66308721b869e":[1,0,0,85,4], +"classfl_1_1Variable.html#a814019c457f88c4e7ae3ff09bb353d78":[1,0,0,85,14], +"classfl_1_1Variable.html#a9ae979c3dc2e7161c7a79d89700c4b58":[1,0,0,85,20], +"classfl_1_1Variable.html#a9fd85e7de334e33318cde13f93f4d5e0":[1,0,0,85,23], +"classfl_1_1Variable.html#aa3bde8705979a1af1c857f6e17981814":[1,0,0,85,12], +"classfl_1_1Variable.html#aa6ec7f7e00faa114267edf386fde48f9":[1,0,0,85,17], +"classfl_1_1Variable.html#aa9482cef47139253fd25a7ed02538e5e":[1,0,0,85,21], +"classfl_1_1Variable.html#aabf0b9cebd1361271e04a602e4b21c92":[1,0,0,85,19], +"classfl_1_1Variable.html#aad41c391557ab0812e05f73896a8169f":[1,0,0,85,5], +"classfl_1_1Variable.html#ab141b7c2a05488b7a92697a80baf298a":[1,0,0,85,18], +"classfl_1_1Variable.html#ab7a949d0398629ba35d21f70c75f25c0":[1,0,0,85,10], +"classfl_1_1Variable.html#abbae3650d5d5a80d2128a59570c4880e":[1,0,0,85,6], +"classfl_1_1Variable.html#ac2a8e5c9bc47d8fc943a6502381cc501":[1,0,0,85,7], +"classfl_1_1Variable.html#acc8e2aada76ea676684b81bb2b5e12c6":[1,0,0,85,25], +"classfl_1_1Variable.html#acda25738675210de35d76514c6c50582":[1,0,0,85,15], +"classfl_1_1Variable.html#ad24d35dc5e23847dd520ab35dd47b66b":[1,0,0,85,1], +"classfl_1_1Variable.html#add2efa8900070f5f06ffe1497792673a":[1,0,0,85,29], +"classfl_1_1Variable.html#ae2f77db0362e53cfa67decbc05ace0b8":[1,0,0,85,2], +"classfl_1_1Variable.html#aee4811348bc71b992b51bb8b21bf7d0f":[1,0,0,85,16], +"classfl_1_1Variable.html#aef34088e135f22788ffedeb338ce580d":[1,0,0,85,24], +"classfl_1_1Variable.html#af3da836e5c21086982d42a53465104c0":[1,0,0,85,26], +"classfl_1_1Very.html":[1,0,0,27], +"classfl_1_1Very.html#a99e7d2e3f703e6b9612adfd56143e9db":[1,0,0,27,2], +"classfl_1_1Very.html#ac69b6207a02d6c7127c62fb9e1d0e4a4":[1,0,0,27,0], +"classfl_1_1Very.html#ae331113074c7dee2df941e84e6d7ae85":[1,0,0,27,1], +"classfl_1_1WeightedAverage.html":[1,0,0,9], +"classfl_1_1WeightedAverage.html#a69cb72ae04264d438690bd0d23f13dd4":[1,0,0,9,0], +"classfl_1_1WeightedAverage.html#a992edc31cb46e38191d5f750de37e281":[1,0,0,9,4], +"classfl_1_1WeightedAverage.html#ab9a018867fe59c52152ae75b7998b91d":[1,0,0,9,3], +"classfl_1_1WeightedAverage.html#ae6d56b608f1295269b671a0ac0d5c4bf":[1,0,0,9,1], +"classfl_1_1WeightedAverage.html#af130a933b869dad231ccd3748b0377d8":[1,0,0,9,2], +"classfl_1_1WeightedSum.html":[1,0,0,10], +"classfl_1_1WeightedSum.html#a5e2bd343178e3b5b82513ba4e8d76302":[1,0,0,10,3], +"classfl_1_1WeightedSum.html#a5fee2381ac48d33305cd29387433cfae":[1,0,0,10,1], +"classfl_1_1WeightedSum.html#a98a8278e11abb3a9dea58e9e9d75c6ba":[1,0,0,10,0], +"classfl_1_1WeightedSum.html#aa8c7072f42219b9a7100aa16f0e6e427":[1,0,0,10,4], +"classfl_1_1WeightedSum.html#ada6b20ede0039b4517231ac7f74a0d30":[1,0,0,10,2], +"classfl_1_1ZShape.html":[1,0,0,82], +"classfl_1_1ZShape.html#a01c48e10ed374c0aea3c0ac578db9e46":[1,0,0,82,7], +"classfl_1_1ZShape.html#a0fd3d0fa1a33f23b2c89a2c3b658cc09":[1,0,0,82,10], +"classfl_1_1ZShape.html#a3cc9f0d130305aa3d7afae44576763e8":[1,0,0,82,8], +"classfl_1_1ZShape.html#a5fec6776563af1b7de30aa5fd97b6bac":[1,0,0,82,6], +"classfl_1_1ZShape.html#a628871407ebeeedb924f437c89177061":[1,0,0,82,9], +"classfl_1_1ZShape.html#a7560999842346f564f689a427b9f2114":[1,0,0,82,0], +"classfl_1_1ZShape.html#a7e044c217eed3571c707641c1b3465c4":[1,0,0,82,3], +"classfl_1_1ZShape.html#a81235ae129498b7defc5d247afcefb60":[1,0,0,82,4], +"classfl_1_1ZShape.html#a8ac998acfc9492859008eeb5a4ca0454":[1,0,0,82,5], +"classfl_1_1ZShape.html#aab9a8bf0737de2680c9a421c2c6ab89e":[1,0,0,82,13], +"classfl_1_1ZShape.html#aacb9f39a1d26b9c50e43908115ddc4b9":[1,0,0,82,11], +"classfl_1_1ZShape.html#ab2e801c3a211512b7328a71b687f6109":[1,0,0,82,1], +"classfl_1_1ZShape.html#ab6958e4e9d2e5db62e7f62893bcd7afd":[1,0,0,82,12], +"classfl_1_1ZShape.html#aef7094c49f93f96217d1ae787d0b7686":[1,0,0,82,2], +"classfl_1_1fuzzylite.html":[1,0,0,20], +"classfl_1_1fuzzylite.html#a089930a858fe2f0ad309331f96d403f0":[1,0,0,20,1], +"classfl_1_1fuzzylite.html#a15221b258922e96bb6ff9e270ec9678e":[1,0,0,20,10], +"classfl_1_1fuzzylite.html#a1fe97fa6ede2cb612d3d75408cc77913":[1,0,0,20,18], +"classfl_1_1fuzzylite.html#a46bb31970b57509e50cf5e17e2caeb3e":[1,0,0,20,8], +"classfl_1_1fuzzylite.html#a4879aa89db2f02c55316cb5bc49b1d65":[1,0,0,20,6], +"classfl_1_1fuzzylite.html#a4aaad0b03eebd83ccfb01a3ffb307d51":[1,0,0,20,17], +"classfl_1_1fuzzylite.html#a537521f5a55a706e2b0c5d8cddfd842a":[1,0,0,20,14], +"classfl_1_1fuzzylite.html#a6df0949b8d769591ca383985e31414ba":[1,0,0,20,5], +"classfl_1_1fuzzylite.html#a7ba42a4547287cf82376139c8c84a3ac":[1,0,0,20,12], +"classfl_1_1fuzzylite.html#a7ecb3f3d1979043fca3b5b13dc7883be":[1,0,0,20,3], +"classfl_1_1fuzzylite.html#a8a0e943a752795f49476c3c447f73b29":[1,0,0,20,11], +"classfl_1_1fuzzylite.html#a8eb9af065085aed7ed5f0fb187c8b43f":[1,0,0,20,16], +"classfl_1_1fuzzylite.html#ac2d3a7652fb4cab32d28f22219140c55":[1,0,0,20,7] +}; diff --git a/docs/html/navtreeindex5.js b/docs/html/navtreeindex5.js new file mode 100644 index 0000000..5874ea6 --- /dev/null +++ b/docs/html/navtreeindex5.js @@ -0,0 +1,161 @@ +var NAVTREEINDEX5 = +{ +"classfl_1_1fuzzylite.html#ac45078e9cf4b2bd72550e39172bc6b4d":[1,0,0,20,19], +"classfl_1_1fuzzylite.html#ac4ff06e22ed1031e0a3cc1538dea751f":[1,0,0,20,2], +"classfl_1_1fuzzylite.html#ad2cc6e7674b83d2d81f7273892efd655":[1,0,0,20,13], +"classfl_1_1fuzzylite.html#ad30f34196fccf39d165b19f96cab3dc8":[1,0,0,20,15], +"classfl_1_1fuzzylite.html#ad9c08f16bc85e32173726707dd38d561":[1,0,0,20,0], +"classfl_1_1fuzzylite.html#aeec67f83c1315df438540263b6da184d":[1,0,0,20,9], +"classfl_1_1fuzzylite.html#af7ac9d34e39f267de40ae3be3aae787c":[1,0,0,20,20], +"classfl_1_1fuzzylite.html#af94d7e84ef71e1e0a623483ef029274c":[1,0,0,20,4], +"dir_161d5a887887075714729d2b35513d2b.html":[2,0,0,6], +"dir_1af8842c1311eb082cb3e223ab89db4f.html":[2,0,0,4], +"dir_23de148878169a119297c667740a54ce.html":[2,0,1,2], +"dir_339115f1b781ea71218b7406990eb67d.html":[2,0,1,1], +"dir_346797d119176f7c3021150a06b607ef.html":[2,0,1,5], +"dir_40f6c62369d6b06217d4ed139120d9de.html":[2,0,0,4,0], +"dir_49826fc8f3b398d071db22ee62d7f9dc.html":[2,0,1,4,1], +"dir_615c4fbdb742a52431f88625cca1cf79.html":[2,0,0,3], +"dir_68267d1309a1af8e8297ef4c3efbcdba.html":[2,0,1], +"dir_7c2f64c83e4ef2f8c111ffefe4999066.html":[2,0,0,5], +"dir_83e2dac974ac256d297f4b3ea7389d3b.html":[2,0,0,4,1], +"dir_8b219120625e1fa7ab4c92a860dcf9e1.html":[2,0,1,4], +"dir_a28af64c69f937098282ac45c0f90516.html":[2,0,1,0], +"dir_ae4fd117ed058af620a7f9c6b122246c.html":[2,0,0,2], +"dir_b3a7a25080b519a3641d9ccfed70d150.html":[2,0,0,1], +"dir_ca839787d91adf1c2a8e5c582e02170b.html":[2,0,0], +"dir_cecdad49218b9b3c9c5af30994c8ad3b.html":[2,0,1,3], +"dir_dd920bd76ff7422f03265981cd757b41.html":[2,0,1,7], +"dir_e37372f7558ffd49ec7feacdd1690968.html":[2,0,0,0], +"dir_e70d9782a398e4e71c1c31b664156fa5.html":[2,0,0,7], +"dir_e7ad4502f5ebd0b23aa3ffe30e6f686b.html":[2,0,1,4,0], +"dir_f015963f69ae14c534311f2118856536.html":[2,0,1,6], +"files.html":[2,0], +"functions.html":[1,3,0], +"functions.html":[1,3,0,0], +"functions_0x61.html":[1,3,0,1], +"functions_0x62.html":[1,3,0,2], +"functions_0x63.html":[1,3,0,3], +"functions_0x64.html":[1,3,0,4], +"functions_0x65.html":[1,3,0,5], +"functions_0x66.html":[1,3,0,6], +"functions_0x67.html":[1,3,0,7], +"functions_0x68.html":[1,3,0,8], +"functions_0x69.html":[1,3,0,9], +"functions_0x6a.html":[1,3,0,10], +"functions_0x6b.html":[1,3,0,11], +"functions_0x6c.html":[1,3,0,12], +"functions_0x6d.html":[1,3,0,13], +"functions_0x6e.html":[1,3,0,14], +"functions_0x6f.html":[1,3,0,15], +"functions_0x70.html":[1,3,0,16], +"functions_0x72.html":[1,3,0,17], +"functions_0x73.html":[1,3,0,18], +"functions_0x74.html":[1,3,0,19], +"functions_0x75.html":[1,3,0,20], +"functions_0x76.html":[1,3,0,21], +"functions_0x77.html":[1,3,0,22], +"functions_0x78.html":[1,3,0,23], +"functions_0x79.html":[1,3,0,24], +"functions_0x7a.html":[1,3,0,25], +"functions_0x7e.html":[1,3,0,26], +"functions_func.html":[1,3,1], +"functions_func.html":[1,3,1,0], +"functions_func_0x62.html":[1,3,1,1], +"functions_func_0x63.html":[1,3,1,2], +"functions_func_0x64.html":[1,3,1,3], +"functions_func_0x65.html":[1,3,1,4], +"functions_func_0x66.html":[1,3,1,5], +"functions_func_0x67.html":[1,3,1,6], +"functions_func_0x68.html":[1,3,1,7], +"functions_func_0x69.html":[1,3,1,8], +"functions_func_0x6a.html":[1,3,1,9], +"functions_func_0x6c.html":[1,3,1,10], +"functions_func_0x6d.html":[1,3,1,11], +"functions_func_0x6e.html":[1,3,1,12], +"functions_func_0x6f.html":[1,3,1,13], +"functions_func_0x70.html":[1,3,1,14], +"functions_func_0x72.html":[1,3,1,15], +"functions_func_0x73.html":[1,3,1,16], +"functions_func_0x74.html":[1,3,1,17], +"functions_func_0x75.html":[1,3,1,18], +"functions_func_0x76.html":[1,3,1,19], +"functions_func_0x77.html":[1,3,1,20], +"functions_func_0x7a.html":[1,3,1,21], +"functions_func_0x7e.html":[1,3,1,22], +"functions_type.html":[1,3,3], +"functions_vars.html":[1,3,2], +"fuzzylite_8cpp.html":[2,0,1,11], +"fuzzylite_8h.html":[2,0,0,11], +"fuzzylite_8h.html#a05084ec1207bb07770b8663cfe5c95d0":[2,0,0,11,6], +"fuzzylite_8h.html#a18236efc548b42b6a767fd99e36c196f":[2,0,0,11,3], +"fuzzylite_8h.html#a3a8805bbd95046da97c4233e548826df":[2,0,0,11,1], +"fuzzylite_8h.html#a62d4b835802d5d8e8e14cfa0a35f4181":[2,0,0,11,5], +"fuzzylite_8h.html#a6b930a844b4fa50fe63a178ae5b1d896":[2,0,0,11,11], +"fuzzylite_8h.html#a784dc3ea21a0ba359537da155a00e61d":[2,0,0,11,4], +"fuzzylite_8h.html#a79d6c0af9f3f337643496f2f81f5ba1d":[2,0,0,11,2], +"fuzzylite_8h.html#a7c31a28fa2ed8960a0eb0a779744b689":[2,0,0,11,14], +"fuzzylite_8h.html#a923af823da4f8ccb7d3a71cda2011862":[2,0,0,11,7], +"fuzzylite_8h.html#a92b7a322a6b3854fb0f7469d26f61fc2":[2,0,0,11,8], +"fuzzylite_8h.html#a94499c96b5f3ca212d90a2c41f947a67":[2,0,0,11,13], +"fuzzylite_8h.html#a9ce9b761c2cbab8d04a2eae44e63c1f1":[2,0,0,11,15], +"fuzzylite_8h.html#aa9ba29a18aee9d738370a06eeb4470fc":[2,0,0,11,9], +"fuzzylite_8h.html#ac0141619ed9a08fb175cc92f134720e3":[2,0,0,11,16], +"fuzzylite_8h.html#ac1b133a2f567fc5de2a07db84638138d":[2,0,0,11,10], +"fuzzylite_8h.html#af63fafdda4cae2ad4c11ada9492d8f4a":[2,0,0,11,12], +"fuzzylite_8h_source.html":[2,0,0,11], +"globals.html":[2,1,0], +"globals_defs.html":[2,1,2], +"globals_func.html":[2,1,1], +"hierarchy.html":[1,2], +"index.html":[], +"main_8cpp.html":[2,0,1,12], +"main_8cpp.html#a2c51c31f8231e9629bb80fd37ced3e46":[2,0,1,12,0], +"main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627":[2,0,1,12,1], +"namespacefl.html":[1,0,0], +"namespacefl.html":[0,0,0], +"namespacemembers.html":[0,1,0], +"namespacemembers_type.html":[0,1,2], +"namespacemembers_vars.html":[0,1,1], +"namespaces.html":[0,0], +"pages.html":[], +"structfl_1_1Function_1_1BuiltInFunction.html":[1,0,0,67,0], +"structfl_1_1Function_1_1BuiltInFunction.html#a2c81ad5335e3aa36294f5e2da316a5d4":[1,0,0,67,0,1], +"structfl_1_1Function_1_1BuiltInFunction.html#a2d5f12900baee07457ee39422d926929":[1,0,0,67,0,2], +"structfl_1_1Function_1_1BuiltInFunction.html#aee227557ef13b636f84b2ad25090168b":[1,0,0,67,0,0], +"structfl_1_1Function_1_1Element.html":[1,0,0,67,1], +"structfl_1_1Function_1_1Element.html#a0e94e77d855e1ca6a306410dca144062":[1,0,0,67,1,3], +"structfl_1_1Function_1_1Element.html#a1ae6b7bc90ebffe97438909239096f47":[1,0,0,67,1,2], +"structfl_1_1Function_1_1Element.html#a2ca8f010c887a5c263746e6eb3f285b3":[1,0,0,67,1,1], +"structfl_1_1Function_1_1Element.html#a399e44e0aca38be2ea561a8ac3805d9f":[1,0,0,67,1,4], +"structfl_1_1Function_1_1Element.html#a4305dc1ff772374eeeb56985d3c5224d":[1,0,0,67,1,7], +"structfl_1_1Function_1_1Element.html#a71bfb343da7cd382044ab2dfa1da2320":[1,0,0,67,1,5], +"structfl_1_1Function_1_1Element.html#a78180111ba536fd7d979f359e611ddf6":[1,0,0,67,1,8], +"structfl_1_1Function_1_1Element.html#a9e76e33ff8628660c4878cc50a6acd73":[1,0,0,67,1,9], +"structfl_1_1Function_1_1Element.html#aa383fb0e7e1f64a272dfa028cbc3705d":[1,0,0,67,1,0], +"structfl_1_1Function_1_1Element.html#ac5cfb06ea9500b5652a5287d3f6b9f01":[1,0,0,67,1,6], +"structfl_1_1Function_1_1Node.html":[1,0,0,67,2], +"structfl_1_1Function_1_1Node.html#a0542be42a101c4a7bf83b6f36d7c4803":[1,0,0,67,2,10], +"structfl_1_1Function_1_1Node.html#a149a3a2a32108642885610ef45f17a08":[1,0,0,67,2,6], +"structfl_1_1Function_1_1Node.html#a6006ced779f74ce4a82afa51f6d12986":[1,0,0,67,2,9], +"structfl_1_1Function_1_1Node.html#a6426ce26425fc1e917bf74f2c4d05373":[1,0,0,67,2,14], +"structfl_1_1Function_1_1Node.html#a7587687bc9ba4aa12b9c56c9d0d5138a":[1,0,0,67,2,13], +"structfl_1_1Function_1_1Node.html#a80d665ccd5b5f88514ddbc284739346e":[1,0,0,67,2,11], +"structfl_1_1Function_1_1Node.html#a816142e6c0dc4b16f60f6ae77276a8df":[1,0,0,67,2,2], +"structfl_1_1Function_1_1Node.html#a8307059ce23580e7ce44466d183dd5cf":[1,0,0,67,2,12], +"structfl_1_1Function_1_1Node.html#a84c26b9bde409b2c33620bc52d1e7ab5":[1,0,0,67,2,8], +"structfl_1_1Function_1_1Node.html#a8d0a1c64fd0e5a5966742d3393c240fa":[1,0,0,67,2,4], +"structfl_1_1Function_1_1Node.html#aa7922fad2b23c6b51eaae3e8aa435987":[1,0,0,67,2,1], +"structfl_1_1Function_1_1Node.html#ac223edba05d5ffe69cda42c358aff9af":[1,0,0,67,2,7], +"structfl_1_1Function_1_1Node.html#acfbfbe7695d1c55c7b7db22737900b73":[1,0,0,67,2,5], +"structfl_1_1Function_1_1Node.html#adfe462bb8f6b9559f2e882e357121e50":[1,0,0,67,2,3], +"structfl_1_1Function_1_1Node.html#afb68a9731cbc8b0373298d444eed6637":[1,0,0,67,2,0], +"structfl_1_1Function_1_1Operator.html":[1,0,0,67,3], +"structfl_1_1Function_1_1Operator.html#a12ad8f672f087b51084b21b8035fab2c":[1,0,0,67,3,1], +"structfl_1_1Function_1_1Operator.html#a13a251c753eea116a8a84c99c5d3dd99":[1,0,0,67,3,3], +"structfl_1_1Function_1_1Operator.html#a28f2a1453f0a3433d4a2865fba33193f":[1,0,0,67,3,0], +"structfl_1_1Function_1_1Operator.html#a34152f4040c7a69f78842c7ad211e725":[1,0,0,67,3,2], +"structfl_1_1Variable_1_1SortByCoG.html":[1,0,0,85,0], +"structfl_1_1Variable_1_1SortByCoG.html#a7525f3e02463f76c7fa85805153f8eb8":[1,0,0,85,0,0], +"structfl_1_1Variable_1_1SortByCoG.html#aff5d6538ec5a7d6b2d0f616ce2810de9":[1,0,0,85,0,1] +}; diff --git a/docs/html/open.png b/docs/html/open.png new file mode 100644 index 0000000..30f75c7 Binary files /dev/null and b/docs/html/open.png differ diff --git a/docs/html/resize.js b/docs/html/resize.js new file mode 100644 index 0000000..8365b25 --- /dev/null +++ b/docs/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/docs/html/search/all_5f.html b/docs/html/search/all_5f.html new file mode 100644 index 0000000..879d792 --- /dev/null +++ b/docs/html/search/all_5f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_5f.js b/docs/html/search/all_5f.js new file mode 100644 index 0000000..5f40239 --- /dev/null +++ b/docs/html/search/all_5f.js @@ -0,0 +1,71 @@ +var searchData= +[ + ['_5fa',['_a',['../classfl_1_1Trapezoid.html#aac990da5f3bc3b2b4764357f7ac7dc66',1,'fl::Trapezoid::_a()'],['../classfl_1_1Triangle.html#a69986be1299cd2e18424d5b955f2733f',1,'fl::Triangle::_a()']]], + ['_5faccumulation',['_accumulation',['../classfl_1_1Accumulated.html#a50d93d91e226d8b791ba47d55c693006',1,'fl::Accumulated']]], + ['_5factivation',['_activation',['../classfl_1_1RuleBlock.html#af7b0fcdd06aec8bf85eec9b8e524e512',1,'fl::RuleBlock::_activation()'],['../classfl_1_1Thresholded.html#aee777ad4584fbb883754fba22ebf69c4',1,'fl::Thresholded::_activation()']]], + ['_5fantecedent',['_antecedent',['../classfl_1_1Rule.html#a683eb935711e5635460ccd2aae058799',1,'fl::Rule']]], + ['_5fb',['_b',['../classfl_1_1Trapezoid.html#a913deb47c560e1b0435a2fc49fcc20ff',1,'fl::Trapezoid::_b()'],['../classfl_1_1Triangle.html#accf99c2e84283ba0a5a3d25ac3540991',1,'fl::Triangle::_b()']]], + ['_5fbottomleft',['_bottomLeft',['../classfl_1_1PiShape.html#aac117c385800e2d294bb420f754e08dd',1,'fl::PiShape']]], + ['_5fbottomright',['_bottomRight',['../classfl_1_1PiShape.html#a5afd826af62985d899c0741892f9dd65',1,'fl::PiShape']]], + ['_5fc',['_c',['../classfl_1_1Trapezoid.html#a96709e4e121d803da2fefeb6047b92c4',1,'fl::Trapezoid::_c()'],['../classfl_1_1Triangle.html#a99df4726d6414912e1ac0fba99f68b47',1,'fl::Triangle::_c()']]], + ['_5fcenter',['_center',['../classfl_1_1Bell.html#a712423c00763794af97e587b9b7a80e3',1,'fl::Bell']]], + ['_5fconclusions',['_conclusions',['../classfl_1_1Consequent.html#afa623758e3674ea30a3b462dd9f26118',1,'fl::Consequent']]], + ['_5fconjunction',['_conjunction',['../classfl_1_1RuleBlock.html#ab1bfd4615560a594ca3565cd2be03b4d',1,'fl::RuleBlock']]], + ['_5fconsequent',['_consequent',['../classfl_1_1Rule.html#ae89e01c6d92f2299883e4ff4af116e97',1,'fl::Rule']]], + ['_5fd',['_d',['../classfl_1_1Trapezoid.html#a1ec763e62d23f610abc43b0356a21c54',1,'fl::Trapezoid']]], + ['_5fdebug',['_debug',['../classfl_1_1fuzzylite.html#a4aaad0b03eebd83ccfb01a3ffb307d51',1,'fl::fuzzylite']]], + ['_5fdecimals',['_decimals',['../classfl_1_1fuzzylite.html#a1fe97fa6ede2cb612d3d75408cc77913',1,'fl::fuzzylite']]], + ['_5fdefaultvalue',['_defaultValue',['../classfl_1_1OutputVariable.html#ae671f7b4d50b1bd0348efca4b18b64ee',1,'fl::OutputVariable']]], + ['_5fdefuzzifier',['_defuzzifier',['../classfl_1_1FactoryManager.html#abfc5c5c5faa761711c5a9e6efba0732c',1,'fl::FactoryManager::_defuzzifier()'],['../classfl_1_1OutputVariable.html#a631ae981ace3b71c309645f84c31c40d',1,'fl::OutputVariable::_defuzzifier()']]], + ['_5fdisjunction',['_disjunction',['../classfl_1_1RuleBlock.html#a15e8f50bae4e37ca96e8c181663e141b',1,'fl::RuleBlock']]], + ['_5fenabled',['_enabled',['../classfl_1_1RuleBlock.html#a4c45f750812d0552af1c2dfdfd401475',1,'fl::RuleBlock::_enabled()'],['../classfl_1_1Variable.html#af3da836e5c21086982d42a53465104c0',1,'fl::Variable::_enabled()']]], + ['_5fend',['_end',['../classfl_1_1Ramp.html#ab51cf85926685a575ae265eed12a362c',1,'fl::Ramp::_end()'],['../classfl_1_1Rectangle.html#a3e607d89ff856e9e770837918b2cff83',1,'fl::Rectangle::_end()'],['../classfl_1_1SShape.html#aace3f0789823a5bfda5b468ef966b052',1,'fl::SShape::_end()'],['../classfl_1_1ZShape.html#ab6958e4e9d2e5db62e7f62893bcd7afd',1,'fl::ZShape::_end()']]], + ['_5fengine',['_engine',['../classfl_1_1Function.html#a62b753626cf4bd6dac6be17ae6c4191b',1,'fl::Function']]], + ['_5ffalling',['_falling',['../classfl_1_1SigmoidDifference.html#aee8ab367cb39e486d41d75ac70171e31',1,'fl::SigmoidDifference::_falling()'],['../classfl_1_1SigmoidProduct.html#acf9520217fc3e23030b069944298432b',1,'fl::SigmoidProduct::_falling()']]], + ['_5fformula',['_formula',['../classfl_1_1Function.html#a170910c5be1bf1c62ebdf0af75edad5d',1,'fl::Function']]], + ['_5ffuzzyoutput',['_fuzzyOutput',['../classfl_1_1OutputVariable.html#a4c790ba61f35ffb40a70465bc4eff269',1,'fl::OutputVariable']]], + ['_5fhedge',['_hedge',['../classfl_1_1FactoryManager.html#a88fdfe634b35c34aabc9cce41748bbef',1,'fl::FactoryManager']]], + ['_5fhedges',['_hedges',['../classfl_1_1Engine.html#ad223b542db52763b4307141dd1743ac8',1,'fl::Engine']]], + ['_5findent',['_indent',['../classfl_1_1FclExporter.html#a752ac81d142301a3f0b18f415cd4bdd3',1,'fl::FclExporter::_indent()'],['../classfl_1_1FllExporter.html#a4ef591a02dab3796d640cb7a22bdd182',1,'fl::FllExporter::_indent()']]], + ['_5finflection',['_inflection',['../classfl_1_1Sigmoid.html#a047e9747674b2e72288301086c060a9d',1,'fl::Sigmoid']]], + ['_5finputvalue',['_inputValue',['../classfl_1_1InputVariable.html#abe998a09cc17fd8d66edae2b5e6e3afe',1,'fl::InputVariable']]], + ['_5finputvariables',['_inputVariables',['../classfl_1_1Engine.html#afe5a903a3c7e0d9f56224d7c640c84e8',1,'fl::Engine']]], + ['_5finstance',['_instance',['../classfl_1_1FactoryManager.html#abcd343824f484712cace3796d35a0c24',1,'fl::FactoryManager']]], + ['_5flastvalidoutput',['_lastValidOutput',['../classfl_1_1OutputVariable.html#a45490aadbbfec20202053a2fb76c345c',1,'fl::OutputVariable']]], + ['_5fleft',['_left',['../classfl_1_1SigmoidDifference.html#a6bb2a9cbf1bec2d66b414ec22f5a2c91',1,'fl::SigmoidDifference::_left()'],['../classfl_1_1SigmoidProduct.html#a111018dbf5382cde37c57a898fe4190b',1,'fl::SigmoidProduct::_left()']]], + ['_5flockoutputrange',['_lockOutputRange',['../classfl_1_1OutputVariable.html#a81794ae643119692cedcaa8d2584c94e',1,'fl::OutputVariable']]], + ['_5flockvalidoutput',['_lockValidOutput',['../classfl_1_1OutputVariable.html#aa42f02897e6a69c82a86e13473448c7f',1,'fl::OutputVariable']]], + ['_5flogging',['_logging',['../classfl_1_1fuzzylite.html#ac45078e9cf4b2bd72550e39172bc6b4d',1,'fl::fuzzylite']]], + ['_5fmacheps',['_macheps',['../classfl_1_1fuzzylite.html#af7ac9d34e39f267de40ae3be3aae787c',1,'fl::fuzzylite']]], + ['_5fmaximum',['_maximum',['../classfl_1_1FldExporter.html#a8c785e9652876bc2859f24fd2246550d',1,'fl::FldExporter::_maximum()'],['../classfl_1_1Accumulated.html#a87c58504eb0f9c015d39ef52830e417c',1,'fl::Accumulated::_maximum()'],['../classfl_1_1Variable.html#a53575c5e4f520ef389ba097d3e5a36e9',1,'fl::Variable::_maximum()']]], + ['_5fmean',['_mean',['../classfl_1_1Gaussian.html#a3afa7aadb27e046ed07d5c77e9a878b5',1,'fl::Gaussian']]], + ['_5fmeana',['_meanA',['../classfl_1_1GaussianProduct.html#acb0046558c2b810abb9566afe149f444',1,'fl::GaussianProduct']]], + ['_5fmeanb',['_meanB',['../classfl_1_1GaussianProduct.html#a566dbd763abb96ea82d70d3a3aa357d4',1,'fl::GaussianProduct']]], + ['_5fminimum',['_minimum',['../classfl_1_1Accumulated.html#a35cbbe5cfe41d3e0fc8518878562c4ae',1,'fl::Accumulated::_minimum()'],['../classfl_1_1Variable.html#a0c19d07387e35f7b96e88b64249f89d1',1,'fl::Variable::_minimum()']]], + ['_5fname',['_name',['../classfl_1_1Engine.html#a49806c12fc00793a8170b6b3cbb55ca7',1,'fl::Engine::_name()'],['../classfl_1_1RuleBlock.html#a9360214a72cf4b5848e48212df2bc17f',1,'fl::RuleBlock::_name()'],['../classfl_1_1Term.html#aa549e2805339c8fe2e41effba52d5bf5',1,'fl::Term::_name()'],['../classfl_1_1Variable.html#add2efa8900070f5f06ffe1497792673a',1,'fl::Variable::_name()']]], + ['_5foutputvariables',['_outputVariables',['../classfl_1_1Engine.html#a042c2d297ef2f399ff5205a751250cf1',1,'fl::Engine']]], + ['_5fresolution',['_resolution',['../classfl_1_1IntegralDefuzzifier.html#a7819eddcff32da2826d990080cf52bc1',1,'fl::IntegralDefuzzifier']]], + ['_5fright',['_right',['../classfl_1_1SigmoidDifference.html#aefda31f6ee4fd714ff6d75b9799b7642',1,'fl::SigmoidDifference::_right()'],['../classfl_1_1SigmoidProduct.html#ade2ae7a6cb509c0bbe6681e6c5705fa9',1,'fl::SigmoidProduct::_right()']]], + ['_5frising',['_rising',['../classfl_1_1SigmoidDifference.html#aaa9b83b82f261e31c2ad1d083de34e8f',1,'fl::SigmoidDifference::_rising()'],['../classfl_1_1SigmoidProduct.html#aa8288569224e8452d47e73022ac104be',1,'fl::SigmoidProduct::_rising()']]], + ['_5froot',['_root',['../classfl_1_1Antecedent.html#a06d8dd233ec6458c52bd8bbc45d16c2c',1,'fl::Antecedent']]], + ['_5fruleblocks',['_ruleblocks',['../classfl_1_1Engine.html#a971cb8784678daa1cfddffdf882df414',1,'fl::Engine']]], + ['_5frules',['_rules',['../classfl_1_1RuleBlock.html#a21c7d3c3b2f78463c49a0067a7e0318c',1,'fl::RuleBlock']]], + ['_5fseparator',['_separator',['../classfl_1_1FldExporter.html#a51b260e8046f2acae03d0e8bd29746b2',1,'fl::FldExporter::_separator()'],['../classfl_1_1FllExporter.html#a2fff42124d24833c1bcf888e64e0fb46',1,'fl::FllExporter::_separator()'],['../classfl_1_1FllImporter.html#ab9df69e5ff68f25bf2fb95fdf9b55f34',1,'fl::FllImporter::_separator()']]], + ['_5fslope',['_slope',['../classfl_1_1Bell.html#a8dde2f9d6b81e8db85ba0e8b31af33a8',1,'fl::Bell::_slope()'],['../classfl_1_1Sigmoid.html#a2a1a6c704cb9619c0dc2c71fe723dd8a',1,'fl::Sigmoid::_slope()']]], + ['_5fsnorm',['_snorm',['../classfl_1_1FactoryManager.html#a8b58509c864378c20b45a4a2b90d816f',1,'fl::FactoryManager']]], + ['_5fstandarddeviation',['_standardDeviation',['../classfl_1_1Gaussian.html#a54d80135fdacc54f4889dc724491f44f',1,'fl::Gaussian']]], + ['_5fstandarddeviationa',['_standardDeviationA',['../classfl_1_1GaussianProduct.html#a6325913403a8d5a752e7eef82b8fe4c9',1,'fl::GaussianProduct']]], + ['_5fstandarddeviationb',['_standardDeviationB',['../classfl_1_1GaussianProduct.html#ab109d8ecd2334f8d627ceda8d7cd5b1f',1,'fl::GaussianProduct']]], + ['_5fstart',['_start',['../classfl_1_1Ramp.html#a4ba4665ac5fd0ef2ec129f04c1c3eae0',1,'fl::Ramp::_start()'],['../classfl_1_1Rectangle.html#a702c94e6b27e9758662d00e30e91d174',1,'fl::Rectangle::_start()'],['../classfl_1_1SShape.html#ada38fba887b769e59706741ea315d810',1,'fl::SShape::_start()'],['../classfl_1_1ZShape.html#aab9a8bf0737de2680c9a421c2c6ab89e',1,'fl::ZShape::_start()']]], + ['_5fterm',['_term',['../classfl_1_1FactoryManager.html#a6287e95f9501f08495ef9277847e25b6',1,'fl::FactoryManager::_term()'],['../classfl_1_1Thresholded.html#a65669113ccd7b7d644f51e327852288e',1,'fl::Thresholded::_term()']]], + ['_5fterms',['_terms',['../classfl_1_1Accumulated.html#a282298974d6e86153e28dedf8f10d863',1,'fl::Accumulated::_terms()'],['../classfl_1_1Variable.html#a7b4716cb6623bddc24a4084f85e63869',1,'fl::Variable::_terms()']]], + ['_5ftext',['_text',['../classfl_1_1Rule.html#a20274fc48a348154088377de031823bf',1,'fl::Rule']]], + ['_5fthreshold',['_threshold',['../classfl_1_1Thresholded.html#a35e57e00911b7a3ede84b320920a7ebb',1,'fl::Thresholded']]], + ['_5ftnorm',['_tnorm',['../classfl_1_1FactoryManager.html#a41e78756d39885587a70b94f09e5350d',1,'fl::FactoryManager']]], + ['_5ftopleft',['_topLeft',['../classfl_1_1PiShape.html#ad3d00a9cdbae079cf73267b9d9c1daaf',1,'fl::PiShape']]], + ['_5ftopright',['_topRight',['../classfl_1_1PiShape.html#ab33f3af8845f990cd73425fabbede063',1,'fl::PiShape']]], + ['_5fvalue',['_value',['../classfl_1_1Constant.html#ae6af66c02a42a87630447148236feb70',1,'fl::Constant']]], + ['_5fweight',['_weight',['../classfl_1_1Rule.html#abfde18c3de35a6475a65775e322ee737',1,'fl::Rule']]], + ['_5fwhat',['_what',['../classfl_1_1Exception.html#a0f3a3e2cf6e03bcd887cbd17b32b6017',1,'fl::Exception']]], + ['_5fwidth',['_width',['../classfl_1_1Bell.html#a960a043c5b9486f4beaee839e08a18ed',1,'fl::Bell']]] +]; diff --git a/docs/html/search/all_61.html b/docs/html/search/all_61.html new file mode 100644 index 0000000..f85089b --- /dev/null +++ b/docs/html/search/all_61.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_61.js b/docs/html/search/all_61.js new file mode 100644 index 0000000..a75ff82 --- /dev/null +++ b/docs/html/search/all_61.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['accumulated',['Accumulated',['../classfl_1_1Accumulated.html',1,'fl']]], + ['accumulated',['Accumulated',['../classfl_1_1Accumulated.html#a2803372b6a40302d26f333cfb077485f',1,'fl::Accumulated']]], + ['accumulated_2ecpp',['Accumulated.cpp',['../Accumulated_8cpp.html',1,'']]], + ['accumulated_2eh',['Accumulated.h',['../Accumulated_8h.html',1,'']]], + ['activate',['activate',['../classfl_1_1Rule.html#a3bea9718055bcdd1387c2f3f9e5c20b7',1,'fl::Rule::activate()'],['../classfl_1_1RuleBlock.html#a4a71297776c25fb87a60d7a6e0c9adc0',1,'fl::RuleBlock::activate()']]], + ['activationdegree',['activationDegree',['../classfl_1_1Antecedent.html#a12119d5422525d7ed3e284def2dea085',1,'fl::Antecedent::activationDegree(const TNorm *conjunction, const SNorm *disjunction, const Expression *node) const '],['../classfl_1_1Antecedent.html#a8e2953d8665346ae849ae4e43a3805e2',1,'fl::Antecedent::activationDegree(const TNorm *conjunction, const SNorm *disjunction) const '],['../classfl_1_1Rule.html#a954192f9c76e435bb6a06fcdc85cfacc',1,'fl::Rule::activationDegree()']]], + ['add',['add',['../classfl_1_1Operation.html#a7b850cc7676978e71fae37040008903b',1,'fl::Operation']]], + ['addhedge',['addHedge',['../classfl_1_1Engine.html#a879e2b74ad7f219a591e8c65674e3870',1,'fl::Engine']]], + ['addinputvariable',['addInputVariable',['../classfl_1_1Engine.html#a545f4b8cb62d3430c4ebceb94e50198c',1,'fl::Engine']]], + ['addoutputvariable',['addOutputVariable',['../classfl_1_1Engine.html#a59d3b93579d829483730bc4c33c93909',1,'fl::Engine']]], + ['addrule',['addRule',['../classfl_1_1RuleBlock.html#ac22d5325d9f446bbee5a7029f3fde978',1,'fl::RuleBlock']]], + ['addruleblock',['addRuleBlock',['../classfl_1_1Engine.html#adb3bb3a9d43f04a3e2222250770b7628',1,'fl::Engine']]], + ['addterm',['addTerm',['../classfl_1_1Accumulated.html#a377dd3dbdcab84eaf2b7017f97c0dafc',1,'fl::Accumulated::addTerm()'],['../classfl_1_1Variable.html#a7ff7080e2f7a282ab0a66308721b869e',1,'fl::Variable::addTerm()']]], + ['algebraicproduct',['AlgebraicProduct',['../classfl_1_1AlgebraicProduct.html',1,'fl']]], + ['algebraicproduct_2ecpp',['AlgebraicProduct.cpp',['../AlgebraicProduct_8cpp.html',1,'']]], + ['algebraicproduct_2eh',['AlgebraicProduct.h',['../AlgebraicProduct_8h.html',1,'']]], + ['algebraicsum',['AlgebraicSum',['../classfl_1_1AlgebraicSum.html',1,'fl']]], + ['algebraicsum_2ecpp',['AlgebraicSum.cpp',['../AlgebraicSum_8cpp.html',1,'']]], + ['algebraicsum_2eh',['AlgebraicSum.h',['../AlgebraicSum_8h.html',1,'']]], + ['andkeyword',['andKeyword',['../classfl_1_1Rule.html#a97f0308d02b3b70882b07dd6f0cb0faa',1,'fl::Rule']]], + ['antecedent',['Antecedent',['../classfl_1_1Antecedent.html',1,'fl']]], + ['antecedent',['Antecedent',['../classfl_1_1Antecedent.html#a659603cb3f1e1d4600ac683115dd9214',1,'fl::Antecedent']]], + ['antecedent_2ecpp',['Antecedent.cpp',['../Antecedent_8cpp.html',1,'']]], + ['antecedent_2eh',['Antecedent.h',['../Antecedent_8h.html',1,'']]], + ['any',['Any',['../classfl_1_1Any.html',1,'fl']]], + ['any_2ecpp',['Any.cpp',['../Any_8cpp.html',1,'']]], + ['any_2eh',['Any.h',['../Any_8h.html',1,'']]], + ['append',['append',['../classfl_1_1Exception.html#ae4fed8d0b27b56a239a683ee7fd9cec4',1,'fl::Exception::append(const std::string &whatElse)'],['../classfl_1_1Exception.html#af82048d1815c64ffbf146c2f20549ddb',1,'fl::Exception::append(const std::string &file, int line, const std::string &function)'],['../classfl_1_1Exception.html#a8293b05db9f8bfa87607de1bb7397990',1,'fl::Exception::append(const std::string &whatElse, const std::string &file, int line, const std::string &function)']]], + ['arity',['arity',['../structfl_1_1Function_1_1Element.html#a71bfb343da7cd382044ab2dfa1da2320',1,'fl::Function::Element']]], + ['assignkeyword',['assignKeyword',['../classfl_1_1Rule.html#a01346aa0042f6e19a5b3eb532f60679c',1,'fl::Rule']]], + ['associativity',['associativity',['../structfl_1_1Function_1_1Element.html#ac5cfb06ea9500b5652a5287d3f6b9f01',1,'fl::Function::Element']]], + ['author',['author',['../classfl_1_1fuzzylite.html#ad9c08f16bc85e32173726707dd38d561',1,'fl::fuzzylite']]], + ['available',['available',['../classfl_1_1Factory.html#ac5d4eb344eea176184f45c30b306f7b0',1,'fl::Factory']]] +]; diff --git a/docs/html/search/all_62.html b/docs/html/search/all_62.html new file mode 100644 index 0000000..f25fa2c --- /dev/null +++ b/docs/html/search/all_62.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_62.js b/docs/html/search/all_62.js new file mode 100644 index 0000000..9883b90 --- /dev/null +++ b/docs/html/search/all_62.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['bell',['Bell',['../classfl_1_1Bell.html',1,'fl']]], + ['bell',['Bell',['../classfl_1_1Bell.html#a5130acddf2553e82e1783ba4fa5cf9bc',1,'fl::Bell']]], + ['bell_2ecpp',['Bell.cpp',['../Bell_8cpp.html',1,'']]], + ['bell_2eh',['Bell.h',['../Bell_8h.html',1,'']]], + ['binary',['binary',['../structfl_1_1Function_1_1Element.html#a4305dc1ff772374eeeb56985d3c5224d',1,'fl::Function::Element::binary()'],['../classfl_1_1Function.html#a72bdd02409670aa19301d1856cc3f4be',1,'fl::Function::Binary()']]], + ['bisector',['Bisector',['../classfl_1_1Bisector.html',1,'fl']]], + ['bisector',['Bisector',['../classfl_1_1Bisector.html#a41f7bc1425d65fcbb0ecb174a293a6f9',1,'fl::Bisector']]], + ['bisector_2ecpp',['Bisector.cpp',['../Bisector_8cpp.html',1,'']]], + ['bisector_2eh',['Bisector.h',['../Bisector_8h.html',1,'']]], + ['boundeddifference',['BoundedDifference',['../classfl_1_1BoundedDifference.html',1,'fl']]], + ['boundeddifference_2ecpp',['BoundedDifference.cpp',['../BoundedDifference_8cpp.html',1,'']]], + ['boundeddifference_2eh',['BoundedDifference.h',['../BoundedDifference_8h.html',1,'']]], + ['boundedsum',['BoundedSum',['../classfl_1_1BoundedSum.html',1,'fl']]], + ['boundedsum_2ecpp',['BoundedSum.cpp',['../BoundedSum_8cpp.html',1,'']]], + ['boundedsum_2eh',['BoundedSum.h',['../BoundedSum_8h.html',1,'']]], + ['btcallstack',['btCallStack',['../classfl_1_1Exception.html#af2828c0abaff2130600f41d0f1fa6ce6',1,'fl::Exception']]], + ['builtinfunction',['BuiltInFunction',['../structfl_1_1Function_1_1BuiltInFunction.html',1,'fl::Function']]], + ['builtinfunction',['BuiltInFunction',['../structfl_1_1Function_1_1BuiltInFunction.html#aee227557ef13b636f84b2ad25090168b',1,'fl::Function::BuiltInFunction::BuiltInFunction(const std::string &name, Unary functionPointer, short associativity=-1)'],['../structfl_1_1Function_1_1BuiltInFunction.html#a2c81ad5335e3aa36294f5e2da316a5d4',1,'fl::Function::BuiltInFunction::BuiltInFunction(const std::string &name, Binary functionPointer, short associativity=-1)']]] +]; diff --git a/docs/html/search/all_63.html b/docs/html/search/all_63.html new file mode 100644 index 0000000..e7f34db --- /dev/null +++ b/docs/html/search/all_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_63.js b/docs/html/search/all_63.js new file mode 100644 index 0000000..12db8e3 --- /dev/null +++ b/docs/html/search/all_63.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['centroid',['Centroid',['../classfl_1_1Centroid.html',1,'fl']]], + ['centroid',['Centroid',['../classfl_1_1Centroid.html#a01d2bf1ac98a8a8d2b890cb93da10948',1,'fl::Centroid']]], + ['centroid_2ecpp',['Centroid.cpp',['../Centroid_8cpp.html',1,'']]], + ['centroid_2eh',['Centroid.h',['../Centroid_8h.html',1,'']]], + ['centroids',['centroids',['../structfl_1_1Variable_1_1SortByCoG.html#aff5d6538ec5a7d6b2d0f616ce2810de9',1,'fl::Variable::SortByCoG']]], + ['classname',['className',['../classfl_1_1Bisector.html#ad2e056a53f33840bc3ed9f8ac1e4f6dc',1,'fl::Bisector::className()'],['../classfl_1_1Centroid.html#a5f6034e17f3db370035e538f2e91ac67',1,'fl::Centroid::className()'],['../classfl_1_1Defuzzifier.html#a511b8deb0f5e67855cd7973a42f0e199',1,'fl::Defuzzifier::className()'],['../classfl_1_1LargestOfMaximum.html#a918f4bf0b8a72898bc1f3bfdf5dc438c',1,'fl::LargestOfMaximum::className()'],['../classfl_1_1MeanOfMaximum.html#a6e37a3a564519a75f345cac5ae31f4af',1,'fl::MeanOfMaximum::className()'],['../classfl_1_1SmallestOfMaximum.html#a4a7302b8f400d3a78f01e350e35eb6a2',1,'fl::SmallestOfMaximum::className()'],['../classfl_1_1WeightedAverage.html#af130a933b869dad231ccd3748b0377d8',1,'fl::WeightedAverage::className()'],['../classfl_1_1WeightedSum.html#ada6b20ede0039b4517231ac7f74a0d30',1,'fl::WeightedSum::className()'],['../classfl_1_1Norm.html#a65614aa0776f7f9dab701cc3eac1b025',1,'fl::Norm::className()'],['../classfl_1_1AlgebraicSum.html#a58ebd1085298edae70e83c80cd941998',1,'fl::AlgebraicSum::className()'],['../classfl_1_1BoundedSum.html#a7776c5491977e8550a3d23088b08ade7',1,'fl::BoundedSum::className()'],['../classfl_1_1DrasticSum.html#acb789b71a2ef7a1cdd955e4bd623e537',1,'fl::DrasticSum::className()'],['../classfl_1_1EinsteinSum.html#aec42a24b948620986abc0cf91f32b644',1,'fl::EinsteinSum::className()'],['../classfl_1_1HamacherSum.html#a9a369bb11910179a3e9501df02d20d39',1,'fl::HamacherSum::className()'],['../classfl_1_1Maximum.html#ab07e483cf7d4a42d0b55f0afde7fbb1b',1,'fl::Maximum::className()'],['../classfl_1_1NormalizedSum.html#acca8ee239c9be60ba1ab618cf5b1b291',1,'fl::NormalizedSum::className()'],['../classfl_1_1AlgebraicProduct.html#afc4c7bb507394d91444ef8e7c882ec94',1,'fl::AlgebraicProduct::className()'],['../classfl_1_1BoundedDifference.html#a2935d9b24208f63851852756656957d9',1,'fl::BoundedDifference::className()'],['../classfl_1_1DrasticProduct.html#a0d21f5ba71a20178afeccb073fc42805',1,'fl::DrasticProduct::className()'],['../classfl_1_1EinsteinProduct.html#a42d8f66c7082903157291f248ce19016',1,'fl::EinsteinProduct::className()'],['../classfl_1_1HamacherProduct.html#a074cd7680f13dc4e4a83d009336310fc',1,'fl::HamacherProduct::className()'],['../classfl_1_1Minimum.html#aaadf3d67f63d3af4aacb6c889027f041',1,'fl::Minimum::className()'],['../classfl_1_1Accumulated.html#aeaad3e5de094846a4315fe0f681893d7',1,'fl::Accumulated::className()'],['../classfl_1_1Bell.html#a736e86bd14209b408550319acec84f4d',1,'fl::Bell::className()'],['../classfl_1_1Constant.html#ab223859f8fed5eb28c311cee7f2bd7b5',1,'fl::Constant::className()'],['../classfl_1_1Discrete.html#ae97f1963a45e12bbe4aac3dd0abe7c9c',1,'fl::Discrete::className()'],['../classfl_1_1Function.html#a3480f8ae860d507fd6253340471421bd',1,'fl::Function::className()'],['../classfl_1_1Gaussian.html#a4fe36a7eabff87f9f589e4fc2b225954',1,'fl::Gaussian::className()'],['../classfl_1_1GaussianProduct.html#a6053012a905ecb9e0b3a7d8fcfddb997',1,'fl::GaussianProduct::className()'],['../classfl_1_1Linear.html#aa80366e763e98a80201e8b941c502291',1,'fl::Linear::className()'],['../classfl_1_1PiShape.html#a3f8cdd32ed69468a7eda86894330be37',1,'fl::PiShape::className()'],['../classfl_1_1Ramp.html#a8f06e34a6d2576ed3acfe7dd2535800e',1,'fl::Ramp::className()'],['../classfl_1_1Rectangle.html#a939b4731743f1c142eb6b6fffcea0c27',1,'fl::Rectangle::className()'],['../classfl_1_1Sigmoid.html#a041068ed00b5f71d63eaaef85b9965a3',1,'fl::Sigmoid::className()'],['../classfl_1_1SigmoidDifference.html#a70668837104e1388972f6ef35a8d92f3',1,'fl::SigmoidDifference::className()'],['../classfl_1_1SigmoidProduct.html#a57a79ecae4ae191c794daa8f6e7262f0',1,'fl::SigmoidProduct::className()'],['../classfl_1_1SShape.html#ae4703c2f06aa41d086f44125c03dae7f',1,'fl::SShape::className()'],['../classfl_1_1Term.html#afd351ca4f67712f630215108a11f32a7',1,'fl::Term::className()'],['../classfl_1_1Thresholded.html#acc3ca7d0763b153bc898bb82ef191a55',1,'fl::Thresholded::className()'],['../classfl_1_1Trapezoid.html#a685a066f9e39dc70d2a512c702f384b3',1,'fl::Trapezoid::className()'],['../classfl_1_1Triangle.html#a4d79a8c91f2f3828bbdc7175fdb6e015',1,'fl::Triangle::className()'],['../classfl_1_1ZShape.html#aef7094c49f93f96217d1ae787d0b7686',1,'fl::ZShape::className()']]], + ['clean',['clean',['../classfl_1_1FllImporter.html#ad8a8138ff6532113ca4dea3926b8e138',1,'fl::FllImporter']]], + ['clear',['clear',['../classfl_1_1Accumulated.html#ade66c6bfa57957cfb7863196977fcf79',1,'fl::Accumulated']]], + ['coefficients',['coefficients',['../classfl_1_1Linear.html#a7867e3422a5f07339246f3bd245ac91b',1,'fl::Linear']]], + ['compute',['compute',['../classfl_1_1Norm.html#a46fdc326f3a2cddece49dc1f26dd969a',1,'fl::Norm::compute()'],['../classfl_1_1AlgebraicSum.html#ac033b9566fb87b54239a8b0317fac0eb',1,'fl::AlgebraicSum::compute()'],['../classfl_1_1BoundedSum.html#ab3db0d46bd3286255341f71d4d31f49f',1,'fl::BoundedSum::compute()'],['../classfl_1_1DrasticSum.html#ae5540e7817df1c392ae35ecd2b27d2e2',1,'fl::DrasticSum::compute()'],['../classfl_1_1EinsteinSum.html#ab53c8b600c40a7b7d3dcbc33edcc01e6',1,'fl::EinsteinSum::compute()'],['../classfl_1_1HamacherSum.html#ad8a6b4101561349694daee12ef32a960',1,'fl::HamacherSum::compute()'],['../classfl_1_1Maximum.html#acb31d24e4ea1c2840145d3c518d1d56a',1,'fl::Maximum::compute()'],['../classfl_1_1NormalizedSum.html#a35feeeb1815ccd77968ce7668021bc81',1,'fl::NormalizedSum::compute()'],['../classfl_1_1AlgebraicProduct.html#a798f75aa2e6d8e777dbc76ada79eea07',1,'fl::AlgebraicProduct::compute()'],['../classfl_1_1BoundedDifference.html#a4c9841789dd22a3a9ead2a4b9abc037b',1,'fl::BoundedDifference::compute()'],['../classfl_1_1DrasticProduct.html#a8229dba8e0892e727d166277534c4998',1,'fl::DrasticProduct::compute()'],['../classfl_1_1EinsteinProduct.html#a80d026cdac33661c87f770a75380137f',1,'fl::EinsteinProduct::compute()'],['../classfl_1_1HamacherProduct.html#aa66725360da0eaf658f03380baacc35c',1,'fl::HamacherProduct::compute()'],['../classfl_1_1Minimum.html#a904a65beab278e3a089faf7204a3aa1e',1,'fl::Minimum::compute()']]], + ['conclusions',['conclusions',['../classfl_1_1Consequent.html#a1709f58b4dffc2669b8a2ca1b22b3427',1,'fl::Consequent']]], + ['configuration',['configuration',['../classfl_1_1fuzzylite.html#a089930a858fe2f0ad309331f96d403f0',1,'fl::fuzzylite']]], + ['configure',['configure',['../classfl_1_1Engine.html#ad4f0d7d9984f9fa6a232c995f1560425',1,'fl::Engine::configure()'],['../classfl_1_1Accumulated.html#a6e09df7fc6458109639270fef538113e',1,'fl::Accumulated::configure()'],['../classfl_1_1Bell.html#ae12d623035391bfa9558a5dade284906',1,'fl::Bell::configure()'],['../classfl_1_1Constant.html#aeb0f191cb82182bfb3ca5b925c38eb6d',1,'fl::Constant::configure()'],['../classfl_1_1Discrete.html#a7b172dd91676e087381da2bb72f24ab5',1,'fl::Discrete::configure()'],['../classfl_1_1Function.html#a2286377811867e4e380ad51efb18222a',1,'fl::Function::configure()'],['../classfl_1_1Gaussian.html#ad1ad9bad1f1d2096fa4d2f95b6288320',1,'fl::Gaussian::configure()'],['../classfl_1_1GaussianProduct.html#abaa001011b04d82044a6d121e82f4393',1,'fl::GaussianProduct::configure()'],['../classfl_1_1Linear.html#a5c00c0c8a4c20a8a75c161fe3be97497',1,'fl::Linear::configure()'],['../classfl_1_1PiShape.html#a094990367147e1a36889f449f6d038a3',1,'fl::PiShape::configure()'],['../classfl_1_1Ramp.html#a8a3168d355fb959fa7c3651ac18bccea',1,'fl::Ramp::configure()'],['../classfl_1_1Rectangle.html#ad62883ba5a2345bec73466d50fee9855',1,'fl::Rectangle::configure()'],['../classfl_1_1Sigmoid.html#a8ebea71a9b3f4453cf9400d0ea2d72b8',1,'fl::Sigmoid::configure()'],['../classfl_1_1SigmoidDifference.html#ad7abd6cb8a42ac01bc6a280b60a05f5f',1,'fl::SigmoidDifference::configure()'],['../classfl_1_1SigmoidProduct.html#aff50affd81bbd658a4a241de68d8489e',1,'fl::SigmoidProduct::configure()'],['../classfl_1_1SShape.html#a1dd1a940158dac71e3cdf6833a70046e',1,'fl::SShape::configure()'],['../classfl_1_1Term.html#a100f48b9e2332a89c2835198a5cc4b10',1,'fl::Term::configure()'],['../classfl_1_1Thresholded.html#aa79a1332b3db88e72a7a9a9af97a4719',1,'fl::Thresholded::configure()'],['../classfl_1_1Trapezoid.html#af12f243cd2a2b3b6c0288c52e0bbd7e9',1,'fl::Trapezoid::configure()'],['../classfl_1_1Triangle.html#a807a53d3ce8ee520c01c13a76d772f30',1,'fl::Triangle::configure()'],['../classfl_1_1ZShape.html#a7e044c217eed3571c707641c1b3465c4',1,'fl::ZShape::configure()']]], + ['consequent',['Consequent',['../classfl_1_1Consequent.html',1,'fl']]], + ['consequent',['Consequent',['../classfl_1_1Consequent.html#a00e74219c15cd773f1574a7bbd43bf09',1,'fl::Consequent']]], + ['consequent_2ecpp',['Consequent.cpp',['../Consequent_8cpp.html',1,'']]], + ['consequent_2eh',['Consequent.h',['../Consequent_8h.html',1,'']]], + ['console',['Console',['../classfl_1_1Console.html',1,'fl']]], + ['console_2ecpp',['Console.cpp',['../Console_8cpp.html',1,'']]], + ['console_2eh',['Console.h',['../Console_8h.html',1,'']]], + ['constant',['Constant',['../classfl_1_1Constant.html',1,'fl']]], + ['constant',['Constant',['../classfl_1_1Constant.html#a29a7ced3d9b7b372b1364942afe0e6c2',1,'fl::Constant']]], + ['constant_2ecpp',['Constant.cpp',['../Constant_8cpp.html',1,'']]], + ['constant_2eh',['Constant.h',['../Constant_8h.html',1,'']]], + ['constructor',['constructor',['../classfl_1_1Bisector.html#ad621b50c85866eb4f5c5c7cdbe6e186b',1,'fl::Bisector::constructor()'],['../classfl_1_1Centroid.html#a1586f46937ae6e30619b3701da77ad6d',1,'fl::Centroid::constructor()'],['../classfl_1_1LargestOfMaximum.html#ab608bf2abef9246ddd261766356f9d25',1,'fl::LargestOfMaximum::constructor()'],['../classfl_1_1MeanOfMaximum.html#aac3c40bd6b4e4fbe0c568f45cc2b6c23',1,'fl::MeanOfMaximum::constructor()'],['../classfl_1_1SmallestOfMaximum.html#af72246930702d987172dbf031140c4d8',1,'fl::SmallestOfMaximum::constructor()'],['../classfl_1_1WeightedAverage.html#ab9a018867fe59c52152ae75b7998b91d',1,'fl::WeightedAverage::constructor()'],['../classfl_1_1WeightedSum.html#a5e2bd343178e3b5b82513ba4e8d76302',1,'fl::WeightedSum::constructor()'],['../classfl_1_1Any.html#af944ba3b9262145b414c3df6eb2538d9',1,'fl::Any::constructor()'],['../classfl_1_1Extremely.html#ab3f7c2b91e53db88e1e61e79ebd301cf',1,'fl::Extremely::constructor()'],['../classfl_1_1Not.html#ae75fb1d44510bfd4338228dbbd773f0d',1,'fl::Not::constructor()'],['../classfl_1_1Seldom.html#a797fa8fa609c431ab15ad81acf8011b6',1,'fl::Seldom::constructor()'],['../classfl_1_1Somewhat.html#ace3660d876c8ebaa378072a0bf717322',1,'fl::Somewhat::constructor()'],['../classfl_1_1Very.html#ac69b6207a02d6c7127c62fb9e1d0e4a4',1,'fl::Very::constructor()'],['../classfl_1_1AlgebraicSum.html#a7b3658b08bdb4eb8dd15b136ea9b49fb',1,'fl::AlgebraicSum::constructor()'],['../classfl_1_1BoundedSum.html#ade0d52fa377abd3a26cfe6c09ced0fed',1,'fl::BoundedSum::constructor()'],['../classfl_1_1DrasticSum.html#af41c2612de772b60e85486719924a19a',1,'fl::DrasticSum::constructor()'],['../classfl_1_1EinsteinSum.html#a26069692ad549ed9329ac44524d53019',1,'fl::EinsteinSum::constructor()'],['../classfl_1_1HamacherSum.html#a97477ae807a703cf7c0d150a4a4e94c4',1,'fl::HamacherSum::constructor()'],['../classfl_1_1Maximum.html#ab6a77d56b0010c61dab9aff6eef8d69e',1,'fl::Maximum::constructor()'],['../classfl_1_1NormalizedSum.html#a914dc1469e8551fb007e6a9ebc2ead25',1,'fl::NormalizedSum::constructor()'],['../classfl_1_1AlgebraicProduct.html#add0dde390da48895eb8cb944a12fad95',1,'fl::AlgebraicProduct::constructor()'],['../classfl_1_1BoundedDifference.html#a6f415a9da6922d3e8ba65bc26e79ed45',1,'fl::BoundedDifference::constructor()'],['../classfl_1_1DrasticProduct.html#a3ba3bf3ceb8bdca67887d7a391c24bf0',1,'fl::DrasticProduct::constructor()'],['../classfl_1_1EinsteinProduct.html#ae48735984fa4af8aadc04a866bc7f95b',1,'fl::EinsteinProduct::constructor()'],['../classfl_1_1HamacherProduct.html#aa643c0983dd731952efb16996303ed2a',1,'fl::HamacherProduct::constructor()'],['../classfl_1_1Minimum.html#afe8e6b8aeb6276acd1de8ff123448db9',1,'fl::Minimum::constructor()'],['../classfl_1_1Bell.html#a790113e260b56c8157dae26563c93047',1,'fl::Bell::constructor()'],['../classfl_1_1Constant.html#a79dcb419cca8b8ae9fe367ce7b6f15df',1,'fl::Constant::constructor()'],['../classfl_1_1Discrete.html#a880c08615cd8aca2e66b02ba7eaa80bc',1,'fl::Discrete::constructor()'],['../classfl_1_1Function.html#aef18ddabe54b7039c877ecc592e875be',1,'fl::Function::constructor()'],['../classfl_1_1Gaussian.html#a246604f064ff03ef393bc32d31cb2e93',1,'fl::Gaussian::constructor()'],['../classfl_1_1GaussianProduct.html#a8e3524f455a0eadc98e91012e7abc034',1,'fl::GaussianProduct::constructor()'],['../classfl_1_1Linear.html#a08f34f405942b06b9265fe65b043ae3f',1,'fl::Linear::constructor()'],['../classfl_1_1PiShape.html#ac581e7799ff38f4974ea0762436d286a',1,'fl::PiShape::constructor()'],['../classfl_1_1Ramp.html#a340c5b421b4d37f2937d68c10250fa2f',1,'fl::Ramp::constructor()'],['../classfl_1_1Rectangle.html#a52fa7b8b5da4764993a22c5f76068f12',1,'fl::Rectangle::constructor()'],['../classfl_1_1Sigmoid.html#ab51722fe28e76a1838461ddf2eb38898',1,'fl::Sigmoid::constructor()'],['../classfl_1_1SigmoidDifference.html#abef39f7d6e542a4d2390d84430fbcbd2',1,'fl::SigmoidDifference::constructor()'],['../classfl_1_1SigmoidProduct.html#a8accc2d7f727bb9fbc223b2a41656077',1,'fl::SigmoidProduct::constructor()'],['../classfl_1_1SShape.html#a9a3814c905ec7ecb0be8746959a19c6e',1,'fl::SShape::constructor()'],['../classfl_1_1Trapezoid.html#a926e739b8296315c9a5ce83e916df6d7',1,'fl::Trapezoid::constructor()'],['../classfl_1_1Triangle.html#a7da7dfa0d1e8cb091ca559a5cf8d9351',1,'fl::Triangle::constructor()'],['../classfl_1_1ZShape.html#a81235ae129498b7defc5d247afcefb60',1,'fl::ZShape::constructor()']]], + ['copy',['copy',['../classfl_1_1Accumulated.html#a1f9ebe6cd3e1d485cb02c2bdc966c4e0',1,'fl::Accumulated::copy()'],['../classfl_1_1Bell.html#a1f597089a0d16d2156423972bb99fd86',1,'fl::Bell::copy()'],['../classfl_1_1Constant.html#ac6835a40aededed1a361cc2d6612828b',1,'fl::Constant::copy()'],['../classfl_1_1Discrete.html#a4faa32776cbb19cd9b1b9d9b76e3a043',1,'fl::Discrete::copy()'],['../classfl_1_1Function.html#aa2ffba8fe6fc5cccc762a87116e9ff5a',1,'fl::Function::copy()'],['../classfl_1_1Gaussian.html#abfe6341c9e2f016a8be779e58014280d',1,'fl::Gaussian::copy()'],['../classfl_1_1GaussianProduct.html#ac82273731d30e6f9b4a406d9a863376b',1,'fl::GaussianProduct::copy()'],['../classfl_1_1Linear.html#a2b44ce9614e5d983181eb3f0a9ed2a55',1,'fl::Linear::copy()'],['../classfl_1_1PiShape.html#a231d003759000eeed3cc5f4fef8606b5',1,'fl::PiShape::copy()'],['../classfl_1_1Ramp.html#a1e538377748de2e6de2f38e38fcb9cb7',1,'fl::Ramp::copy()'],['../classfl_1_1Rectangle.html#a16850355bc3080c58d098718bc74d693',1,'fl::Rectangle::copy()'],['../classfl_1_1Sigmoid.html#a160d05a70c6403039aabbbedd88296a3',1,'fl::Sigmoid::copy()'],['../classfl_1_1SigmoidDifference.html#abb20c3349649e34a62c9ea15c38908bd',1,'fl::SigmoidDifference::copy()'],['../classfl_1_1SigmoidProduct.html#af4f5e30c2acf6283ba4f0d0b4366d538',1,'fl::SigmoidProduct::copy()'],['../classfl_1_1SShape.html#afef1d4cfb56b9c41dc605dec148d1b66',1,'fl::SShape::copy()'],['../classfl_1_1Term.html#a9f9ea77910a6383bbc1533d83d84716d',1,'fl::Term::copy()'],['../classfl_1_1Thresholded.html#a51fa711138205dbef7b4a37b3c1ca15b',1,'fl::Thresholded::copy()'],['../classfl_1_1Trapezoid.html#a4de88b0acaab4179e40545075c085e7e',1,'fl::Trapezoid::copy()'],['../classfl_1_1Triangle.html#a470574b4c57b614454418ccf152da5e1',1,'fl::Triangle::copy()'],['../classfl_1_1ZShape.html#a8ac998acfc9492859008eeb5a4ca0454',1,'fl::ZShape::copy()']]], + ['cppexporter',['CppExporter',['../classfl_1_1CppExporter.html#a2686897fc63df2046e4d6d0c6c6e5625',1,'fl::CppExporter']]], + ['cppexporter',['CppExporter',['../classfl_1_1CppExporter.html',1,'fl']]], + ['cppexporter_2ecpp',['CppExporter.cpp',['../CppExporter_8cpp.html',1,'']]], + ['cppexporter_2eh',['CppExporter.h',['../CppExporter_8h.html',1,'']]], + ['create',['create',['../classfl_1_1Discrete.html#aa775899affa4f5ce1c5fe590db4fce75',1,'fl::Discrete::create()'],['../classfl_1_1Function.html#af6ce5d6fa38c1bf08cccf1b2b102332e',1,'fl::Function::create()'],['../classfl_1_1Linear.html#a4f3bb5a40be78904b5629f2f0aad8c41',1,'fl::Linear::create()'],['../classfl_1_1Discrete.html#ab83fb843c4953eb9e31d8da2b45511e1',1,'fl::Discrete::create()'],['../classfl_1_1Linear.html#a1abc4256576543b69ef00a64e47661b4',1,'fl::Linear::create()']]], + ['createinstance',['createInstance',['../classfl_1_1Factory.html#a03cb6f9f2a99ad3ac0c699066cd6c327',1,'fl::Factory::createInstance()'],['../classfl_1_1FisImporter.html#a62938780ffe9ca9c3c214cb95ee6f4fd',1,'fl::FisImporter::createInstance()']]], + ['creator',['Creator',['../classfl_1_1Factory.html#a3f8636d79418ca1b5818767e586e6b0f',1,'fl::Factory']]] +]; diff --git a/docs/html/search/all_64.html b/docs/html/search/all_64.html new file mode 100644 index 0000000..360601f --- /dev/null +++ b/docs/html/search/all_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_64.js b/docs/html/search/all_64.js new file mode 100644 index 0000000..01f3d37 --- /dev/null +++ b/docs/html/search/all_64.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['date',['date',['../classfl_1_1fuzzylite.html#ac4ff06e22ed1031e0a3cc1538dea751f',1,'fl::fuzzylite']]], + ['debug',['debug',['../classfl_1_1fuzzylite.html#a7ecb3f3d1979043fca3b5b13dc7883be',1,'fl::fuzzylite']]], + ['decimals',['decimals',['../classfl_1_1fuzzylite.html#af94d7e84ef71e1e0a623483ef029274c',1,'fl::fuzzylite']]], + ['defaultresolution',['defaultResolution',['../classfl_1_1IntegralDefuzzifier.html#a24ce1ae1d1a8d9c4dc286789b0300b6d',1,'fl::IntegralDefuzzifier']]], + ['defuzzifier',['defuzzifier',['../classfl_1_1FactoryManager.html#a2075eced79dd07507f5ac94dfff11255',1,'fl::FactoryManager::defuzzifier()'],['../classfl_1_1FisImporter.html#a1bc09706aab7de024d61a3209f8588b2',1,'fl::FisImporter::defuzzifier()'],['../classfl_1_1Defuzzifier.html#a667711a04b2083365ed78a1a2afc99b8',1,'fl::Defuzzifier::Defuzzifier()']]], + ['defuzzifier',['Defuzzifier',['../classfl_1_1Defuzzifier.html',1,'fl']]], + ['defuzzifier_2eh',['Defuzzifier.h',['../Defuzzifier_8h.html',1,'']]], + ['defuzzifierfactory',['DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html',1,'fl']]], + ['defuzzifierfactory',['DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html#a30781e202b3392bf24054d7b204de206',1,'fl::DefuzzifierFactory']]], + ['defuzzifierfactory_2ecpp',['DefuzzifierFactory.cpp',['../DefuzzifierFactory_8cpp.html',1,'']]], + ['defuzzifierfactory_2eh',['DefuzzifierFactory.h',['../DefuzzifierFactory_8h.html',1,'']]], + ['defuzzify',['defuzzify',['../classfl_1_1Bisector.html#a2f6e48aa8878a1f1c1151567508439b0',1,'fl::Bisector::defuzzify()'],['../classfl_1_1Centroid.html#aadcf7c0e9636ef902bf72de806795eae',1,'fl::Centroid::defuzzify()'],['../classfl_1_1Defuzzifier.html#a9d339cf9c564154d85e27320a0ac8507',1,'fl::Defuzzifier::defuzzify()'],['../classfl_1_1LargestOfMaximum.html#af837a7283ef6051f5e7c82544b66407c',1,'fl::LargestOfMaximum::defuzzify()'],['../classfl_1_1MeanOfMaximum.html#a16bcac98f46e237a557299adf7bd4803',1,'fl::MeanOfMaximum::defuzzify()'],['../classfl_1_1SmallestOfMaximum.html#a53a8843c46d80161e6b3a96a48e72d8a',1,'fl::SmallestOfMaximum::defuzzify()'],['../classfl_1_1WeightedAverage.html#a992edc31cb46e38191d5f750de37e281',1,'fl::WeightedAverage::defuzzify()'],['../classfl_1_1WeightedSum.html#aa8c7072f42219b9a7100aa16f0e6e427',1,'fl::WeightedSum::defuzzify()'],['../classfl_1_1OutputVariable.html#a85e36175f3a81be3a9e0771bd49ae792',1,'fl::OutputVariable::defuzzify()']]], + ['defuzzifynolocks',['defuzzifyNoLocks',['../classfl_1_1OutputVariable.html#a4c92ca99e61d50e264dbf4cbc0d03a28',1,'fl::OutputVariable']]], + ['deregisterclass',['deregisterClass',['../classfl_1_1Factory.html#acb8a5da88390e5c4fd01f8e56b7d6fe5',1,'fl::Factory']]], + ['discrete',['Discrete',['../classfl_1_1Discrete.html',1,'fl']]], + ['discrete',['Discrete',['../classfl_1_1Discrete.html#ab1e99bcda141227f8fa5c91d7f1cbae9',1,'fl::Discrete::Discrete(const std::string &name="")'],['../classfl_1_1Discrete.html#add3bf20449f16b386fae2cd933f649f6',1,'fl::Discrete::Discrete(const std::string &name, const std::vector< scalar > &x, const std::vector< scalar > &y)'],['../classfl_1_1Discrete.html#a5f595f95b1b25eb4b898504d61e78128',1,'fl::Discrete::Discrete(const std::string &name, const std::vector< std::pair< scalar, scalar > > &xy)']]], + ['discrete_2ecpp',['Discrete.cpp',['../Discrete_8cpp.html',1,'']]], + ['discrete_2eh',['Discrete.h',['../Discrete_8h.html',1,'']]], + ['divide',['divide',['../classfl_1_1Operation.html#a2684ad6ae0b3ddda245ab58b706c6b8f',1,'fl::Operation']]], + ['drasticproduct',['DrasticProduct',['../classfl_1_1DrasticProduct.html',1,'fl']]], + ['drasticproduct_2ecpp',['DrasticProduct.cpp',['../DrasticProduct_8cpp.html',1,'']]], + ['drasticproduct_2eh',['DrasticProduct.h',['../DrasticProduct_8h.html',1,'']]], + ['drasticsum',['DrasticSum',['../classfl_1_1DrasticSum.html',1,'fl']]], + ['drasticsum_2ecpp',['DrasticSum.cpp',['../DrasticSum_8cpp.html',1,'']]], + ['drasticsum_2eh',['DrasticSum.h',['../DrasticSum_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_65.html b/docs/html/search/all_65.html new file mode 100644 index 0000000..c2f4fcd --- /dev/null +++ b/docs/html/search/all_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_65.js b/docs/html/search/all_65.js new file mode 100644 index 0000000..0f733f8 --- /dev/null +++ b/docs/html/search/all_65.js @@ -0,0 +1,44 @@ +var searchData= +[ + ['einsteinproduct',['EinsteinProduct',['../classfl_1_1EinsteinProduct.html',1,'fl']]], + ['einsteinproduct_2ecpp',['EinsteinProduct.cpp',['../EinsteinProduct_8cpp.html',1,'']]], + ['einsteinproduct_2eh',['EinsteinProduct.h',['../EinsteinProduct_8h.html',1,'']]], + ['einsteinsum',['EinsteinSum',['../classfl_1_1EinsteinSum.html',1,'fl']]], + ['einsteinsum_2ecpp',['EinsteinSum.cpp',['../EinsteinSum_8cpp.html',1,'']]], + ['einsteinsum_2eh',['EinsteinSum.h',['../EinsteinSum_8h.html',1,'']]], + ['element',['Element',['../structfl_1_1Function_1_1Element.html#aa383fb0e7e1f64a272dfa028cbc3705d',1,'fl::Function::Element::Element(const std::string &name)'],['../structfl_1_1Function_1_1Element.html#a2ca8f010c887a5c263746e6eb3f285b3',1,'fl::Function::Element::Element(const std::string &name, Unary unary, short associativity=-1)'],['../structfl_1_1Function_1_1Element.html#a1ae6b7bc90ebffe97438909239096f47',1,'fl::Function::Element::Element(const std::string &name, Binary binary, short associativity=-1)']]], + ['element',['Element',['../structfl_1_1Function_1_1Element.html',1,'fl::Function']]], + ['engine',['Engine',['../classfl_1_1Engine.html',1,'fl']]], + ['engine',['Engine',['../classfl_1_1Engine.html#a0cc9382b2782fc17cb253ad71e12648a',1,'fl::Engine']]], + ['engine_2ecpp',['Engine.cpp',['../Engine_8cpp.html',1,'']]], + ['engine_2eh',['Engine.h',['../Engine_8h.html',1,'']]], + ['evaluate',['evaluate',['../structfl_1_1Function_1_1Node.html#a8d0a1c64fd0e5a5966742d3393c240fa',1,'fl::Function::Node::evaluate()'],['../classfl_1_1Function.html#ad9e34b8bb78b233a100625135bea7fe2',1,'fl::Function::evaluate()']]], + ['exception',['Exception',['../classfl_1_1Exception.html',1,'fl']]], + ['exception',['Exception',['../classfl_1_1Exception.html#a11a8e6d81b6604e559dc5ed895fdd6fc',1,'fl::Exception']]], + ['exception_2ecpp',['Exception.cpp',['../Exception_8cpp.html',1,'']]], + ['exception_2eh',['Exception.h',['../Exception_8h.html',1,'']]], + ['exportallexamples',['exportAllExamples',['../main_8cpp.html#a2c51c31f8231e9629bb80fd37ced3e46',1,'main.cpp']]], + ['exporter',['Exporter',['../classfl_1_1Exporter.html',1,'fl']]], + ['exporter',['Exporter',['../classfl_1_1Exporter.html#aab49a9590298c2d405a96b69e39776f4',1,'fl::Exporter']]], + ['exporter_2eh',['Exporter.h',['../Exporter_8h.html',1,'']]], + ['exportinputs',['exportInputs',['../classfl_1_1FisExporter.html#a2095faa4bc9438ad9ddc73adb0491575',1,'fl::FisExporter']]], + ['exportoutputs',['exportOutputs',['../classfl_1_1FisExporter.html#ae9eacd64e24abc161cfdbd870c0ee261',1,'fl::FisExporter']]], + ['exportrule',['exportRule',['../classfl_1_1FisExporter.html#a3c768b12f50268d82d2185d03815cd49',1,'fl::FisExporter']]], + ['exportrules',['exportRules',['../classfl_1_1FisExporter.html#ac0f2cb9aa613b3a985aa0357ac83a2a3',1,'fl::FisExporter']]], + ['exportsystem',['exportSystem',['../classfl_1_1FisExporter.html#aa28acbe2499c3bbd19f13ad6052c40d3',1,'fl::FisExporter']]], + ['expression',['Expression',['../classfl_1_1Expression.html#a2a1d3e1e62ed8397c1247ecc4ad5b2d7',1,'fl::Expression']]], + ['expression',['Expression',['../classfl_1_1Expression.html',1,'fl']]], + ['expression_2ecpp',['Expression.cpp',['../Expression_8cpp.html',1,'']]], + ['expression_2eh',['Expression.h',['../Expression_8h.html',1,'']]], + ['extractdefaultvalue',['extractDefaultValue',['../classfl_1_1FclImporter.html#aa30426cf04bbab3bae3fddd32ce0b3c7',1,'fl::FclImporter']]], + ['extractdefuzzifier',['extractDefuzzifier',['../classfl_1_1FclImporter.html#a07f6ec79bc059b30019d70c7531a6cd8',1,'fl::FclImporter']]], + ['extractenabled',['extractEnabled',['../classfl_1_1FclImporter.html#a5935e886b62107adf3c9292f10674f92',1,'fl::FclImporter']]], + ['extractlocksoutputrange',['extractLocksOutputRange',['../classfl_1_1FclImporter.html#aae7fea6fa14aead4e1deb8712cbc5ac2',1,'fl::FclImporter']]], + ['extractrange',['extractRange',['../classfl_1_1FclImporter.html#a65ea4bf1bca4958eedb0a43a458ba94f',1,'fl::FclImporter::extractRange()'],['../classfl_1_1FisImporter.html#a3114d30446f59a3a7c1b9cccf1ca48d6',1,'fl::FisImporter::extractRange()']]], + ['extractsnorm',['extractSNorm',['../classfl_1_1FclImporter.html#ac6a10fba4faa0f4bde790122cbbf7d77',1,'fl::FclImporter']]], + ['extractterm',['extractTerm',['../classfl_1_1FclImporter.html#aef76d58fa8b7d6615b62fcceb9f65b24',1,'fl::FclImporter::extractTerm()'],['../classfl_1_1FisImporter.html#a70ec174f0c030f7413de42b55e520e7f',1,'fl::FisImporter::extractTerm()']]], + ['extracttnorm',['extractTNorm',['../classfl_1_1FclImporter.html#ad2a79c4d700db15cc8f647ebdbb3137d',1,'fl::FclImporter']]], + ['extremely',['Extremely',['../classfl_1_1Extremely.html',1,'fl']]], + ['extremely_2ecpp',['Extremely.cpp',['../Extremely_8cpp.html',1,'']]], + ['extremely_2eh',['Extremely.h',['../Extremely_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_66.html b/docs/html/search/all_66.html new file mode 100644 index 0000000..a9ac881 --- /dev/null +++ b/docs/html/search/all_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_66.js b/docs/html/search/all_66.js new file mode 100644 index 0000000..54ad1b0 --- /dev/null +++ b/docs/html/search/all_66.js @@ -0,0 +1,81 @@ +var searchData= +[ + ['factory',['Factory',['../classfl_1_1Factory.html',1,'fl']]], + ['factory',['Factory',['../classfl_1_1Factory.html#a842cdc776d7e85eab1a53c3bf36fabbc',1,'fl::Factory']]], + ['factory_2ecpp',['Factory.cpp',['../Factory_8cpp.html',1,'']]], + ['factory_2eh',['Factory.h',['../Factory_8h.html',1,'']]], + ['factory_3c_20defuzzifier_20_2a_20_3e',['Factory< Defuzzifier * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20hedge_20_2a_20_3e',['Factory< Hedge * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20snorm_20_2a_20_3e',['Factory< SNorm * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20term_20_2a_20_3e',['Factory< Term * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20tnorm_20_2a_20_3e',['Factory< TNorm * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factorymanager',['FactoryManager',['../classfl_1_1FactoryManager.html#aa94791620fbe7d48ffd7878ebae052ae',1,'fl::FactoryManager']]], + ['factorymanager',['FactoryManager',['../classfl_1_1FactoryManager.html',1,'fl']]], + ['factorymanager_2ecpp',['FactoryManager.cpp',['../FactoryManager_8cpp.html',1,'']]], + ['factorymanager_2eh',['FactoryManager.h',['../FactoryManager_8h.html',1,'']]], + ['fclexporter',['FclExporter',['../classfl_1_1FclExporter.html',1,'fl']]], + ['fclexporter',['FclExporter',['../classfl_1_1FclExporter.html#aad7f1de7316a63a55bf469ae3aa5f886',1,'fl::FclExporter']]], + ['fclexporter_2ecpp',['FclExporter.cpp',['../FclExporter_8cpp.html',1,'']]], + ['fclexporter_2eh',['FclExporter.h',['../FclExporter_8h.html',1,'']]], + ['fclimporter',['FclImporter',['../classfl_1_1FclImporter.html',1,'fl']]], + ['fclimporter',['FclImporter',['../classfl_1_1FclImporter.html#aeb6708f65ece9205d5b4a2e756c33fe7',1,'fl::FclImporter']]], + ['fclimporter_2ecpp',['FclImporter.cpp',['../FclImporter_8cpp.html',1,'']]], + ['fclimporter_2eh',['FclImporter.h',['../FclImporter_8h.html',1,'']]], + ['findreplace',['findReplace',['../classfl_1_1Operation.html#a7c6bb139fc09adb0c9bfe0929c75c7ff',1,'fl::Operation']]], + ['fisexporter',['FisExporter',['../classfl_1_1FisExporter.html',1,'fl']]], + ['fisexporter',['FisExporter',['../classfl_1_1FisExporter.html#a8e7cdf87f0c6bc2c22679f18af7290d7',1,'fl::FisExporter']]], + ['fisexporter_2ecpp',['FisExporter.cpp',['../FisExporter_8cpp.html',1,'']]], + ['fisexporter_2eh',['FisExporter.h',['../FisExporter_8h.html',1,'']]], + ['fisimporter',['FisImporter',['../classfl_1_1FisImporter.html',1,'fl']]], + ['fisimporter',['FisImporter',['../classfl_1_1FisImporter.html#ac83ea8cf1ec0755ce8ef97de4cd7b6d1',1,'fl::FisImporter']]], + ['fisimporter_2ecpp',['FisImporter.cpp',['../FisImporter_8cpp.html',1,'']]], + ['fisimporter_2eh',['FisImporter.h',['../FisImporter_8h.html',1,'']]], + ['fl',['fl',['../namespacefl.html',1,'']]], + ['fl_5f_5ffile_5f_5f',['FL__FILE__',['../fuzzylite_8h.html#a3a8805bbd95046da97c4233e548826df',1,'fuzzylite.h']]], + ['fl_5fand',['FL_AND',['../classfl_1_1Rule.html#a6d4f3e6cf5f88fe37322d21f8ddcf895',1,'fl::Rule']]], + ['fl_5fat',['FL_AT',['../fuzzylite_8h.html#a79d6c0af9f3f337643496f2f81f5ba1d',1,'fuzzylite.h']]], + ['fl_5fbegin_5fdebug_5fblock',['FL_BEGIN_DEBUG_BLOCK',['../fuzzylite_8h.html#a18236efc548b42b6a767fd99e36c196f',1,'fuzzylite.h']]], + ['fl_5fbuild_5fpath',['FL_BUILD_PATH',['../fuzzylite_8h.html#a784dc3ea21a0ba359537da155a00e61d',1,'fuzzylite.h']]], + ['fl_5fdate',['FL_DATE',['../fuzzylite_8h.html#a62d4b835802d5d8e8e14cfa0a35f4181',1,'fuzzylite.h']]], + ['fl_5fdbg',['FL_DBG',['../fuzzylite_8h.html#a05084ec1207bb07770b8663cfe5c95d0',1,'fuzzylite.h']]], + ['fl_5fdebug',['FL_DEBUG',['../fuzzylite_8h.html#a923af823da4f8ccb7d3a71cda2011862',1,'fuzzylite.h']]], + ['fl_5fend_5fdebug_5fblock',['FL_END_DEBUG_BLOCK',['../fuzzylite_8h.html#a92b7a322a6b3854fb0f7469d26f61fc2',1,'fuzzylite.h']]], + ['fl_5fequals',['FL_EQUALS',['../classfl_1_1Rule.html#a36c12c5ae1321335d87334023e01fa84',1,'fl::Rule']]], + ['fl_5fexport',['FL_EXPORT',['../fuzzylite_8h.html#aa9ba29a18aee9d738370a06eeb4470fc',1,'fuzzylite.h']]], + ['fl_5fif',['FL_IF',['../classfl_1_1Rule.html#accfd136c3453600147f92012d08d58da',1,'fl::Rule']]], + ['fl_5fis',['FL_IS',['../classfl_1_1Rule.html#a70c95c8aba9754c6532035d0e03987cc',1,'fl::Rule']]], + ['fl_5flog',['FL_LOG',['../fuzzylite_8h.html#ac1b133a2f567fc5de2a07db84638138d',1,'fuzzylite.h']]], + ['fl_5flog_5fprefix',['FL_LOG_PREFIX',['../fuzzylite_8h.html#a6b930a844b4fa50fe63a178ae5b1d896',1,'fuzzylite.h']]], + ['fl_5flogp',['FL_LOGP',['../fuzzylite_8h.html#af63fafdda4cae2ad4c11ada9492d8f4a',1,'fuzzylite.h']]], + ['fl_5for',['FL_OR',['../classfl_1_1Rule.html#afa624470efc917d0a09ae71c91970019',1,'fl::Rule']]], + ['fl_5fthen',['FL_THEN',['../classfl_1_1Rule.html#aa49f7be45b2b600ce6a3117c6a17e973',1,'fl::Rule']]], + ['fl_5fversion',['FL_VERSION',['../fuzzylite_8h.html#a94499c96b5f3ca212d90a2c41f947a67',1,'fuzzylite.h']]], + ['fl_5fwith',['FL_WITH',['../classfl_1_1Rule.html#acddaccce7360343f2f4c7fe9b0cdfea5',1,'fl::Rule']]], + ['fldexporter',['FldExporter',['../classfl_1_1FldExporter.html',1,'fl']]], + ['fldexporter',['FldExporter',['../classfl_1_1FldExporter.html#af65de1ba2bd518a03740679be9756bf0',1,'fl::FldExporter']]], + ['fldexporter_2ecpp',['FldExporter.cpp',['../FldExporter_8cpp.html',1,'']]], + ['fldexporter_2eh',['FldExporter.h',['../FldExporter_8h.html',1,'']]], + ['fllexporter',['FllExporter',['../classfl_1_1FllExporter.html',1,'fl']]], + ['fllexporter',['FllExporter',['../classfl_1_1FllExporter.html#a3d7af60d0ffc198ddac94258117be327',1,'fl::FllExporter']]], + ['fllexporter_2ecpp',['FllExporter.cpp',['../FllExporter_8cpp.html',1,'']]], + ['fllexporter_2eh',['FllExporter.h',['../FllExporter_8h.html',1,'']]], + ['fllimporter',['FllImporter',['../classfl_1_1FllImporter.html#a66c9812e8aac48ead888b02e69079396',1,'fl::FllImporter']]], + ['fllimporter',['FllImporter',['../classfl_1_1FllImporter.html',1,'fl']]], + ['fllimporter_2ecpp',['FllImporter.cpp',['../FllImporter_8cpp.html',1,'']]], + ['fllimporter_2eh',['FllImporter.h',['../FllImporter_8h.html',1,'']]], + ['floatingpoint',['floatingPoint',['../classfl_1_1fuzzylite.html#a6df0949b8d769591ca383985e31414ba',1,'fl::fuzzylite']]], + ['foperator',['foperator',['../structfl_1_1Function_1_1Node.html#a6006ced779f74ce4a82afa51f6d12986',1,'fl::Function::Node']]], + ['format',['format',['../classfl_1_1Operation.html#adf97aff3b12b6755a9f77c9299868cb2',1,'fl::Operation']]], + ['fromstring',['fromString',['../classfl_1_1FclImporter.html#a35548905d0df960647dd7d3c5f6c1265',1,'fl::FclImporter::fromString()'],['../classfl_1_1FisImporter.html#a6a979d9d88de1761227bdc595448d164',1,'fl::FisImporter::fromString()'],['../classfl_1_1FllImporter.html#a79b008375ec6e8b3523e75c93698b14e',1,'fl::FllImporter::fromString()'],['../classfl_1_1Importer.html#a41a5100eb0d3b3a7ec92781c105490a2',1,'fl::Importer::fromString()']]], + ['fullname',['fullname',['../classfl_1_1fuzzylite.html#a4879aa89db2f02c55316cb5bc49b1d65',1,'fl::fuzzylite']]], + ['function',['Function',['../classfl_1_1Function.html',1,'fl']]], + ['function',['function',['../structfl_1_1Function_1_1Node.html#a0542be42a101c4a7bf83b6f36d7c4803',1,'fl::Function::Node::function()'],['../classfl_1_1Function.html#ad6769a713c7b7e6804a23cef200f3ad2',1,'fl::Function::Function()']]], + ['function_2ecpp',['Function.cpp',['../Function_8cpp.html',1,'']]], + ['function_2eh',['Function.h',['../Function_8h.html',1,'']]], + ['functions',['functions',['../classfl_1_1Function.html#a90c6da801dd404158a35c0fdf1888c76',1,'fl::Function']]], + ['fuzzify',['fuzzify',['../classfl_1_1Variable.html#aad41c391557ab0812e05f73896a8169f',1,'fl::Variable']]], + ['fuzzylite',['fuzzylite',['../classfl_1_1fuzzylite.html',1,'fl']]], + ['fuzzylite_2ecpp',['fuzzylite.cpp',['../fuzzylite_8cpp.html',1,'']]], + ['fuzzylite_2eh',['fuzzylite.h',['../fuzzylite_8h.html',1,'']]], + ['fuzzyoutput',['fuzzyOutput',['../classfl_1_1OutputVariable.html#a6afba2565ac43f2dc0ff28e6e6920b62',1,'fl::OutputVariable']]] +]; diff --git a/docs/html/search/all_67.html b/docs/html/search/all_67.html new file mode 100644 index 0000000..747fb51 --- /dev/null +++ b/docs/html/search/all_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_67.js b/docs/html/search/all_67.js new file mode 100644 index 0000000..0cdb12d --- /dev/null +++ b/docs/html/search/all_67.js @@ -0,0 +1,68 @@ +var searchData= +[ + ['gaussian',['Gaussian',['../classfl_1_1Gaussian.html',1,'fl']]], + ['gaussian',['Gaussian',['../classfl_1_1Gaussian.html#a98c6cd11415682fedee70afbd7ab006a',1,'fl::Gaussian']]], + ['gaussian_2ecpp',['Gaussian.cpp',['../Gaussian_8cpp.html',1,'']]], + ['gaussian_2eh',['Gaussian.h',['../Gaussian_8h.html',1,'']]], + ['gaussianproduct',['GaussianProduct',['../classfl_1_1GaussianProduct.html#aace6b4c7794393c72584036e49d30982',1,'fl::GaussianProduct']]], + ['gaussianproduct',['GaussianProduct',['../classfl_1_1GaussianProduct.html',1,'fl']]], + ['gaussianproduct_2ecpp',['GaussianProduct.cpp',['../GaussianProduct_8cpp.html',1,'']]], + ['gaussianproduct_2eh',['GaussianProduct.h',['../GaussianProduct_8h.html',1,'']]], + ['geta',['getA',['../classfl_1_1Trapezoid.html#ada7f3bc0527d900c772b0851a330ba2d',1,'fl::Trapezoid::getA()'],['../classfl_1_1Triangle.html#a4a7c49f2eef08aa3302ae5e29c82b4a3',1,'fl::Triangle::getA()']]], + ['getaccumulation',['getAccumulation',['../classfl_1_1Accumulated.html#aa6f958cd1f0d0388b8a826bb05ccb589',1,'fl::Accumulated']]], + ['getactivation',['getActivation',['../classfl_1_1RuleBlock.html#aece505e71bdb55648d43f907f2569cdd',1,'fl::RuleBlock::getActivation()'],['../classfl_1_1Thresholded.html#a43e013c005ecd115d3edcdf9741b7567',1,'fl::Thresholded::getActivation()']]], + ['getantecedent',['getAntecedent',['../classfl_1_1Rule.html#a79109b35408f02fcc7f093dd0a705645',1,'fl::Rule']]], + ['getb',['getB',['../classfl_1_1Trapezoid.html#a572ba414202bad966cb0523081565b86',1,'fl::Trapezoid::getB()'],['../classfl_1_1Triangle.html#afece31dc006ea9885d4f2dad43f65dd1',1,'fl::Triangle::getB()']]], + ['getbottomleft',['getBottomLeft',['../classfl_1_1PiShape.html#a3021c7131cfac066661c75b314d0249c',1,'fl::PiShape']]], + ['getbottomright',['getBottomRight',['../classfl_1_1PiShape.html#ac28ea4bd4efe15c60858d5c19d113801',1,'fl::PiShape']]], + ['getbuiltinfunction',['getBuiltInFunction',['../classfl_1_1Function.html#a8ed158f59ff063c0c7ee3333fafd288d',1,'fl::Function']]], + ['getc',['getC',['../classfl_1_1Trapezoid.html#aeb2022f8184512b566a7619873c35587',1,'fl::Trapezoid::getC()'],['../classfl_1_1Triangle.html#aa694221a73f60c3b131f05e93ab54bf3',1,'fl::Triangle::getC()']]], + ['getcenter',['getCenter',['../classfl_1_1Bell.html#aae77173e96178a51456728aac257cf20',1,'fl::Bell']]], + ['getconjunction',['getConjunction',['../classfl_1_1RuleBlock.html#a797b1eee683e243bba549371660b589b',1,'fl::RuleBlock']]], + ['getconsequent',['getConsequent',['../classfl_1_1Rule.html#a3b10652232437ba140686314e2cb68b8',1,'fl::Rule']]], + ['getd',['getD',['../classfl_1_1Trapezoid.html#ae8149c6a3811c50c80e29f6197bd8f66',1,'fl::Trapezoid']]], + ['getdefaultvalue',['getDefaultValue',['../classfl_1_1OutputVariable.html#a77d008ebe5df2837253db89003738f32',1,'fl::OutputVariable']]], + ['getdefuzzifier',['getDefuzzifier',['../classfl_1_1OutputVariable.html#a7acdeed68a566c8f3fae09ead1bf534a',1,'fl::OutputVariable']]], + ['getdisjunction',['getDisjunction',['../classfl_1_1RuleBlock.html#a5b429157fdd3b34e31a713a0012eb525',1,'fl::RuleBlock']]], + ['getend',['getEnd',['../classfl_1_1Ramp.html#a119f38fb9f642f8bc450244dfb501138',1,'fl::Ramp::getEnd()'],['../classfl_1_1Rectangle.html#ac67297489749e2fcd87ac4e4d8fb01cb',1,'fl::Rectangle::getEnd()'],['../classfl_1_1SShape.html#a00b9f5874d4c73b6af95cb8cbf904885',1,'fl::SShape::getEnd()'],['../classfl_1_1ZShape.html#a5fec6776563af1b7de30aa5fd97b6bac',1,'fl::ZShape::getEnd()']]], + ['getengine',['getEngine',['../classfl_1_1Function.html#a21ce8486c656f1ffa37ae8a6982820d7',1,'fl::Function']]], + ['getfalling',['getFalling',['../classfl_1_1SigmoidDifference.html#a3b82e5868627b078f6501d60ed370b95',1,'fl::SigmoidDifference::getFalling()'],['../classfl_1_1SigmoidProduct.html#a291521b7a3c5e5c626dc08a6c619ff09',1,'fl::SigmoidProduct::getFalling()']]], + ['getformula',['getFormula',['../classfl_1_1Function.html#a264ef402c9c4f20d2174ba7d3ecea384',1,'fl::Function']]], + ['gethedge',['getHedge',['../classfl_1_1Engine.html#aca6a1d466e724e072b9fafe4543ac24c',1,'fl::Engine::getHedge(int index) const '],['../classfl_1_1Engine.html#aaa9d918b11334996a412e1d254d2e613',1,'fl::Engine::getHedge(const std::string &name) const ']]], + ['getindent',['getIndent',['../classfl_1_1FclExporter.html#ac2dbb5edf24eb8aa4df8aac1e0dc27f6',1,'fl::FclExporter::getIndent()'],['../classfl_1_1FllExporter.html#a600838fc90eeb0d6e9c1955c42d3bb0a',1,'fl::FllExporter::getIndent()']]], + ['getinflection',['getInflection',['../classfl_1_1Sigmoid.html#a7a0d855fc287413f7b740bc4619c350b',1,'fl::Sigmoid']]], + ['getinputvalue',['getInputValue',['../classfl_1_1InputVariable.html#aee34f9cbcdc7c758f609ca4500624788',1,'fl::InputVariable']]], + ['getinputvariable',['getInputVariable',['../classfl_1_1Engine.html#a8ec2e0d92edaa708911317ebd1dcf076',1,'fl::Engine::getInputVariable(int index) const '],['../classfl_1_1Engine.html#a36fb40cdddec82a664515d75fecb197e',1,'fl::Engine::getInputVariable(const std::string &name) const ']]], + ['getlastvalidoutput',['getLastValidOutput',['../classfl_1_1OutputVariable.html#af5aa8a7e6adb78d51360c195fa0ab175',1,'fl::OutputVariable']]], + ['getleft',['getLeft',['../classfl_1_1SigmoidDifference.html#ada1f5fb685c4a368ef921d9a39066f6b',1,'fl::SigmoidDifference::getLeft()'],['../classfl_1_1SigmoidProduct.html#a97ddb3029c2e53c881ff7be047542af7',1,'fl::SigmoidProduct::getLeft()']]], + ['getmaximum',['getMaximum',['../classfl_1_1FldExporter.html#a751a24d775758a74d32fff38210c413e',1,'fl::FldExporter::getMaximum()'],['../classfl_1_1Accumulated.html#ab71e90489aca781218d76a89750b8954',1,'fl::Accumulated::getMaximum()'],['../classfl_1_1Variable.html#abbae3650d5d5a80d2128a59570c4880e',1,'fl::Variable::getMaximum()']]], + ['getmean',['getMean',['../classfl_1_1Gaussian.html#aafb1c9093523491dd4bc6fe83fed82ff',1,'fl::Gaussian']]], + ['getmeana',['getMeanA',['../classfl_1_1GaussianProduct.html#ac4de1d4f1d2a3305440d8a79ba9fd7b3',1,'fl::GaussianProduct']]], + ['getmeanb',['getMeanB',['../classfl_1_1GaussianProduct.html#a0f805a13ecbd9f4148174dc597e192dd',1,'fl::GaussianProduct']]], + ['getminimum',['getMinimum',['../classfl_1_1Accumulated.html#ae0ab9364938b0b5fb65f7b851cdcb7b0',1,'fl::Accumulated::getMinimum()'],['../classfl_1_1Variable.html#ac2a8e5c9bc47d8fc943a6502381cc501',1,'fl::Variable::getMinimum()']]], + ['getname',['getName',['../classfl_1_1Engine.html#a8506b08c5b0703303216d8a6a9fc5177',1,'fl::Engine::getName()'],['../classfl_1_1RuleBlock.html#aa5ecbdc1c6d8c58e646a26fc46312dfb',1,'fl::RuleBlock::getName()'],['../classfl_1_1Term.html#a0b2db6c39da45e0edc7d3478bb3c25c6',1,'fl::Term::getName()'],['../classfl_1_1Variable.html#a26d2334f8afd573c8ebed27c72309338',1,'fl::Variable::getName()']]], + ['getoperator',['getOperator',['../classfl_1_1Function.html#abc8ce853954a826a82ccbecd7bab249f',1,'fl::Function']]], + ['getoutputvalue',['getOutputValue',['../classfl_1_1Engine.html#a9513599df6c3f5216014935270b0a48a',1,'fl::Engine']]], + ['getoutputvariable',['getOutputVariable',['../classfl_1_1Engine.html#a04966ed53d33272421ef3fd1892d2f39',1,'fl::Engine::getOutputVariable(int index) const '],['../classfl_1_1Engine.html#a3370e83e016907dc4c48d8bfe714699e',1,'fl::Engine::getOutputVariable(const std::string &name) const ']]], + ['getresolution',['getResolution',['../classfl_1_1IntegralDefuzzifier.html#a84b9bd1f647763fc87ddb0877f62c91a',1,'fl::IntegralDefuzzifier']]], + ['getright',['getRight',['../classfl_1_1SigmoidDifference.html#aa0a0e0156e906e86554171f71226bb21',1,'fl::SigmoidDifference::getRight()'],['../classfl_1_1SigmoidProduct.html#a8be0013ba551bc840ef6794e6149e4e9',1,'fl::SigmoidProduct::getRight()']]], + ['getrising',['getRising',['../classfl_1_1SigmoidDifference.html#a866ad6003c772f12617674c419912359',1,'fl::SigmoidDifference::getRising()'],['../classfl_1_1SigmoidProduct.html#aed789b39ce575842924f5e25380fce93',1,'fl::SigmoidProduct::getRising()']]], + ['getroot',['getRoot',['../classfl_1_1Antecedent.html#a891c6666c7ac4ee3920ce9984cf4f661',1,'fl::Antecedent']]], + ['getrule',['getRule',['../classfl_1_1RuleBlock.html#a44a4516d8e39f0dbda4ea35c55d70f44',1,'fl::RuleBlock']]], + ['getruleblock',['getRuleBlock',['../classfl_1_1Engine.html#acb630b203d3ad271031a239ed3d395db',1,'fl::Engine::getRuleBlock(int index) const '],['../classfl_1_1Engine.html#a99c84543af90e05a4dc75a160603101d',1,'fl::Engine::getRuleBlock(const std::string &name) const ']]], + ['getseparator',['getSeparator',['../classfl_1_1FldExporter.html#afacb9f57e490cb9574fb741ddc71e63b',1,'fl::FldExporter::getSeparator()'],['../classfl_1_1FllExporter.html#a4ac7b293fbb4890933c52b459c09cf77',1,'fl::FllExporter::getSeparator()'],['../classfl_1_1FllImporter.html#a5d93989dab7442e22fdd6073d00f17c3',1,'fl::FllImporter::getSeparator()']]], + ['getslope',['getSlope',['../classfl_1_1Bell.html#acb216a3c64f828863376dc7e54fb6bf5',1,'fl::Bell::getSlope()'],['../classfl_1_1Sigmoid.html#a83f9471108c479f65d207881f7bece1f',1,'fl::Sigmoid::getSlope()']]], + ['getstandarddeviation',['getStandardDeviation',['../classfl_1_1Gaussian.html#ab302be9787169b20f2f6ca7a26a8afe0',1,'fl::Gaussian']]], + ['getstandarddeviationa',['getStandardDeviationA',['../classfl_1_1GaussianProduct.html#a1220b0085a00f8109b49501b346f29d7',1,'fl::GaussianProduct']]], + ['getstandarddeviationb',['getStandardDeviationB',['../classfl_1_1GaussianProduct.html#a6486b89913270c8caafda0526de24843',1,'fl::GaussianProduct']]], + ['getstart',['getStart',['../classfl_1_1Ramp.html#a4c133fee56f32fb9161c8deeb9e71594',1,'fl::Ramp::getStart()'],['../classfl_1_1Rectangle.html#a1fea0ee869b3d2072b7b430e7870c832',1,'fl::Rectangle::getStart()'],['../classfl_1_1SShape.html#ad8d53ac163ca3a66c537a55f4d3773e0',1,'fl::SShape::getStart()'],['../classfl_1_1ZShape.html#a01c48e10ed374c0aea3c0ac578db9e46',1,'fl::ZShape::getStart()']]], + ['getterm',['getTerm',['../classfl_1_1Accumulated.html#a0b2857802f93cc3d212d28aa2253b28a',1,'fl::Accumulated::getTerm()'],['../classfl_1_1Thresholded.html#a29395c6461a696a9325c4137861b3d8d',1,'fl::Thresholded::getTerm()'],['../classfl_1_1Variable.html#a5502c7010d710663a7b90343f7fa4d34',1,'fl::Variable::getTerm(int index) const '],['../classfl_1_1Variable.html#ab7a949d0398629ba35d21f70c75f25c0',1,'fl::Variable::getTerm(const std::string &name) const ']]], + ['gettext',['getText',['../classfl_1_1Rule.html#adbeaa04dcd7a6be8697815321f84939e',1,'fl::Rule']]], + ['getthreshold',['getThreshold',['../classfl_1_1Thresholded.html#a32336abe9201687a83cab2cf9681e88b',1,'fl::Thresholded']]], + ['gettopleft',['getTopLeft',['../classfl_1_1PiShape.html#ac6d9a607b36a3eab748355e4835d6fd0',1,'fl::PiShape']]], + ['gettopright',['getTopRight',['../classfl_1_1PiShape.html#af4603dfcf2981ba30c0f83b367fad91a',1,'fl::PiShape']]], + ['getvalue',['getValue',['../classfl_1_1Constant.html#af5b789b84ac38c739e29bd94c75452d4',1,'fl::Constant']]], + ['getweight',['getWeight',['../classfl_1_1Rule.html#a937d9a3aec0c40a80d151257520003f1',1,'fl::Rule']]], + ['getwhat',['getWhat',['../classfl_1_1Exception.html#a356f4b32b778f34f6d6216d7088eedd7',1,'fl::Exception']]], + ['getwidth',['getWidth',['../classfl_1_1Bell.html#a6376f7a04d0f9eb34570df2e7654185a',1,'fl::Bell']]] +]; diff --git a/docs/html/search/all_68.html b/docs/html/search/all_68.html new file mode 100644 index 0000000..dec41d6 --- /dev/null +++ b/docs/html/search/all_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_68.js b/docs/html/search/all_68.js new file mode 100644 index 0000000..e96f12b --- /dev/null +++ b/docs/html/search/all_68.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['hamacherproduct',['HamacherProduct',['../classfl_1_1HamacherProduct.html',1,'fl']]], + ['hamacherproduct_2ecpp',['HamacherProduct.cpp',['../HamacherProduct_8cpp.html',1,'']]], + ['hamacherproduct_2eh',['HamacherProduct.h',['../HamacherProduct_8h.html',1,'']]], + ['hamachersum',['HamacherSum',['../classfl_1_1HamacherSum.html',1,'fl']]], + ['hamachersum_2ecpp',['HamacherSum.cpp',['../HamacherSum_8cpp.html',1,'']]], + ['hamachersum_2eh',['HamacherSum.h',['../HamacherSum_8h.html',1,'']]], + ['hashedge',['hasHedge',['../classfl_1_1Engine.html#aca04b618fd840e8f15bdbc7869176307',1,'fl::Engine']]], + ['hasinputvariable',['hasInputVariable',['../classfl_1_1Engine.html#a5f335382428fc07d10b2e19b07ad3169',1,'fl::Engine']]], + ['hasoutputvariable',['hasOutputVariable',['../classfl_1_1Engine.html#af5fb1a60a176eeb626d216fc6543d2a4',1,'fl::Engine']]], + ['hasregisteredclass',['hasRegisteredClass',['../classfl_1_1Factory.html#acb4595793affb9ad8c736a8f8167c7e4',1,'fl::Factory']]], + ['hasruleblock',['hasRuleBlock',['../classfl_1_1Engine.html#a2981da39b56ea615c9b18ae367deb2b8',1,'fl::Engine']]], + ['hasterm',['hasTerm',['../classfl_1_1Variable.html#a07762ffd5c636e1b37b4233dfa9be1b6',1,'fl::Variable']]], + ['headers_2eh',['Headers.h',['../Headers_8h.html',1,'']]], + ['hedge',['hedge',['../classfl_1_1FactoryManager.html#af9d096bfb369da99be19325ec5cb1431',1,'fl::FactoryManager::hedge()'],['../classfl_1_1Any.html#a82e3e007681db89fe0a15a18967e78ec',1,'fl::Any::hedge()'],['../classfl_1_1Extremely.html#a43167e853dee9cb90fbbe913c067612a',1,'fl::Extremely::hedge()'],['../classfl_1_1Hedge.html#a98c94b3f1f62bedaf01d36ceed4cf837',1,'fl::Hedge::hedge()'],['../classfl_1_1Not.html#a8abf3c49d780b093da7614c47c70bd63',1,'fl::Not::hedge()'],['../classfl_1_1Seldom.html#a09ddaa9c37d6f47a93fdca30de9ca76e',1,'fl::Seldom::hedge()'],['../classfl_1_1Somewhat.html#a8e27f4a78dbdb0941b07a2d04234534d',1,'fl::Somewhat::hedge()'],['../classfl_1_1Very.html#ae331113074c7dee2df941e84e6d7ae85',1,'fl::Very::hedge()'],['../classfl_1_1Hedge.html#a3370874611a2880c05ca1d35dd6e8159',1,'fl::Hedge::Hedge()']]], + ['hedge',['Hedge',['../classfl_1_1Hedge.html',1,'fl']]], + ['hedge_2eh',['Hedge.h',['../Hedge_8h.html',1,'']]], + ['hedgefactory',['HedgeFactory',['../classfl_1_1HedgeFactory.html',1,'fl']]], + ['hedgefactory',['HedgeFactory',['../classfl_1_1HedgeFactory.html#a78d107303d37226af09a285314b1255a',1,'fl::HedgeFactory']]], + ['hedgefactory_2ecpp',['HedgeFactory.cpp',['../HedgeFactory_8cpp.html',1,'']]], + ['hedgefactory_2eh',['HedgeFactory.h',['../HedgeFactory_8h.html',1,'']]], + ['hedges',['hedges',['../classfl_1_1Proposition.html#a09ad3358683f937dd555118daf929e0e',1,'fl::Proposition::hedges()'],['../classfl_1_1Engine.html#a0ad848e4b8676d7c57ce5ce9aaf347dd',1,'fl::Engine::hedges()']]], + ['highestmembership',['highestMembership',['../classfl_1_1Variable.html#aa3bde8705979a1af1c857f6e17981814',1,'fl::Variable']]] +]; diff --git a/docs/html/search/all_69.html b/docs/html/search/all_69.html new file mode 100644 index 0000000..192e4ba --- /dev/null +++ b/docs/html/search/all_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_69.js b/docs/html/search/all_69.js new file mode 100644 index 0000000..5a77a9c --- /dev/null +++ b/docs/html/search/all_69.js @@ -0,0 +1,47 @@ +var searchData= +[ + ['ifkeyword',['ifKeyword',['../classfl_1_1Rule.html#a86c83c1fda834afadd60eb13a39f642b',1,'fl::Rule']]], + ['importer',['Importer',['../classfl_1_1Importer.html',1,'fl']]], + ['importer',['Importer',['../classfl_1_1Importer.html#a5d5f32f7522c0e263b7833315e529f1f',1,'fl::Importer']]], + ['importer_2eh',['Importer.h',['../Importer_8h.html',1,'']]], + ['importinput',['importInput',['../classfl_1_1FisImporter.html#a69a07f5204d45a6369f5148bd88f09a2',1,'fl::FisImporter']]], + ['importoutput',['importOutput',['../classfl_1_1FisImporter.html#aeea249f5b5985bd7b7e7541677f909c3',1,'fl::FisImporter']]], + ['importrules',['importRules',['../classfl_1_1FisImporter.html#a15e8b93a30f925e7b8c80b99c36a67b5',1,'fl::FisImporter']]], + ['importsystem',['importSystem',['../classfl_1_1FisImporter.html#adfcf55ffd93f7f6dde089d8a7ba5d9a4',1,'fl::FisImporter']]], + ['increment',['increment',['../classfl_1_1Operation.html#a60c60482b67760369150130596fe5331',1,'fl::Operation::increment(std::vector< int > &x, std::vector< int > &min, std::vector< int > &max)'],['../classfl_1_1Operation.html#a2d55752e3bf2f6bf8bc48b3d22a2f506',1,'fl::Operation::increment(std::vector< int > &x, int position, std::vector< int > &min, std::vector< int > &max)']]], + ['inf',['inf',['../namespacefl.html#a9ce9b761c2cbab8d04a2eae44e63c1f1',1,'fl']]], + ['inputvariable',['InputVariable',['../classfl_1_1InputVariable.html#a34ff3317b73342a2a8abf3652f6e8277',1,'fl::InputVariable']]], + ['inputvariable',['InputVariable',['../classfl_1_1InputVariable.html',1,'fl']]], + ['inputvariable_2ecpp',['InputVariable.cpp',['../InputVariable_8cpp.html',1,'']]], + ['inputvariable_2eh',['InputVariable.h',['../InputVariable_8h.html',1,'']]], + ['inputvariables',['inputVariables',['../classfl_1_1Linear.html#ac31901027e4e59deadab95327918a976',1,'fl::Linear::inputVariables()'],['../classfl_1_1Engine.html#a9c107245f0d4492291860d0c3b4e0600',1,'fl::Engine::inputVariables()']]], + ['inserthedge',['insertHedge',['../classfl_1_1Engine.html#a7420c4284e7056be4be23ae8bd5d8806',1,'fl::Engine']]], + ['insertinputvariable',['insertInputVariable',['../classfl_1_1Engine.html#a231be0ae11c7594760b90e54dce0eb2c',1,'fl::Engine']]], + ['insertoutputvariable',['insertOutputVariable',['../classfl_1_1Engine.html#a385c393a1b6a81b3fa4370a3d9ae5e1e',1,'fl::Engine']]], + ['insertrule',['insertRule',['../classfl_1_1RuleBlock.html#aa3733a36fa8a578b8eb053952f246259',1,'fl::RuleBlock']]], + ['insertruleblock',['insertRuleBlock',['../classfl_1_1Engine.html#aaf00bd5a56c4d0cdb19274104cfdbbbf',1,'fl::Engine']]], + ['insertterm',['insertTerm',['../classfl_1_1Variable.html#a4c81c1f5479adc40eb552dc5ba9be061',1,'fl::Variable']]], + ['instance',['instance',['../classfl_1_1FactoryManager.html#a751ba1be322868a9c8756ec9bd116c74',1,'fl::FactoryManager']]], + ['integraldefuzzifier',['IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html',1,'fl']]], + ['integraldefuzzifier',['IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html#aa8331e20bd5cc79ce77c5c63bd5fa220',1,'fl::IntegralDefuzzifier']]], + ['integraldefuzzifier_2ecpp',['IntegralDefuzzifier.cpp',['../IntegralDefuzzifier_8cpp.html',1,'']]], + ['integraldefuzzifier_2eh',['IntegralDefuzzifier.h',['../IntegralDefuzzifier_8h.html',1,'']]], + ['isbuiltinfunction',['isBuiltInFunction',['../classfl_1_1Function.html#aa604f2c6525cca5b85afecd016048b6f',1,'fl::Function']]], + ['isempty',['isEmpty',['../classfl_1_1Accumulated.html#a7f68b0eb8f8f0b2b190dc8df9d14d202',1,'fl::Accumulated']]], + ['isenabled',['isEnabled',['../classfl_1_1RuleBlock.html#a64bd2b2ac301dda1a9a60c5bbd82465b',1,'fl::RuleBlock::isEnabled()'],['../classfl_1_1Variable.html#a814019c457f88c4e7ae3ff09bb353d78',1,'fl::Variable::isEnabled()']]], + ['iseq',['isEq',['../classfl_1_1Operation.html#a3bd473932d3b8353e40af877c467b324',1,'fl::Operation']]], + ['isge',['isGE',['../classfl_1_1Operation.html#ad781d21609ff3e063257d94304418283',1,'fl::Operation']]], + ['isgt',['isGt',['../classfl_1_1Operation.html#afa219e0326d298b15c92f732c591ceaa',1,'fl::Operation']]], + ['isinf',['isInf',['../classfl_1_1Operation.html#ac0877e14c96f64e9230ca8d0ed0fa9eb',1,'fl::Operation::isInf(T x)'],['../classfl_1_1Operation.html#a0a221a37f9320e0994e1d9aee4af9fec',1,'fl::Operation::isInf(T x)']]], + ['iskeyword',['isKeyword',['../classfl_1_1Rule.html#a52c84de220b7b3a5b8dff7f451858793',1,'fl::Rule']]], + ['isle',['isLE',['../classfl_1_1Operation.html#a05320a82f0759c66c85bf2f1470753ef',1,'fl::Operation']]], + ['islockingoutputrange',['isLockingOutputRange',['../classfl_1_1OutputVariable.html#a8c2865737efc814ae8e214dc04eddea0',1,'fl::OutputVariable']]], + ['islockingvalidoutput',['isLockingValidOutput',['../classfl_1_1OutputVariable.html#a917f7a21983186a0627480dc0044510c',1,'fl::OutputVariable']]], + ['islt',['isLt',['../classfl_1_1Operation.html#a26398c2a7adf50032bdd6a1758988175',1,'fl::Operation']]], + ['isnan',['isNan',['../classfl_1_1Operation.html#a1cf6a6acc56ba71d35a2cd766c095243',1,'fl::Operation::isNan(T x)'],['../classfl_1_1Operation.html#af90151331ed26fad1b39f3a989040f1a',1,'fl::Operation::isNan(T x)']]], + ['isnumeric',['isNumeric',['../classfl_1_1Operation.html#a33778a1ae2ccbe4f1187737dfdb5556f',1,'fl::Operation']]], + ['isoperand',['isOperand',['../classfl_1_1Function.html#a38c3011d499a84d262b4ba895e4b3700',1,'fl::Function']]], + ['isoperator',['isOperator',['../classfl_1_1Expression.html#abd3159cedfb0d6ae5fde256262b96d03',1,'fl::Expression::isOperator()'],['../classfl_1_1Function.html#a0d9c8b2711ebd2a7eeeca0d4726cc235',1,'fl::Function::isOperator()']]], + ['isready',['isReady',['../classfl_1_1Engine.html#adfacce3db1568a16e685faa865e8b55a',1,'fl::Engine']]], + ['isvalidforname',['isValidForName',['../classfl_1_1Operation.html#a62eaeb9a80c982e70c2e1397b79c0beb',1,'fl::Operation']]] +]; diff --git a/docs/html/search/all_6a.html b/docs/html/search/all_6a.html new file mode 100644 index 0000000..6d8c91c --- /dev/null +++ b/docs/html/search/all_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6a.js b/docs/html/search/all_6a.js new file mode 100644 index 0000000..b22b82d --- /dev/null +++ b/docs/html/search/all_6a.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['javaexporter',['JavaExporter',['../classfl_1_1JavaExporter.html',1,'fl']]], + ['javaexporter',['JavaExporter',['../classfl_1_1JavaExporter.html#a98c789ad1a6eaea25cd7aafb41cd2012',1,'fl::JavaExporter']]], + ['javaexporter_2ecpp',['JavaExporter.cpp',['../JavaExporter_8cpp.html',1,'']]], + ['javaexporter_2eh',['JavaExporter.h',['../JavaExporter_8h.html',1,'']]], + ['join',['join',['../classfl_1_1Operation.html#a9946abbfa68ed8ee889532a96af71957',1,'fl::Operation::join(const std::vector< T > &x, const std::string &separator=", ")'],['../classfl_1_1Operation.html#a1103130aed65ace38a366c50ae2e7dad',1,'fl::Operation::join(int items, const std::string &separator, T first,...)'],['../classfl_1_1Operation.html#a6d59606686bb29794d3811004934d5e7',1,'fl::Operation::join(const std::vector< T > &x, const std::string &separator)'],['../classfl_1_1Operation.html#a74d7e8bc4a4be3c2f7e7474e0d69f7eb',1,'fl::Operation::join(const std::vector< std::string > &x, const std::string &separator)'],['../classfl_1_1Operation.html#a8fdf0a07a29557ed149271a7f02b5524',1,'fl::Operation::join(int items, const std::string &separator, T first,...)'],['../classfl_1_1Operation.html#a6c988814edbd4dc11ea8f1d81ecbc249',1,'fl::Operation::join(int items, const std::string &separator, const char *first,...)']]] +]; diff --git a/docs/html/search/all_6b.html b/docs/html/search/all_6b.html new file mode 100644 index 0000000..d70dca0 --- /dev/null +++ b/docs/html/search/all_6b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6b.js b/docs/html/search/all_6b.js new file mode 100644 index 0000000..93930d8 --- /dev/null +++ b/docs/html/search/all_6b.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['kw_5fdata_5fmaximum',['KW_DATA_MAXIMUM',['../classfl_1_1Console.html#ad943273bdaf462b24899b991ec7d18df',1,'fl::Console']]], + ['kw_5fdata_5fresolution_5fvariable',['KW_DATA_RESOLUTION_VARIABLE',['../classfl_1_1Console.html#aab4578da4e63f52d190e92a14059e371',1,'fl::Console']]], + ['kw_5fdata_5fseparator',['KW_DATA_SEPARATOR',['../classfl_1_1Console.html#a45d009d7a9d01765bacba57daaa39664',1,'fl::Console']]], + ['kw_5fexample',['KW_EXAMPLE',['../classfl_1_1Console.html#a374934d6528911c7c70bfdb5a3fae470',1,'fl::Console']]], + ['kw_5finput_5ffile',['KW_INPUT_FILE',['../classfl_1_1Console.html#a1fb5194708c34f694c0ad6c598833dbe',1,'fl::Console']]], + ['kw_5finput_5fformat',['KW_INPUT_FORMAT',['../classfl_1_1Console.html#acf42edfb62782fdbc2ebeb0765947144',1,'fl::Console']]], + ['kw_5foutput_5ffile',['KW_OUTPUT_FILE',['../classfl_1_1Console.html#af62f7d4a453962b9d6ee99071ff12305',1,'fl::Console']]], + ['kw_5foutput_5fformat',['KW_OUTPUT_FORMAT',['../classfl_1_1Console.html#afa0ff04c5f0afb8eb8ff94f62ae2c453',1,'fl::Console']]] +]; diff --git a/docs/html/search/all_6c.html b/docs/html/search/all_6c.html new file mode 100644 index 0000000..ae8bc48 --- /dev/null +++ b/docs/html/search/all_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6c.js b/docs/html/search/all_6c.js new file mode 100644 index 0000000..7d6fc10 --- /dev/null +++ b/docs/html/search/all_6c.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['largestofmaximum',['LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html',1,'fl']]], + ['largestofmaximum',['LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html#a1690cf2d7dff0434ed1c0c9d3c29ab6d',1,'fl::LargestOfMaximum']]], + ['largestofmaximum_2ecpp',['LargestOfMaximum.cpp',['../LargestOfMaximum_8cpp.html',1,'']]], + ['largestofmaximum_2eh',['LargestOfMaximum.h',['../LargestOfMaximum_8h.html',1,'']]], + ['left',['left',['../classfl_1_1Operator.html#aa9eea842958312649f58e0c415a6aaca',1,'fl::Operator::left()'],['../structfl_1_1Function_1_1Node.html#a80d665ccd5b5f88514ddbc284739346e',1,'fl::Function::Node::left()']]], + ['linear',['Linear',['../classfl_1_1Linear.html#a9aefe07bc50a793ad81d4e302b6486b8',1,'fl::Linear']]], + ['linear',['Linear',['../classfl_1_1Linear.html',1,'fl']]], + ['linear_2ecpp',['Linear.cpp',['../Linear_8cpp.html',1,'']]], + ['linear_2eh',['Linear.h',['../Linear_8h.html',1,'']]], + ['load',['load',['../classfl_1_1Antecedent.html#a262a8155a7c4553651a2a5da1883c75f',1,'fl::Antecedent::load()'],['../classfl_1_1Consequent.html#aa568ed0bdc9deeec35ba44e5f183c059',1,'fl::Consequent::load()'],['../classfl_1_1Function.html#ae7ef261750a6fac102c88b5338cc24e0',1,'fl::Function::load()'],['../classfl_1_1Function.html#ae100c79063c8bad3eca0beb5433b0a28',1,'fl::Function::load(const std::string &formula, const Engine *engine=NULL)']]], + ['loadbuiltinfunctions',['loadBuiltInFunctions',['../classfl_1_1Function.html#ac357b08779c1c3145f9e1311f71ae791',1,'fl::Function']]], + ['logging',['logging',['../classfl_1_1fuzzylite.html#ac2d3a7652fb4cab32d28f22219140c55',1,'fl::fuzzylite']]], + ['logicaland',['logicalAnd',['../classfl_1_1Operation.html#a00a16cb50581466396239084567a69d9',1,'fl::Operation']]], + ['logicalor',['logicalOr',['../classfl_1_1Operation.html#afbeb97277d6491ed88fe680633a64e15',1,'fl::Operation']]], + ['longversion',['longVersion',['../classfl_1_1fuzzylite.html#a46bb31970b57509e50cf5e17e2caeb3e',1,'fl::fuzzylite']]] +]; diff --git a/docs/html/search/all_6d.html b/docs/html/search/all_6d.html new file mode 100644 index 0000000..ee90718 --- /dev/null +++ b/docs/html/search/all_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6d.js b/docs/html/search/all_6d.js new file mode 100644 index 0000000..ba6a913 --- /dev/null +++ b/docs/html/search/all_6d.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['macheps',['macheps',['../classfl_1_1fuzzylite.html#aeec67f83c1315df438540263b6da184d',1,'fl::fuzzylite']]], + ['main',['main',['../classfl_1_1Console.html#a42d877375cee8afdc38eabaadd6f3342',1,'fl::Console::main()'],['../classfl_1_1Function.html#a9a545f733f56ab80350232facf1f110f',1,'fl::Function::main()'],['../main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'main(): main.cpp']]], + ['main_2ecpp',['main.cpp',['../main_8cpp.html',1,'']]], + ['makevalidid',['makeValidId',['../classfl_1_1Operation.html#a51e639fd4862ad97169f0638c9257bbb',1,'fl::Operation']]], + ['mamdani',['mamdani',['../classfl_1_1Console.html#a6d90c2b31cbe4657d464fcbd2ce6d863',1,'fl::Console']]], + ['map',['map',['../classfl_1_1Factory.html#ade25fed3fa637513c5292c4abe565752',1,'fl::Factory']]], + ['max',['max',['../classfl_1_1Operation.html#a3fd742ebe803b311b3dc3c0db2fe82ae',1,'fl::Operation::max(T a, T b)'],['../classfl_1_1Operation.html#a8626d08eb181ed5a36acf703d9a2baba',1,'fl::Operation::max(T a, T b)']]], + ['maximum',['Maximum',['../classfl_1_1Maximum.html',1,'fl']]], + ['maximum_2ecpp',['Maximum.cpp',['../Maximum_8cpp.html',1,'']]], + ['maximum_2eh',['Maximum.h',['../Maximum_8h.html',1,'']]], + ['meanofmaximum',['MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html#a550b5af2c02d13cf7f520892eed5a192',1,'fl::MeanOfMaximum']]], + ['meanofmaximum',['MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html',1,'fl']]], + ['meanofmaximum_2ecpp',['MeanOfMaximum.cpp',['../MeanOfMaximum_8cpp.html',1,'']]], + ['meanofmaximum_2eh',['MeanOfMaximum.h',['../MeanOfMaximum_8h.html',1,'']]], + ['membership',['membership',['../classfl_1_1Accumulated.html#a4e466f3818b4107b206d069ee7bb96b3',1,'fl::Accumulated::membership()'],['../classfl_1_1Bell.html#a5e625b1b3d23632a4015dd734adddb6f',1,'fl::Bell::membership()'],['../classfl_1_1Constant.html#ab1df75b525300e26f3bfdd16dc3c8bd2',1,'fl::Constant::membership()'],['../classfl_1_1Discrete.html#ae258f2ba052fd7c18c471e3b52992e5f',1,'fl::Discrete::membership()'],['../classfl_1_1Function.html#a6775b642c60d04148d25996707d4647f',1,'fl::Function::membership()'],['../classfl_1_1Gaussian.html#aa6b16380ba030cd4f1520c2d78ab950e',1,'fl::Gaussian::membership()'],['../classfl_1_1GaussianProduct.html#ab34f0db33867495381322cd11d85bf5d',1,'fl::GaussianProduct::membership()'],['../classfl_1_1Linear.html#a0dfcc75d129a7a1e0580fd2937a7bcc2',1,'fl::Linear::membership()'],['../classfl_1_1PiShape.html#ad4c0740301f52a2c9703f21ceea769d1',1,'fl::PiShape::membership()'],['../classfl_1_1Ramp.html#a487ad50106207e65ac5fb6b94eeb7bef',1,'fl::Ramp::membership()'],['../classfl_1_1Rectangle.html#a7358a312ee158f1559d513818377dca1',1,'fl::Rectangle::membership()'],['../classfl_1_1Sigmoid.html#ab704c08f9251bb86c7b6452d277c4b85',1,'fl::Sigmoid::membership()'],['../classfl_1_1SigmoidDifference.html#a1c222c6d79caa4d34efe3afd43a94742',1,'fl::SigmoidDifference::membership()'],['../classfl_1_1SigmoidProduct.html#ae5dc654786106eb7fb9bda80327e050a',1,'fl::SigmoidProduct::membership()'],['../classfl_1_1SShape.html#a95b6da4d1df8716190717e5ff8213928',1,'fl::SShape::membership()'],['../classfl_1_1Term.html#ae23daa362e9e6fb780ea967f6ababf0a',1,'fl::Term::membership()'],['../classfl_1_1Thresholded.html#a662f8746c8a308d486232771166fb0fb',1,'fl::Thresholded::membership()'],['../classfl_1_1Trapezoid.html#a1e31c93218d59c3335ff91ef4fdc0538',1,'fl::Trapezoid::membership()'],['../classfl_1_1Triangle.html#a4a3f37fbb1ed642d3264b0b957d5908b',1,'fl::Triangle::membership()'],['../classfl_1_1ZShape.html#a3cc9f0d130305aa3d7afae44576763e8',1,'fl::ZShape::membership()']]], + ['min',['min',['../classfl_1_1Operation.html#a1e3b19ecb5599aaef117962f5a98ddac',1,'fl::Operation::min(T a, T b)'],['../classfl_1_1Operation.html#ad717f0ee307b2423a6859c6df7757d74',1,'fl::Operation::min(T a, T b)']]], + ['minimum',['Minimum',['../classfl_1_1Minimum.html',1,'fl']]], + ['minimum_2ecpp',['Minimum.cpp',['../Minimum_8cpp.html',1,'']]], + ['minimum_2eh',['Minimum.h',['../Minimum_8h.html',1,'']]], + ['modify',['modify',['../classfl_1_1Consequent.html#a1868f2235ddddf5c3a55128d6816f8bd',1,'fl::Consequent']]], + ['modulo',['modulo',['../classfl_1_1Operation.html#ad38f4063108778da509a9d4e6ff86ba8',1,'fl::Operation']]], + ['multiply',['multiply',['../classfl_1_1Operation.html#a1bea3d159125f8c193329bec0333df48',1,'fl::Operation']]] +]; diff --git a/docs/html/search/all_6e.html b/docs/html/search/all_6e.html new file mode 100644 index 0000000..e0fd765 --- /dev/null +++ b/docs/html/search/all_6e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6e.js b/docs/html/search/all_6e.js new file mode 100644 index 0000000..eb89d05 --- /dev/null +++ b/docs/html/search/all_6e.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['name',['name',['../classfl_1_1Operator.html#a6f34cbf29f81626d61ebfbcee491d2af',1,'fl::Operator::name()'],['../structfl_1_1Function_1_1Element.html#a78180111ba536fd7d979f359e611ddf6',1,'fl::Function::Element::name()'],['../classfl_1_1fuzzylite.html#a15221b258922e96bb6ff9e270ec9678e',1,'fl::fuzzylite::name()'],['../classfl_1_1Any.html#a814b592e793aebed249ec86305f52d70',1,'fl::Any::name()'],['../classfl_1_1Extremely.html#a3a361fd4f0df11ea76f6d4664953cd8d',1,'fl::Extremely::name()'],['../classfl_1_1Hedge.html#a547d5526c4c921d7a61db29f2e76a88c',1,'fl::Hedge::name()'],['../classfl_1_1Not.html#a396267c88a293a6e1e0fb6a71a529f3f',1,'fl::Not::name()'],['../classfl_1_1Seldom.html#a10942e294076f4a7ccf72d83c4ecb771',1,'fl::Seldom::name()'],['../classfl_1_1Somewhat.html#af3615970e0db67462de0c2ed3656c520',1,'fl::Somewhat::name()'],['../classfl_1_1Very.html#a99e7d2e3f703e6b9612adfd56143e9db',1,'fl::Very::name()'],['../classfl_1_1CppExporter.html#acf9ce2274bf72448e53d8958a2259087',1,'fl::CppExporter::name()'],['../classfl_1_1Exporter.html#aff99f85f68f8f4c8b2755f2dcc435f11',1,'fl::Exporter::name()'],['../classfl_1_1FclExporter.html#a998704afa9d4e247d287ff3496c31e05',1,'fl::FclExporter::name()'],['../classfl_1_1FclImporter.html#af44344f1e6a6844a7dc092c2ebb1a2ff',1,'fl::FclImporter::name()'],['../classfl_1_1FisExporter.html#a82368569fc8fda27cd9c59e4b7710ca2',1,'fl::FisExporter::name()'],['../classfl_1_1FisImporter.html#a95632dfa7aa5abb29882043dd197083d',1,'fl::FisImporter::name()'],['../classfl_1_1FldExporter.html#a7f0ee3eec187356fd87f29be4679bde5',1,'fl::FldExporter::name()'],['../classfl_1_1FllExporter.html#aae32c417cf85a08f92f17697009a69f4',1,'fl::FllExporter::name()'],['../classfl_1_1FllImporter.html#ac3c96b230a304c1d2a13a9e6d77f3a4f',1,'fl::FllImporter::name()'],['../classfl_1_1Importer.html#a8b8cfaab1076414317917a2f983fc995',1,'fl::Importer::name()'],['../classfl_1_1JavaExporter.html#a210bc87a9517587d0c5c26380290705d',1,'fl::JavaExporter::name()']]], + ['nan',['nan',['../namespacefl.html#ac0141619ed9a08fb175cc92f134720e3',1,'fl']]], + ['negate',['negate',['../classfl_1_1Operation.html#a0e6c4231f378126709c3525973bea54e',1,'fl::Operation']]], + ['node',['Node',['../structfl_1_1Function_1_1Node.html',1,'fl::Function']]], + ['node',['Node',['../structfl_1_1Function_1_1Node.html#afb68a9731cbc8b0373298d444eed6637',1,'fl::Function::Node::Node(Operator *foperator, Node *left=NULL, Node *right=NULL)'],['../structfl_1_1Function_1_1Node.html#aa7922fad2b23c6b51eaae3e8aa435987',1,'fl::Function::Node::Node(BuiltInFunction *function, Node *left=NULL, Node *right=NULL)'],['../structfl_1_1Function_1_1Node.html#a816142e6c0dc4b16f60f6ae77276a8df',1,'fl::Function::Node::Node(const std::string &variable)'],['../structfl_1_1Function_1_1Node.html#adfe462bb8f6b9559f2e882e357121e50',1,'fl::Function::Node::Node(scalar value)']]], + ['norm',['Norm',['../classfl_1_1Norm.html',1,'fl']]], + ['norm',['Norm',['../classfl_1_1Norm.html#a037d23877edd010bcbf267772df56b67',1,'fl::Norm']]], + ['norm_2eh',['Norm.h',['../Norm_8h.html',1,'']]], + ['normalizedsum',['NormalizedSum',['../classfl_1_1NormalizedSum.html',1,'fl']]], + ['normalizedsum_2ecpp',['NormalizedSum.cpp',['../NormalizedSum_8cpp.html',1,'']]], + ['normalizedsum_2eh',['NormalizedSum.h',['../NormalizedSum_8h.html',1,'']]], + ['not',['Not',['../classfl_1_1Not.html',1,'fl']]], + ['not_2ecpp',['Not.cpp',['../Not_8cpp.html',1,'']]], + ['not_2eh',['Not.h',['../Not_8h.html',1,'']]], + ['numberofhedges',['numberOfHedges',['../classfl_1_1Engine.html#ad3b1b9e448d7183406d3c36eb06e1653',1,'fl::Engine']]], + ['numberofinputvariables',['numberOfInputVariables',['../classfl_1_1Engine.html#aaff1c85f1f4b3c846ee2a79507f32080',1,'fl::Engine']]], + ['numberofoutputvariables',['numberOfOutputVariables',['../classfl_1_1Engine.html#aa74eb71ff2a9c55c4167072cf5b1bb4b',1,'fl::Engine']]], + ['numberofruleblocks',['numberOfRuleBlocks',['../classfl_1_1Engine.html#a32b38de0b3079c254c7de7a1404f3e4c',1,'fl::Engine']]], + ['numberofrules',['numberOfRules',['../classfl_1_1RuleBlock.html#ab1300746c0e0d6ba3dfe7724dc24ea6d',1,'fl::RuleBlock']]], + ['numberofterms',['numberOfTerms',['../classfl_1_1Accumulated.html#a24a5d995ff0ba0c18e65ce11d8298aee',1,'fl::Accumulated::numberOfTerms()'],['../classfl_1_1Variable.html#acda25738675210de35d76514c6c50582',1,'fl::Variable::numberOfTerms()']]] +]; diff --git a/docs/html/search/all_6f.html b/docs/html/search/all_6f.html new file mode 100644 index 0000000..5e86b03 --- /dev/null +++ b/docs/html/search/all_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6f.js b/docs/html/search/all_6f.js new file mode 100644 index 0000000..012ee97 --- /dev/null +++ b/docs/html/search/all_6f.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['op',['Op',['../namespacefl.html#a204e02abcb4377f336a7b2af450992ac',1,'fl']]], + ['operation',['Operation',['../classfl_1_1Operation.html',1,'fl']]], + ['operation_2ecpp',['Operation.cpp',['../Operation_8cpp.html',1,'']]], + ['operation_2eh',['Operation.h',['../Operation_8h.html',1,'']]], + ['operator',['Operator',['../classfl_1_1Operator.html#a3f3fa3ae5a2efe92e5de7dd8c65656a7',1,'fl::Operator::Operator()'],['../structfl_1_1Function_1_1Operator.html#a28f2a1453f0a3433d4a2865fba33193f',1,'fl::Function::Operator::Operator(const std::string &name, Unary unary, short precedence=0, short associativity=-1)'],['../structfl_1_1Function_1_1Operator.html#a12ad8f672f087b51084b21b8035fab2c',1,'fl::Function::Operator::Operator(const std::string &name, Binary unary, short precedence=0, short associativity=-1)']]], + ['operator',['Operator',['../classfl_1_1Operator.html',1,'fl']]], + ['operator',['Operator',['../structfl_1_1Function_1_1Operator.html',1,'fl::Function']]], + ['operator_28_29',['operator()',['../structfl_1_1Variable_1_1SortByCoG.html#a7525f3e02463f76c7fa85805153f8eb8',1,'fl::Variable::SortByCoG']]], + ['operators',['operators',['../classfl_1_1Function.html#a56edfcdbbbf5701f030d6e0f5e9684a6',1,'fl::Function']]], + ['orkeyword',['orKeyword',['../classfl_1_1Rule.html#aa039c22128735b014599205e5c6aaae0',1,'fl::Rule']]], + ['outputvariable',['OutputVariable',['../classfl_1_1OutputVariable.html#a06fc646d572d770fcb8b98f3d9e7f983',1,'fl::OutputVariable']]], + ['outputvariable',['OutputVariable',['../classfl_1_1OutputVariable.html',1,'fl']]], + ['outputvariable_2ecpp',['OutputVariable.cpp',['../OutputVariable_8cpp.html',1,'']]], + ['outputvariable_2eh',['OutputVariable.h',['../OutputVariable_8h.html',1,'']]], + ['outputvariables',['outputVariables',['../classfl_1_1Engine.html#a3986929c751fa14c5e91ad899442bd1e',1,'fl::Engine']]] +]; diff --git a/docs/html/search/all_70.html b/docs/html/search/all_70.html new file mode 100644 index 0000000..799c1a2 --- /dev/null +++ b/docs/html/search/all_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_70.js b/docs/html/search/all_70.js new file mode 100644 index 0000000..a74ba25 --- /dev/null +++ b/docs/html/search/all_70.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['parameters',['parameters',['../classfl_1_1Accumulated.html#a5b68d40eea8ee151bdd934a3451b6bc6',1,'fl::Accumulated::parameters()'],['../classfl_1_1Bell.html#acb2dd9453a7a4d057b68209d217ce15a',1,'fl::Bell::parameters()'],['../classfl_1_1Constant.html#aab50f02de66ba9ae804d0a38a4e9e0b2',1,'fl::Constant::parameters()'],['../classfl_1_1Discrete.html#a84cf30021a29ecb406b7c01b743aa54f',1,'fl::Discrete::parameters()'],['../classfl_1_1Function.html#a3e900c3e371a7d6047415b9821c44e95',1,'fl::Function::parameters()'],['../classfl_1_1Gaussian.html#abe3ef5f8b925c0c8010f2112ff1585be',1,'fl::Gaussian::parameters()'],['../classfl_1_1GaussianProduct.html#af7c07284dd611729ac9c3a1d51798963',1,'fl::GaussianProduct::parameters()'],['../classfl_1_1Linear.html#afa98a39fca7b8bc7b444e8448882f3e2',1,'fl::Linear::parameters()'],['../classfl_1_1PiShape.html#a13b09d4230a58b312a9bbd890982c2bc',1,'fl::PiShape::parameters()'],['../classfl_1_1Ramp.html#a9259fc96fd86481966c24ff7fadd2829',1,'fl::Ramp::parameters()'],['../classfl_1_1Rectangle.html#a72ef9e6eb3f0dbe4f17f4526529b7713',1,'fl::Rectangle::parameters()'],['../classfl_1_1Sigmoid.html#af31208d52da5262004df47169a35db02',1,'fl::Sigmoid::parameters()'],['../classfl_1_1SigmoidDifference.html#a7e59ac222159477a0569a1f92118af33',1,'fl::SigmoidDifference::parameters()'],['../classfl_1_1SigmoidProduct.html#a0f44d8a921f634b4f6079eb4d1539f7f',1,'fl::SigmoidProduct::parameters()'],['../classfl_1_1SShape.html#a3b10741f63553b1be4fc4daf15cd4a39',1,'fl::SShape::parameters()'],['../classfl_1_1Term.html#abe166cd54a2f9b483472942e3536cb85',1,'fl::Term::parameters()'],['../classfl_1_1Thresholded.html#a93374bd46ec05cefd21181b377417312',1,'fl::Thresholded::parameters()'],['../classfl_1_1Trapezoid.html#a019ee6474e6cb880a2587e93b893b6e3',1,'fl::Trapezoid::parameters()'],['../classfl_1_1Triangle.html#abe8e44ee94cbc0e9e37ecb3e58b4ce46',1,'fl::Triangle::parameters()'],['../classfl_1_1ZShape.html#a628871407ebeeedb924f437c89177061',1,'fl::ZShape::parameters()']]], + ['parse',['parse',['../classfl_1_1Console.html#ad02a59bfac8e4c3c4972ef24485b486e',1,'fl::Console::parse()'],['../classfl_1_1Rule.html#a7f255fffc4373cb0510b7199dd4b9b78',1,'fl::Rule::parse()'],['../classfl_1_1Function.html#aa4abc71ff0a3a9c334f6953dd62e1777',1,'fl::Function::parse()']]], + ['parseboolean',['parseBoolean',['../classfl_1_1FllImporter.html#af2df9fd1883d408233b4818f138c2122',1,'fl::FllImporter']]], + ['parsedefuzzifier',['parseDefuzzifier',['../classfl_1_1FllImporter.html#ab301d5397d204347f583067a07c15082',1,'fl::FllImporter']]], + ['parsekeyvalue',['parseKeyValue',['../classfl_1_1FllImporter.html#a3199e6251bf66df0d038394474640805',1,'fl::FllImporter']]], + ['parserange',['parseRange',['../classfl_1_1FllImporter.html#a20931ea569c4b63b0b64dff564f97a8b',1,'fl::FllImporter']]], + ['parsesnorm',['parseSNorm',['../classfl_1_1FllImporter.html#ad555651cd0a08e0d061c0162343f021c',1,'fl::FllImporter']]], + ['parseterm',['parseTerm',['../classfl_1_1FllImporter.html#a06be484393fba92045bad88340f7956e',1,'fl::FllImporter']]], + ['parsetnorm',['parseTNorm',['../classfl_1_1FllImporter.html#a3920c6f5399e67238a2f8d6cfdc03158',1,'fl::FllImporter']]], + ['pishape',['PiShape',['../classfl_1_1PiShape.html',1,'fl']]], + ['pishape',['PiShape',['../classfl_1_1PiShape.html#a3c40ddb8438bb35ff31a677b8dead8c4',1,'fl::PiShape']]], + ['pishape_2ecpp',['PiShape.cpp',['../PiShape_8cpp.html',1,'']]], + ['pishape_2eh',['PiShape.h',['../PiShape_8h.html',1,'']]], + ['platform',['platform',['../classfl_1_1fuzzylite.html#a8a0e943a752795f49476c3c447f73b29',1,'fl::fuzzylite']]], + ['precedence',['precedence',['../structfl_1_1Function_1_1Operator.html#a13a251c753eea116a8a84c99c5d3dd99',1,'fl::Function::Operator']]], + ['prepareterm',['prepareTerm',['../classfl_1_1FclImporter.html#acfc6c8ac6ccae43e744581389b39bddb',1,'fl::FclImporter::prepareTerm()'],['../classfl_1_1FisImporter.html#a174c4585abf07f233fbf08f0d24321fd',1,'fl::FisImporter::prepareTerm()']]], + ['process',['process',['../classfl_1_1Console.html#ab75b47c714606140a237e820c395062d',1,'fl::Console::process(const std::map< std::string, std::string > &options)'],['../classfl_1_1Console.html#ace6178ad0a280b0ca8717ba5f6ed20d5',1,'fl::Console::process(const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)'],['../classfl_1_1Engine.html#a6810105266cdc2a801ae9e9fc56edc27',1,'fl::Engine::process()'],['../classfl_1_1FllImporter.html#ab1a1894cc656683fb5dfab587609fab4',1,'fl::FllImporter::process()'],['../classfl_1_1Console.html#a3dc66beb5d7b32ae2396077ddd0596d0',1,'fl::Console::process()']]], + ['processblock',['processBlock',['../classfl_1_1FclImporter.html#a3f04690c634633246b6c139567d4a97f',1,'fl::FclImporter']]], + ['processdefuzzify',['processDefuzzify',['../classfl_1_1FclImporter.html#a9079102376dcf6603f614b499b68d6fe',1,'fl::FclImporter']]], + ['processfuzzify',['processFuzzify',['../classfl_1_1FclImporter.html#a5a58eca83e8cd52b0795406a04e377e4',1,'fl::FclImporter']]], + ['processinputvariable',['processInputVariable',['../classfl_1_1FllImporter.html#ad60b4b4752e8d1c90826d9362a985dba',1,'fl::FllImporter']]], + ['processoutputvariable',['processOutputVariable',['../classfl_1_1FllImporter.html#a219f0cf485902342e830385dc0467dc1',1,'fl::FllImporter']]], + ['processruleblock',['processRuleBlock',['../classfl_1_1FclImporter.html#a8803a4df1678e47cfe29547bba2798fe',1,'fl::FclImporter::processRuleBlock()'],['../classfl_1_1FllImporter.html#abdd31292205140522f73410becb9d436',1,'fl::FllImporter::processRuleBlock()']]], + ['processvar',['processVar',['../classfl_1_1FclImporter.html#a1762774e5b20cae794130516e5a1df84',1,'fl::FclImporter']]], + ['proposition',['Proposition',['../classfl_1_1Proposition.html',1,'fl']]], + ['proposition',['Proposition',['../classfl_1_1Proposition.html#a1a3ee950c8fa4e4152d67aa16b1124c4',1,'fl::Proposition']]] +]; diff --git a/docs/html/search/all_72.html b/docs/html/search/all_72.html new file mode 100644 index 0000000..347b9f6 --- /dev/null +++ b/docs/html/search/all_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_72.js b/docs/html/search/all_72.js new file mode 100644 index 0000000..74a910d --- /dev/null +++ b/docs/html/search/all_72.js @@ -0,0 +1,33 @@ +var searchData= +[ + ['ramp',['Ramp',['../classfl_1_1Ramp.html',1,'fl']]], + ['ramp',['Ramp',['../classfl_1_1Ramp.html#aa6ed7deef8f2c02469053e0c72cbec2f',1,'fl::Ramp']]], + ['ramp_2ecpp',['Ramp.cpp',['../Ramp_8cpp.html',1,'']]], + ['ramp_2eh',['Ramp.h',['../Ramp_8h.html',1,'']]], + ['range',['range',['../classfl_1_1Variable.html#aee4811348bc71b992b51bb8b21bf7d0f',1,'fl::Variable']]], + ['rectangle',['Rectangle',['../classfl_1_1Rectangle.html',1,'fl']]], + ['rectangle',['Rectangle',['../classfl_1_1Rectangle.html#ab40019b91b2f1711510cebd2872ec2ae',1,'fl::Rectangle']]], + ['rectangle_2ecpp',['Rectangle.cpp',['../Rectangle_8cpp.html',1,'']]], + ['rectangle_2eh',['Rectangle.h',['../Rectangle_8h.html',1,'']]], + ['registerclass',['registerClass',['../classfl_1_1Factory.html#a7c1a3ab1b264eec096a25bb321fa106a',1,'fl::Factory']]], + ['removehedge',['removeHedge',['../classfl_1_1Engine.html#aedaccca7f6bf3bd39e0f552d2b5e2804',1,'fl::Engine::removeHedge(int index)'],['../classfl_1_1Engine.html#a0ade8efb4d5def737107beda95cd194c',1,'fl::Engine::removeHedge(const std::string &name)']]], + ['removeinputvariable',['removeInputVariable',['../classfl_1_1Engine.html#ab2543f14f73a53e81cd66fb572a89e33',1,'fl::Engine::removeInputVariable(int index)'],['../classfl_1_1Engine.html#a8cd360e285096ee2b0c526b38d64f76d',1,'fl::Engine::removeInputVariable(const std::string &name)']]], + ['removeoutputvariable',['removeOutputVariable',['../classfl_1_1Engine.html#aa09efb6fdcbf04b7a4d055af57a28bf6',1,'fl::Engine::removeOutputVariable(int index)'],['../classfl_1_1Engine.html#ad9abfd28ae7b029a3dddb9683dcef13b',1,'fl::Engine::removeOutputVariable(const std::string &name)']]], + ['removerule',['removeRule',['../classfl_1_1RuleBlock.html#a93a45335aa50f2033fec5146ab1553f9',1,'fl::RuleBlock']]], + ['removeruleblock',['removeRuleBlock',['../classfl_1_1Engine.html#a7c455e9bc27ea5befe893b0f9d6b978b',1,'fl::Engine::removeRuleBlock(int index)'],['../classfl_1_1Engine.html#a7c419900a49065d34bdf09c7cc9c3360',1,'fl::Engine::removeRuleBlock(const std::string &name)']]], + ['removeterm',['removeTerm',['../classfl_1_1Accumulated.html#afd7642b314f4fef57c219dcc002f89de',1,'fl::Accumulated::removeTerm()'],['../classfl_1_1Variable.html#aa6ec7f7e00faa114267edf386fde48f9',1,'fl::Variable::removeTerm()']]], + ['repeat',['repeat',['../classfl_1_1Operation.html#a68bc7cb26cc0ef3f21643e628d5f5fc5',1,'fl::Operation']]], + ['restart',['restart',['../classfl_1_1Engine.html#aaab1df1f00cf869177d9b89c1d959547',1,'fl::Engine']]], + ['right',['right',['../classfl_1_1Operator.html#a2d3a4c691493018eb8d1807eca99b414',1,'fl::Operator::right()'],['../structfl_1_1Function_1_1Node.html#a8307059ce23580e7ce44466d183dd5cf',1,'fl::Function::Node::right()']]], + ['root',['root',['../classfl_1_1Function.html#a3467f99b6dd817795f3af06039d91db5',1,'fl::Function']]], + ['rule',['Rule',['../classfl_1_1Rule.html',1,'fl']]], + ['rule',['Rule',['../classfl_1_1Rule.html#afea11e9e7ae8634cfadeed23e3e7a941',1,'fl::Rule']]], + ['rule_2ecpp',['Rule.cpp',['../Rule_8cpp.html',1,'']]], + ['rule_2eh',['Rule.h',['../Rule_8h.html',1,'']]], + ['ruleblock',['RuleBlock',['../classfl_1_1RuleBlock.html',1,'fl']]], + ['ruleblock',['RuleBlock',['../classfl_1_1RuleBlock.html#ace0c87fdaa860f31bc5c7964b47c2ebc',1,'fl::RuleBlock']]], + ['ruleblock_2ecpp',['RuleBlock.cpp',['../RuleBlock_8cpp.html',1,'']]], + ['ruleblock_2eh',['RuleBlock.h',['../RuleBlock_8h.html',1,'']]], + ['ruleblocks',['ruleBlocks',['../classfl_1_1Engine.html#a0b00a2479143189023bdbf92e6f1275b',1,'fl::Engine']]], + ['rules',['rules',['../classfl_1_1RuleBlock.html#aa64fb71dae713d530c02cd168d47910d',1,'fl::RuleBlock']]] +]; diff --git a/docs/html/search/all_73.html b/docs/html/search/all_73.html new file mode 100644 index 0000000..9abac91 --- /dev/null +++ b/docs/html/search/all_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_73.js b/docs/html/search/all_73.js new file mode 100644 index 0000000..3babdf2 --- /dev/null +++ b/docs/html/search/all_73.js @@ -0,0 +1,105 @@ +var searchData= +[ + ['scalar',['scalar',['../namespacefl.html#a7c31a28fa2ed8960a0eb0a779744b689',1,'fl']]], + ['scale',['scale',['../classfl_1_1Operation.html#a5bfb04163bcf6cdb7859f0f4a8bb9fd5',1,'fl::Operation']]], + ['seldom',['Seldom',['../classfl_1_1Seldom.html',1,'fl']]], + ['seldom_2ecpp',['Seldom.cpp',['../Seldom_8cpp.html',1,'']]], + ['seldom_2eh',['Seldom.h',['../Seldom_8h.html',1,'']]], + ['set',['set',['../classfl_1_1Linear.html#a062a9df614c8438b5e67d00ff141bb75',1,'fl::Linear::set(const std::vector< scalar > &coefficients, const std::vector< InputVariable * > &inputVariables)'],['../classfl_1_1Linear.html#aa95cffe598a7b14f5cb3a8089d6ae4f5',1,'fl::Linear::set(const std::vector< scalar > &coefficients, const std::vector< const InputVariable * > &inputVariables)']]], + ['seta',['setA',['../classfl_1_1Trapezoid.html#a9520c5972c8ef7bf4efa1bc5b8924a6f',1,'fl::Trapezoid::setA()'],['../classfl_1_1Triangle.html#a68beb6cf6eedb9e7e939fd1780cf535a',1,'fl::Triangle::setA()']]], + ['setaccumulation',['setAccumulation',['../classfl_1_1Accumulated.html#a336f8ce1a931c18e67f157ce774080f8',1,'fl::Accumulated']]], + ['setactivation',['setActivation',['../classfl_1_1RuleBlock.html#ae61d6c0e0abf753e8f2387dbeb9b96f8',1,'fl::RuleBlock::setActivation()'],['../classfl_1_1Thresholded.html#aa1c213432f49be607b7476e7bec02abe',1,'fl::Thresholded::setActivation()']]], + ['setantecedent',['setAntecedent',['../classfl_1_1Rule.html#a135a6f061eeb5ebe7686898850a144d3',1,'fl::Rule']]], + ['setb',['setB',['../classfl_1_1Trapezoid.html#abf9b4cdd06a3b3eb39536868e63589dd',1,'fl::Trapezoid::setB()'],['../classfl_1_1Triangle.html#a60e18f64d3adffc3093b08af105c3449',1,'fl::Triangle::setB()']]], + ['setbottomleft',['setBottomLeft',['../classfl_1_1PiShape.html#a8bfe56c1a00846040ea02f564b004723',1,'fl::PiShape']]], + ['setbottomright',['setBottomRight',['../classfl_1_1PiShape.html#aa3529d73d2f6669aac49e16bef3ba113',1,'fl::PiShape']]], + ['setc',['setC',['../classfl_1_1Trapezoid.html#af480c59dbc145e11ff0478ac25b57385',1,'fl::Trapezoid::setC()'],['../classfl_1_1Triangle.html#a0d34aba217c2c47ad2066244e85502f3',1,'fl::Triangle::setC()']]], + ['setcenter',['setCenter',['../classfl_1_1Bell.html#aa9fa72582f52c5f77199255fbb7eb143',1,'fl::Bell']]], + ['setconjunction',['setConjunction',['../classfl_1_1RuleBlock.html#a0063308d826b58c93e794ef7fb2e6aea',1,'fl::RuleBlock']]], + ['setconsequent',['setConsequent',['../classfl_1_1Rule.html#acbacb0365400543997388562eb2a8099',1,'fl::Rule']]], + ['setd',['setD',['../classfl_1_1Trapezoid.html#a70eb451c7aad4395ec47701f100ca5a6',1,'fl::Trapezoid']]], + ['setdebug',['setDebug',['../classfl_1_1fuzzylite.html#a7ba42a4547287cf82376139c8c84a3ac',1,'fl::fuzzylite']]], + ['setdecimals',['setDecimals',['../classfl_1_1fuzzylite.html#ad2cc6e7674b83d2d81f7273892efd655',1,'fl::fuzzylite']]], + ['setdefaultvalue',['setDefaultValue',['../classfl_1_1OutputVariable.html#a94bc9e87a1682ad448d5112df2112e2b',1,'fl::OutputVariable']]], + ['setdefuzzifier',['setDefuzzifier',['../classfl_1_1FactoryManager.html#a6dfc605dcd7542e15c7489d41a8ad891',1,'fl::FactoryManager::setDefuzzifier()'],['../classfl_1_1OutputVariable.html#af77232e3528f0d2a51fa08a19eb8885a',1,'fl::OutputVariable::setDefuzzifier()']]], + ['setdisjunction',['setDisjunction',['../classfl_1_1RuleBlock.html#adaa02f1efdbb3769869df13802445f6b',1,'fl::RuleBlock']]], + ['setenabled',['setEnabled',['../classfl_1_1RuleBlock.html#a2ec9c0522dae7ab556a8668d56f50092',1,'fl::RuleBlock::setEnabled()'],['../classfl_1_1Variable.html#ab141b7c2a05488b7a92697a80baf298a',1,'fl::Variable::setEnabled()']]], + ['setend',['setEnd',['../classfl_1_1Ramp.html#a75fad92d5146124ae5c25d4c4695ba81',1,'fl::Ramp::setEnd()'],['../classfl_1_1Rectangle.html#a1421c1c000bc6b99dc8a8ce38f3e8e5a',1,'fl::Rectangle::setEnd()'],['../classfl_1_1SShape.html#aad2d8e8c1f6c68079be1cff2453cb20d',1,'fl::SShape::setEnd()'],['../classfl_1_1ZShape.html#a0fd3d0fa1a33f23b2c89a2c3b658cc09',1,'fl::ZShape::setEnd()']]], + ['setengine',['setEngine',['../classfl_1_1Function.html#a243bf3006438367a6c4fc06f3e286fa2',1,'fl::Function']]], + ['setfalling',['setFalling',['../classfl_1_1SigmoidDifference.html#a89001909ecb959b8b666629ea05522e2',1,'fl::SigmoidDifference::setFalling()'],['../classfl_1_1SigmoidProduct.html#a728a798b46142bda0cf669a71d0078f0',1,'fl::SigmoidProduct::setFalling()']]], + ['setformula',['setFormula',['../classfl_1_1Function.html#a03eeaf1ff7ccfa41e482731f687faeeb',1,'fl::Function']]], + ['sethedge',['setHedge',['../classfl_1_1FactoryManager.html#a6d3b72825d0832d52949e4d1f603699e',1,'fl::FactoryManager']]], + ['setindent',['setIndent',['../classfl_1_1FclExporter.html#ae256ee281c36e58bb8a1492b54d6de58',1,'fl::FclExporter::setIndent()'],['../classfl_1_1FllExporter.html#a98a633468756e7756ba12ffe2d6de3ff',1,'fl::FllExporter::setIndent()']]], + ['setinflection',['setInflection',['../classfl_1_1Sigmoid.html#a30efb9dd268ec57bcd462fe231fd3835',1,'fl::Sigmoid']]], + ['setinputvalue',['setInputValue',['../classfl_1_1Engine.html#aab610c741f61f413d74017d2cf65f002',1,'fl::Engine::setInputValue()'],['../classfl_1_1InputVariable.html#ab80f6c5816de487663b97e1e38e3b8cf',1,'fl::InputVariable::setInputValue()']]], + ['setlastvalidoutput',['setLastValidOutput',['../classfl_1_1OutputVariable.html#a8e6591c3cb06b16464cff84994d0f8dc',1,'fl::OutputVariable']]], + ['setleft',['setLeft',['../classfl_1_1SigmoidDifference.html#aaaf6d5dc80dba26bef5c4afacabebc72',1,'fl::SigmoidDifference::setLeft()'],['../classfl_1_1SigmoidProduct.html#affba33a2e2899c829f5c3e4d18aecadc',1,'fl::SigmoidProduct::setLeft()']]], + ['setlockoutputrange',['setLockOutputRange',['../classfl_1_1OutputVariable.html#a122de7e1ebaceb865958223d98a77fd2',1,'fl::OutputVariable']]], + ['setlockvalidoutput',['setLockValidOutput',['../classfl_1_1OutputVariable.html#adbb824cc33473be7299ba289e65ddf1f',1,'fl::OutputVariable']]], + ['setlogging',['setLogging',['../classfl_1_1fuzzylite.html#a537521f5a55a706e2b0c5d8cddfd842a',1,'fl::fuzzylite']]], + ['setmacheps',['setMachEps',['../classfl_1_1fuzzylite.html#ad30f34196fccf39d165b19f96cab3dc8',1,'fl::fuzzylite']]], + ['setmaximum',['setMaximum',['../classfl_1_1FldExporter.html#a46c654ab86fc338f8574f2e6ea2fb413',1,'fl::FldExporter::setMaximum()'],['../classfl_1_1Accumulated.html#a62b067a72e5002d0306cf579371a341b',1,'fl::Accumulated::setMaximum()'],['../classfl_1_1OutputVariable.html#a3f9dd085069cee0c226be814ce1b4fc6',1,'fl::OutputVariable::setMaximum()'],['../classfl_1_1Variable.html#aabf0b9cebd1361271e04a602e4b21c92',1,'fl::Variable::setMaximum()']]], + ['setmean',['setMean',['../classfl_1_1Gaussian.html#a35273744e774551c342d061c44437680',1,'fl::Gaussian']]], + ['setmeana',['setMeanA',['../classfl_1_1GaussianProduct.html#a2be8509987e2e2d8e0dc388fe2009aab',1,'fl::GaussianProduct']]], + ['setmeanb',['setMeanB',['../classfl_1_1GaussianProduct.html#a299baa7ccb7368d1aea50a4e88023988',1,'fl::GaussianProduct']]], + ['setminimum',['setMinimum',['../classfl_1_1Accumulated.html#a0ef8d87d708683434bde5e9509cab2ae',1,'fl::Accumulated::setMinimum()'],['../classfl_1_1OutputVariable.html#af8f150c047b96f26e7ee1be522d18d15',1,'fl::OutputVariable::setMinimum()'],['../classfl_1_1Variable.html#a9ae979c3dc2e7161c7a79d89700c4b58',1,'fl::Variable::setMinimum()']]], + ['setname',['setName',['../classfl_1_1Engine.html#ab1aa8ab2f8f6375f713b42d6fb36ca1a',1,'fl::Engine::setName()'],['../classfl_1_1RuleBlock.html#a22bd9d7799508a81007549203996634f',1,'fl::RuleBlock::setName()'],['../classfl_1_1Term.html#a54bd381b285d0017ba82a022a113aaf5',1,'fl::Term::setName()'],['../classfl_1_1Variable.html#aa9482cef47139253fd25a7ed02538e5e',1,'fl::Variable::setName()']]], + ['setrange',['setRange',['../classfl_1_1Variable.html#a643c97119900221fdd7c8e72a0be6ccf',1,'fl::Variable']]], + ['setresolution',['setResolution',['../classfl_1_1IntegralDefuzzifier.html#ae95e4a62f1443fd56e6b0a6aa72ae7c9',1,'fl::IntegralDefuzzifier']]], + ['setright',['setRight',['../classfl_1_1SigmoidDifference.html#a6ac7371a547ce2d21f913fcaba000dc1',1,'fl::SigmoidDifference::setRight()'],['../classfl_1_1SigmoidProduct.html#ae5f48d14eb5213c8cddab30d19a69443',1,'fl::SigmoidProduct::setRight()']]], + ['setrising',['setRising',['../classfl_1_1SigmoidDifference.html#ad118c55132e218b17e156ee5e2e48898',1,'fl::SigmoidDifference::setRising()'],['../classfl_1_1SigmoidProduct.html#a06246685478bd13b5935660aa273bf54',1,'fl::SigmoidProduct::setRising()']]], + ['setseparator',['setSeparator',['../classfl_1_1FldExporter.html#a98c42aea98c09d15b7c5c6b8b48e3c42',1,'fl::FldExporter::setSeparator()'],['../classfl_1_1FllExporter.html#ad61fc9d9ddae0fe112af2ef15b573ccd',1,'fl::FllExporter::setSeparator()'],['../classfl_1_1FllImporter.html#a5e73ac41fb4d1423c3d90cb3a90ec2aa',1,'fl::FllImporter::setSeparator()']]], + ['setslope',['setSlope',['../classfl_1_1Bell.html#af04aa0bb8c014bb9dbe148e670029ac4',1,'fl::Bell::setSlope()'],['../classfl_1_1Sigmoid.html#a68506ad83b40be87aa62fef391f1bfcf',1,'fl::Sigmoid::setSlope()']]], + ['setsnorm',['setSnorm',['../classfl_1_1FactoryManager.html#ae5d6541dc878760638c244c5ec34ddde',1,'fl::FactoryManager']]], + ['setstandarddeviation',['setStandardDeviation',['../classfl_1_1Gaussian.html#adfbe578e478af2a0b646f8ce7e326c59',1,'fl::Gaussian']]], + ['setstandarddeviationa',['setStandardDeviationA',['../classfl_1_1GaussianProduct.html#a2f28afe006e31b0d5e78d8026654b016',1,'fl::GaussianProduct']]], + ['setstandarddeviationb',['setStandardDeviationB',['../classfl_1_1GaussianProduct.html#a650bcc4bf3a59bdf315806ca0699e626',1,'fl::GaussianProduct']]], + ['setstart',['setStart',['../classfl_1_1Ramp.html#aad37fbd6f4bfdf7d0e6f588fdc0d554c',1,'fl::Ramp::setStart()'],['../classfl_1_1Rectangle.html#a9a1999b425dbfda2067bf80d3d305c9b',1,'fl::Rectangle::setStart()'],['../classfl_1_1SShape.html#aef70e37103979595a6abceefe24de522',1,'fl::SShape::setStart()'],['../classfl_1_1ZShape.html#aacb9f39a1d26b9c50e43908115ddc4b9',1,'fl::ZShape::setStart()']]], + ['setterm',['setTerm',['../classfl_1_1FactoryManager.html#a15cbc26ca18266f48d69a61c3a5669fd',1,'fl::FactoryManager::setTerm()'],['../classfl_1_1Thresholded.html#ae22fd23d510715a4b300c730ae499f99',1,'fl::Thresholded::setTerm()']]], + ['settext',['setText',['../classfl_1_1Rule.html#aeaba5fc5afe18eb656d95358120033f7',1,'fl::Rule']]], + ['setthreshold',['setThreshold',['../classfl_1_1Thresholded.html#a9501586c7e7001b3999f1274c958a380',1,'fl::Thresholded']]], + ['settnorm',['setTnorm',['../classfl_1_1FactoryManager.html#a8bc18de05f499f5c3792c53b9bc792e1',1,'fl::FactoryManager']]], + ['settopleft',['setTopLeft',['../classfl_1_1PiShape.html#a9e19511ff789a1b9b4587f4176bda765',1,'fl::PiShape']]], + ['settopright',['setTopRight',['../classfl_1_1PiShape.html#ab9e95a7ff467a1df9a543ad8a03cab3e',1,'fl::PiShape']]], + ['setvalue',['setValue',['../classfl_1_1Constant.html#a06e65296b22772b0c7f6f800e287ef5e',1,'fl::Constant']]], + ['setweight',['setWeight',['../classfl_1_1Rule.html#a1ed414c8b6c9fb759f7fb31e4e600e9d',1,'fl::Rule']]], + ['setwhat',['setWhat',['../classfl_1_1Exception.html#aa8626724f221a050a1c4f7130392fcbf',1,'fl::Exception']]], + ['setwidth',['setWidth',['../classfl_1_1Bell.html#ac603bb9f288f046396065531002c2289',1,'fl::Bell']]], + ['sigmoid',['Sigmoid',['../classfl_1_1Sigmoid.html#a7ac49ce947a1f1e7c983300470c717ea',1,'fl::Sigmoid']]], + ['sigmoid',['Sigmoid',['../classfl_1_1Sigmoid.html',1,'fl']]], + ['sigmoid_2ecpp',['Sigmoid.cpp',['../Sigmoid_8cpp.html',1,'']]], + ['sigmoid_2eh',['Sigmoid.h',['../Sigmoid_8h.html',1,'']]], + ['sigmoiddifference',['SigmoidDifference',['../classfl_1_1SigmoidDifference.html#a19c58fd4be7f89cdb74642d24f72c4e2',1,'fl::SigmoidDifference']]], + ['sigmoiddifference',['SigmoidDifference',['../classfl_1_1SigmoidDifference.html',1,'fl']]], + ['sigmoiddifference_2ecpp',['SigmoidDifference.cpp',['../SigmoidDifference_8cpp.html',1,'']]], + ['sigmoiddifference_2eh',['SigmoidDifference.h',['../SigmoidDifference_8h.html',1,'']]], + ['sigmoidproduct',['SigmoidProduct',['../classfl_1_1SigmoidProduct.html#a372515ab559efe0971d93be1fd450c9a',1,'fl::SigmoidProduct']]], + ['sigmoidproduct',['SigmoidProduct',['../classfl_1_1SigmoidProduct.html',1,'fl']]], + ['sigmoidproduct_2ecpp',['SigmoidProduct.cpp',['../SigmoidProduct_8cpp.html',1,'']]], + ['sigmoidproduct_2eh',['SigmoidProduct.h',['../SigmoidProduct_8h.html',1,'']]], + ['signalhandler',['signalHandler',['../classfl_1_1Exception.html#a79d8db2ee6a5bb5e09e946d8e614668e',1,'fl::Exception']]], + ['smallestofmaximum',['SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html',1,'fl']]], + ['smallestofmaximum',['SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html#a6b7101728e38f14ae134e0637da053cc',1,'fl::SmallestOfMaximum']]], + ['smallestofmaximum_2ecpp',['SmallestOfMaximum.cpp',['../SmallestOfMaximum_8cpp.html',1,'']]], + ['smallestofmaximum_2eh',['SmallestOfMaximum.h',['../SmallestOfMaximum_8h.html',1,'']]], + ['snorm',['SNorm',['../classfl_1_1SNorm.html',1,'fl']]], + ['snorm',['snorm',['../classfl_1_1FactoryManager.html#a1a194828b4c6c6e50b8e050917def9b3',1,'fl::FactoryManager::snorm()'],['../classfl_1_1FisImporter.html#ac7d0266c915104de96c5fc3b0f428920',1,'fl::FisImporter::snorm()'],['../classfl_1_1SNorm.html#a57aaa46c8866d1bb249390b3b4c144af',1,'fl::SNorm::SNorm()']]], + ['snorm_2eh',['SNorm.h',['../SNorm_8h.html',1,'']]], + ['snormfactory',['SNormFactory',['../classfl_1_1SNormFactory.html',1,'fl']]], + ['snormfactory',['SNormFactory',['../classfl_1_1SNormFactory.html#a1d6357b8589db16e37602998735b9151',1,'fl::SNormFactory']]], + ['snormfactory_2ecpp',['SNormFactory.cpp',['../SNormFactory_8cpp.html',1,'']]], + ['snormfactory_2eh',['SNormFactory.h',['../SNormFactory_8h.html',1,'']]], + ['somewhat',['Somewhat',['../classfl_1_1Somewhat.html',1,'fl']]], + ['somewhat_2ecpp',['Somewhat.cpp',['../Somewhat_8cpp.html',1,'']]], + ['somewhat_2eh',['Somewhat.h',['../Somewhat_8h.html',1,'']]], + ['sort',['sort',['../classfl_1_1Variable.html#a9fd85e7de334e33318cde13f93f4d5e0',1,'fl::Variable']]], + ['sortbycog',['SortByCoG',['../structfl_1_1Variable_1_1SortByCoG.html',1,'fl::Variable']]], + ['space',['space',['../classfl_1_1Function.html#a2afc9a85368f4a3bfed8d4850ebeb437',1,'fl::Function']]], + ['split',['split',['../classfl_1_1Operation.html#aa3889ff75f5738822785d237d6390a6a',1,'fl::Operation']]], + ['sshape',['SShape',['../classfl_1_1SShape.html',1,'fl']]], + ['sshape',['SShape',['../classfl_1_1SShape.html#ab49faed746f299e6b6c194e070637f2b',1,'fl::SShape']]], + ['sshape_2ecpp',['SShape.cpp',['../SShape_8cpp.html',1,'']]], + ['sshape_2eh',['SShape.h',['../SShape_8h.html',1,'']]], + ['str',['str',['../classfl_1_1Operation.html#a24a8b09a91b15766261d2929125d8069',1,'fl::Operation::str(T x, int decimals=fuzzylite::decimals())'],['../classfl_1_1Operation.html#aae38b451d0206cdd3d5e8ae6632a69cf',1,'fl::Operation::str(T x, int decimals)'],['../classfl_1_1Operation.html#a3a9ae8d5c79846d8ea7efef9242990e0',1,'fl::Operation::str(const std::string &x, int precision)']]], + ['subtract',['subtract',['../classfl_1_1Operation.html#a013681c3803db34e8ea86e23d31659a7',1,'fl::Operation']]] +]; diff --git a/docs/html/search/all_74.html b/docs/html/search/all_74.html new file mode 100644 index 0000000..c646aef --- /dev/null +++ b/docs/html/search/all_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_74.js b/docs/html/search/all_74.js new file mode 100644 index 0000000..4440afd --- /dev/null +++ b/docs/html/search/all_74.js @@ -0,0 +1,47 @@ +var searchData= +[ + ['takagisugeno',['takagiSugeno',['../classfl_1_1Console.html#a948fd183ea62decbd166af3d98a27b68',1,'fl::Console']]], + ['term',['Term',['../classfl_1_1Term.html',1,'fl']]], + ['term',['term',['../classfl_1_1Proposition.html#afe005bc95d5f8b4298ab40c42a78eecb',1,'fl::Proposition::term()'],['../classfl_1_1FactoryManager.html#a0f50385692a67eab5d5ef5664570f225',1,'fl::FactoryManager::term()'],['../classfl_1_1Term.html#a62dc23ac6846823fbfd38c1d6cbc7040',1,'fl::Term::Term()']]], + ['term_2ecpp',['Term.cpp',['../Term_8cpp.html',1,'']]], + ['term_2eh',['Term.h',['../Term_8h.html',1,'']]], + ['termfactory',['TermFactory',['../classfl_1_1TermFactory.html',1,'fl']]], + ['termfactory',['TermFactory',['../classfl_1_1TermFactory.html#a9029aa048f82f8474c1fbb834477bbeb',1,'fl::TermFactory']]], + ['termfactory_2ecpp',['TermFactory.cpp',['../TermFactory_8cpp.html',1,'']]], + ['termfactory_2eh',['TermFactory.h',['../TermFactory_8h.html',1,'']]], + ['terminate',['terminate',['../classfl_1_1Exception.html#abb466081bb58ff8ec77ed18837d98c80',1,'fl::Exception']]], + ['terms',['terms',['../classfl_1_1Accumulated.html#a5bdf5ea19e6cecc1641812f2f2265079',1,'fl::Accumulated::terms()'],['../classfl_1_1Variable.html#aef34088e135f22788ffedeb338ce580d',1,'fl::Variable::terms()']]], + ['thenkeyword',['thenKeyword',['../classfl_1_1Rule.html#a64a4724bc25ff81a788df4cfacbaca07',1,'fl::Rule']]], + ['thresholded',['Thresholded',['../classfl_1_1Thresholded.html',1,'fl']]], + ['thresholded',['Thresholded',['../classfl_1_1Thresholded.html#a390708b1f0f0f71a5b0ecbebcfe3d533',1,'fl::Thresholded']]], + ['thresholded_2ecpp',['Thresholded.cpp',['../Thresholded_8cpp.html',1,'']]], + ['thresholded_2eh',['Thresholded.h',['../Thresholded_8h.html',1,'']]], + ['tnorm',['TNorm',['../classfl_1_1TNorm.html',1,'fl']]], + ['tnorm',['TNorm',['../classfl_1_1TNorm.html#a1fdc4f59a4c6398c87343a68c4c21222',1,'fl::TNorm::TNorm()'],['../classfl_1_1FactoryManager.html#a83b695b1c664038b38f0fcf366ca4632',1,'fl::FactoryManager::tnorm()'],['../classfl_1_1FisImporter.html#a5dc8ba46e949ceb3dcff619c77e77086',1,'fl::FisImporter::tnorm()']]], + ['tnorm_2eh',['TNorm.h',['../TNorm_8h.html',1,'']]], + ['tnormfactory',['TNormFactory',['../classfl_1_1TNormFactory.html#ad2f476c6d252a4b23d2a007cfd63840a',1,'fl::TNormFactory']]], + ['tnormfactory',['TNormFactory',['../classfl_1_1TNormFactory.html',1,'fl']]], + ['tnormfactory_2ecpp',['TNormFactory.cpp',['../TNormFactory_8cpp.html',1,'']]], + ['tnormfactory_2eh',['TNormFactory.h',['../TNormFactory_8h.html',1,'']]], + ['toinfix',['toInfix',['../classfl_1_1Antecedent.html#a640d2a6ddf95888caae813c6b52b888e',1,'fl::Antecedent::toInfix()'],['../structfl_1_1Function_1_1Node.html#acfbfbe7695d1c55c7b7db22737900b73',1,'fl::Function::Node::toInfix()']]], + ['topostfix',['toPostfix',['../classfl_1_1Antecedent.html#a7af43cf7a789faecc8d5f5af0b979826',1,'fl::Antecedent::toPostfix()'],['../structfl_1_1Function_1_1Node.html#a149a3a2a32108642885610ef45f17a08',1,'fl::Function::Node::toPostfix()'],['../classfl_1_1Function.html#ad58b9d3ca96c588dfd7001a35f575f45',1,'fl::Function::toPostfix()']]], + ['toprefix',['toPrefix',['../classfl_1_1Antecedent.html#ae878e411cf3694a1eb35f1d5ce66eff8',1,'fl::Antecedent::toPrefix()'],['../structfl_1_1Function_1_1Node.html#ac223edba05d5ffe69cda42c358aff9af',1,'fl::Function::Node::toPrefix()']]], + ['toscalar',['toScalar',['../classfl_1_1Operation.html#a0a61cdee4e1d67889fb8614ded1af1d4',1,'fl::Operation']]], + ['tostring',['toString',['../classfl_1_1Engine.html#a6899dd3759b1046152d4df4ff0650d9b',1,'fl::Engine::toString()'],['../classfl_1_1CppExporter.html#a87230aba083ceaf79039f019aaf522ef',1,'fl::CppExporter::toString(const Engine *engine) const '],['../classfl_1_1CppExporter.html#a76425dec96f525c34e1d866251691083',1,'fl::CppExporter::toString(const InputVariable *inputVariable, const Engine *engine) const '],['../classfl_1_1CppExporter.html#abd3167e16610d23bc8de551a5a5153b2',1,'fl::CppExporter::toString(const OutputVariable *outputVariable, const Engine *engine) const '],['../classfl_1_1CppExporter.html#acebe9d5514eef5082fe159b9d5227f5a',1,'fl::CppExporter::toString(const RuleBlock *ruleBlock, const Engine *engine) const '],['../classfl_1_1CppExporter.html#a2d0088f77d76ed43583bd6e0397172d0',1,'fl::CppExporter::toString(scalar value) const '],['../classfl_1_1CppExporter.html#a322a3988ae5979f49151dcc9936ca2b6',1,'fl::CppExporter::toString(const Hedge *hedge) const '],['../classfl_1_1CppExporter.html#ac4e09fd612c8f44efd50567721d075d2',1,'fl::CppExporter::toString(const Term *term) const '],['../classfl_1_1CppExporter.html#afd018e5e813a1bc846dcbf13b6ce1ccf',1,'fl::CppExporter::toString(const Norm *op) const '],['../classfl_1_1CppExporter.html#a47f209db0dfed0a607e776ac247c0734',1,'fl::CppExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1Exporter.html#a4532bc9161aa197ecbb2223974f43136',1,'fl::Exporter::toString()'],['../classfl_1_1FclExporter.html#af001ef5820ca086eee179ccfefcc32d2',1,'fl::FclExporter::toString(const Engine *engine) const '],['../classfl_1_1FclExporter.html#a89882e3c7d382b12d6ad018e9aa7d2db',1,'fl::FclExporter::toString(const TNorm *tnorm) const '],['../classfl_1_1FclExporter.html#a2217ded0027c175476672f60a20e74e9',1,'fl::FclExporter::toString(const SNorm *snorm) const '],['../classfl_1_1FclExporter.html#a316cd5181e2024fae9997745cfc8ac33',1,'fl::FclExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FclExporter.html#aab0d463ecb759bccbf2d88a08d6eda6a',1,'fl::FclExporter::toString(const Term *term) const '],['../classfl_1_1FisExporter.html#a99519ab6acc89c845dd93b4ed8d3b040',1,'fl::FisExporter::toString(const Engine *engine) const '],['../classfl_1_1FisExporter.html#a2a1446ffbfec0bcfb85e708e108e41da',1,'fl::FisExporter::toString(const TNorm *tnorm) const '],['../classfl_1_1FisExporter.html#a3639ee279c13b289215e2f010d7b0317',1,'fl::FisExporter::toString(const SNorm *snorm) const '],['../classfl_1_1FisExporter.html#a2d9d3bba19f92fd9c4e2dfbe3f57c1f9',1,'fl::FisExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FisExporter.html#a5c2629c979ea16c2539b77bf7fae4be2',1,'fl::FisExporter::toString(const Term *term) const '],['../classfl_1_1FldExporter.html#a006a568997e2111bab3ab05cda5e92d7',1,'fl::FldExporter::toString()'],['../classfl_1_1FllExporter.html#a173b52acdd66b05f7d2ff9f9d3a77034',1,'fl::FllExporter::toString(const Engine *engine) const '],['../classfl_1_1FllExporter.html#a51a3cd0489b0525764d660aeea5b4d8e',1,'fl::FllExporter::toString(const Variable *variable) const '],['../classfl_1_1FllExporter.html#a4e1b33a482aa35baffcad435db58f101',1,'fl::FllExporter::toString(const InputVariable *inputVariable) const '],['../classfl_1_1FllExporter.html#a1963248233121774fadf9b470426b1ab',1,'fl::FllExporter::toString(const OutputVariable *outputVariable) const '],['../classfl_1_1FllExporter.html#ae1ae84e6bb6e4089a5c72ebd7a7a7792',1,'fl::FllExporter::toString(const RuleBlock *ruleBlock) const '],['../classfl_1_1FllExporter.html#a51df80793d85e99767482d63fd3bd295',1,'fl::FllExporter::toString(const Rule *rule) const '],['../classfl_1_1FllExporter.html#a9c801344e238cb062adeed29cf72d8b7',1,'fl::FllExporter::toString(const Norm *norm) const '],['../classfl_1_1FllExporter.html#a79fa45d5098091e5c5c2b40aaec12b1a',1,'fl::FllExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FllExporter.html#ad725c500e88aeaa14a03760027a608a2',1,'fl::FllExporter::toString(const Term *term) const '],['../classfl_1_1JavaExporter.html#a94a80476fdc585b6b23a7b3627ce9d66',1,'fl::JavaExporter::toString(const Engine *engine) const '],['../classfl_1_1JavaExporter.html#aa58115648623ced606d0eba39ab27c78',1,'fl::JavaExporter::toString(const InputVariable *inputVariable, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#aa3178924725d70c06fe0a6e93b1e3238',1,'fl::JavaExporter::toString(const OutputVariable *outputVariable, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#ae8043db7b3be3720456396d5ea1f1856',1,'fl::JavaExporter::toString(const RuleBlock *ruleBlock, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#af7d8739f58620e3398e60ab818334114',1,'fl::JavaExporter::toString(const Term *term) const '],['../classfl_1_1JavaExporter.html#a4308b8e8efe759c20ff1cc9a1287a003',1,'fl::JavaExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1JavaExporter.html#a354872e403512edbaced4d8f865a965c',1,'fl::JavaExporter::toString(const Norm *norm) const '],['../classfl_1_1JavaExporter.html#aeff64c84585ae1dd69751e2a86ba9acd',1,'fl::JavaExporter::toString(scalar value) const '],['../classfl_1_1Antecedent.html#a56ee133cd72dba23a17c366e99a0e863',1,'fl::Antecedent::toString()'],['../classfl_1_1Consequent.html#a5bec22a386abfa9de6f22f9697933cec',1,'fl::Consequent::toString()'],['../classfl_1_1Expression.html#a80b60d4107b7604bb6f56976321c6d30',1,'fl::Expression::toString()'],['../classfl_1_1Proposition.html#a4fc5d8e5b865b13faccfbf6f3983bc87',1,'fl::Proposition::toString()'],['../classfl_1_1Operator.html#a324bf32a265ad994f839da41399d44d4',1,'fl::Operator::toString()'],['../classfl_1_1Rule.html#adfa6e97f1301e0d72292c6f08b9123af',1,'fl::Rule::toString()'],['../classfl_1_1RuleBlock.html#a94435fd1ce2df4df3ba5bab4f991ade6',1,'fl::RuleBlock::toString()'],['../structfl_1_1Function_1_1Element.html#a399e44e0aca38be2ea561a8ac3805d9f',1,'fl::Function::Element::toString()'],['../structfl_1_1Function_1_1Operator.html#a34152f4040c7a69f78842c7ad211e725',1,'fl::Function::Operator::toString()'],['../structfl_1_1Function_1_1BuiltInFunction.html#a2d5f12900baee07457ee39422d926929',1,'fl::Function::BuiltInFunction::toString()'],['../structfl_1_1Function_1_1Node.html#a84c26b9bde409b2c33620bc52d1e7ab5',1,'fl::Function::Node::toString()'],['../classfl_1_1Term.html#ad5e7a6c98f286c05f88bf89adac1ca92',1,'fl::Term::toString()'],['../classfl_1_1InputVariable.html#a40085be4ae61578ff1ddcf53f012834e',1,'fl::InputVariable::toString()'],['../classfl_1_1OutputVariable.html#a1791942e79c06f0df511329078a4fa8f',1,'fl::OutputVariable::toString()'],['../classfl_1_1Variable.html#acc8e2aada76ea676684b81bb2b5e12c6',1,'fl::Variable::toString()']]], + ['towriter',['toWriter',['../classfl_1_1FldExporter.html#a51e75da5a6bc7ff06c30f8a3aed263d1',1,'fl::FldExporter']]], + ['translate',['translate',['../classfl_1_1FisExporter.html#adc49761903862ad0f676242eead90273',1,'fl::FisExporter']]], + ['translateproposition',['translateProposition',['../classfl_1_1FisImporter.html#a413d8eb624516006fdb21a55084ea94a',1,'fl::FisImporter']]], + ['trapezoid',['Trapezoid',['../classfl_1_1Trapezoid.html',1,'fl']]], + ['trapezoid',['Trapezoid',['../classfl_1_1Trapezoid.html#a4dc77e97a1c3135d08b5d5ae9f32ed07',1,'fl::Trapezoid']]], + ['trapezoid_2ecpp',['Trapezoid.cpp',['../Trapezoid_8cpp.html',1,'']]], + ['trapezoid_2eh',['Trapezoid.h',['../Trapezoid_8h.html',1,'']]], + ['triangle',['Triangle',['../classfl_1_1Triangle.html#adf8fd9bd87e88f606cc29daab17d1d75',1,'fl::Triangle']]], + ['triangle',['Triangle',['../classfl_1_1Triangle.html',1,'fl']]], + ['triangle_2ecpp',['Triangle.cpp',['../Triangle_8cpp.html',1,'']]], + ['triangle_2eh',['Triangle.h',['../Triangle_8h.html',1,'']]], + ['trim',['trim',['../classfl_1_1Operation.html#a9d43cae361f3ad708316caec6c35ba17',1,'fl::Operation']]], + ['tsukamoto',['Tsukamoto',['../classfl_1_1Tsukamoto.html',1,'fl']]], + ['tsukamoto',['tsukamoto',['../classfl_1_1Tsukamoto.html#a0238b45188674d7fa3e45f09ad016343',1,'fl::Tsukamoto']]], + ['tsukamoto_2ecpp',['Tsukamoto.cpp',['../Tsukamoto_8cpp.html',1,'']]], + ['tsukamoto_2eh',['Tsukamoto.h',['../Tsukamoto_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_75.html b/docs/html/search/all_75.html new file mode 100644 index 0000000..550133a --- /dev/null +++ b/docs/html/search/all_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_75.js b/docs/html/search/all_75.js new file mode 100644 index 0000000..2abbd11 --- /dev/null +++ b/docs/html/search/all_75.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unary',['unary',['../structfl_1_1Function_1_1Element.html#a9e76e33ff8628660c4878cc50a6acd73',1,'fl::Function::Element::unary()'],['../classfl_1_1Function.html#acff7c0f580b0a4a3e7739e5bbe9a3c42',1,'fl::Function::Unary()']]], + ['usage',['usage',['../classfl_1_1Console.html#afb3c16a3e549e43207d672f25db3e4c5',1,'fl::Console']]] +]; diff --git a/docs/html/search/all_76.html b/docs/html/search/all_76.html new file mode 100644 index 0000000..50b86da --- /dev/null +++ b/docs/html/search/all_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_76.js b/docs/html/search/all_76.js new file mode 100644 index 0000000..a162767 --- /dev/null +++ b/docs/html/search/all_76.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['value',['value',['../structfl_1_1Function_1_1Node.html#a7587687bc9ba4aa12b9c56c9d0d5138a',1,'fl::Function::Node']]], + ['variable',['variable',['../classfl_1_1Proposition.html#a9b987871dbe823c8e959813cb5e5dc47',1,'fl::Proposition::variable()'],['../structfl_1_1Function_1_1Node.html#a6426ce26425fc1e917bf74f2c4d05373',1,'fl::Function::Node::variable()'],['../classfl_1_1Variable.html#ad24d35dc5e23847dd520ab35dd47b66b',1,'fl::Variable::Variable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)'],['../classfl_1_1Variable.html#ae2f77db0362e53cfa67decbc05ace0b8',1,'fl::Variable::Variable(const Variable &copy)']]], + ['variable',['Variable',['../classfl_1_1Variable.html',1,'fl']]], + ['variable_2ecpp',['Variable.cpp',['../Variable_8cpp.html',1,'']]], + ['variable_2eh',['Variable.h',['../Variable_8h.html',1,'']]], + ['variables',['variables',['../classfl_1_1Function.html#a10ce03251388d331bf22f95602c2df89',1,'fl::Function']]], + ['version',['version',['../classfl_1_1fuzzylite.html#a8eb9af065085aed7ed5f0fb187c8b43f',1,'fl::fuzzylite']]], + ['very',['Very',['../classfl_1_1Very.html',1,'fl']]], + ['very_2ecpp',['Very.cpp',['../Very_8cpp.html',1,'']]], + ['very_2eh',['Very.h',['../Very_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_77.html b/docs/html/search/all_77.html new file mode 100644 index 0000000..55d7142 --- /dev/null +++ b/docs/html/search/all_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_77.js b/docs/html/search/all_77.js new file mode 100644 index 0000000..ce80cb2 --- /dev/null +++ b/docs/html/search/all_77.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['weightedaverage',['WeightedAverage',['../classfl_1_1WeightedAverage.html',1,'fl']]], + ['weightedaverage',['WeightedAverage',['../classfl_1_1WeightedAverage.html#a69cb72ae04264d438690bd0d23f13dd4',1,'fl::WeightedAverage']]], + ['weightedaverage_2ecpp',['WeightedAverage.cpp',['../WeightedAverage_8cpp.html',1,'']]], + ['weightedaverage_2eh',['WeightedAverage.h',['../WeightedAverage_8h.html',1,'']]], + ['weightedsum',['WeightedSum',['../classfl_1_1WeightedSum.html#a98a8278e11abb3a9dea58e9e9d75c6ba',1,'fl::WeightedSum']]], + ['weightedsum',['WeightedSum',['../classfl_1_1WeightedSum.html',1,'fl']]], + ['weightedsum_2ecpp',['WeightedSum.cpp',['../WeightedSum_8cpp.html',1,'']]], + ['weightedsum_2eh',['WeightedSum.h',['../WeightedSum_8h.html',1,'']]], + ['what',['what',['../classfl_1_1Exception.html#a1f606bf37e5cd79274f606dd8b8697cf',1,'fl::Exception']]], + ['withkeyword',['withKeyword',['../classfl_1_1Rule.html#a0a9cb5b41edddb24376b9d76e276df1a',1,'fl::Rule']]] +]; diff --git a/docs/html/search/all_78.html b/docs/html/search/all_78.html new file mode 100644 index 0000000..39075d4 --- /dev/null +++ b/docs/html/search/all_78.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_78.js b/docs/html/search/all_78.js new file mode 100644 index 0000000..009ff37 --- /dev/null +++ b/docs/html/search/all_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['x',['x',['../classfl_1_1Discrete.html#a97b4d0a07be68da9213354537a28d91a',1,'fl::Discrete']]] +]; diff --git a/docs/html/search/all_79.html b/docs/html/search/all_79.html new file mode 100644 index 0000000..033719a --- /dev/null +++ b/docs/html/search/all_79.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_79.js b/docs/html/search/all_79.js new file mode 100644 index 0000000..c1542d7 --- /dev/null +++ b/docs/html/search/all_79.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['y',['y',['../classfl_1_1Discrete.html#a0b4cd4a9ab92864e89482d7705e0e173',1,'fl::Discrete']]] +]; diff --git a/docs/html/search/all_7a.html b/docs/html/search/all_7a.html new file mode 100644 index 0000000..5d99ff7 --- /dev/null +++ b/docs/html/search/all_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_7a.js b/docs/html/search/all_7a.js new file mode 100644 index 0000000..6513b78 --- /dev/null +++ b/docs/html/search/all_7a.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['zshape',['ZShape',['../classfl_1_1ZShape.html',1,'fl']]], + ['zshape',['ZShape',['../classfl_1_1ZShape.html#a7560999842346f564f689a427b9f2114',1,'fl::ZShape']]], + ['zshape_2ecpp',['ZShape.cpp',['../ZShape_8cpp.html',1,'']]], + ['zshape_2eh',['ZShape.h',['../ZShape_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_7e.html b/docs/html/search/all_7e.html new file mode 100644 index 0000000..71f33b1 --- /dev/null +++ b/docs/html/search/all_7e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_7e.js b/docs/html/search/all_7e.js new file mode 100644 index 0000000..d479294 --- /dev/null +++ b/docs/html/search/all_7e.js @@ -0,0 +1,64 @@ +var searchData= +[ + ['_7eaccumulated',['~Accumulated',['../classfl_1_1Accumulated.html#a07ed6f18e909e52e788e1355b4a4f954',1,'fl::Accumulated']]], + ['_7eantecedent',['~Antecedent',['../classfl_1_1Antecedent.html#a589174fb0b4068f6d747cf4edf4899fe',1,'fl::Antecedent']]], + ['_7ebell',['~Bell',['../classfl_1_1Bell.html#a70b83dc932935491affbfb6cce75f899',1,'fl::Bell']]], + ['_7econsequent',['~Consequent',['../classfl_1_1Consequent.html#a69b0e225945376db67cfb288206e2d3e',1,'fl::Consequent']]], + ['_7econstant',['~Constant',['../classfl_1_1Constant.html#a046ec6627286462ec829570f95759545',1,'fl::Constant']]], + ['_7ecppexporter',['~CppExporter',['../classfl_1_1CppExporter.html#a4470fb4b7889c9f6c8171d98a149d5f3',1,'fl::CppExporter']]], + ['_7edefuzzifier',['~Defuzzifier',['../classfl_1_1Defuzzifier.html#a9c3115230b182b30f7a46aa2876e9662',1,'fl::Defuzzifier']]], + ['_7edefuzzifierfactory',['~DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html#af20e6ca540bf6f6b7f121f53a41645c3',1,'fl::DefuzzifierFactory']]], + ['_7ediscrete',['~Discrete',['../classfl_1_1Discrete.html#af129934d2b820f343c4918a556f13d13',1,'fl::Discrete']]], + ['_7eelement',['~Element',['../structfl_1_1Function_1_1Element.html#a0e94e77d855e1ca6a306410dca144062',1,'fl::Function::Element']]], + ['_7eengine',['~Engine',['../classfl_1_1Engine.html#a5b4ba98e071767d219624416c4b6008e',1,'fl::Engine']]], + ['_7eexception',['~Exception',['../classfl_1_1Exception.html#a6b2c996dbe10a2ce28e2a3028b7a60ba',1,'fl::Exception']]], + ['_7eexporter',['~Exporter',['../classfl_1_1Exporter.html#ab5319c12e3b59565951467c39988a707',1,'fl::Exporter']]], + ['_7eexpression',['~Expression',['../classfl_1_1Expression.html#a1604308ff2cef911123653a3457fd990',1,'fl::Expression']]], + ['_7efactory',['~Factory',['../classfl_1_1Factory.html#a56895637d3aa26a36bb5f3e93adba041',1,'fl::Factory']]], + ['_7efactorymanager',['~FactoryManager',['../classfl_1_1FactoryManager.html#a286530241e195e0faff93d38393afea6',1,'fl::FactoryManager']]], + ['_7efclexporter',['~FclExporter',['../classfl_1_1FclExporter.html#a80c793f25bb29d33903e204b4cf9f3d8',1,'fl::FclExporter']]], + ['_7efclimporter',['~FclImporter',['../classfl_1_1FclImporter.html#a02c680d209cbcafb198d0e3906b88ffc',1,'fl::FclImporter']]], + ['_7efisexporter',['~FisExporter',['../classfl_1_1FisExporter.html#a059187846eed86957d38b17a15601ccb',1,'fl::FisExporter']]], + ['_7efisimporter',['~FisImporter',['../classfl_1_1FisImporter.html#a5a01cdde2f9c95e379991ab62664d013',1,'fl::FisImporter']]], + ['_7efldexporter',['~FldExporter',['../classfl_1_1FldExporter.html#ae6f89726bc9bb33ef8c36bcc1ebe6440',1,'fl::FldExporter']]], + ['_7efllexporter',['~FllExporter',['../classfl_1_1FllExporter.html#a4401275536a96781f153603234d038e9',1,'fl::FllExporter']]], + ['_7efllimporter',['~FllImporter',['../classfl_1_1FllImporter.html#a2aec511802a61fa8ac76f21104282368',1,'fl::FllImporter']]], + ['_7efunction',['~Function',['../classfl_1_1Function.html#a4533c58e472bc9f0deee6ed3d7309f48',1,'fl::Function']]], + ['_7egaussian',['~Gaussian',['../classfl_1_1Gaussian.html#a7cf9cfc964bbbf96b7bf8203559926de',1,'fl::Gaussian']]], + ['_7egaussianproduct',['~GaussianProduct',['../classfl_1_1GaussianProduct.html#ab5c2aff8ec77cabbafbcbacc93f4c3a8',1,'fl::GaussianProduct']]], + ['_7ehedge',['~Hedge',['../classfl_1_1Hedge.html#a990b388bcdf071d72ed55d6b31df0c69',1,'fl::Hedge']]], + ['_7ehedgefactory',['~HedgeFactory',['../classfl_1_1HedgeFactory.html#a734e0398afcbc1cec74b21e3d0759e75',1,'fl::HedgeFactory']]], + ['_7eimporter',['~Importer',['../classfl_1_1Importer.html#aa80d4e41105f57759edeb802e48e5d88',1,'fl::Importer']]], + ['_7einputvariable',['~InputVariable',['../classfl_1_1InputVariable.html#af8524cb2fae0f1417fe8ffc27a181090',1,'fl::InputVariable']]], + ['_7eintegraldefuzzifier',['~IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html#a6ab681f34359792ec867ae78f403f1da',1,'fl::IntegralDefuzzifier']]], + ['_7ejavaexporter',['~JavaExporter',['../classfl_1_1JavaExporter.html#a7c357afdb6391ec44215e575e1f3cb7a',1,'fl::JavaExporter']]], + ['_7elargestofmaximum',['~LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html#ad1c94612d3d86d99c9f4ad1ff9cbe092',1,'fl::LargestOfMaximum']]], + ['_7elinear',['~Linear',['../classfl_1_1Linear.html#a4f7012009a7fb8451811b71246c71dfb',1,'fl::Linear']]], + ['_7emeanofmaximum',['~MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html#a8831f3fc9884f33c119892f0c6383f51',1,'fl::MeanOfMaximum']]], + ['_7enorm',['~Norm',['../classfl_1_1Norm.html#a481057fe48f921bcba97d0bc51846089',1,'fl::Norm']]], + ['_7eoperator',['~Operator',['../classfl_1_1Operator.html#a33bb5d7430a9cf054c42f6c62e9ab03b',1,'fl::Operator']]], + ['_7eoutputvariable',['~OutputVariable',['../classfl_1_1OutputVariable.html#a76709622720bd073f218c5d376cfbd32',1,'fl::OutputVariable']]], + ['_7epishape',['~PiShape',['../classfl_1_1PiShape.html#a4e775dd0812a93d312c1b88d2ae1c58e',1,'fl::PiShape']]], + ['_7eramp',['~Ramp',['../classfl_1_1Ramp.html#a0c1010c3f85c5233e716698582d63f07',1,'fl::Ramp']]], + ['_7erectangle',['~Rectangle',['../classfl_1_1Rectangle.html#a360223ebc53f3def1fb7ef58d26e9f27',1,'fl::Rectangle']]], + ['_7erule',['~Rule',['../classfl_1_1Rule.html#a1fcb07152c4c0990d4ae84e4f7249661',1,'fl::Rule']]], + ['_7eruleblock',['~RuleBlock',['../classfl_1_1RuleBlock.html#a821fc78689df167ec6e7c8b534e5615b',1,'fl::RuleBlock']]], + ['_7esigmoid',['~Sigmoid',['../classfl_1_1Sigmoid.html#a739b7c89f1ae2c7a1249e0677b2a2b99',1,'fl::Sigmoid']]], + ['_7esigmoiddifference',['~SigmoidDifference',['../classfl_1_1SigmoidDifference.html#a2b687452721fcf9099cafacdb56becca',1,'fl::SigmoidDifference']]], + ['_7esigmoidproduct',['~SigmoidProduct',['../classfl_1_1SigmoidProduct.html#ab64f25b7a88958654a31a77cee766868',1,'fl::SigmoidProduct']]], + ['_7esmallestofmaximum',['~SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html#abc20f251007432e11609952c058480a3',1,'fl::SmallestOfMaximum']]], + ['_7esnorm',['~SNorm',['../classfl_1_1SNorm.html#a95e973ef6bc8e85ed54eb260923c1035',1,'fl::SNorm']]], + ['_7esnormfactory',['~SNormFactory',['../classfl_1_1SNormFactory.html#ad5842aa0eb3048900c03ce3d338684c3',1,'fl::SNormFactory']]], + ['_7esshape',['~SShape',['../classfl_1_1SShape.html#ac00269f23058fb9a75ef38bf567ba9cf',1,'fl::SShape']]], + ['_7eterm',['~Term',['../classfl_1_1Term.html#a0af99d979bfdc52617ceabce9d1f3cc0',1,'fl::Term']]], + ['_7etermfactory',['~TermFactory',['../classfl_1_1TermFactory.html#adf9341c40db429dffb486bf7a998ed2f',1,'fl::TermFactory']]], + ['_7ethresholded',['~Thresholded',['../classfl_1_1Thresholded.html#ac075393794b8c65386bb09ad1e23834b',1,'fl::Thresholded']]], + ['_7etnorm',['~TNorm',['../classfl_1_1TNorm.html#a91e0033f37bbb4749877773695461539',1,'fl::TNorm']]], + ['_7etnormfactory',['~TNormFactory',['../classfl_1_1TNormFactory.html#ac99158ca2c3dc21ccfa76f0eed8d21e0',1,'fl::TNormFactory']]], + ['_7etrapezoid',['~Trapezoid',['../classfl_1_1Trapezoid.html#ad1379bc03d6b842c920cc29741cb2736',1,'fl::Trapezoid']]], + ['_7etriangle',['~Triangle',['../classfl_1_1Triangle.html#a4f50e986809986c82037de5208537e2f',1,'fl::Triangle']]], + ['_7evariable',['~Variable',['../classfl_1_1Variable.html#a029e3696756f21639f6a476b8ff0b138',1,'fl::Variable']]], + ['_7eweightedaverage',['~WeightedAverage',['../classfl_1_1WeightedAverage.html#ae6d56b608f1295269b671a0ac0d5c4bf',1,'fl::WeightedAverage']]], + ['_7eweightedsum',['~WeightedSum',['../classfl_1_1WeightedSum.html#a5fee2381ac48d33305cd29387433cfae',1,'fl::WeightedSum']]], + ['_7ezshape',['~ZShape',['../classfl_1_1ZShape.html#ab2e801c3a211512b7328a71b687f6109',1,'fl::ZShape']]] +]; diff --git a/docs/html/search/classes_61.html b/docs/html/search/classes_61.html new file mode 100644 index 0000000..a4c07d5 --- /dev/null +++ b/docs/html/search/classes_61.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_61.js b/docs/html/search/classes_61.js new file mode 100644 index 0000000..0461068 --- /dev/null +++ b/docs/html/search/classes_61.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['accumulated',['Accumulated',['../classfl_1_1Accumulated.html',1,'fl']]], + ['algebraicproduct',['AlgebraicProduct',['../classfl_1_1AlgebraicProduct.html',1,'fl']]], + ['algebraicsum',['AlgebraicSum',['../classfl_1_1AlgebraicSum.html',1,'fl']]], + ['antecedent',['Antecedent',['../classfl_1_1Antecedent.html',1,'fl']]], + ['any',['Any',['../classfl_1_1Any.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_62.html b/docs/html/search/classes_62.html new file mode 100644 index 0000000..04a59d2 --- /dev/null +++ b/docs/html/search/classes_62.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_62.js b/docs/html/search/classes_62.js new file mode 100644 index 0000000..84718b3 --- /dev/null +++ b/docs/html/search/classes_62.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['bell',['Bell',['../classfl_1_1Bell.html',1,'fl']]], + ['bisector',['Bisector',['../classfl_1_1Bisector.html',1,'fl']]], + ['boundeddifference',['BoundedDifference',['../classfl_1_1BoundedDifference.html',1,'fl']]], + ['boundedsum',['BoundedSum',['../classfl_1_1BoundedSum.html',1,'fl']]], + ['builtinfunction',['BuiltInFunction',['../structfl_1_1Function_1_1BuiltInFunction.html',1,'fl::Function']]] +]; diff --git a/docs/html/search/classes_63.html b/docs/html/search/classes_63.html new file mode 100644 index 0000000..def37a7 --- /dev/null +++ b/docs/html/search/classes_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_63.js b/docs/html/search/classes_63.js new file mode 100644 index 0000000..2216623 --- /dev/null +++ b/docs/html/search/classes_63.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['centroid',['Centroid',['../classfl_1_1Centroid.html',1,'fl']]], + ['consequent',['Consequent',['../classfl_1_1Consequent.html',1,'fl']]], + ['console',['Console',['../classfl_1_1Console.html',1,'fl']]], + ['constant',['Constant',['../classfl_1_1Constant.html',1,'fl']]], + ['cppexporter',['CppExporter',['../classfl_1_1CppExporter.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_64.html b/docs/html/search/classes_64.html new file mode 100644 index 0000000..4092564 --- /dev/null +++ b/docs/html/search/classes_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_64.js b/docs/html/search/classes_64.js new file mode 100644 index 0000000..c993054 --- /dev/null +++ b/docs/html/search/classes_64.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['defuzzifier',['Defuzzifier',['../classfl_1_1Defuzzifier.html',1,'fl']]], + ['defuzzifierfactory',['DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html',1,'fl']]], + ['discrete',['Discrete',['../classfl_1_1Discrete.html',1,'fl']]], + ['drasticproduct',['DrasticProduct',['../classfl_1_1DrasticProduct.html',1,'fl']]], + ['drasticsum',['DrasticSum',['../classfl_1_1DrasticSum.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_65.html b/docs/html/search/classes_65.html new file mode 100644 index 0000000..4f441f9 --- /dev/null +++ b/docs/html/search/classes_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_65.js b/docs/html/search/classes_65.js new file mode 100644 index 0000000..01bfb32 --- /dev/null +++ b/docs/html/search/classes_65.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['einsteinproduct',['EinsteinProduct',['../classfl_1_1EinsteinProduct.html',1,'fl']]], + ['einsteinsum',['EinsteinSum',['../classfl_1_1EinsteinSum.html',1,'fl']]], + ['element',['Element',['../structfl_1_1Function_1_1Element.html',1,'fl::Function']]], + ['engine',['Engine',['../classfl_1_1Engine.html',1,'fl']]], + ['exception',['Exception',['../classfl_1_1Exception.html',1,'fl']]], + ['exporter',['Exporter',['../classfl_1_1Exporter.html',1,'fl']]], + ['expression',['Expression',['../classfl_1_1Expression.html',1,'fl']]], + ['extremely',['Extremely',['../classfl_1_1Extremely.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_66.html b/docs/html/search/classes_66.html new file mode 100644 index 0000000..b83e593 --- /dev/null +++ b/docs/html/search/classes_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_66.js b/docs/html/search/classes_66.js new file mode 100644 index 0000000..d090aaf --- /dev/null +++ b/docs/html/search/classes_66.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['factory',['Factory',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20defuzzifier_20_2a_20_3e',['Factory< Defuzzifier * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20hedge_20_2a_20_3e',['Factory< Hedge * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20snorm_20_2a_20_3e',['Factory< SNorm * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20term_20_2a_20_3e',['Factory< Term * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factory_3c_20tnorm_20_2a_20_3e',['Factory< TNorm * >',['../classfl_1_1Factory.html',1,'fl']]], + ['factorymanager',['FactoryManager',['../classfl_1_1FactoryManager.html',1,'fl']]], + ['fclexporter',['FclExporter',['../classfl_1_1FclExporter.html',1,'fl']]], + ['fclimporter',['FclImporter',['../classfl_1_1FclImporter.html',1,'fl']]], + ['fisexporter',['FisExporter',['../classfl_1_1FisExporter.html',1,'fl']]], + ['fisimporter',['FisImporter',['../classfl_1_1FisImporter.html',1,'fl']]], + ['fldexporter',['FldExporter',['../classfl_1_1FldExporter.html',1,'fl']]], + ['fllexporter',['FllExporter',['../classfl_1_1FllExporter.html',1,'fl']]], + ['fllimporter',['FllImporter',['../classfl_1_1FllImporter.html',1,'fl']]], + ['function',['Function',['../classfl_1_1Function.html',1,'fl']]], + ['fuzzylite',['fuzzylite',['../classfl_1_1fuzzylite.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_67.html b/docs/html/search/classes_67.html new file mode 100644 index 0000000..030eb26 --- /dev/null +++ b/docs/html/search/classes_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_67.js b/docs/html/search/classes_67.js new file mode 100644 index 0000000..17597a5 --- /dev/null +++ b/docs/html/search/classes_67.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['gaussian',['Gaussian',['../classfl_1_1Gaussian.html',1,'fl']]], + ['gaussianproduct',['GaussianProduct',['../classfl_1_1GaussianProduct.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_68.html b/docs/html/search/classes_68.html new file mode 100644 index 0000000..7da62bb --- /dev/null +++ b/docs/html/search/classes_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_68.js b/docs/html/search/classes_68.js new file mode 100644 index 0000000..fd1c8ee --- /dev/null +++ b/docs/html/search/classes_68.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['hamacherproduct',['HamacherProduct',['../classfl_1_1HamacherProduct.html',1,'fl']]], + ['hamachersum',['HamacherSum',['../classfl_1_1HamacherSum.html',1,'fl']]], + ['hedge',['Hedge',['../classfl_1_1Hedge.html',1,'fl']]], + ['hedgefactory',['HedgeFactory',['../classfl_1_1HedgeFactory.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_69.html b/docs/html/search/classes_69.html new file mode 100644 index 0000000..7a0d013 --- /dev/null +++ b/docs/html/search/classes_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_69.js b/docs/html/search/classes_69.js new file mode 100644 index 0000000..00110d2 --- /dev/null +++ b/docs/html/search/classes_69.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['importer',['Importer',['../classfl_1_1Importer.html',1,'fl']]], + ['inputvariable',['InputVariable',['../classfl_1_1InputVariable.html',1,'fl']]], + ['integraldefuzzifier',['IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_6a.html b/docs/html/search/classes_6a.html new file mode 100644 index 0000000..161d9c6 --- /dev/null +++ b/docs/html/search/classes_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6a.js b/docs/html/search/classes_6a.js new file mode 100644 index 0000000..af26353 --- /dev/null +++ b/docs/html/search/classes_6a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['javaexporter',['JavaExporter',['../classfl_1_1JavaExporter.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_6c.html b/docs/html/search/classes_6c.html new file mode 100644 index 0000000..a16bb58 --- /dev/null +++ b/docs/html/search/classes_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6c.js b/docs/html/search/classes_6c.js new file mode 100644 index 0000000..3d40645 --- /dev/null +++ b/docs/html/search/classes_6c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['largestofmaximum',['LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html',1,'fl']]], + ['linear',['Linear',['../classfl_1_1Linear.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_6d.html b/docs/html/search/classes_6d.html new file mode 100644 index 0000000..12b1c83 --- /dev/null +++ b/docs/html/search/classes_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6d.js b/docs/html/search/classes_6d.js new file mode 100644 index 0000000..8dcc443 --- /dev/null +++ b/docs/html/search/classes_6d.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['maximum',['Maximum',['../classfl_1_1Maximum.html',1,'fl']]], + ['meanofmaximum',['MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html',1,'fl']]], + ['minimum',['Minimum',['../classfl_1_1Minimum.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_6e.html b/docs/html/search/classes_6e.html new file mode 100644 index 0000000..a183c15 --- /dev/null +++ b/docs/html/search/classes_6e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6e.js b/docs/html/search/classes_6e.js new file mode 100644 index 0000000..0ee74a1 --- /dev/null +++ b/docs/html/search/classes_6e.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['node',['Node',['../structfl_1_1Function_1_1Node.html',1,'fl::Function']]], + ['norm',['Norm',['../classfl_1_1Norm.html',1,'fl']]], + ['normalizedsum',['NormalizedSum',['../classfl_1_1NormalizedSum.html',1,'fl']]], + ['not',['Not',['../classfl_1_1Not.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_6f.html b/docs/html/search/classes_6f.html new file mode 100644 index 0000000..b6efe28 --- /dev/null +++ b/docs/html/search/classes_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6f.js b/docs/html/search/classes_6f.js new file mode 100644 index 0000000..06258fb --- /dev/null +++ b/docs/html/search/classes_6f.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['operation',['Operation',['../classfl_1_1Operation.html',1,'fl']]], + ['operator',['Operator',['../classfl_1_1Operator.html',1,'fl']]], + ['operator',['Operator',['../structfl_1_1Function_1_1Operator.html',1,'fl::Function']]], + ['outputvariable',['OutputVariable',['../classfl_1_1OutputVariable.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_70.html b/docs/html/search/classes_70.html new file mode 100644 index 0000000..7c5b3e5 --- /dev/null +++ b/docs/html/search/classes_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_70.js b/docs/html/search/classes_70.js new file mode 100644 index 0000000..f04abc7 --- /dev/null +++ b/docs/html/search/classes_70.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['pishape',['PiShape',['../classfl_1_1PiShape.html',1,'fl']]], + ['proposition',['Proposition',['../classfl_1_1Proposition.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_72.html b/docs/html/search/classes_72.html new file mode 100644 index 0000000..03a7720 --- /dev/null +++ b/docs/html/search/classes_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_72.js b/docs/html/search/classes_72.js new file mode 100644 index 0000000..3a1dfb7 --- /dev/null +++ b/docs/html/search/classes_72.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['ramp',['Ramp',['../classfl_1_1Ramp.html',1,'fl']]], + ['rectangle',['Rectangle',['../classfl_1_1Rectangle.html',1,'fl']]], + ['rule',['Rule',['../classfl_1_1Rule.html',1,'fl']]], + ['ruleblock',['RuleBlock',['../classfl_1_1RuleBlock.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_73.html b/docs/html/search/classes_73.html new file mode 100644 index 0000000..f447c45 --- /dev/null +++ b/docs/html/search/classes_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_73.js b/docs/html/search/classes_73.js new file mode 100644 index 0000000..b07e4f9 --- /dev/null +++ b/docs/html/search/classes_73.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['seldom',['Seldom',['../classfl_1_1Seldom.html',1,'fl']]], + ['sigmoid',['Sigmoid',['../classfl_1_1Sigmoid.html',1,'fl']]], + ['sigmoiddifference',['SigmoidDifference',['../classfl_1_1SigmoidDifference.html',1,'fl']]], + ['sigmoidproduct',['SigmoidProduct',['../classfl_1_1SigmoidProduct.html',1,'fl']]], + ['smallestofmaximum',['SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html',1,'fl']]], + ['snorm',['SNorm',['../classfl_1_1SNorm.html',1,'fl']]], + ['snormfactory',['SNormFactory',['../classfl_1_1SNormFactory.html',1,'fl']]], + ['somewhat',['Somewhat',['../classfl_1_1Somewhat.html',1,'fl']]], + ['sortbycog',['SortByCoG',['../structfl_1_1Variable_1_1SortByCoG.html',1,'fl::Variable']]], + ['sshape',['SShape',['../classfl_1_1SShape.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_74.html b/docs/html/search/classes_74.html new file mode 100644 index 0000000..4b0fdaa --- /dev/null +++ b/docs/html/search/classes_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_74.js b/docs/html/search/classes_74.js new file mode 100644 index 0000000..6356992 --- /dev/null +++ b/docs/html/search/classes_74.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['term',['Term',['../classfl_1_1Term.html',1,'fl']]], + ['termfactory',['TermFactory',['../classfl_1_1TermFactory.html',1,'fl']]], + ['thresholded',['Thresholded',['../classfl_1_1Thresholded.html',1,'fl']]], + ['tnorm',['TNorm',['../classfl_1_1TNorm.html',1,'fl']]], + ['tnormfactory',['TNormFactory',['../classfl_1_1TNormFactory.html',1,'fl']]], + ['trapezoid',['Trapezoid',['../classfl_1_1Trapezoid.html',1,'fl']]], + ['triangle',['Triangle',['../classfl_1_1Triangle.html',1,'fl']]], + ['tsukamoto',['Tsukamoto',['../classfl_1_1Tsukamoto.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_76.html b/docs/html/search/classes_76.html new file mode 100644 index 0000000..8d07fe1 --- /dev/null +++ b/docs/html/search/classes_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_76.js b/docs/html/search/classes_76.js new file mode 100644 index 0000000..bf56f1d --- /dev/null +++ b/docs/html/search/classes_76.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['variable',['Variable',['../classfl_1_1Variable.html',1,'fl']]], + ['very',['Very',['../classfl_1_1Very.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_77.html b/docs/html/search/classes_77.html new file mode 100644 index 0000000..dd06de9 --- /dev/null +++ b/docs/html/search/classes_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_77.js b/docs/html/search/classes_77.js new file mode 100644 index 0000000..aa70f0b --- /dev/null +++ b/docs/html/search/classes_77.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['weightedaverage',['WeightedAverage',['../classfl_1_1WeightedAverage.html',1,'fl']]], + ['weightedsum',['WeightedSum',['../classfl_1_1WeightedSum.html',1,'fl']]] +]; diff --git a/docs/html/search/classes_7a.html b/docs/html/search/classes_7a.html new file mode 100644 index 0000000..d9534cd --- /dev/null +++ b/docs/html/search/classes_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_7a.js b/docs/html/search/classes_7a.js new file mode 100644 index 0000000..06c563a --- /dev/null +++ b/docs/html/search/classes_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zshape',['ZShape',['../classfl_1_1ZShape.html',1,'fl']]] +]; diff --git a/docs/html/search/close.png b/docs/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/docs/html/search/close.png differ diff --git a/docs/html/search/defines_66.html b/docs/html/search/defines_66.html new file mode 100644 index 0000000..1157193 --- /dev/null +++ b/docs/html/search/defines_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_66.js b/docs/html/search/defines_66.js new file mode 100644 index 0000000..129945f --- /dev/null +++ b/docs/html/search/defines_66.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['fl_5f_5ffile_5f_5f',['FL__FILE__',['../fuzzylite_8h.html#a3a8805bbd95046da97c4233e548826df',1,'fuzzylite.h']]], + ['fl_5fat',['FL_AT',['../fuzzylite_8h.html#a79d6c0af9f3f337643496f2f81f5ba1d',1,'fuzzylite.h']]], + ['fl_5fbegin_5fdebug_5fblock',['FL_BEGIN_DEBUG_BLOCK',['../fuzzylite_8h.html#a18236efc548b42b6a767fd99e36c196f',1,'fuzzylite.h']]], + ['fl_5fbuild_5fpath',['FL_BUILD_PATH',['../fuzzylite_8h.html#a784dc3ea21a0ba359537da155a00e61d',1,'fuzzylite.h']]], + ['fl_5fdate',['FL_DATE',['../fuzzylite_8h.html#a62d4b835802d5d8e8e14cfa0a35f4181',1,'fuzzylite.h']]], + ['fl_5fdbg',['FL_DBG',['../fuzzylite_8h.html#a05084ec1207bb07770b8663cfe5c95d0',1,'fuzzylite.h']]], + ['fl_5fdebug',['FL_DEBUG',['../fuzzylite_8h.html#a923af823da4f8ccb7d3a71cda2011862',1,'fuzzylite.h']]], + ['fl_5fend_5fdebug_5fblock',['FL_END_DEBUG_BLOCK',['../fuzzylite_8h.html#a92b7a322a6b3854fb0f7469d26f61fc2',1,'fuzzylite.h']]], + ['fl_5fexport',['FL_EXPORT',['../fuzzylite_8h.html#aa9ba29a18aee9d738370a06eeb4470fc',1,'fuzzylite.h']]], + ['fl_5flog',['FL_LOG',['../fuzzylite_8h.html#ac1b133a2f567fc5de2a07db84638138d',1,'fuzzylite.h']]], + ['fl_5flog_5fprefix',['FL_LOG_PREFIX',['../fuzzylite_8h.html#a6b930a844b4fa50fe63a178ae5b1d896',1,'fuzzylite.h']]], + ['fl_5flogp',['FL_LOGP',['../fuzzylite_8h.html#af63fafdda4cae2ad4c11ada9492d8f4a',1,'fuzzylite.h']]], + ['fl_5fversion',['FL_VERSION',['../fuzzylite_8h.html#a94499c96b5f3ca212d90a2c41f947a67',1,'fuzzylite.h']]] +]; diff --git a/docs/html/search/files_61.html b/docs/html/search/files_61.html new file mode 100644 index 0000000..0aa6beb --- /dev/null +++ b/docs/html/search/files_61.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_61.js b/docs/html/search/files_61.js new file mode 100644 index 0000000..4197caf --- /dev/null +++ b/docs/html/search/files_61.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['accumulated_2ecpp',['Accumulated.cpp',['../Accumulated_8cpp.html',1,'']]], + ['accumulated_2eh',['Accumulated.h',['../Accumulated_8h.html',1,'']]], + ['algebraicproduct_2ecpp',['AlgebraicProduct.cpp',['../AlgebraicProduct_8cpp.html',1,'']]], + ['algebraicproduct_2eh',['AlgebraicProduct.h',['../AlgebraicProduct_8h.html',1,'']]], + ['algebraicsum_2ecpp',['AlgebraicSum.cpp',['../AlgebraicSum_8cpp.html',1,'']]], + ['algebraicsum_2eh',['AlgebraicSum.h',['../AlgebraicSum_8h.html',1,'']]], + ['antecedent_2ecpp',['Antecedent.cpp',['../Antecedent_8cpp.html',1,'']]], + ['antecedent_2eh',['Antecedent.h',['../Antecedent_8h.html',1,'']]], + ['any_2ecpp',['Any.cpp',['../Any_8cpp.html',1,'']]], + ['any_2eh',['Any.h',['../Any_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_62.html b/docs/html/search/files_62.html new file mode 100644 index 0000000..86dfe39 --- /dev/null +++ b/docs/html/search/files_62.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_62.js b/docs/html/search/files_62.js new file mode 100644 index 0000000..70f345b --- /dev/null +++ b/docs/html/search/files_62.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['bell_2ecpp',['Bell.cpp',['../Bell_8cpp.html',1,'']]], + ['bell_2eh',['Bell.h',['../Bell_8h.html',1,'']]], + ['bisector_2ecpp',['Bisector.cpp',['../Bisector_8cpp.html',1,'']]], + ['bisector_2eh',['Bisector.h',['../Bisector_8h.html',1,'']]], + ['boundeddifference_2ecpp',['BoundedDifference.cpp',['../BoundedDifference_8cpp.html',1,'']]], + ['boundeddifference_2eh',['BoundedDifference.h',['../BoundedDifference_8h.html',1,'']]], + ['boundedsum_2ecpp',['BoundedSum.cpp',['../BoundedSum_8cpp.html',1,'']]], + ['boundedsum_2eh',['BoundedSum.h',['../BoundedSum_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_63.html b/docs/html/search/files_63.html new file mode 100644 index 0000000..788d523 --- /dev/null +++ b/docs/html/search/files_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_63.js b/docs/html/search/files_63.js new file mode 100644 index 0000000..e720c95 --- /dev/null +++ b/docs/html/search/files_63.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['centroid_2ecpp',['Centroid.cpp',['../Centroid_8cpp.html',1,'']]], + ['centroid_2eh',['Centroid.h',['../Centroid_8h.html',1,'']]], + ['consequent_2ecpp',['Consequent.cpp',['../Consequent_8cpp.html',1,'']]], + ['consequent_2eh',['Consequent.h',['../Consequent_8h.html',1,'']]], + ['console_2ecpp',['Console.cpp',['../Console_8cpp.html',1,'']]], + ['console_2eh',['Console.h',['../Console_8h.html',1,'']]], + ['constant_2ecpp',['Constant.cpp',['../Constant_8cpp.html',1,'']]], + ['constant_2eh',['Constant.h',['../Constant_8h.html',1,'']]], + ['cppexporter_2ecpp',['CppExporter.cpp',['../CppExporter_8cpp.html',1,'']]], + ['cppexporter_2eh',['CppExporter.h',['../CppExporter_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_64.html b/docs/html/search/files_64.html new file mode 100644 index 0000000..175a900 --- /dev/null +++ b/docs/html/search/files_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_64.js b/docs/html/search/files_64.js new file mode 100644 index 0000000..97bddae --- /dev/null +++ b/docs/html/search/files_64.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['defuzzifier_2eh',['Defuzzifier.h',['../Defuzzifier_8h.html',1,'']]], + ['defuzzifierfactory_2ecpp',['DefuzzifierFactory.cpp',['../DefuzzifierFactory_8cpp.html',1,'']]], + ['defuzzifierfactory_2eh',['DefuzzifierFactory.h',['../DefuzzifierFactory_8h.html',1,'']]], + ['discrete_2ecpp',['Discrete.cpp',['../Discrete_8cpp.html',1,'']]], + ['discrete_2eh',['Discrete.h',['../Discrete_8h.html',1,'']]], + ['drasticproduct_2ecpp',['DrasticProduct.cpp',['../DrasticProduct_8cpp.html',1,'']]], + ['drasticproduct_2eh',['DrasticProduct.h',['../DrasticProduct_8h.html',1,'']]], + ['drasticsum_2ecpp',['DrasticSum.cpp',['../DrasticSum_8cpp.html',1,'']]], + ['drasticsum_2eh',['DrasticSum.h',['../DrasticSum_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_65.html b/docs/html/search/files_65.html new file mode 100644 index 0000000..2347de9 --- /dev/null +++ b/docs/html/search/files_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_65.js b/docs/html/search/files_65.js new file mode 100644 index 0000000..7892011 --- /dev/null +++ b/docs/html/search/files_65.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['einsteinproduct_2ecpp',['EinsteinProduct.cpp',['../EinsteinProduct_8cpp.html',1,'']]], + ['einsteinproduct_2eh',['EinsteinProduct.h',['../EinsteinProduct_8h.html',1,'']]], + ['einsteinsum_2ecpp',['EinsteinSum.cpp',['../EinsteinSum_8cpp.html',1,'']]], + ['einsteinsum_2eh',['EinsteinSum.h',['../EinsteinSum_8h.html',1,'']]], + ['engine_2ecpp',['Engine.cpp',['../Engine_8cpp.html',1,'']]], + ['engine_2eh',['Engine.h',['../Engine_8h.html',1,'']]], + ['exception_2ecpp',['Exception.cpp',['../Exception_8cpp.html',1,'']]], + ['exception_2eh',['Exception.h',['../Exception_8h.html',1,'']]], + ['exporter_2eh',['Exporter.h',['../Exporter_8h.html',1,'']]], + ['expression_2ecpp',['Expression.cpp',['../Expression_8cpp.html',1,'']]], + ['expression_2eh',['Expression.h',['../Expression_8h.html',1,'']]], + ['extremely_2ecpp',['Extremely.cpp',['../Extremely_8cpp.html',1,'']]], + ['extremely_2eh',['Extremely.h',['../Extremely_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_66.html b/docs/html/search/files_66.html new file mode 100644 index 0000000..70873b3 --- /dev/null +++ b/docs/html/search/files_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_66.js b/docs/html/search/files_66.js new file mode 100644 index 0000000..9d209a8 --- /dev/null +++ b/docs/html/search/files_66.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['factory_2ecpp',['Factory.cpp',['../Factory_8cpp.html',1,'']]], + ['factory_2eh',['Factory.h',['../Factory_8h.html',1,'']]], + ['factorymanager_2ecpp',['FactoryManager.cpp',['../FactoryManager_8cpp.html',1,'']]], + ['factorymanager_2eh',['FactoryManager.h',['../FactoryManager_8h.html',1,'']]], + ['fclexporter_2ecpp',['FclExporter.cpp',['../FclExporter_8cpp.html',1,'']]], + ['fclexporter_2eh',['FclExporter.h',['../FclExporter_8h.html',1,'']]], + ['fclimporter_2ecpp',['FclImporter.cpp',['../FclImporter_8cpp.html',1,'']]], + ['fclimporter_2eh',['FclImporter.h',['../FclImporter_8h.html',1,'']]], + ['fisexporter_2ecpp',['FisExporter.cpp',['../FisExporter_8cpp.html',1,'']]], + ['fisexporter_2eh',['FisExporter.h',['../FisExporter_8h.html',1,'']]], + ['fisimporter_2ecpp',['FisImporter.cpp',['../FisImporter_8cpp.html',1,'']]], + ['fisimporter_2eh',['FisImporter.h',['../FisImporter_8h.html',1,'']]], + ['fldexporter_2ecpp',['FldExporter.cpp',['../FldExporter_8cpp.html',1,'']]], + ['fldexporter_2eh',['FldExporter.h',['../FldExporter_8h.html',1,'']]], + ['fllexporter_2ecpp',['FllExporter.cpp',['../FllExporter_8cpp.html',1,'']]], + ['fllexporter_2eh',['FllExporter.h',['../FllExporter_8h.html',1,'']]], + ['fllimporter_2ecpp',['FllImporter.cpp',['../FllImporter_8cpp.html',1,'']]], + ['fllimporter_2eh',['FllImporter.h',['../FllImporter_8h.html',1,'']]], + ['function_2ecpp',['Function.cpp',['../Function_8cpp.html',1,'']]], + ['function_2eh',['Function.h',['../Function_8h.html',1,'']]], + ['fuzzylite_2ecpp',['fuzzylite.cpp',['../fuzzylite_8cpp.html',1,'']]], + ['fuzzylite_2eh',['fuzzylite.h',['../fuzzylite_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_67.html b/docs/html/search/files_67.html new file mode 100644 index 0000000..65d69dd --- /dev/null +++ b/docs/html/search/files_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_67.js b/docs/html/search/files_67.js new file mode 100644 index 0000000..b0dc13e --- /dev/null +++ b/docs/html/search/files_67.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['gaussian_2ecpp',['Gaussian.cpp',['../Gaussian_8cpp.html',1,'']]], + ['gaussian_2eh',['Gaussian.h',['../Gaussian_8h.html',1,'']]], + ['gaussianproduct_2ecpp',['GaussianProduct.cpp',['../GaussianProduct_8cpp.html',1,'']]], + ['gaussianproduct_2eh',['GaussianProduct.h',['../GaussianProduct_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_68.html b/docs/html/search/files_68.html new file mode 100644 index 0000000..35734d1 --- /dev/null +++ b/docs/html/search/files_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_68.js b/docs/html/search/files_68.js new file mode 100644 index 0000000..b2eef5d --- /dev/null +++ b/docs/html/search/files_68.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['hamacherproduct_2ecpp',['HamacherProduct.cpp',['../HamacherProduct_8cpp.html',1,'']]], + ['hamacherproduct_2eh',['HamacherProduct.h',['../HamacherProduct_8h.html',1,'']]], + ['hamachersum_2ecpp',['HamacherSum.cpp',['../HamacherSum_8cpp.html',1,'']]], + ['hamachersum_2eh',['HamacherSum.h',['../HamacherSum_8h.html',1,'']]], + ['headers_2eh',['Headers.h',['../Headers_8h.html',1,'']]], + ['hedge_2eh',['Hedge.h',['../Hedge_8h.html',1,'']]], + ['hedgefactory_2ecpp',['HedgeFactory.cpp',['../HedgeFactory_8cpp.html',1,'']]], + ['hedgefactory_2eh',['HedgeFactory.h',['../HedgeFactory_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_69.html b/docs/html/search/files_69.html new file mode 100644 index 0000000..4e0baee --- /dev/null +++ b/docs/html/search/files_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_69.js b/docs/html/search/files_69.js new file mode 100644 index 0000000..0ea2690 --- /dev/null +++ b/docs/html/search/files_69.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['importer_2eh',['Importer.h',['../Importer_8h.html',1,'']]], + ['inputvariable_2ecpp',['InputVariable.cpp',['../InputVariable_8cpp.html',1,'']]], + ['inputvariable_2eh',['InputVariable.h',['../InputVariable_8h.html',1,'']]], + ['integraldefuzzifier_2ecpp',['IntegralDefuzzifier.cpp',['../IntegralDefuzzifier_8cpp.html',1,'']]], + ['integraldefuzzifier_2eh',['IntegralDefuzzifier.h',['../IntegralDefuzzifier_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6a.html b/docs/html/search/files_6a.html new file mode 100644 index 0000000..56bfbd7 --- /dev/null +++ b/docs/html/search/files_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6a.js b/docs/html/search/files_6a.js new file mode 100644 index 0000000..e636c86 --- /dev/null +++ b/docs/html/search/files_6a.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['javaexporter_2ecpp',['JavaExporter.cpp',['../JavaExporter_8cpp.html',1,'']]], + ['javaexporter_2eh',['JavaExporter.h',['../JavaExporter_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6c.html b/docs/html/search/files_6c.html new file mode 100644 index 0000000..088b17f --- /dev/null +++ b/docs/html/search/files_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6c.js b/docs/html/search/files_6c.js new file mode 100644 index 0000000..735b731 --- /dev/null +++ b/docs/html/search/files_6c.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['largestofmaximum_2ecpp',['LargestOfMaximum.cpp',['../LargestOfMaximum_8cpp.html',1,'']]], + ['largestofmaximum_2eh',['LargestOfMaximum.h',['../LargestOfMaximum_8h.html',1,'']]], + ['linear_2ecpp',['Linear.cpp',['../Linear_8cpp.html',1,'']]], + ['linear_2eh',['Linear.h',['../Linear_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6d.html b/docs/html/search/files_6d.html new file mode 100644 index 0000000..5796e52 --- /dev/null +++ b/docs/html/search/files_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6d.js b/docs/html/search/files_6d.js new file mode 100644 index 0000000..40fbeb3 --- /dev/null +++ b/docs/html/search/files_6d.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['main_2ecpp',['main.cpp',['../main_8cpp.html',1,'']]], + ['maximum_2ecpp',['Maximum.cpp',['../Maximum_8cpp.html',1,'']]], + ['maximum_2eh',['Maximum.h',['../Maximum_8h.html',1,'']]], + ['meanofmaximum_2ecpp',['MeanOfMaximum.cpp',['../MeanOfMaximum_8cpp.html',1,'']]], + ['meanofmaximum_2eh',['MeanOfMaximum.h',['../MeanOfMaximum_8h.html',1,'']]], + ['minimum_2ecpp',['Minimum.cpp',['../Minimum_8cpp.html',1,'']]], + ['minimum_2eh',['Minimum.h',['../Minimum_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6e.html b/docs/html/search/files_6e.html new file mode 100644 index 0000000..def03fe --- /dev/null +++ b/docs/html/search/files_6e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6e.js b/docs/html/search/files_6e.js new file mode 100644 index 0000000..e096309 --- /dev/null +++ b/docs/html/search/files_6e.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['norm_2eh',['Norm.h',['../Norm_8h.html',1,'']]], + ['normalizedsum_2ecpp',['NormalizedSum.cpp',['../NormalizedSum_8cpp.html',1,'']]], + ['normalizedsum_2eh',['NormalizedSum.h',['../NormalizedSum_8h.html',1,'']]], + ['not_2ecpp',['Not.cpp',['../Not_8cpp.html',1,'']]], + ['not_2eh',['Not.h',['../Not_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6f.html b/docs/html/search/files_6f.html new file mode 100644 index 0000000..4f9b7bb --- /dev/null +++ b/docs/html/search/files_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6f.js b/docs/html/search/files_6f.js new file mode 100644 index 0000000..46244b7 --- /dev/null +++ b/docs/html/search/files_6f.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['operation_2ecpp',['Operation.cpp',['../Operation_8cpp.html',1,'']]], + ['operation_2eh',['Operation.h',['../Operation_8h.html',1,'']]], + ['outputvariable_2ecpp',['OutputVariable.cpp',['../OutputVariable_8cpp.html',1,'']]], + ['outputvariable_2eh',['OutputVariable.h',['../OutputVariable_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_70.html b/docs/html/search/files_70.html new file mode 100644 index 0000000..e159cea --- /dev/null +++ b/docs/html/search/files_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_70.js b/docs/html/search/files_70.js new file mode 100644 index 0000000..145c38b --- /dev/null +++ b/docs/html/search/files_70.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['pishape_2ecpp',['PiShape.cpp',['../PiShape_8cpp.html',1,'']]], + ['pishape_2eh',['PiShape.h',['../PiShape_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_72.html b/docs/html/search/files_72.html new file mode 100644 index 0000000..573ec11 --- /dev/null +++ b/docs/html/search/files_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_72.js b/docs/html/search/files_72.js new file mode 100644 index 0000000..9fe908a --- /dev/null +++ b/docs/html/search/files_72.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['ramp_2ecpp',['Ramp.cpp',['../Ramp_8cpp.html',1,'']]], + ['ramp_2eh',['Ramp.h',['../Ramp_8h.html',1,'']]], + ['rectangle_2ecpp',['Rectangle.cpp',['../Rectangle_8cpp.html',1,'']]], + ['rectangle_2eh',['Rectangle.h',['../Rectangle_8h.html',1,'']]], + ['rule_2ecpp',['Rule.cpp',['../Rule_8cpp.html',1,'']]], + ['rule_2eh',['Rule.h',['../Rule_8h.html',1,'']]], + ['ruleblock_2ecpp',['RuleBlock.cpp',['../RuleBlock_8cpp.html',1,'']]], + ['ruleblock_2eh',['RuleBlock.h',['../RuleBlock_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_73.html b/docs/html/search/files_73.html new file mode 100644 index 0000000..bcc9ae6 --- /dev/null +++ b/docs/html/search/files_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_73.js b/docs/html/search/files_73.js new file mode 100644 index 0000000..fdee407 --- /dev/null +++ b/docs/html/search/files_73.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['seldom_2ecpp',['Seldom.cpp',['../Seldom_8cpp.html',1,'']]], + ['seldom_2eh',['Seldom.h',['../Seldom_8h.html',1,'']]], + ['sigmoid_2ecpp',['Sigmoid.cpp',['../Sigmoid_8cpp.html',1,'']]], + ['sigmoid_2eh',['Sigmoid.h',['../Sigmoid_8h.html',1,'']]], + ['sigmoiddifference_2ecpp',['SigmoidDifference.cpp',['../SigmoidDifference_8cpp.html',1,'']]], + ['sigmoiddifference_2eh',['SigmoidDifference.h',['../SigmoidDifference_8h.html',1,'']]], + ['sigmoidproduct_2ecpp',['SigmoidProduct.cpp',['../SigmoidProduct_8cpp.html',1,'']]], + ['sigmoidproduct_2eh',['SigmoidProduct.h',['../SigmoidProduct_8h.html',1,'']]], + ['smallestofmaximum_2ecpp',['SmallestOfMaximum.cpp',['../SmallestOfMaximum_8cpp.html',1,'']]], + ['smallestofmaximum_2eh',['SmallestOfMaximum.h',['../SmallestOfMaximum_8h.html',1,'']]], + ['snorm_2eh',['SNorm.h',['../SNorm_8h.html',1,'']]], + ['snormfactory_2ecpp',['SNormFactory.cpp',['../SNormFactory_8cpp.html',1,'']]], + ['snormfactory_2eh',['SNormFactory.h',['../SNormFactory_8h.html',1,'']]], + ['somewhat_2ecpp',['Somewhat.cpp',['../Somewhat_8cpp.html',1,'']]], + ['somewhat_2eh',['Somewhat.h',['../Somewhat_8h.html',1,'']]], + ['sshape_2ecpp',['SShape.cpp',['../SShape_8cpp.html',1,'']]], + ['sshape_2eh',['SShape.h',['../SShape_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_74.html b/docs/html/search/files_74.html new file mode 100644 index 0000000..985db86 --- /dev/null +++ b/docs/html/search/files_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_74.js b/docs/html/search/files_74.js new file mode 100644 index 0000000..25c4806 --- /dev/null +++ b/docs/html/search/files_74.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['term_2ecpp',['Term.cpp',['../Term_8cpp.html',1,'']]], + ['term_2eh',['Term.h',['../Term_8h.html',1,'']]], + ['termfactory_2ecpp',['TermFactory.cpp',['../TermFactory_8cpp.html',1,'']]], + ['termfactory_2eh',['TermFactory.h',['../TermFactory_8h.html',1,'']]], + ['thresholded_2ecpp',['Thresholded.cpp',['../Thresholded_8cpp.html',1,'']]], + ['thresholded_2eh',['Thresholded.h',['../Thresholded_8h.html',1,'']]], + ['tnorm_2eh',['TNorm.h',['../TNorm_8h.html',1,'']]], + ['tnormfactory_2ecpp',['TNormFactory.cpp',['../TNormFactory_8cpp.html',1,'']]], + ['tnormfactory_2eh',['TNormFactory.h',['../TNormFactory_8h.html',1,'']]], + ['trapezoid_2ecpp',['Trapezoid.cpp',['../Trapezoid_8cpp.html',1,'']]], + ['trapezoid_2eh',['Trapezoid.h',['../Trapezoid_8h.html',1,'']]], + ['triangle_2ecpp',['Triangle.cpp',['../Triangle_8cpp.html',1,'']]], + ['triangle_2eh',['Triangle.h',['../Triangle_8h.html',1,'']]], + ['tsukamoto_2ecpp',['Tsukamoto.cpp',['../Tsukamoto_8cpp.html',1,'']]], + ['tsukamoto_2eh',['Tsukamoto.h',['../Tsukamoto_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_76.html b/docs/html/search/files_76.html new file mode 100644 index 0000000..174dedb --- /dev/null +++ b/docs/html/search/files_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_76.js b/docs/html/search/files_76.js new file mode 100644 index 0000000..99c9127 --- /dev/null +++ b/docs/html/search/files_76.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['variable_2ecpp',['Variable.cpp',['../Variable_8cpp.html',1,'']]], + ['variable_2eh',['Variable.h',['../Variable_8h.html',1,'']]], + ['very_2ecpp',['Very.cpp',['../Very_8cpp.html',1,'']]], + ['very_2eh',['Very.h',['../Very_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_77.html b/docs/html/search/files_77.html new file mode 100644 index 0000000..63bf92c --- /dev/null +++ b/docs/html/search/files_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_77.js b/docs/html/search/files_77.js new file mode 100644 index 0000000..324e3f3 --- /dev/null +++ b/docs/html/search/files_77.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['weightedaverage_2ecpp',['WeightedAverage.cpp',['../WeightedAverage_8cpp.html',1,'']]], + ['weightedaverage_2eh',['WeightedAverage.h',['../WeightedAverage_8h.html',1,'']]], + ['weightedsum_2ecpp',['WeightedSum.cpp',['../WeightedSum_8cpp.html',1,'']]], + ['weightedsum_2eh',['WeightedSum.h',['../WeightedSum_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_7a.html b/docs/html/search/files_7a.html new file mode 100644 index 0000000..935df7f --- /dev/null +++ b/docs/html/search/files_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_7a.js b/docs/html/search/files_7a.js new file mode 100644 index 0000000..c0d0639 --- /dev/null +++ b/docs/html/search/files_7a.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['zshape_2ecpp',['ZShape.cpp',['../ZShape_8cpp.html',1,'']]], + ['zshape_2eh',['ZShape.h',['../ZShape_8h.html',1,'']]] +]; diff --git a/docs/html/search/functions_61.html b/docs/html/search/functions_61.html new file mode 100644 index 0000000..d68c748 --- /dev/null +++ b/docs/html/search/functions_61.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_61.js b/docs/html/search/functions_61.js new file mode 100644 index 0000000..ed1053e --- /dev/null +++ b/docs/html/search/functions_61.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['accumulated',['Accumulated',['../classfl_1_1Accumulated.html#a2803372b6a40302d26f333cfb077485f',1,'fl::Accumulated']]], + ['activate',['activate',['../classfl_1_1Rule.html#a3bea9718055bcdd1387c2f3f9e5c20b7',1,'fl::Rule::activate()'],['../classfl_1_1RuleBlock.html#a4a71297776c25fb87a60d7a6e0c9adc0',1,'fl::RuleBlock::activate()']]], + ['activationdegree',['activationDegree',['../classfl_1_1Antecedent.html#a12119d5422525d7ed3e284def2dea085',1,'fl::Antecedent::activationDegree(const TNorm *conjunction, const SNorm *disjunction, const Expression *node) const '],['../classfl_1_1Antecedent.html#a8e2953d8665346ae849ae4e43a3805e2',1,'fl::Antecedent::activationDegree(const TNorm *conjunction, const SNorm *disjunction) const '],['../classfl_1_1Rule.html#a954192f9c76e435bb6a06fcdc85cfacc',1,'fl::Rule::activationDegree()']]], + ['add',['add',['../classfl_1_1Operation.html#a7b850cc7676978e71fae37040008903b',1,'fl::Operation']]], + ['addhedge',['addHedge',['../classfl_1_1Engine.html#a879e2b74ad7f219a591e8c65674e3870',1,'fl::Engine']]], + ['addinputvariable',['addInputVariable',['../classfl_1_1Engine.html#a545f4b8cb62d3430c4ebceb94e50198c',1,'fl::Engine']]], + ['addoutputvariable',['addOutputVariable',['../classfl_1_1Engine.html#a59d3b93579d829483730bc4c33c93909',1,'fl::Engine']]], + ['addrule',['addRule',['../classfl_1_1RuleBlock.html#ac22d5325d9f446bbee5a7029f3fde978',1,'fl::RuleBlock']]], + ['addruleblock',['addRuleBlock',['../classfl_1_1Engine.html#adb3bb3a9d43f04a3e2222250770b7628',1,'fl::Engine']]], + ['addterm',['addTerm',['../classfl_1_1Accumulated.html#a377dd3dbdcab84eaf2b7017f97c0dafc',1,'fl::Accumulated::addTerm()'],['../classfl_1_1Variable.html#a7ff7080e2f7a282ab0a66308721b869e',1,'fl::Variable::addTerm()']]], + ['andkeyword',['andKeyword',['../classfl_1_1Rule.html#a97f0308d02b3b70882b07dd6f0cb0faa',1,'fl::Rule']]], + ['antecedent',['Antecedent',['../classfl_1_1Antecedent.html#a659603cb3f1e1d4600ac683115dd9214',1,'fl::Antecedent']]], + ['append',['append',['../classfl_1_1Exception.html#ae4fed8d0b27b56a239a683ee7fd9cec4',1,'fl::Exception::append(const std::string &whatElse)'],['../classfl_1_1Exception.html#af82048d1815c64ffbf146c2f20549ddb',1,'fl::Exception::append(const std::string &file, int line, const std::string &function)'],['../classfl_1_1Exception.html#a8293b05db9f8bfa87607de1bb7397990',1,'fl::Exception::append(const std::string &whatElse, const std::string &file, int line, const std::string &function)']]], + ['assignkeyword',['assignKeyword',['../classfl_1_1Rule.html#a01346aa0042f6e19a5b3eb532f60679c',1,'fl::Rule']]], + ['author',['author',['../classfl_1_1fuzzylite.html#ad9c08f16bc85e32173726707dd38d561',1,'fl::fuzzylite']]], + ['available',['available',['../classfl_1_1Factory.html#ac5d4eb344eea176184f45c30b306f7b0',1,'fl::Factory']]] +]; diff --git a/docs/html/search/functions_62.html b/docs/html/search/functions_62.html new file mode 100644 index 0000000..5134d2d --- /dev/null +++ b/docs/html/search/functions_62.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_62.js b/docs/html/search/functions_62.js new file mode 100644 index 0000000..1f7a2e5 --- /dev/null +++ b/docs/html/search/functions_62.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['bell',['Bell',['../classfl_1_1Bell.html#a5130acddf2553e82e1783ba4fa5cf9bc',1,'fl::Bell']]], + ['bisector',['Bisector',['../classfl_1_1Bisector.html#a41f7bc1425d65fcbb0ecb174a293a6f9',1,'fl::Bisector']]], + ['btcallstack',['btCallStack',['../classfl_1_1Exception.html#af2828c0abaff2130600f41d0f1fa6ce6',1,'fl::Exception']]], + ['builtinfunction',['BuiltInFunction',['../structfl_1_1Function_1_1BuiltInFunction.html#aee227557ef13b636f84b2ad25090168b',1,'fl::Function::BuiltInFunction::BuiltInFunction(const std::string &name, Unary functionPointer, short associativity=-1)'],['../structfl_1_1Function_1_1BuiltInFunction.html#a2c81ad5335e3aa36294f5e2da316a5d4',1,'fl::Function::BuiltInFunction::BuiltInFunction(const std::string &name, Binary functionPointer, short associativity=-1)']]] +]; diff --git a/docs/html/search/functions_63.html b/docs/html/search/functions_63.html new file mode 100644 index 0000000..9114d82 --- /dev/null +++ b/docs/html/search/functions_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_63.js b/docs/html/search/functions_63.js new file mode 100644 index 0000000..ee77104 --- /dev/null +++ b/docs/html/search/functions_63.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['centroid',['Centroid',['../classfl_1_1Centroid.html#a01d2bf1ac98a8a8d2b890cb93da10948',1,'fl::Centroid']]], + ['classname',['className',['../classfl_1_1Bisector.html#ad2e056a53f33840bc3ed9f8ac1e4f6dc',1,'fl::Bisector::className()'],['../classfl_1_1Centroid.html#a5f6034e17f3db370035e538f2e91ac67',1,'fl::Centroid::className()'],['../classfl_1_1Defuzzifier.html#a511b8deb0f5e67855cd7973a42f0e199',1,'fl::Defuzzifier::className()'],['../classfl_1_1LargestOfMaximum.html#a918f4bf0b8a72898bc1f3bfdf5dc438c',1,'fl::LargestOfMaximum::className()'],['../classfl_1_1MeanOfMaximum.html#a6e37a3a564519a75f345cac5ae31f4af',1,'fl::MeanOfMaximum::className()'],['../classfl_1_1SmallestOfMaximum.html#a4a7302b8f400d3a78f01e350e35eb6a2',1,'fl::SmallestOfMaximum::className()'],['../classfl_1_1WeightedAverage.html#af130a933b869dad231ccd3748b0377d8',1,'fl::WeightedAverage::className()'],['../classfl_1_1WeightedSum.html#ada6b20ede0039b4517231ac7f74a0d30',1,'fl::WeightedSum::className()'],['../classfl_1_1Norm.html#a65614aa0776f7f9dab701cc3eac1b025',1,'fl::Norm::className()'],['../classfl_1_1AlgebraicSum.html#a58ebd1085298edae70e83c80cd941998',1,'fl::AlgebraicSum::className()'],['../classfl_1_1BoundedSum.html#a7776c5491977e8550a3d23088b08ade7',1,'fl::BoundedSum::className()'],['../classfl_1_1DrasticSum.html#acb789b71a2ef7a1cdd955e4bd623e537',1,'fl::DrasticSum::className()'],['../classfl_1_1EinsteinSum.html#aec42a24b948620986abc0cf91f32b644',1,'fl::EinsteinSum::className()'],['../classfl_1_1HamacherSum.html#a9a369bb11910179a3e9501df02d20d39',1,'fl::HamacherSum::className()'],['../classfl_1_1Maximum.html#ab07e483cf7d4a42d0b55f0afde7fbb1b',1,'fl::Maximum::className()'],['../classfl_1_1NormalizedSum.html#acca8ee239c9be60ba1ab618cf5b1b291',1,'fl::NormalizedSum::className()'],['../classfl_1_1AlgebraicProduct.html#afc4c7bb507394d91444ef8e7c882ec94',1,'fl::AlgebraicProduct::className()'],['../classfl_1_1BoundedDifference.html#a2935d9b24208f63851852756656957d9',1,'fl::BoundedDifference::className()'],['../classfl_1_1DrasticProduct.html#a0d21f5ba71a20178afeccb073fc42805',1,'fl::DrasticProduct::className()'],['../classfl_1_1EinsteinProduct.html#a42d8f66c7082903157291f248ce19016',1,'fl::EinsteinProduct::className()'],['../classfl_1_1HamacherProduct.html#a074cd7680f13dc4e4a83d009336310fc',1,'fl::HamacherProduct::className()'],['../classfl_1_1Minimum.html#aaadf3d67f63d3af4aacb6c889027f041',1,'fl::Minimum::className()'],['../classfl_1_1Accumulated.html#aeaad3e5de094846a4315fe0f681893d7',1,'fl::Accumulated::className()'],['../classfl_1_1Bell.html#a736e86bd14209b408550319acec84f4d',1,'fl::Bell::className()'],['../classfl_1_1Constant.html#ab223859f8fed5eb28c311cee7f2bd7b5',1,'fl::Constant::className()'],['../classfl_1_1Discrete.html#ae97f1963a45e12bbe4aac3dd0abe7c9c',1,'fl::Discrete::className()'],['../classfl_1_1Function.html#a3480f8ae860d507fd6253340471421bd',1,'fl::Function::className()'],['../classfl_1_1Gaussian.html#a4fe36a7eabff87f9f589e4fc2b225954',1,'fl::Gaussian::className()'],['../classfl_1_1GaussianProduct.html#a6053012a905ecb9e0b3a7d8fcfddb997',1,'fl::GaussianProduct::className()'],['../classfl_1_1Linear.html#aa80366e763e98a80201e8b941c502291',1,'fl::Linear::className()'],['../classfl_1_1PiShape.html#a3f8cdd32ed69468a7eda86894330be37',1,'fl::PiShape::className()'],['../classfl_1_1Ramp.html#a8f06e34a6d2576ed3acfe7dd2535800e',1,'fl::Ramp::className()'],['../classfl_1_1Rectangle.html#a939b4731743f1c142eb6b6fffcea0c27',1,'fl::Rectangle::className()'],['../classfl_1_1Sigmoid.html#a041068ed00b5f71d63eaaef85b9965a3',1,'fl::Sigmoid::className()'],['../classfl_1_1SigmoidDifference.html#a70668837104e1388972f6ef35a8d92f3',1,'fl::SigmoidDifference::className()'],['../classfl_1_1SigmoidProduct.html#a57a79ecae4ae191c794daa8f6e7262f0',1,'fl::SigmoidProduct::className()'],['../classfl_1_1SShape.html#ae4703c2f06aa41d086f44125c03dae7f',1,'fl::SShape::className()'],['../classfl_1_1Term.html#afd351ca4f67712f630215108a11f32a7',1,'fl::Term::className()'],['../classfl_1_1Thresholded.html#acc3ca7d0763b153bc898bb82ef191a55',1,'fl::Thresholded::className()'],['../classfl_1_1Trapezoid.html#a685a066f9e39dc70d2a512c702f384b3',1,'fl::Trapezoid::className()'],['../classfl_1_1Triangle.html#a4d79a8c91f2f3828bbdc7175fdb6e015',1,'fl::Triangle::className()'],['../classfl_1_1ZShape.html#aef7094c49f93f96217d1ae787d0b7686',1,'fl::ZShape::className()']]], + ['clean',['clean',['../classfl_1_1FllImporter.html#ad8a8138ff6532113ca4dea3926b8e138',1,'fl::FllImporter']]], + ['clear',['clear',['../classfl_1_1Accumulated.html#ade66c6bfa57957cfb7863196977fcf79',1,'fl::Accumulated']]], + ['compute',['compute',['../classfl_1_1Norm.html#a46fdc326f3a2cddece49dc1f26dd969a',1,'fl::Norm::compute()'],['../classfl_1_1AlgebraicSum.html#ac033b9566fb87b54239a8b0317fac0eb',1,'fl::AlgebraicSum::compute()'],['../classfl_1_1BoundedSum.html#ab3db0d46bd3286255341f71d4d31f49f',1,'fl::BoundedSum::compute()'],['../classfl_1_1DrasticSum.html#ae5540e7817df1c392ae35ecd2b27d2e2',1,'fl::DrasticSum::compute()'],['../classfl_1_1EinsteinSum.html#ab53c8b600c40a7b7d3dcbc33edcc01e6',1,'fl::EinsteinSum::compute()'],['../classfl_1_1HamacherSum.html#ad8a6b4101561349694daee12ef32a960',1,'fl::HamacherSum::compute()'],['../classfl_1_1Maximum.html#acb31d24e4ea1c2840145d3c518d1d56a',1,'fl::Maximum::compute()'],['../classfl_1_1NormalizedSum.html#a35feeeb1815ccd77968ce7668021bc81',1,'fl::NormalizedSum::compute()'],['../classfl_1_1AlgebraicProduct.html#a798f75aa2e6d8e777dbc76ada79eea07',1,'fl::AlgebraicProduct::compute()'],['../classfl_1_1BoundedDifference.html#a4c9841789dd22a3a9ead2a4b9abc037b',1,'fl::BoundedDifference::compute()'],['../classfl_1_1DrasticProduct.html#a8229dba8e0892e727d166277534c4998',1,'fl::DrasticProduct::compute()'],['../classfl_1_1EinsteinProduct.html#a80d026cdac33661c87f770a75380137f',1,'fl::EinsteinProduct::compute()'],['../classfl_1_1HamacherProduct.html#aa66725360da0eaf658f03380baacc35c',1,'fl::HamacherProduct::compute()'],['../classfl_1_1Minimum.html#a904a65beab278e3a089faf7204a3aa1e',1,'fl::Minimum::compute()']]], + ['conclusions',['conclusions',['../classfl_1_1Consequent.html#a1709f58b4dffc2669b8a2ca1b22b3427',1,'fl::Consequent']]], + ['configuration',['configuration',['../classfl_1_1fuzzylite.html#a089930a858fe2f0ad309331f96d403f0',1,'fl::fuzzylite']]], + ['configure',['configure',['../classfl_1_1Engine.html#ad4f0d7d9984f9fa6a232c995f1560425',1,'fl::Engine::configure()'],['../classfl_1_1Accumulated.html#a6e09df7fc6458109639270fef538113e',1,'fl::Accumulated::configure()'],['../classfl_1_1Bell.html#ae12d623035391bfa9558a5dade284906',1,'fl::Bell::configure()'],['../classfl_1_1Constant.html#aeb0f191cb82182bfb3ca5b925c38eb6d',1,'fl::Constant::configure()'],['../classfl_1_1Discrete.html#a7b172dd91676e087381da2bb72f24ab5',1,'fl::Discrete::configure()'],['../classfl_1_1Function.html#a2286377811867e4e380ad51efb18222a',1,'fl::Function::configure()'],['../classfl_1_1Gaussian.html#ad1ad9bad1f1d2096fa4d2f95b6288320',1,'fl::Gaussian::configure()'],['../classfl_1_1GaussianProduct.html#abaa001011b04d82044a6d121e82f4393',1,'fl::GaussianProduct::configure()'],['../classfl_1_1Linear.html#a5c00c0c8a4c20a8a75c161fe3be97497',1,'fl::Linear::configure()'],['../classfl_1_1PiShape.html#a094990367147e1a36889f449f6d038a3',1,'fl::PiShape::configure()'],['../classfl_1_1Ramp.html#a8a3168d355fb959fa7c3651ac18bccea',1,'fl::Ramp::configure()'],['../classfl_1_1Rectangle.html#ad62883ba5a2345bec73466d50fee9855',1,'fl::Rectangle::configure()'],['../classfl_1_1Sigmoid.html#a8ebea71a9b3f4453cf9400d0ea2d72b8',1,'fl::Sigmoid::configure()'],['../classfl_1_1SigmoidDifference.html#ad7abd6cb8a42ac01bc6a280b60a05f5f',1,'fl::SigmoidDifference::configure()'],['../classfl_1_1SigmoidProduct.html#aff50affd81bbd658a4a241de68d8489e',1,'fl::SigmoidProduct::configure()'],['../classfl_1_1SShape.html#a1dd1a940158dac71e3cdf6833a70046e',1,'fl::SShape::configure()'],['../classfl_1_1Term.html#a100f48b9e2332a89c2835198a5cc4b10',1,'fl::Term::configure()'],['../classfl_1_1Thresholded.html#aa79a1332b3db88e72a7a9a9af97a4719',1,'fl::Thresholded::configure()'],['../classfl_1_1Trapezoid.html#af12f243cd2a2b3b6c0288c52e0bbd7e9',1,'fl::Trapezoid::configure()'],['../classfl_1_1Triangle.html#a807a53d3ce8ee520c01c13a76d772f30',1,'fl::Triangle::configure()'],['../classfl_1_1ZShape.html#a7e044c217eed3571c707641c1b3465c4',1,'fl::ZShape::configure()']]], + ['consequent',['Consequent',['../classfl_1_1Consequent.html#a00e74219c15cd773f1574a7bbd43bf09',1,'fl::Consequent']]], + ['constant',['Constant',['../classfl_1_1Constant.html#a29a7ced3d9b7b372b1364942afe0e6c2',1,'fl::Constant']]], + ['constructor',['constructor',['../classfl_1_1Bisector.html#ad621b50c85866eb4f5c5c7cdbe6e186b',1,'fl::Bisector::constructor()'],['../classfl_1_1Centroid.html#a1586f46937ae6e30619b3701da77ad6d',1,'fl::Centroid::constructor()'],['../classfl_1_1LargestOfMaximum.html#ab608bf2abef9246ddd261766356f9d25',1,'fl::LargestOfMaximum::constructor()'],['../classfl_1_1MeanOfMaximum.html#aac3c40bd6b4e4fbe0c568f45cc2b6c23',1,'fl::MeanOfMaximum::constructor()'],['../classfl_1_1SmallestOfMaximum.html#af72246930702d987172dbf031140c4d8',1,'fl::SmallestOfMaximum::constructor()'],['../classfl_1_1WeightedAverage.html#ab9a018867fe59c52152ae75b7998b91d',1,'fl::WeightedAverage::constructor()'],['../classfl_1_1WeightedSum.html#a5e2bd343178e3b5b82513ba4e8d76302',1,'fl::WeightedSum::constructor()'],['../classfl_1_1Any.html#af944ba3b9262145b414c3df6eb2538d9',1,'fl::Any::constructor()'],['../classfl_1_1Extremely.html#ab3f7c2b91e53db88e1e61e79ebd301cf',1,'fl::Extremely::constructor()'],['../classfl_1_1Not.html#ae75fb1d44510bfd4338228dbbd773f0d',1,'fl::Not::constructor()'],['../classfl_1_1Seldom.html#a797fa8fa609c431ab15ad81acf8011b6',1,'fl::Seldom::constructor()'],['../classfl_1_1Somewhat.html#ace3660d876c8ebaa378072a0bf717322',1,'fl::Somewhat::constructor()'],['../classfl_1_1Very.html#ac69b6207a02d6c7127c62fb9e1d0e4a4',1,'fl::Very::constructor()'],['../classfl_1_1AlgebraicSum.html#a7b3658b08bdb4eb8dd15b136ea9b49fb',1,'fl::AlgebraicSum::constructor()'],['../classfl_1_1BoundedSum.html#ade0d52fa377abd3a26cfe6c09ced0fed',1,'fl::BoundedSum::constructor()'],['../classfl_1_1DrasticSum.html#af41c2612de772b60e85486719924a19a',1,'fl::DrasticSum::constructor()'],['../classfl_1_1EinsteinSum.html#a26069692ad549ed9329ac44524d53019',1,'fl::EinsteinSum::constructor()'],['../classfl_1_1HamacherSum.html#a97477ae807a703cf7c0d150a4a4e94c4',1,'fl::HamacherSum::constructor()'],['../classfl_1_1Maximum.html#ab6a77d56b0010c61dab9aff6eef8d69e',1,'fl::Maximum::constructor()'],['../classfl_1_1NormalizedSum.html#a914dc1469e8551fb007e6a9ebc2ead25',1,'fl::NormalizedSum::constructor()'],['../classfl_1_1AlgebraicProduct.html#add0dde390da48895eb8cb944a12fad95',1,'fl::AlgebraicProduct::constructor()'],['../classfl_1_1BoundedDifference.html#a6f415a9da6922d3e8ba65bc26e79ed45',1,'fl::BoundedDifference::constructor()'],['../classfl_1_1DrasticProduct.html#a3ba3bf3ceb8bdca67887d7a391c24bf0',1,'fl::DrasticProduct::constructor()'],['../classfl_1_1EinsteinProduct.html#ae48735984fa4af8aadc04a866bc7f95b',1,'fl::EinsteinProduct::constructor()'],['../classfl_1_1HamacherProduct.html#aa643c0983dd731952efb16996303ed2a',1,'fl::HamacherProduct::constructor()'],['../classfl_1_1Minimum.html#afe8e6b8aeb6276acd1de8ff123448db9',1,'fl::Minimum::constructor()'],['../classfl_1_1Bell.html#a790113e260b56c8157dae26563c93047',1,'fl::Bell::constructor()'],['../classfl_1_1Constant.html#a79dcb419cca8b8ae9fe367ce7b6f15df',1,'fl::Constant::constructor()'],['../classfl_1_1Discrete.html#a880c08615cd8aca2e66b02ba7eaa80bc',1,'fl::Discrete::constructor()'],['../classfl_1_1Function.html#aef18ddabe54b7039c877ecc592e875be',1,'fl::Function::constructor()'],['../classfl_1_1Gaussian.html#a246604f064ff03ef393bc32d31cb2e93',1,'fl::Gaussian::constructor()'],['../classfl_1_1GaussianProduct.html#a8e3524f455a0eadc98e91012e7abc034',1,'fl::GaussianProduct::constructor()'],['../classfl_1_1Linear.html#a08f34f405942b06b9265fe65b043ae3f',1,'fl::Linear::constructor()'],['../classfl_1_1PiShape.html#ac581e7799ff38f4974ea0762436d286a',1,'fl::PiShape::constructor()'],['../classfl_1_1Ramp.html#a340c5b421b4d37f2937d68c10250fa2f',1,'fl::Ramp::constructor()'],['../classfl_1_1Rectangle.html#a52fa7b8b5da4764993a22c5f76068f12',1,'fl::Rectangle::constructor()'],['../classfl_1_1Sigmoid.html#ab51722fe28e76a1838461ddf2eb38898',1,'fl::Sigmoid::constructor()'],['../classfl_1_1SigmoidDifference.html#abef39f7d6e542a4d2390d84430fbcbd2',1,'fl::SigmoidDifference::constructor()'],['../classfl_1_1SigmoidProduct.html#a8accc2d7f727bb9fbc223b2a41656077',1,'fl::SigmoidProduct::constructor()'],['../classfl_1_1SShape.html#a9a3814c905ec7ecb0be8746959a19c6e',1,'fl::SShape::constructor()'],['../classfl_1_1Trapezoid.html#a926e739b8296315c9a5ce83e916df6d7',1,'fl::Trapezoid::constructor()'],['../classfl_1_1Triangle.html#a7da7dfa0d1e8cb091ca559a5cf8d9351',1,'fl::Triangle::constructor()'],['../classfl_1_1ZShape.html#a81235ae129498b7defc5d247afcefb60',1,'fl::ZShape::constructor()']]], + ['copy',['copy',['../classfl_1_1Accumulated.html#a1f9ebe6cd3e1d485cb02c2bdc966c4e0',1,'fl::Accumulated::copy()'],['../classfl_1_1Bell.html#a1f597089a0d16d2156423972bb99fd86',1,'fl::Bell::copy()'],['../classfl_1_1Constant.html#ac6835a40aededed1a361cc2d6612828b',1,'fl::Constant::copy()'],['../classfl_1_1Discrete.html#a4faa32776cbb19cd9b1b9d9b76e3a043',1,'fl::Discrete::copy()'],['../classfl_1_1Function.html#aa2ffba8fe6fc5cccc762a87116e9ff5a',1,'fl::Function::copy()'],['../classfl_1_1Gaussian.html#abfe6341c9e2f016a8be779e58014280d',1,'fl::Gaussian::copy()'],['../classfl_1_1GaussianProduct.html#ac82273731d30e6f9b4a406d9a863376b',1,'fl::GaussianProduct::copy()'],['../classfl_1_1Linear.html#a2b44ce9614e5d983181eb3f0a9ed2a55',1,'fl::Linear::copy()'],['../classfl_1_1PiShape.html#a231d003759000eeed3cc5f4fef8606b5',1,'fl::PiShape::copy()'],['../classfl_1_1Ramp.html#a1e538377748de2e6de2f38e38fcb9cb7',1,'fl::Ramp::copy()'],['../classfl_1_1Rectangle.html#a16850355bc3080c58d098718bc74d693',1,'fl::Rectangle::copy()'],['../classfl_1_1Sigmoid.html#a160d05a70c6403039aabbbedd88296a3',1,'fl::Sigmoid::copy()'],['../classfl_1_1SigmoidDifference.html#abb20c3349649e34a62c9ea15c38908bd',1,'fl::SigmoidDifference::copy()'],['../classfl_1_1SigmoidProduct.html#af4f5e30c2acf6283ba4f0d0b4366d538',1,'fl::SigmoidProduct::copy()'],['../classfl_1_1SShape.html#afef1d4cfb56b9c41dc605dec148d1b66',1,'fl::SShape::copy()'],['../classfl_1_1Term.html#a9f9ea77910a6383bbc1533d83d84716d',1,'fl::Term::copy()'],['../classfl_1_1Thresholded.html#a51fa711138205dbef7b4a37b3c1ca15b',1,'fl::Thresholded::copy()'],['../classfl_1_1Trapezoid.html#a4de88b0acaab4179e40545075c085e7e',1,'fl::Trapezoid::copy()'],['../classfl_1_1Triangle.html#a470574b4c57b614454418ccf152da5e1',1,'fl::Triangle::copy()'],['../classfl_1_1ZShape.html#a8ac998acfc9492859008eeb5a4ca0454',1,'fl::ZShape::copy()']]], + ['cppexporter',['CppExporter',['../classfl_1_1CppExporter.html#a2686897fc63df2046e4d6d0c6c6e5625',1,'fl::CppExporter']]], + ['create',['create',['../classfl_1_1Discrete.html#aa775899affa4f5ce1c5fe590db4fce75',1,'fl::Discrete::create()'],['../classfl_1_1Function.html#af6ce5d6fa38c1bf08cccf1b2b102332e',1,'fl::Function::create()'],['../classfl_1_1Linear.html#a4f3bb5a40be78904b5629f2f0aad8c41',1,'fl::Linear::create()'],['../classfl_1_1Discrete.html#ab83fb843c4953eb9e31d8da2b45511e1',1,'fl::Discrete::create()'],['../classfl_1_1Linear.html#a1abc4256576543b69ef00a64e47661b4',1,'fl::Linear::create()']]], + ['createinstance',['createInstance',['../classfl_1_1Factory.html#a03cb6f9f2a99ad3ac0c699066cd6c327',1,'fl::Factory::createInstance()'],['../classfl_1_1FisImporter.html#a62938780ffe9ca9c3c214cb95ee6f4fd',1,'fl::FisImporter::createInstance()']]] +]; diff --git a/docs/html/search/functions_64.html b/docs/html/search/functions_64.html new file mode 100644 index 0000000..1714930 --- /dev/null +++ b/docs/html/search/functions_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_64.js b/docs/html/search/functions_64.js new file mode 100644 index 0000000..2abc3e8 --- /dev/null +++ b/docs/html/search/functions_64.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['date',['date',['../classfl_1_1fuzzylite.html#ac4ff06e22ed1031e0a3cc1538dea751f',1,'fl::fuzzylite']]], + ['debug',['debug',['../classfl_1_1fuzzylite.html#a7ecb3f3d1979043fca3b5b13dc7883be',1,'fl::fuzzylite']]], + ['decimals',['decimals',['../classfl_1_1fuzzylite.html#af94d7e84ef71e1e0a623483ef029274c',1,'fl::fuzzylite']]], + ['defaultresolution',['defaultResolution',['../classfl_1_1IntegralDefuzzifier.html#a24ce1ae1d1a8d9c4dc286789b0300b6d',1,'fl::IntegralDefuzzifier']]], + ['defuzzifier',['defuzzifier',['../classfl_1_1FactoryManager.html#a2075eced79dd07507f5ac94dfff11255',1,'fl::FactoryManager::defuzzifier()'],['../classfl_1_1FisImporter.html#a1bc09706aab7de024d61a3209f8588b2',1,'fl::FisImporter::defuzzifier()'],['../classfl_1_1Defuzzifier.html#a667711a04b2083365ed78a1a2afc99b8',1,'fl::Defuzzifier::Defuzzifier()']]], + ['defuzzifierfactory',['DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html#a30781e202b3392bf24054d7b204de206',1,'fl::DefuzzifierFactory']]], + ['defuzzify',['defuzzify',['../classfl_1_1Bisector.html#a2f6e48aa8878a1f1c1151567508439b0',1,'fl::Bisector::defuzzify()'],['../classfl_1_1Centroid.html#aadcf7c0e9636ef902bf72de806795eae',1,'fl::Centroid::defuzzify()'],['../classfl_1_1Defuzzifier.html#a9d339cf9c564154d85e27320a0ac8507',1,'fl::Defuzzifier::defuzzify()'],['../classfl_1_1LargestOfMaximum.html#af837a7283ef6051f5e7c82544b66407c',1,'fl::LargestOfMaximum::defuzzify()'],['../classfl_1_1MeanOfMaximum.html#a16bcac98f46e237a557299adf7bd4803',1,'fl::MeanOfMaximum::defuzzify()'],['../classfl_1_1SmallestOfMaximum.html#a53a8843c46d80161e6b3a96a48e72d8a',1,'fl::SmallestOfMaximum::defuzzify()'],['../classfl_1_1WeightedAverage.html#a992edc31cb46e38191d5f750de37e281',1,'fl::WeightedAverage::defuzzify()'],['../classfl_1_1WeightedSum.html#aa8c7072f42219b9a7100aa16f0e6e427',1,'fl::WeightedSum::defuzzify()'],['../classfl_1_1OutputVariable.html#a85e36175f3a81be3a9e0771bd49ae792',1,'fl::OutputVariable::defuzzify()']]], + ['defuzzifynolocks',['defuzzifyNoLocks',['../classfl_1_1OutputVariable.html#a4c92ca99e61d50e264dbf4cbc0d03a28',1,'fl::OutputVariable']]], + ['deregisterclass',['deregisterClass',['../classfl_1_1Factory.html#acb8a5da88390e5c4fd01f8e56b7d6fe5',1,'fl::Factory']]], + ['discrete',['Discrete',['../classfl_1_1Discrete.html#ab1e99bcda141227f8fa5c91d7f1cbae9',1,'fl::Discrete::Discrete(const std::string &name="")'],['../classfl_1_1Discrete.html#add3bf20449f16b386fae2cd933f649f6',1,'fl::Discrete::Discrete(const std::string &name, const std::vector< scalar > &x, const std::vector< scalar > &y)'],['../classfl_1_1Discrete.html#a5f595f95b1b25eb4b898504d61e78128',1,'fl::Discrete::Discrete(const std::string &name, const std::vector< std::pair< scalar, scalar > > &xy)']]], + ['divide',['divide',['../classfl_1_1Operation.html#a2684ad6ae0b3ddda245ab58b706c6b8f',1,'fl::Operation']]] +]; diff --git a/docs/html/search/functions_65.html b/docs/html/search/functions_65.html new file mode 100644 index 0000000..13260cf --- /dev/null +++ b/docs/html/search/functions_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_65.js b/docs/html/search/functions_65.js new file mode 100644 index 0000000..4f8dd51 --- /dev/null +++ b/docs/html/search/functions_65.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['element',['Element',['../structfl_1_1Function_1_1Element.html#aa383fb0e7e1f64a272dfa028cbc3705d',1,'fl::Function::Element::Element(const std::string &name)'],['../structfl_1_1Function_1_1Element.html#a2ca8f010c887a5c263746e6eb3f285b3',1,'fl::Function::Element::Element(const std::string &name, Unary unary, short associativity=-1)'],['../structfl_1_1Function_1_1Element.html#a1ae6b7bc90ebffe97438909239096f47',1,'fl::Function::Element::Element(const std::string &name, Binary binary, short associativity=-1)']]], + ['engine',['Engine',['../classfl_1_1Engine.html#a0cc9382b2782fc17cb253ad71e12648a',1,'fl::Engine']]], + ['evaluate',['evaluate',['../structfl_1_1Function_1_1Node.html#a8d0a1c64fd0e5a5966742d3393c240fa',1,'fl::Function::Node::evaluate()'],['../classfl_1_1Function.html#ad9e34b8bb78b233a100625135bea7fe2',1,'fl::Function::evaluate()']]], + ['exception',['Exception',['../classfl_1_1Exception.html#a11a8e6d81b6604e559dc5ed895fdd6fc',1,'fl::Exception']]], + ['exportallexamples',['exportAllExamples',['../main_8cpp.html#a2c51c31f8231e9629bb80fd37ced3e46',1,'main.cpp']]], + ['exporter',['Exporter',['../classfl_1_1Exporter.html#aab49a9590298c2d405a96b69e39776f4',1,'fl::Exporter']]], + ['exportinputs',['exportInputs',['../classfl_1_1FisExporter.html#a2095faa4bc9438ad9ddc73adb0491575',1,'fl::FisExporter']]], + ['exportoutputs',['exportOutputs',['../classfl_1_1FisExporter.html#ae9eacd64e24abc161cfdbd870c0ee261',1,'fl::FisExporter']]], + ['exportrule',['exportRule',['../classfl_1_1FisExporter.html#a3c768b12f50268d82d2185d03815cd49',1,'fl::FisExporter']]], + ['exportrules',['exportRules',['../classfl_1_1FisExporter.html#ac0f2cb9aa613b3a985aa0357ac83a2a3',1,'fl::FisExporter']]], + ['exportsystem',['exportSystem',['../classfl_1_1FisExporter.html#aa28acbe2499c3bbd19f13ad6052c40d3',1,'fl::FisExporter']]], + ['expression',['Expression',['../classfl_1_1Expression.html#a2a1d3e1e62ed8397c1247ecc4ad5b2d7',1,'fl::Expression']]], + ['extractdefaultvalue',['extractDefaultValue',['../classfl_1_1FclImporter.html#aa30426cf04bbab3bae3fddd32ce0b3c7',1,'fl::FclImporter']]], + ['extractdefuzzifier',['extractDefuzzifier',['../classfl_1_1FclImporter.html#a07f6ec79bc059b30019d70c7531a6cd8',1,'fl::FclImporter']]], + ['extractenabled',['extractEnabled',['../classfl_1_1FclImporter.html#a5935e886b62107adf3c9292f10674f92',1,'fl::FclImporter']]], + ['extractlocksoutputrange',['extractLocksOutputRange',['../classfl_1_1FclImporter.html#aae7fea6fa14aead4e1deb8712cbc5ac2',1,'fl::FclImporter']]], + ['extractrange',['extractRange',['../classfl_1_1FclImporter.html#a65ea4bf1bca4958eedb0a43a458ba94f',1,'fl::FclImporter::extractRange()'],['../classfl_1_1FisImporter.html#a3114d30446f59a3a7c1b9cccf1ca48d6',1,'fl::FisImporter::extractRange()']]], + ['extractsnorm',['extractSNorm',['../classfl_1_1FclImporter.html#ac6a10fba4faa0f4bde790122cbbf7d77',1,'fl::FclImporter']]], + ['extractterm',['extractTerm',['../classfl_1_1FclImporter.html#aef76d58fa8b7d6615b62fcceb9f65b24',1,'fl::FclImporter::extractTerm()'],['../classfl_1_1FisImporter.html#a70ec174f0c030f7413de42b55e520e7f',1,'fl::FisImporter::extractTerm()']]], + ['extracttnorm',['extractTNorm',['../classfl_1_1FclImporter.html#ad2a79c4d700db15cc8f647ebdbb3137d',1,'fl::FclImporter']]] +]; diff --git a/docs/html/search/functions_66.html b/docs/html/search/functions_66.html new file mode 100644 index 0000000..12565e3 --- /dev/null +++ b/docs/html/search/functions_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_66.js b/docs/html/search/functions_66.js new file mode 100644 index 0000000..ff1ca0c --- /dev/null +++ b/docs/html/search/functions_66.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['factory',['Factory',['../classfl_1_1Factory.html#a842cdc776d7e85eab1a53c3bf36fabbc',1,'fl::Factory']]], + ['factorymanager',['FactoryManager',['../classfl_1_1FactoryManager.html#aa94791620fbe7d48ffd7878ebae052ae',1,'fl::FactoryManager']]], + ['fclexporter',['FclExporter',['../classfl_1_1FclExporter.html#aad7f1de7316a63a55bf469ae3aa5f886',1,'fl::FclExporter']]], + ['fclimporter',['FclImporter',['../classfl_1_1FclImporter.html#aeb6708f65ece9205d5b4a2e756c33fe7',1,'fl::FclImporter']]], + ['findreplace',['findReplace',['../classfl_1_1Operation.html#a7c6bb139fc09adb0c9bfe0929c75c7ff',1,'fl::Operation']]], + ['fisexporter',['FisExporter',['../classfl_1_1FisExporter.html#a8e7cdf87f0c6bc2c22679f18af7290d7',1,'fl::FisExporter']]], + ['fisimporter',['FisImporter',['../classfl_1_1FisImporter.html#ac83ea8cf1ec0755ce8ef97de4cd7b6d1',1,'fl::FisImporter']]], + ['fldexporter',['FldExporter',['../classfl_1_1FldExporter.html#af65de1ba2bd518a03740679be9756bf0',1,'fl::FldExporter']]], + ['fllexporter',['FllExporter',['../classfl_1_1FllExporter.html#a3d7af60d0ffc198ddac94258117be327',1,'fl::FllExporter']]], + ['fllimporter',['FllImporter',['../classfl_1_1FllImporter.html#a66c9812e8aac48ead888b02e69079396',1,'fl::FllImporter']]], + ['floatingpoint',['floatingPoint',['../classfl_1_1fuzzylite.html#a6df0949b8d769591ca383985e31414ba',1,'fl::fuzzylite']]], + ['format',['format',['../classfl_1_1Operation.html#adf97aff3b12b6755a9f77c9299868cb2',1,'fl::Operation']]], + ['fromstring',['fromString',['../classfl_1_1FclImporter.html#a35548905d0df960647dd7d3c5f6c1265',1,'fl::FclImporter::fromString()'],['../classfl_1_1FisImporter.html#a6a979d9d88de1761227bdc595448d164',1,'fl::FisImporter::fromString()'],['../classfl_1_1FllImporter.html#a79b008375ec6e8b3523e75c93698b14e',1,'fl::FllImporter::fromString()'],['../classfl_1_1Importer.html#a41a5100eb0d3b3a7ec92781c105490a2',1,'fl::Importer::fromString()']]], + ['fullname',['fullname',['../classfl_1_1fuzzylite.html#a4879aa89db2f02c55316cb5bc49b1d65',1,'fl::fuzzylite']]], + ['function',['Function',['../classfl_1_1Function.html#ad6769a713c7b7e6804a23cef200f3ad2',1,'fl::Function']]], + ['fuzzify',['fuzzify',['../classfl_1_1Variable.html#aad41c391557ab0812e05f73896a8169f',1,'fl::Variable']]], + ['fuzzyoutput',['fuzzyOutput',['../classfl_1_1OutputVariable.html#a6afba2565ac43f2dc0ff28e6e6920b62',1,'fl::OutputVariable']]] +]; diff --git a/docs/html/search/functions_67.html b/docs/html/search/functions_67.html new file mode 100644 index 0000000..53d4a09 --- /dev/null +++ b/docs/html/search/functions_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_67.js b/docs/html/search/functions_67.js new file mode 100644 index 0000000..5848a58 --- /dev/null +++ b/docs/html/search/functions_67.js @@ -0,0 +1,62 @@ +var searchData= +[ + ['gaussian',['Gaussian',['../classfl_1_1Gaussian.html#a98c6cd11415682fedee70afbd7ab006a',1,'fl::Gaussian']]], + ['gaussianproduct',['GaussianProduct',['../classfl_1_1GaussianProduct.html#aace6b4c7794393c72584036e49d30982',1,'fl::GaussianProduct']]], + ['geta',['getA',['../classfl_1_1Trapezoid.html#ada7f3bc0527d900c772b0851a330ba2d',1,'fl::Trapezoid::getA()'],['../classfl_1_1Triangle.html#a4a7c49f2eef08aa3302ae5e29c82b4a3',1,'fl::Triangle::getA()']]], + ['getaccumulation',['getAccumulation',['../classfl_1_1Accumulated.html#aa6f958cd1f0d0388b8a826bb05ccb589',1,'fl::Accumulated']]], + ['getactivation',['getActivation',['../classfl_1_1RuleBlock.html#aece505e71bdb55648d43f907f2569cdd',1,'fl::RuleBlock::getActivation()'],['../classfl_1_1Thresholded.html#a43e013c005ecd115d3edcdf9741b7567',1,'fl::Thresholded::getActivation()']]], + ['getantecedent',['getAntecedent',['../classfl_1_1Rule.html#a79109b35408f02fcc7f093dd0a705645',1,'fl::Rule']]], + ['getb',['getB',['../classfl_1_1Trapezoid.html#a572ba414202bad966cb0523081565b86',1,'fl::Trapezoid::getB()'],['../classfl_1_1Triangle.html#afece31dc006ea9885d4f2dad43f65dd1',1,'fl::Triangle::getB()']]], + ['getbottomleft',['getBottomLeft',['../classfl_1_1PiShape.html#a3021c7131cfac066661c75b314d0249c',1,'fl::PiShape']]], + ['getbottomright',['getBottomRight',['../classfl_1_1PiShape.html#ac28ea4bd4efe15c60858d5c19d113801',1,'fl::PiShape']]], + ['getbuiltinfunction',['getBuiltInFunction',['../classfl_1_1Function.html#a8ed158f59ff063c0c7ee3333fafd288d',1,'fl::Function']]], + ['getc',['getC',['../classfl_1_1Trapezoid.html#aeb2022f8184512b566a7619873c35587',1,'fl::Trapezoid::getC()'],['../classfl_1_1Triangle.html#aa694221a73f60c3b131f05e93ab54bf3',1,'fl::Triangle::getC()']]], + ['getcenter',['getCenter',['../classfl_1_1Bell.html#aae77173e96178a51456728aac257cf20',1,'fl::Bell']]], + ['getconjunction',['getConjunction',['../classfl_1_1RuleBlock.html#a797b1eee683e243bba549371660b589b',1,'fl::RuleBlock']]], + ['getconsequent',['getConsequent',['../classfl_1_1Rule.html#a3b10652232437ba140686314e2cb68b8',1,'fl::Rule']]], + ['getd',['getD',['../classfl_1_1Trapezoid.html#ae8149c6a3811c50c80e29f6197bd8f66',1,'fl::Trapezoid']]], + ['getdefaultvalue',['getDefaultValue',['../classfl_1_1OutputVariable.html#a77d008ebe5df2837253db89003738f32',1,'fl::OutputVariable']]], + ['getdefuzzifier',['getDefuzzifier',['../classfl_1_1OutputVariable.html#a7acdeed68a566c8f3fae09ead1bf534a',1,'fl::OutputVariable']]], + ['getdisjunction',['getDisjunction',['../classfl_1_1RuleBlock.html#a5b429157fdd3b34e31a713a0012eb525',1,'fl::RuleBlock']]], + ['getend',['getEnd',['../classfl_1_1Ramp.html#a119f38fb9f642f8bc450244dfb501138',1,'fl::Ramp::getEnd()'],['../classfl_1_1Rectangle.html#ac67297489749e2fcd87ac4e4d8fb01cb',1,'fl::Rectangle::getEnd()'],['../classfl_1_1SShape.html#a00b9f5874d4c73b6af95cb8cbf904885',1,'fl::SShape::getEnd()'],['../classfl_1_1ZShape.html#a5fec6776563af1b7de30aa5fd97b6bac',1,'fl::ZShape::getEnd()']]], + ['getengine',['getEngine',['../classfl_1_1Function.html#a21ce8486c656f1ffa37ae8a6982820d7',1,'fl::Function']]], + ['getfalling',['getFalling',['../classfl_1_1SigmoidDifference.html#a3b82e5868627b078f6501d60ed370b95',1,'fl::SigmoidDifference::getFalling()'],['../classfl_1_1SigmoidProduct.html#a291521b7a3c5e5c626dc08a6c619ff09',1,'fl::SigmoidProduct::getFalling()']]], + ['getformula',['getFormula',['../classfl_1_1Function.html#a264ef402c9c4f20d2174ba7d3ecea384',1,'fl::Function']]], + ['gethedge',['getHedge',['../classfl_1_1Engine.html#aca6a1d466e724e072b9fafe4543ac24c',1,'fl::Engine::getHedge(int index) const '],['../classfl_1_1Engine.html#aaa9d918b11334996a412e1d254d2e613',1,'fl::Engine::getHedge(const std::string &name) const ']]], + ['getindent',['getIndent',['../classfl_1_1FclExporter.html#ac2dbb5edf24eb8aa4df8aac1e0dc27f6',1,'fl::FclExporter::getIndent()'],['../classfl_1_1FllExporter.html#a600838fc90eeb0d6e9c1955c42d3bb0a',1,'fl::FllExporter::getIndent()']]], + ['getinflection',['getInflection',['../classfl_1_1Sigmoid.html#a7a0d855fc287413f7b740bc4619c350b',1,'fl::Sigmoid']]], + ['getinputvalue',['getInputValue',['../classfl_1_1InputVariable.html#aee34f9cbcdc7c758f609ca4500624788',1,'fl::InputVariable']]], + ['getinputvariable',['getInputVariable',['../classfl_1_1Engine.html#a8ec2e0d92edaa708911317ebd1dcf076',1,'fl::Engine::getInputVariable(int index) const '],['../classfl_1_1Engine.html#a36fb40cdddec82a664515d75fecb197e',1,'fl::Engine::getInputVariable(const std::string &name) const ']]], + ['getlastvalidoutput',['getLastValidOutput',['../classfl_1_1OutputVariable.html#af5aa8a7e6adb78d51360c195fa0ab175',1,'fl::OutputVariable']]], + ['getleft',['getLeft',['../classfl_1_1SigmoidDifference.html#ada1f5fb685c4a368ef921d9a39066f6b',1,'fl::SigmoidDifference::getLeft()'],['../classfl_1_1SigmoidProduct.html#a97ddb3029c2e53c881ff7be047542af7',1,'fl::SigmoidProduct::getLeft()']]], + ['getmaximum',['getMaximum',['../classfl_1_1FldExporter.html#a751a24d775758a74d32fff38210c413e',1,'fl::FldExporter::getMaximum()'],['../classfl_1_1Accumulated.html#ab71e90489aca781218d76a89750b8954',1,'fl::Accumulated::getMaximum()'],['../classfl_1_1Variable.html#abbae3650d5d5a80d2128a59570c4880e',1,'fl::Variable::getMaximum()']]], + ['getmean',['getMean',['../classfl_1_1Gaussian.html#aafb1c9093523491dd4bc6fe83fed82ff',1,'fl::Gaussian']]], + ['getmeana',['getMeanA',['../classfl_1_1GaussianProduct.html#ac4de1d4f1d2a3305440d8a79ba9fd7b3',1,'fl::GaussianProduct']]], + ['getmeanb',['getMeanB',['../classfl_1_1GaussianProduct.html#a0f805a13ecbd9f4148174dc597e192dd',1,'fl::GaussianProduct']]], + ['getminimum',['getMinimum',['../classfl_1_1Accumulated.html#ae0ab9364938b0b5fb65f7b851cdcb7b0',1,'fl::Accumulated::getMinimum()'],['../classfl_1_1Variable.html#ac2a8e5c9bc47d8fc943a6502381cc501',1,'fl::Variable::getMinimum()']]], + ['getname',['getName',['../classfl_1_1Engine.html#a8506b08c5b0703303216d8a6a9fc5177',1,'fl::Engine::getName()'],['../classfl_1_1RuleBlock.html#aa5ecbdc1c6d8c58e646a26fc46312dfb',1,'fl::RuleBlock::getName()'],['../classfl_1_1Term.html#a0b2db6c39da45e0edc7d3478bb3c25c6',1,'fl::Term::getName()'],['../classfl_1_1Variable.html#a26d2334f8afd573c8ebed27c72309338',1,'fl::Variable::getName()']]], + ['getoperator',['getOperator',['../classfl_1_1Function.html#abc8ce853954a826a82ccbecd7bab249f',1,'fl::Function']]], + ['getoutputvalue',['getOutputValue',['../classfl_1_1Engine.html#a9513599df6c3f5216014935270b0a48a',1,'fl::Engine']]], + ['getoutputvariable',['getOutputVariable',['../classfl_1_1Engine.html#a04966ed53d33272421ef3fd1892d2f39',1,'fl::Engine::getOutputVariable(int index) const '],['../classfl_1_1Engine.html#a3370e83e016907dc4c48d8bfe714699e',1,'fl::Engine::getOutputVariable(const std::string &name) const ']]], + ['getresolution',['getResolution',['../classfl_1_1IntegralDefuzzifier.html#a84b9bd1f647763fc87ddb0877f62c91a',1,'fl::IntegralDefuzzifier']]], + ['getright',['getRight',['../classfl_1_1SigmoidDifference.html#aa0a0e0156e906e86554171f71226bb21',1,'fl::SigmoidDifference::getRight()'],['../classfl_1_1SigmoidProduct.html#a8be0013ba551bc840ef6794e6149e4e9',1,'fl::SigmoidProduct::getRight()']]], + ['getrising',['getRising',['../classfl_1_1SigmoidDifference.html#a866ad6003c772f12617674c419912359',1,'fl::SigmoidDifference::getRising()'],['../classfl_1_1SigmoidProduct.html#aed789b39ce575842924f5e25380fce93',1,'fl::SigmoidProduct::getRising()']]], + ['getroot',['getRoot',['../classfl_1_1Antecedent.html#a891c6666c7ac4ee3920ce9984cf4f661',1,'fl::Antecedent']]], + ['getrule',['getRule',['../classfl_1_1RuleBlock.html#a44a4516d8e39f0dbda4ea35c55d70f44',1,'fl::RuleBlock']]], + ['getruleblock',['getRuleBlock',['../classfl_1_1Engine.html#acb630b203d3ad271031a239ed3d395db',1,'fl::Engine::getRuleBlock(int index) const '],['../classfl_1_1Engine.html#a99c84543af90e05a4dc75a160603101d',1,'fl::Engine::getRuleBlock(const std::string &name) const ']]], + ['getseparator',['getSeparator',['../classfl_1_1FldExporter.html#afacb9f57e490cb9574fb741ddc71e63b',1,'fl::FldExporter::getSeparator()'],['../classfl_1_1FllExporter.html#a4ac7b293fbb4890933c52b459c09cf77',1,'fl::FllExporter::getSeparator()'],['../classfl_1_1FllImporter.html#a5d93989dab7442e22fdd6073d00f17c3',1,'fl::FllImporter::getSeparator()']]], + ['getslope',['getSlope',['../classfl_1_1Bell.html#acb216a3c64f828863376dc7e54fb6bf5',1,'fl::Bell::getSlope()'],['../classfl_1_1Sigmoid.html#a83f9471108c479f65d207881f7bece1f',1,'fl::Sigmoid::getSlope()']]], + ['getstandarddeviation',['getStandardDeviation',['../classfl_1_1Gaussian.html#ab302be9787169b20f2f6ca7a26a8afe0',1,'fl::Gaussian']]], + ['getstandarddeviationa',['getStandardDeviationA',['../classfl_1_1GaussianProduct.html#a1220b0085a00f8109b49501b346f29d7',1,'fl::GaussianProduct']]], + ['getstandarddeviationb',['getStandardDeviationB',['../classfl_1_1GaussianProduct.html#a6486b89913270c8caafda0526de24843',1,'fl::GaussianProduct']]], + ['getstart',['getStart',['../classfl_1_1Ramp.html#a4c133fee56f32fb9161c8deeb9e71594',1,'fl::Ramp::getStart()'],['../classfl_1_1Rectangle.html#a1fea0ee869b3d2072b7b430e7870c832',1,'fl::Rectangle::getStart()'],['../classfl_1_1SShape.html#ad8d53ac163ca3a66c537a55f4d3773e0',1,'fl::SShape::getStart()'],['../classfl_1_1ZShape.html#a01c48e10ed374c0aea3c0ac578db9e46',1,'fl::ZShape::getStart()']]], + ['getterm',['getTerm',['../classfl_1_1Accumulated.html#a0b2857802f93cc3d212d28aa2253b28a',1,'fl::Accumulated::getTerm()'],['../classfl_1_1Thresholded.html#a29395c6461a696a9325c4137861b3d8d',1,'fl::Thresholded::getTerm()'],['../classfl_1_1Variable.html#a5502c7010d710663a7b90343f7fa4d34',1,'fl::Variable::getTerm(int index) const '],['../classfl_1_1Variable.html#ab7a949d0398629ba35d21f70c75f25c0',1,'fl::Variable::getTerm(const std::string &name) const ']]], + ['gettext',['getText',['../classfl_1_1Rule.html#adbeaa04dcd7a6be8697815321f84939e',1,'fl::Rule']]], + ['getthreshold',['getThreshold',['../classfl_1_1Thresholded.html#a32336abe9201687a83cab2cf9681e88b',1,'fl::Thresholded']]], + ['gettopleft',['getTopLeft',['../classfl_1_1PiShape.html#ac6d9a607b36a3eab748355e4835d6fd0',1,'fl::PiShape']]], + ['gettopright',['getTopRight',['../classfl_1_1PiShape.html#af4603dfcf2981ba30c0f83b367fad91a',1,'fl::PiShape']]], + ['getvalue',['getValue',['../classfl_1_1Constant.html#af5b789b84ac38c739e29bd94c75452d4',1,'fl::Constant']]], + ['getweight',['getWeight',['../classfl_1_1Rule.html#a937d9a3aec0c40a80d151257520003f1',1,'fl::Rule']]], + ['getwhat',['getWhat',['../classfl_1_1Exception.html#a356f4b32b778f34f6d6216d7088eedd7',1,'fl::Exception']]], + ['getwidth',['getWidth',['../classfl_1_1Bell.html#a6376f7a04d0f9eb34570df2e7654185a',1,'fl::Bell']]] +]; diff --git a/docs/html/search/functions_68.html b/docs/html/search/functions_68.html new file mode 100644 index 0000000..77d37fe --- /dev/null +++ b/docs/html/search/functions_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_68.js b/docs/html/search/functions_68.js new file mode 100644 index 0000000..405e3c0 --- /dev/null +++ b/docs/html/search/functions_68.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['hashedge',['hasHedge',['../classfl_1_1Engine.html#aca04b618fd840e8f15bdbc7869176307',1,'fl::Engine']]], + ['hasinputvariable',['hasInputVariable',['../classfl_1_1Engine.html#a5f335382428fc07d10b2e19b07ad3169',1,'fl::Engine']]], + ['hasoutputvariable',['hasOutputVariable',['../classfl_1_1Engine.html#af5fb1a60a176eeb626d216fc6543d2a4',1,'fl::Engine']]], + ['hasregisteredclass',['hasRegisteredClass',['../classfl_1_1Factory.html#acb4595793affb9ad8c736a8f8167c7e4',1,'fl::Factory']]], + ['hasruleblock',['hasRuleBlock',['../classfl_1_1Engine.html#a2981da39b56ea615c9b18ae367deb2b8',1,'fl::Engine']]], + ['hasterm',['hasTerm',['../classfl_1_1Variable.html#a07762ffd5c636e1b37b4233dfa9be1b6',1,'fl::Variable']]], + ['hedge',['hedge',['../classfl_1_1FactoryManager.html#af9d096bfb369da99be19325ec5cb1431',1,'fl::FactoryManager::hedge()'],['../classfl_1_1Any.html#a82e3e007681db89fe0a15a18967e78ec',1,'fl::Any::hedge()'],['../classfl_1_1Extremely.html#a43167e853dee9cb90fbbe913c067612a',1,'fl::Extremely::hedge()'],['../classfl_1_1Hedge.html#a98c94b3f1f62bedaf01d36ceed4cf837',1,'fl::Hedge::hedge()'],['../classfl_1_1Not.html#a8abf3c49d780b093da7614c47c70bd63',1,'fl::Not::hedge()'],['../classfl_1_1Seldom.html#a09ddaa9c37d6f47a93fdca30de9ca76e',1,'fl::Seldom::hedge()'],['../classfl_1_1Somewhat.html#a8e27f4a78dbdb0941b07a2d04234534d',1,'fl::Somewhat::hedge()'],['../classfl_1_1Very.html#ae331113074c7dee2df941e84e6d7ae85',1,'fl::Very::hedge()'],['../classfl_1_1Hedge.html#a3370874611a2880c05ca1d35dd6e8159',1,'fl::Hedge::Hedge()']]], + ['hedgefactory',['HedgeFactory',['../classfl_1_1HedgeFactory.html#a78d107303d37226af09a285314b1255a',1,'fl::HedgeFactory']]], + ['hedges',['hedges',['../classfl_1_1Engine.html#a0ad848e4b8676d7c57ce5ce9aaf347dd',1,'fl::Engine']]], + ['highestmembership',['highestMembership',['../classfl_1_1Variable.html#aa3bde8705979a1af1c857f6e17981814',1,'fl::Variable']]] +]; diff --git a/docs/html/search/functions_69.html b/docs/html/search/functions_69.html new file mode 100644 index 0000000..9edd1a1 --- /dev/null +++ b/docs/html/search/functions_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_69.js b/docs/html/search/functions_69.js new file mode 100644 index 0000000..8370bb7 --- /dev/null +++ b/docs/html/search/functions_69.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['ifkeyword',['ifKeyword',['../classfl_1_1Rule.html#a86c83c1fda834afadd60eb13a39f642b',1,'fl::Rule']]], + ['importer',['Importer',['../classfl_1_1Importer.html#a5d5f32f7522c0e263b7833315e529f1f',1,'fl::Importer']]], + ['importinput',['importInput',['../classfl_1_1FisImporter.html#a69a07f5204d45a6369f5148bd88f09a2',1,'fl::FisImporter']]], + ['importoutput',['importOutput',['../classfl_1_1FisImporter.html#aeea249f5b5985bd7b7e7541677f909c3',1,'fl::FisImporter']]], + ['importrules',['importRules',['../classfl_1_1FisImporter.html#a15e8b93a30f925e7b8c80b99c36a67b5',1,'fl::FisImporter']]], + ['importsystem',['importSystem',['../classfl_1_1FisImporter.html#adfcf55ffd93f7f6dde089d8a7ba5d9a4',1,'fl::FisImporter']]], + ['increment',['increment',['../classfl_1_1Operation.html#a60c60482b67760369150130596fe5331',1,'fl::Operation::increment(std::vector< int > &x, std::vector< int > &min, std::vector< int > &max)'],['../classfl_1_1Operation.html#a2d55752e3bf2f6bf8bc48b3d22a2f506',1,'fl::Operation::increment(std::vector< int > &x, int position, std::vector< int > &min, std::vector< int > &max)']]], + ['inputvariable',['InputVariable',['../classfl_1_1InputVariable.html#a34ff3317b73342a2a8abf3652f6e8277',1,'fl::InputVariable']]], + ['inputvariables',['inputVariables',['../classfl_1_1Engine.html#a9c107245f0d4492291860d0c3b4e0600',1,'fl::Engine']]], + ['inserthedge',['insertHedge',['../classfl_1_1Engine.html#a7420c4284e7056be4be23ae8bd5d8806',1,'fl::Engine']]], + ['insertinputvariable',['insertInputVariable',['../classfl_1_1Engine.html#a231be0ae11c7594760b90e54dce0eb2c',1,'fl::Engine']]], + ['insertoutputvariable',['insertOutputVariable',['../classfl_1_1Engine.html#a385c393a1b6a81b3fa4370a3d9ae5e1e',1,'fl::Engine']]], + ['insertrule',['insertRule',['../classfl_1_1RuleBlock.html#aa3733a36fa8a578b8eb053952f246259',1,'fl::RuleBlock']]], + ['insertruleblock',['insertRuleBlock',['../classfl_1_1Engine.html#aaf00bd5a56c4d0cdb19274104cfdbbbf',1,'fl::Engine']]], + ['insertterm',['insertTerm',['../classfl_1_1Variable.html#a4c81c1f5479adc40eb552dc5ba9be061',1,'fl::Variable']]], + ['instance',['instance',['../classfl_1_1FactoryManager.html#a751ba1be322868a9c8756ec9bd116c74',1,'fl::FactoryManager']]], + ['integraldefuzzifier',['IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html#aa8331e20bd5cc79ce77c5c63bd5fa220',1,'fl::IntegralDefuzzifier']]], + ['isbuiltinfunction',['isBuiltInFunction',['../classfl_1_1Function.html#aa604f2c6525cca5b85afecd016048b6f',1,'fl::Function']]], + ['isempty',['isEmpty',['../classfl_1_1Accumulated.html#a7f68b0eb8f8f0b2b190dc8df9d14d202',1,'fl::Accumulated']]], + ['isenabled',['isEnabled',['../classfl_1_1RuleBlock.html#a64bd2b2ac301dda1a9a60c5bbd82465b',1,'fl::RuleBlock::isEnabled()'],['../classfl_1_1Variable.html#a814019c457f88c4e7ae3ff09bb353d78',1,'fl::Variable::isEnabled()']]], + ['iseq',['isEq',['../classfl_1_1Operation.html#a3bd473932d3b8353e40af877c467b324',1,'fl::Operation']]], + ['isge',['isGE',['../classfl_1_1Operation.html#ad781d21609ff3e063257d94304418283',1,'fl::Operation']]], + ['isgt',['isGt',['../classfl_1_1Operation.html#afa219e0326d298b15c92f732c591ceaa',1,'fl::Operation']]], + ['isinf',['isInf',['../classfl_1_1Operation.html#ac0877e14c96f64e9230ca8d0ed0fa9eb',1,'fl::Operation::isInf(T x)'],['../classfl_1_1Operation.html#a0a221a37f9320e0994e1d9aee4af9fec',1,'fl::Operation::isInf(T x)']]], + ['iskeyword',['isKeyword',['../classfl_1_1Rule.html#a52c84de220b7b3a5b8dff7f451858793',1,'fl::Rule']]], + ['isle',['isLE',['../classfl_1_1Operation.html#a05320a82f0759c66c85bf2f1470753ef',1,'fl::Operation']]], + ['islockingoutputrange',['isLockingOutputRange',['../classfl_1_1OutputVariable.html#a8c2865737efc814ae8e214dc04eddea0',1,'fl::OutputVariable']]], + ['islockingvalidoutput',['isLockingValidOutput',['../classfl_1_1OutputVariable.html#a917f7a21983186a0627480dc0044510c',1,'fl::OutputVariable']]], + ['islt',['isLt',['../classfl_1_1Operation.html#a26398c2a7adf50032bdd6a1758988175',1,'fl::Operation']]], + ['isnan',['isNan',['../classfl_1_1Operation.html#a1cf6a6acc56ba71d35a2cd766c095243',1,'fl::Operation::isNan(T x)'],['../classfl_1_1Operation.html#af90151331ed26fad1b39f3a989040f1a',1,'fl::Operation::isNan(T x)']]], + ['isnumeric',['isNumeric',['../classfl_1_1Operation.html#a33778a1ae2ccbe4f1187737dfdb5556f',1,'fl::Operation']]], + ['isoperand',['isOperand',['../classfl_1_1Function.html#a38c3011d499a84d262b4ba895e4b3700',1,'fl::Function']]], + ['isoperator',['isOperator',['../classfl_1_1Function.html#a0d9c8b2711ebd2a7eeeca0d4726cc235',1,'fl::Function']]], + ['isready',['isReady',['../classfl_1_1Engine.html#adfacce3db1568a16e685faa865e8b55a',1,'fl::Engine']]], + ['isvalidforname',['isValidForName',['../classfl_1_1Operation.html#a62eaeb9a80c982e70c2e1397b79c0beb',1,'fl::Operation']]] +]; diff --git a/docs/html/search/functions_6a.html b/docs/html/search/functions_6a.html new file mode 100644 index 0000000..948495f --- /dev/null +++ b/docs/html/search/functions_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6a.js b/docs/html/search/functions_6a.js new file mode 100644 index 0000000..e03ae88 --- /dev/null +++ b/docs/html/search/functions_6a.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['javaexporter',['JavaExporter',['../classfl_1_1JavaExporter.html#a98c789ad1a6eaea25cd7aafb41cd2012',1,'fl::JavaExporter']]], + ['join',['join',['../classfl_1_1Operation.html#a9946abbfa68ed8ee889532a96af71957',1,'fl::Operation::join(const std::vector< T > &x, const std::string &separator=", ")'],['../classfl_1_1Operation.html#a1103130aed65ace38a366c50ae2e7dad',1,'fl::Operation::join(int items, const std::string &separator, T first,...)'],['../classfl_1_1Operation.html#a6d59606686bb29794d3811004934d5e7',1,'fl::Operation::join(const std::vector< T > &x, const std::string &separator)'],['../classfl_1_1Operation.html#a74d7e8bc4a4be3c2f7e7474e0d69f7eb',1,'fl::Operation::join(const std::vector< std::string > &x, const std::string &separator)'],['../classfl_1_1Operation.html#a8fdf0a07a29557ed149271a7f02b5524',1,'fl::Operation::join(int items, const std::string &separator, T first,...)'],['../classfl_1_1Operation.html#a6c988814edbd4dc11ea8f1d81ecbc249',1,'fl::Operation::join(int items, const std::string &separator, const char *first,...)']]] +]; diff --git a/docs/html/search/functions_6c.html b/docs/html/search/functions_6c.html new file mode 100644 index 0000000..33c0d6d --- /dev/null +++ b/docs/html/search/functions_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6c.js b/docs/html/search/functions_6c.js new file mode 100644 index 0000000..3a778c6 --- /dev/null +++ b/docs/html/search/functions_6c.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['largestofmaximum',['LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html#a1690cf2d7dff0434ed1c0c9d3c29ab6d',1,'fl::LargestOfMaximum']]], + ['linear',['Linear',['../classfl_1_1Linear.html#a9aefe07bc50a793ad81d4e302b6486b8',1,'fl::Linear']]], + ['load',['load',['../classfl_1_1Antecedent.html#a262a8155a7c4553651a2a5da1883c75f',1,'fl::Antecedent::load()'],['../classfl_1_1Consequent.html#aa568ed0bdc9deeec35ba44e5f183c059',1,'fl::Consequent::load()'],['../classfl_1_1Function.html#ae7ef261750a6fac102c88b5338cc24e0',1,'fl::Function::load()'],['../classfl_1_1Function.html#ae100c79063c8bad3eca0beb5433b0a28',1,'fl::Function::load(const std::string &formula, const Engine *engine=NULL)']]], + ['loadbuiltinfunctions',['loadBuiltInFunctions',['../classfl_1_1Function.html#ac357b08779c1c3145f9e1311f71ae791',1,'fl::Function']]], + ['logging',['logging',['../classfl_1_1fuzzylite.html#ac2d3a7652fb4cab32d28f22219140c55',1,'fl::fuzzylite']]], + ['logicaland',['logicalAnd',['../classfl_1_1Operation.html#a00a16cb50581466396239084567a69d9',1,'fl::Operation']]], + ['logicalor',['logicalOr',['../classfl_1_1Operation.html#afbeb97277d6491ed88fe680633a64e15',1,'fl::Operation']]], + ['longversion',['longVersion',['../classfl_1_1fuzzylite.html#a46bb31970b57509e50cf5e17e2caeb3e',1,'fl::fuzzylite']]] +]; diff --git a/docs/html/search/functions_6d.html b/docs/html/search/functions_6d.html new file mode 100644 index 0000000..73fecff --- /dev/null +++ b/docs/html/search/functions_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6d.js b/docs/html/search/functions_6d.js new file mode 100644 index 0000000..385131b --- /dev/null +++ b/docs/html/search/functions_6d.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['macheps',['macheps',['../classfl_1_1fuzzylite.html#aeec67f83c1315df438540263b6da184d',1,'fl::fuzzylite']]], + ['main',['main',['../classfl_1_1Console.html#a42d877375cee8afdc38eabaadd6f3342',1,'fl::Console::main()'],['../classfl_1_1Function.html#a9a545f733f56ab80350232facf1f110f',1,'fl::Function::main()'],['../main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'main(): main.cpp']]], + ['makevalidid',['makeValidId',['../classfl_1_1Operation.html#a51e639fd4862ad97169f0638c9257bbb',1,'fl::Operation']]], + ['mamdani',['mamdani',['../classfl_1_1Console.html#a6d90c2b31cbe4657d464fcbd2ce6d863',1,'fl::Console']]], + ['max',['max',['../classfl_1_1Operation.html#a3fd742ebe803b311b3dc3c0db2fe82ae',1,'fl::Operation::max(T a, T b)'],['../classfl_1_1Operation.html#a8626d08eb181ed5a36acf703d9a2baba',1,'fl::Operation::max(T a, T b)']]], + ['meanofmaximum',['MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html#a550b5af2c02d13cf7f520892eed5a192',1,'fl::MeanOfMaximum']]], + ['membership',['membership',['../classfl_1_1Accumulated.html#a4e466f3818b4107b206d069ee7bb96b3',1,'fl::Accumulated::membership()'],['../classfl_1_1Bell.html#a5e625b1b3d23632a4015dd734adddb6f',1,'fl::Bell::membership()'],['../classfl_1_1Constant.html#ab1df75b525300e26f3bfdd16dc3c8bd2',1,'fl::Constant::membership()'],['../classfl_1_1Discrete.html#ae258f2ba052fd7c18c471e3b52992e5f',1,'fl::Discrete::membership()'],['../classfl_1_1Function.html#a6775b642c60d04148d25996707d4647f',1,'fl::Function::membership()'],['../classfl_1_1Gaussian.html#aa6b16380ba030cd4f1520c2d78ab950e',1,'fl::Gaussian::membership()'],['../classfl_1_1GaussianProduct.html#ab34f0db33867495381322cd11d85bf5d',1,'fl::GaussianProduct::membership()'],['../classfl_1_1Linear.html#a0dfcc75d129a7a1e0580fd2937a7bcc2',1,'fl::Linear::membership()'],['../classfl_1_1PiShape.html#ad4c0740301f52a2c9703f21ceea769d1',1,'fl::PiShape::membership()'],['../classfl_1_1Ramp.html#a487ad50106207e65ac5fb6b94eeb7bef',1,'fl::Ramp::membership()'],['../classfl_1_1Rectangle.html#a7358a312ee158f1559d513818377dca1',1,'fl::Rectangle::membership()'],['../classfl_1_1Sigmoid.html#ab704c08f9251bb86c7b6452d277c4b85',1,'fl::Sigmoid::membership()'],['../classfl_1_1SigmoidDifference.html#a1c222c6d79caa4d34efe3afd43a94742',1,'fl::SigmoidDifference::membership()'],['../classfl_1_1SigmoidProduct.html#ae5dc654786106eb7fb9bda80327e050a',1,'fl::SigmoidProduct::membership()'],['../classfl_1_1SShape.html#a95b6da4d1df8716190717e5ff8213928',1,'fl::SShape::membership()'],['../classfl_1_1Term.html#ae23daa362e9e6fb780ea967f6ababf0a',1,'fl::Term::membership()'],['../classfl_1_1Thresholded.html#a662f8746c8a308d486232771166fb0fb',1,'fl::Thresholded::membership()'],['../classfl_1_1Trapezoid.html#a1e31c93218d59c3335ff91ef4fdc0538',1,'fl::Trapezoid::membership()'],['../classfl_1_1Triangle.html#a4a3f37fbb1ed642d3264b0b957d5908b',1,'fl::Triangle::membership()'],['../classfl_1_1ZShape.html#a3cc9f0d130305aa3d7afae44576763e8',1,'fl::ZShape::membership()']]], + ['min',['min',['../classfl_1_1Operation.html#a1e3b19ecb5599aaef117962f5a98ddac',1,'fl::Operation::min(T a, T b)'],['../classfl_1_1Operation.html#ad717f0ee307b2423a6859c6df7757d74',1,'fl::Operation::min(T a, T b)']]], + ['modify',['modify',['../classfl_1_1Consequent.html#a1868f2235ddddf5c3a55128d6816f8bd',1,'fl::Consequent']]], + ['modulo',['modulo',['../classfl_1_1Operation.html#ad38f4063108778da509a9d4e6ff86ba8',1,'fl::Operation']]], + ['multiply',['multiply',['../classfl_1_1Operation.html#a1bea3d159125f8c193329bec0333df48',1,'fl::Operation']]] +]; diff --git a/docs/html/search/functions_6e.html b/docs/html/search/functions_6e.html new file mode 100644 index 0000000..5e54741 --- /dev/null +++ b/docs/html/search/functions_6e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6e.js b/docs/html/search/functions_6e.js new file mode 100644 index 0000000..4d68cf2 --- /dev/null +++ b/docs/html/search/functions_6e.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['name',['name',['../classfl_1_1fuzzylite.html#a15221b258922e96bb6ff9e270ec9678e',1,'fl::fuzzylite::name()'],['../classfl_1_1Any.html#a814b592e793aebed249ec86305f52d70',1,'fl::Any::name()'],['../classfl_1_1Extremely.html#a3a361fd4f0df11ea76f6d4664953cd8d',1,'fl::Extremely::name()'],['../classfl_1_1Hedge.html#a547d5526c4c921d7a61db29f2e76a88c',1,'fl::Hedge::name()'],['../classfl_1_1Not.html#a396267c88a293a6e1e0fb6a71a529f3f',1,'fl::Not::name()'],['../classfl_1_1Seldom.html#a10942e294076f4a7ccf72d83c4ecb771',1,'fl::Seldom::name()'],['../classfl_1_1Somewhat.html#af3615970e0db67462de0c2ed3656c520',1,'fl::Somewhat::name()'],['../classfl_1_1Very.html#a99e7d2e3f703e6b9612adfd56143e9db',1,'fl::Very::name()'],['../classfl_1_1CppExporter.html#acf9ce2274bf72448e53d8958a2259087',1,'fl::CppExporter::name()'],['../classfl_1_1Exporter.html#aff99f85f68f8f4c8b2755f2dcc435f11',1,'fl::Exporter::name()'],['../classfl_1_1FclExporter.html#a998704afa9d4e247d287ff3496c31e05',1,'fl::FclExporter::name()'],['../classfl_1_1FclImporter.html#af44344f1e6a6844a7dc092c2ebb1a2ff',1,'fl::FclImporter::name()'],['../classfl_1_1FisExporter.html#a82368569fc8fda27cd9c59e4b7710ca2',1,'fl::FisExporter::name()'],['../classfl_1_1FisImporter.html#a95632dfa7aa5abb29882043dd197083d',1,'fl::FisImporter::name()'],['../classfl_1_1FldExporter.html#a7f0ee3eec187356fd87f29be4679bde5',1,'fl::FldExporter::name()'],['../classfl_1_1FllExporter.html#aae32c417cf85a08f92f17697009a69f4',1,'fl::FllExporter::name()'],['../classfl_1_1FllImporter.html#ac3c96b230a304c1d2a13a9e6d77f3a4f',1,'fl::FllImporter::name()'],['../classfl_1_1Importer.html#a8b8cfaab1076414317917a2f983fc995',1,'fl::Importer::name()'],['../classfl_1_1JavaExporter.html#a210bc87a9517587d0c5c26380290705d',1,'fl::JavaExporter::name()']]], + ['negate',['negate',['../classfl_1_1Operation.html#a0e6c4231f378126709c3525973bea54e',1,'fl::Operation']]], + ['node',['Node',['../structfl_1_1Function_1_1Node.html#afb68a9731cbc8b0373298d444eed6637',1,'fl::Function::Node::Node(Operator *foperator, Node *left=NULL, Node *right=NULL)'],['../structfl_1_1Function_1_1Node.html#aa7922fad2b23c6b51eaae3e8aa435987',1,'fl::Function::Node::Node(BuiltInFunction *function, Node *left=NULL, Node *right=NULL)'],['../structfl_1_1Function_1_1Node.html#a816142e6c0dc4b16f60f6ae77276a8df',1,'fl::Function::Node::Node(const std::string &variable)'],['../structfl_1_1Function_1_1Node.html#adfe462bb8f6b9559f2e882e357121e50',1,'fl::Function::Node::Node(scalar value)']]], + ['norm',['Norm',['../classfl_1_1Norm.html#a037d23877edd010bcbf267772df56b67',1,'fl::Norm']]], + ['numberofhedges',['numberOfHedges',['../classfl_1_1Engine.html#ad3b1b9e448d7183406d3c36eb06e1653',1,'fl::Engine']]], + ['numberofinputvariables',['numberOfInputVariables',['../classfl_1_1Engine.html#aaff1c85f1f4b3c846ee2a79507f32080',1,'fl::Engine']]], + ['numberofoutputvariables',['numberOfOutputVariables',['../classfl_1_1Engine.html#aa74eb71ff2a9c55c4167072cf5b1bb4b',1,'fl::Engine']]], + ['numberofruleblocks',['numberOfRuleBlocks',['../classfl_1_1Engine.html#a32b38de0b3079c254c7de7a1404f3e4c',1,'fl::Engine']]], + ['numberofrules',['numberOfRules',['../classfl_1_1RuleBlock.html#ab1300746c0e0d6ba3dfe7724dc24ea6d',1,'fl::RuleBlock']]], + ['numberofterms',['numberOfTerms',['../classfl_1_1Accumulated.html#a24a5d995ff0ba0c18e65ce11d8298aee',1,'fl::Accumulated::numberOfTerms()'],['../classfl_1_1Variable.html#acda25738675210de35d76514c6c50582',1,'fl::Variable::numberOfTerms()']]] +]; diff --git a/docs/html/search/functions_6f.html b/docs/html/search/functions_6f.html new file mode 100644 index 0000000..9d69264 --- /dev/null +++ b/docs/html/search/functions_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6f.js b/docs/html/search/functions_6f.js new file mode 100644 index 0000000..688d88b --- /dev/null +++ b/docs/html/search/functions_6f.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['operator',['Operator',['../classfl_1_1Operator.html#a3f3fa3ae5a2efe92e5de7dd8c65656a7',1,'fl::Operator::Operator()'],['../structfl_1_1Function_1_1Operator.html#a28f2a1453f0a3433d4a2865fba33193f',1,'fl::Function::Operator::Operator(const std::string &name, Unary unary, short precedence=0, short associativity=-1)'],['../structfl_1_1Function_1_1Operator.html#a12ad8f672f087b51084b21b8035fab2c',1,'fl::Function::Operator::Operator(const std::string &name, Binary unary, short precedence=0, short associativity=-1)']]], + ['operator_28_29',['operator()',['../structfl_1_1Variable_1_1SortByCoG.html#a7525f3e02463f76c7fa85805153f8eb8',1,'fl::Variable::SortByCoG']]], + ['orkeyword',['orKeyword',['../classfl_1_1Rule.html#aa039c22128735b014599205e5c6aaae0',1,'fl::Rule']]], + ['outputvariable',['OutputVariable',['../classfl_1_1OutputVariable.html#a06fc646d572d770fcb8b98f3d9e7f983',1,'fl::OutputVariable']]], + ['outputvariables',['outputVariables',['../classfl_1_1Engine.html#a3986929c751fa14c5e91ad899442bd1e',1,'fl::Engine']]] +]; diff --git a/docs/html/search/functions_70.html b/docs/html/search/functions_70.html new file mode 100644 index 0000000..8ef7fb9 --- /dev/null +++ b/docs/html/search/functions_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_70.js b/docs/html/search/functions_70.js new file mode 100644 index 0000000..0a881d5 --- /dev/null +++ b/docs/html/search/functions_70.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['parameters',['parameters',['../classfl_1_1Accumulated.html#a5b68d40eea8ee151bdd934a3451b6bc6',1,'fl::Accumulated::parameters()'],['../classfl_1_1Bell.html#acb2dd9453a7a4d057b68209d217ce15a',1,'fl::Bell::parameters()'],['../classfl_1_1Constant.html#aab50f02de66ba9ae804d0a38a4e9e0b2',1,'fl::Constant::parameters()'],['../classfl_1_1Discrete.html#a84cf30021a29ecb406b7c01b743aa54f',1,'fl::Discrete::parameters()'],['../classfl_1_1Function.html#a3e900c3e371a7d6047415b9821c44e95',1,'fl::Function::parameters()'],['../classfl_1_1Gaussian.html#abe3ef5f8b925c0c8010f2112ff1585be',1,'fl::Gaussian::parameters()'],['../classfl_1_1GaussianProduct.html#af7c07284dd611729ac9c3a1d51798963',1,'fl::GaussianProduct::parameters()'],['../classfl_1_1Linear.html#afa98a39fca7b8bc7b444e8448882f3e2',1,'fl::Linear::parameters()'],['../classfl_1_1PiShape.html#a13b09d4230a58b312a9bbd890982c2bc',1,'fl::PiShape::parameters()'],['../classfl_1_1Ramp.html#a9259fc96fd86481966c24ff7fadd2829',1,'fl::Ramp::parameters()'],['../classfl_1_1Rectangle.html#a72ef9e6eb3f0dbe4f17f4526529b7713',1,'fl::Rectangle::parameters()'],['../classfl_1_1Sigmoid.html#af31208d52da5262004df47169a35db02',1,'fl::Sigmoid::parameters()'],['../classfl_1_1SigmoidDifference.html#a7e59ac222159477a0569a1f92118af33',1,'fl::SigmoidDifference::parameters()'],['../classfl_1_1SigmoidProduct.html#a0f44d8a921f634b4f6079eb4d1539f7f',1,'fl::SigmoidProduct::parameters()'],['../classfl_1_1SShape.html#a3b10741f63553b1be4fc4daf15cd4a39',1,'fl::SShape::parameters()'],['../classfl_1_1Term.html#abe166cd54a2f9b483472942e3536cb85',1,'fl::Term::parameters()'],['../classfl_1_1Thresholded.html#a93374bd46ec05cefd21181b377417312',1,'fl::Thresholded::parameters()'],['../classfl_1_1Trapezoid.html#a019ee6474e6cb880a2587e93b893b6e3',1,'fl::Trapezoid::parameters()'],['../classfl_1_1Triangle.html#abe8e44ee94cbc0e9e37ecb3e58b4ce46',1,'fl::Triangle::parameters()'],['../classfl_1_1ZShape.html#a628871407ebeeedb924f437c89177061',1,'fl::ZShape::parameters()']]], + ['parse',['parse',['../classfl_1_1Console.html#ad02a59bfac8e4c3c4972ef24485b486e',1,'fl::Console::parse()'],['../classfl_1_1Rule.html#a7f255fffc4373cb0510b7199dd4b9b78',1,'fl::Rule::parse()'],['../classfl_1_1Function.html#aa4abc71ff0a3a9c334f6953dd62e1777',1,'fl::Function::parse()']]], + ['parseboolean',['parseBoolean',['../classfl_1_1FllImporter.html#af2df9fd1883d408233b4818f138c2122',1,'fl::FllImporter']]], + ['parsedefuzzifier',['parseDefuzzifier',['../classfl_1_1FllImporter.html#ab301d5397d204347f583067a07c15082',1,'fl::FllImporter']]], + ['parsekeyvalue',['parseKeyValue',['../classfl_1_1FllImporter.html#a3199e6251bf66df0d038394474640805',1,'fl::FllImporter']]], + ['parserange',['parseRange',['../classfl_1_1FllImporter.html#a20931ea569c4b63b0b64dff564f97a8b',1,'fl::FllImporter']]], + ['parsesnorm',['parseSNorm',['../classfl_1_1FllImporter.html#ad555651cd0a08e0d061c0162343f021c',1,'fl::FllImporter']]], + ['parseterm',['parseTerm',['../classfl_1_1FllImporter.html#a06be484393fba92045bad88340f7956e',1,'fl::FllImporter']]], + ['parsetnorm',['parseTNorm',['../classfl_1_1FllImporter.html#a3920c6f5399e67238a2f8d6cfdc03158',1,'fl::FllImporter']]], + ['pishape',['PiShape',['../classfl_1_1PiShape.html#a3c40ddb8438bb35ff31a677b8dead8c4',1,'fl::PiShape']]], + ['platform',['platform',['../classfl_1_1fuzzylite.html#a8a0e943a752795f49476c3c447f73b29',1,'fl::fuzzylite']]], + ['prepareterm',['prepareTerm',['../classfl_1_1FclImporter.html#acfc6c8ac6ccae43e744581389b39bddb',1,'fl::FclImporter::prepareTerm()'],['../classfl_1_1FisImporter.html#a174c4585abf07f233fbf08f0d24321fd',1,'fl::FisImporter::prepareTerm()']]], + ['process',['process',['../classfl_1_1Console.html#ab75b47c714606140a237e820c395062d',1,'fl::Console::process(const std::map< std::string, std::string > &options)'],['../classfl_1_1Console.html#ace6178ad0a280b0ca8717ba5f6ed20d5',1,'fl::Console::process(const std::string &input, T &writer, const std::string &inputFormat, const std::string &outputFormat, const std::map< std::string, std::string > &options)'],['../classfl_1_1Engine.html#a6810105266cdc2a801ae9e9fc56edc27',1,'fl::Engine::process()'],['../classfl_1_1FllImporter.html#ab1a1894cc656683fb5dfab587609fab4',1,'fl::FllImporter::process()'],['../classfl_1_1Console.html#a3dc66beb5d7b32ae2396077ddd0596d0',1,'fl::Console::process()']]], + ['processblock',['processBlock',['../classfl_1_1FclImporter.html#a3f04690c634633246b6c139567d4a97f',1,'fl::FclImporter']]], + ['processdefuzzify',['processDefuzzify',['../classfl_1_1FclImporter.html#a9079102376dcf6603f614b499b68d6fe',1,'fl::FclImporter']]], + ['processfuzzify',['processFuzzify',['../classfl_1_1FclImporter.html#a5a58eca83e8cd52b0795406a04e377e4',1,'fl::FclImporter']]], + ['processinputvariable',['processInputVariable',['../classfl_1_1FllImporter.html#ad60b4b4752e8d1c90826d9362a985dba',1,'fl::FllImporter']]], + ['processoutputvariable',['processOutputVariable',['../classfl_1_1FllImporter.html#a219f0cf485902342e830385dc0467dc1',1,'fl::FllImporter']]], + ['processruleblock',['processRuleBlock',['../classfl_1_1FclImporter.html#a8803a4df1678e47cfe29547bba2798fe',1,'fl::FclImporter::processRuleBlock()'],['../classfl_1_1FllImporter.html#abdd31292205140522f73410becb9d436',1,'fl::FllImporter::processRuleBlock()']]], + ['processvar',['processVar',['../classfl_1_1FclImporter.html#a1762774e5b20cae794130516e5a1df84',1,'fl::FclImporter']]], + ['proposition',['Proposition',['../classfl_1_1Proposition.html#a1a3ee950c8fa4e4152d67aa16b1124c4',1,'fl::Proposition']]] +]; diff --git a/docs/html/search/functions_72.html b/docs/html/search/functions_72.html new file mode 100644 index 0000000..71f58bb --- /dev/null +++ b/docs/html/search/functions_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_72.js b/docs/html/search/functions_72.js new file mode 100644 index 0000000..7a5503f --- /dev/null +++ b/docs/html/search/functions_72.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['ramp',['Ramp',['../classfl_1_1Ramp.html#aa6ed7deef8f2c02469053e0c72cbec2f',1,'fl::Ramp']]], + ['range',['range',['../classfl_1_1Variable.html#aee4811348bc71b992b51bb8b21bf7d0f',1,'fl::Variable']]], + ['rectangle',['Rectangle',['../classfl_1_1Rectangle.html#ab40019b91b2f1711510cebd2872ec2ae',1,'fl::Rectangle']]], + ['registerclass',['registerClass',['../classfl_1_1Factory.html#a7c1a3ab1b264eec096a25bb321fa106a',1,'fl::Factory']]], + ['removehedge',['removeHedge',['../classfl_1_1Engine.html#aedaccca7f6bf3bd39e0f552d2b5e2804',1,'fl::Engine::removeHedge(int index)'],['../classfl_1_1Engine.html#a0ade8efb4d5def737107beda95cd194c',1,'fl::Engine::removeHedge(const std::string &name)']]], + ['removeinputvariable',['removeInputVariable',['../classfl_1_1Engine.html#ab2543f14f73a53e81cd66fb572a89e33',1,'fl::Engine::removeInputVariable(int index)'],['../classfl_1_1Engine.html#a8cd360e285096ee2b0c526b38d64f76d',1,'fl::Engine::removeInputVariable(const std::string &name)']]], + ['removeoutputvariable',['removeOutputVariable',['../classfl_1_1Engine.html#aa09efb6fdcbf04b7a4d055af57a28bf6',1,'fl::Engine::removeOutputVariable(int index)'],['../classfl_1_1Engine.html#ad9abfd28ae7b029a3dddb9683dcef13b',1,'fl::Engine::removeOutputVariable(const std::string &name)']]], + ['removerule',['removeRule',['../classfl_1_1RuleBlock.html#a93a45335aa50f2033fec5146ab1553f9',1,'fl::RuleBlock']]], + ['removeruleblock',['removeRuleBlock',['../classfl_1_1Engine.html#a7c455e9bc27ea5befe893b0f9d6b978b',1,'fl::Engine::removeRuleBlock(int index)'],['../classfl_1_1Engine.html#a7c419900a49065d34bdf09c7cc9c3360',1,'fl::Engine::removeRuleBlock(const std::string &name)']]], + ['removeterm',['removeTerm',['../classfl_1_1Accumulated.html#afd7642b314f4fef57c219dcc002f89de',1,'fl::Accumulated::removeTerm()'],['../classfl_1_1Variable.html#aa6ec7f7e00faa114267edf386fde48f9',1,'fl::Variable::removeTerm()']]], + ['repeat',['repeat',['../classfl_1_1Operation.html#a68bc7cb26cc0ef3f21643e628d5f5fc5',1,'fl::Operation']]], + ['restart',['restart',['../classfl_1_1Engine.html#aaab1df1f00cf869177d9b89c1d959547',1,'fl::Engine']]], + ['rule',['Rule',['../classfl_1_1Rule.html#afea11e9e7ae8634cfadeed23e3e7a941',1,'fl::Rule']]], + ['ruleblock',['RuleBlock',['../classfl_1_1RuleBlock.html#ace0c87fdaa860f31bc5c7964b47c2ebc',1,'fl::RuleBlock']]], + ['ruleblocks',['ruleBlocks',['../classfl_1_1Engine.html#a0b00a2479143189023bdbf92e6f1275b',1,'fl::Engine']]], + ['rules',['rules',['../classfl_1_1RuleBlock.html#aa64fb71dae713d530c02cd168d47910d',1,'fl::RuleBlock']]] +]; diff --git a/docs/html/search/functions_73.html b/docs/html/search/functions_73.html new file mode 100644 index 0000000..c80660e --- /dev/null +++ b/docs/html/search/functions_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_73.js b/docs/html/search/functions_73.js new file mode 100644 index 0000000..b41a384 --- /dev/null +++ b/docs/html/search/functions_73.js @@ -0,0 +1,77 @@ +var searchData= +[ + ['scale',['scale',['../classfl_1_1Operation.html#a5bfb04163bcf6cdb7859f0f4a8bb9fd5',1,'fl::Operation']]], + ['set',['set',['../classfl_1_1Linear.html#a062a9df614c8438b5e67d00ff141bb75',1,'fl::Linear::set(const std::vector< scalar > &coefficients, const std::vector< InputVariable * > &inputVariables)'],['../classfl_1_1Linear.html#aa95cffe598a7b14f5cb3a8089d6ae4f5',1,'fl::Linear::set(const std::vector< scalar > &coefficients, const std::vector< const InputVariable * > &inputVariables)']]], + ['seta',['setA',['../classfl_1_1Trapezoid.html#a9520c5972c8ef7bf4efa1bc5b8924a6f',1,'fl::Trapezoid::setA()'],['../classfl_1_1Triangle.html#a68beb6cf6eedb9e7e939fd1780cf535a',1,'fl::Triangle::setA()']]], + ['setaccumulation',['setAccumulation',['../classfl_1_1Accumulated.html#a336f8ce1a931c18e67f157ce774080f8',1,'fl::Accumulated']]], + ['setactivation',['setActivation',['../classfl_1_1RuleBlock.html#ae61d6c0e0abf753e8f2387dbeb9b96f8',1,'fl::RuleBlock::setActivation()'],['../classfl_1_1Thresholded.html#aa1c213432f49be607b7476e7bec02abe',1,'fl::Thresholded::setActivation()']]], + ['setantecedent',['setAntecedent',['../classfl_1_1Rule.html#a135a6f061eeb5ebe7686898850a144d3',1,'fl::Rule']]], + ['setb',['setB',['../classfl_1_1Trapezoid.html#abf9b4cdd06a3b3eb39536868e63589dd',1,'fl::Trapezoid::setB()'],['../classfl_1_1Triangle.html#a60e18f64d3adffc3093b08af105c3449',1,'fl::Triangle::setB()']]], + ['setbottomleft',['setBottomLeft',['../classfl_1_1PiShape.html#a8bfe56c1a00846040ea02f564b004723',1,'fl::PiShape']]], + ['setbottomright',['setBottomRight',['../classfl_1_1PiShape.html#aa3529d73d2f6669aac49e16bef3ba113',1,'fl::PiShape']]], + ['setc',['setC',['../classfl_1_1Trapezoid.html#af480c59dbc145e11ff0478ac25b57385',1,'fl::Trapezoid::setC()'],['../classfl_1_1Triangle.html#a0d34aba217c2c47ad2066244e85502f3',1,'fl::Triangle::setC()']]], + ['setcenter',['setCenter',['../classfl_1_1Bell.html#aa9fa72582f52c5f77199255fbb7eb143',1,'fl::Bell']]], + ['setconjunction',['setConjunction',['../classfl_1_1RuleBlock.html#a0063308d826b58c93e794ef7fb2e6aea',1,'fl::RuleBlock']]], + ['setconsequent',['setConsequent',['../classfl_1_1Rule.html#acbacb0365400543997388562eb2a8099',1,'fl::Rule']]], + ['setd',['setD',['../classfl_1_1Trapezoid.html#a70eb451c7aad4395ec47701f100ca5a6',1,'fl::Trapezoid']]], + ['setdebug',['setDebug',['../classfl_1_1fuzzylite.html#a7ba42a4547287cf82376139c8c84a3ac',1,'fl::fuzzylite']]], + ['setdecimals',['setDecimals',['../classfl_1_1fuzzylite.html#ad2cc6e7674b83d2d81f7273892efd655',1,'fl::fuzzylite']]], + ['setdefaultvalue',['setDefaultValue',['../classfl_1_1OutputVariable.html#a94bc9e87a1682ad448d5112df2112e2b',1,'fl::OutputVariable']]], + ['setdefuzzifier',['setDefuzzifier',['../classfl_1_1FactoryManager.html#a6dfc605dcd7542e15c7489d41a8ad891',1,'fl::FactoryManager::setDefuzzifier()'],['../classfl_1_1OutputVariable.html#af77232e3528f0d2a51fa08a19eb8885a',1,'fl::OutputVariable::setDefuzzifier()']]], + ['setdisjunction',['setDisjunction',['../classfl_1_1RuleBlock.html#adaa02f1efdbb3769869df13802445f6b',1,'fl::RuleBlock']]], + ['setenabled',['setEnabled',['../classfl_1_1RuleBlock.html#a2ec9c0522dae7ab556a8668d56f50092',1,'fl::RuleBlock::setEnabled()'],['../classfl_1_1Variable.html#ab141b7c2a05488b7a92697a80baf298a',1,'fl::Variable::setEnabled()']]], + ['setend',['setEnd',['../classfl_1_1Ramp.html#a75fad92d5146124ae5c25d4c4695ba81',1,'fl::Ramp::setEnd()'],['../classfl_1_1Rectangle.html#a1421c1c000bc6b99dc8a8ce38f3e8e5a',1,'fl::Rectangle::setEnd()'],['../classfl_1_1SShape.html#aad2d8e8c1f6c68079be1cff2453cb20d',1,'fl::SShape::setEnd()'],['../classfl_1_1ZShape.html#a0fd3d0fa1a33f23b2c89a2c3b658cc09',1,'fl::ZShape::setEnd()']]], + ['setengine',['setEngine',['../classfl_1_1Function.html#a243bf3006438367a6c4fc06f3e286fa2',1,'fl::Function']]], + ['setfalling',['setFalling',['../classfl_1_1SigmoidDifference.html#a89001909ecb959b8b666629ea05522e2',1,'fl::SigmoidDifference::setFalling()'],['../classfl_1_1SigmoidProduct.html#a728a798b46142bda0cf669a71d0078f0',1,'fl::SigmoidProduct::setFalling()']]], + ['setformula',['setFormula',['../classfl_1_1Function.html#a03eeaf1ff7ccfa41e482731f687faeeb',1,'fl::Function']]], + ['sethedge',['setHedge',['../classfl_1_1FactoryManager.html#a6d3b72825d0832d52949e4d1f603699e',1,'fl::FactoryManager']]], + ['setindent',['setIndent',['../classfl_1_1FclExporter.html#ae256ee281c36e58bb8a1492b54d6de58',1,'fl::FclExporter::setIndent()'],['../classfl_1_1FllExporter.html#a98a633468756e7756ba12ffe2d6de3ff',1,'fl::FllExporter::setIndent()']]], + ['setinflection',['setInflection',['../classfl_1_1Sigmoid.html#a30efb9dd268ec57bcd462fe231fd3835',1,'fl::Sigmoid']]], + ['setinputvalue',['setInputValue',['../classfl_1_1Engine.html#aab610c741f61f413d74017d2cf65f002',1,'fl::Engine::setInputValue()'],['../classfl_1_1InputVariable.html#ab80f6c5816de487663b97e1e38e3b8cf',1,'fl::InputVariable::setInputValue()']]], + ['setlastvalidoutput',['setLastValidOutput',['../classfl_1_1OutputVariable.html#a8e6591c3cb06b16464cff84994d0f8dc',1,'fl::OutputVariable']]], + ['setleft',['setLeft',['../classfl_1_1SigmoidDifference.html#aaaf6d5dc80dba26bef5c4afacabebc72',1,'fl::SigmoidDifference::setLeft()'],['../classfl_1_1SigmoidProduct.html#affba33a2e2899c829f5c3e4d18aecadc',1,'fl::SigmoidProduct::setLeft()']]], + ['setlockoutputrange',['setLockOutputRange',['../classfl_1_1OutputVariable.html#a122de7e1ebaceb865958223d98a77fd2',1,'fl::OutputVariable']]], + ['setlockvalidoutput',['setLockValidOutput',['../classfl_1_1OutputVariable.html#adbb824cc33473be7299ba289e65ddf1f',1,'fl::OutputVariable']]], + ['setlogging',['setLogging',['../classfl_1_1fuzzylite.html#a537521f5a55a706e2b0c5d8cddfd842a',1,'fl::fuzzylite']]], + ['setmacheps',['setMachEps',['../classfl_1_1fuzzylite.html#ad30f34196fccf39d165b19f96cab3dc8',1,'fl::fuzzylite']]], + ['setmaximum',['setMaximum',['../classfl_1_1FldExporter.html#a46c654ab86fc338f8574f2e6ea2fb413',1,'fl::FldExporter::setMaximum()'],['../classfl_1_1Accumulated.html#a62b067a72e5002d0306cf579371a341b',1,'fl::Accumulated::setMaximum()'],['../classfl_1_1OutputVariable.html#a3f9dd085069cee0c226be814ce1b4fc6',1,'fl::OutputVariable::setMaximum()'],['../classfl_1_1Variable.html#aabf0b9cebd1361271e04a602e4b21c92',1,'fl::Variable::setMaximum()']]], + ['setmean',['setMean',['../classfl_1_1Gaussian.html#a35273744e774551c342d061c44437680',1,'fl::Gaussian']]], + ['setmeana',['setMeanA',['../classfl_1_1GaussianProduct.html#a2be8509987e2e2d8e0dc388fe2009aab',1,'fl::GaussianProduct']]], + ['setmeanb',['setMeanB',['../classfl_1_1GaussianProduct.html#a299baa7ccb7368d1aea50a4e88023988',1,'fl::GaussianProduct']]], + ['setminimum',['setMinimum',['../classfl_1_1Accumulated.html#a0ef8d87d708683434bde5e9509cab2ae',1,'fl::Accumulated::setMinimum()'],['../classfl_1_1OutputVariable.html#af8f150c047b96f26e7ee1be522d18d15',1,'fl::OutputVariable::setMinimum()'],['../classfl_1_1Variable.html#a9ae979c3dc2e7161c7a79d89700c4b58',1,'fl::Variable::setMinimum()']]], + ['setname',['setName',['../classfl_1_1Engine.html#ab1aa8ab2f8f6375f713b42d6fb36ca1a',1,'fl::Engine::setName()'],['../classfl_1_1RuleBlock.html#a22bd9d7799508a81007549203996634f',1,'fl::RuleBlock::setName()'],['../classfl_1_1Term.html#a54bd381b285d0017ba82a022a113aaf5',1,'fl::Term::setName()'],['../classfl_1_1Variable.html#aa9482cef47139253fd25a7ed02538e5e',1,'fl::Variable::setName()']]], + ['setrange',['setRange',['../classfl_1_1Variable.html#a643c97119900221fdd7c8e72a0be6ccf',1,'fl::Variable']]], + ['setresolution',['setResolution',['../classfl_1_1IntegralDefuzzifier.html#ae95e4a62f1443fd56e6b0a6aa72ae7c9',1,'fl::IntegralDefuzzifier']]], + ['setright',['setRight',['../classfl_1_1SigmoidDifference.html#a6ac7371a547ce2d21f913fcaba000dc1',1,'fl::SigmoidDifference::setRight()'],['../classfl_1_1SigmoidProduct.html#ae5f48d14eb5213c8cddab30d19a69443',1,'fl::SigmoidProduct::setRight()']]], + ['setrising',['setRising',['../classfl_1_1SigmoidDifference.html#ad118c55132e218b17e156ee5e2e48898',1,'fl::SigmoidDifference::setRising()'],['../classfl_1_1SigmoidProduct.html#a06246685478bd13b5935660aa273bf54',1,'fl::SigmoidProduct::setRising()']]], + ['setseparator',['setSeparator',['../classfl_1_1FldExporter.html#a98c42aea98c09d15b7c5c6b8b48e3c42',1,'fl::FldExporter::setSeparator()'],['../classfl_1_1FllExporter.html#ad61fc9d9ddae0fe112af2ef15b573ccd',1,'fl::FllExporter::setSeparator()'],['../classfl_1_1FllImporter.html#a5e73ac41fb4d1423c3d90cb3a90ec2aa',1,'fl::FllImporter::setSeparator()']]], + ['setslope',['setSlope',['../classfl_1_1Bell.html#af04aa0bb8c014bb9dbe148e670029ac4',1,'fl::Bell::setSlope()'],['../classfl_1_1Sigmoid.html#a68506ad83b40be87aa62fef391f1bfcf',1,'fl::Sigmoid::setSlope()']]], + ['setsnorm',['setSnorm',['../classfl_1_1FactoryManager.html#ae5d6541dc878760638c244c5ec34ddde',1,'fl::FactoryManager']]], + ['setstandarddeviation',['setStandardDeviation',['../classfl_1_1Gaussian.html#adfbe578e478af2a0b646f8ce7e326c59',1,'fl::Gaussian']]], + ['setstandarddeviationa',['setStandardDeviationA',['../classfl_1_1GaussianProduct.html#a2f28afe006e31b0d5e78d8026654b016',1,'fl::GaussianProduct']]], + ['setstandarddeviationb',['setStandardDeviationB',['../classfl_1_1GaussianProduct.html#a650bcc4bf3a59bdf315806ca0699e626',1,'fl::GaussianProduct']]], + ['setstart',['setStart',['../classfl_1_1Ramp.html#aad37fbd6f4bfdf7d0e6f588fdc0d554c',1,'fl::Ramp::setStart()'],['../classfl_1_1Rectangle.html#a9a1999b425dbfda2067bf80d3d305c9b',1,'fl::Rectangle::setStart()'],['../classfl_1_1SShape.html#aef70e37103979595a6abceefe24de522',1,'fl::SShape::setStart()'],['../classfl_1_1ZShape.html#aacb9f39a1d26b9c50e43908115ddc4b9',1,'fl::ZShape::setStart()']]], + ['setterm',['setTerm',['../classfl_1_1FactoryManager.html#a15cbc26ca18266f48d69a61c3a5669fd',1,'fl::FactoryManager::setTerm()'],['../classfl_1_1Thresholded.html#ae22fd23d510715a4b300c730ae499f99',1,'fl::Thresholded::setTerm()']]], + ['settext',['setText',['../classfl_1_1Rule.html#aeaba5fc5afe18eb656d95358120033f7',1,'fl::Rule']]], + ['setthreshold',['setThreshold',['../classfl_1_1Thresholded.html#a9501586c7e7001b3999f1274c958a380',1,'fl::Thresholded']]], + ['settnorm',['setTnorm',['../classfl_1_1FactoryManager.html#a8bc18de05f499f5c3792c53b9bc792e1',1,'fl::FactoryManager']]], + ['settopleft',['setTopLeft',['../classfl_1_1PiShape.html#a9e19511ff789a1b9b4587f4176bda765',1,'fl::PiShape']]], + ['settopright',['setTopRight',['../classfl_1_1PiShape.html#ab9e95a7ff467a1df9a543ad8a03cab3e',1,'fl::PiShape']]], + ['setvalue',['setValue',['../classfl_1_1Constant.html#a06e65296b22772b0c7f6f800e287ef5e',1,'fl::Constant']]], + ['setweight',['setWeight',['../classfl_1_1Rule.html#a1ed414c8b6c9fb759f7fb31e4e600e9d',1,'fl::Rule']]], + ['setwhat',['setWhat',['../classfl_1_1Exception.html#aa8626724f221a050a1c4f7130392fcbf',1,'fl::Exception']]], + ['setwidth',['setWidth',['../classfl_1_1Bell.html#ac603bb9f288f046396065531002c2289',1,'fl::Bell']]], + ['sigmoid',['Sigmoid',['../classfl_1_1Sigmoid.html#a7ac49ce947a1f1e7c983300470c717ea',1,'fl::Sigmoid']]], + ['sigmoiddifference',['SigmoidDifference',['../classfl_1_1SigmoidDifference.html#a19c58fd4be7f89cdb74642d24f72c4e2',1,'fl::SigmoidDifference']]], + ['sigmoidproduct',['SigmoidProduct',['../classfl_1_1SigmoidProduct.html#a372515ab559efe0971d93be1fd450c9a',1,'fl::SigmoidProduct']]], + ['signalhandler',['signalHandler',['../classfl_1_1Exception.html#a79d8db2ee6a5bb5e09e946d8e614668e',1,'fl::Exception']]], + ['smallestofmaximum',['SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html#a6b7101728e38f14ae134e0637da053cc',1,'fl::SmallestOfMaximum']]], + ['snorm',['snorm',['../classfl_1_1FactoryManager.html#a1a194828b4c6c6e50b8e050917def9b3',1,'fl::FactoryManager::snorm()'],['../classfl_1_1FisImporter.html#ac7d0266c915104de96c5fc3b0f428920',1,'fl::FisImporter::snorm()'],['../classfl_1_1SNorm.html#a57aaa46c8866d1bb249390b3b4c144af',1,'fl::SNorm::SNorm()']]], + ['snormfactory',['SNormFactory',['../classfl_1_1SNormFactory.html#a1d6357b8589db16e37602998735b9151',1,'fl::SNormFactory']]], + ['sort',['sort',['../classfl_1_1Variable.html#a9fd85e7de334e33318cde13f93f4d5e0',1,'fl::Variable']]], + ['space',['space',['../classfl_1_1Function.html#a2afc9a85368f4a3bfed8d4850ebeb437',1,'fl::Function']]], + ['split',['split',['../classfl_1_1Operation.html#aa3889ff75f5738822785d237d6390a6a',1,'fl::Operation']]], + ['sshape',['SShape',['../classfl_1_1SShape.html#ab49faed746f299e6b6c194e070637f2b',1,'fl::SShape']]], + ['str',['str',['../classfl_1_1Operation.html#a24a8b09a91b15766261d2929125d8069',1,'fl::Operation::str(T x, int decimals=fuzzylite::decimals())'],['../classfl_1_1Operation.html#aae38b451d0206cdd3d5e8ae6632a69cf',1,'fl::Operation::str(T x, int decimals)'],['../classfl_1_1Operation.html#a3a9ae8d5c79846d8ea7efef9242990e0',1,'fl::Operation::str(const std::string &x, int precision)']]], + ['subtract',['subtract',['../classfl_1_1Operation.html#a013681c3803db34e8ea86e23d31659a7',1,'fl::Operation']]] +]; diff --git a/docs/html/search/functions_74.html b/docs/html/search/functions_74.html new file mode 100644 index 0000000..1605901 --- /dev/null +++ b/docs/html/search/functions_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_74.js b/docs/html/search/functions_74.js new file mode 100644 index 0000000..07fdea7 --- /dev/null +++ b/docs/html/search/functions_74.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['takagisugeno',['takagiSugeno',['../classfl_1_1Console.html#a948fd183ea62decbd166af3d98a27b68',1,'fl::Console']]], + ['term',['term',['../classfl_1_1FactoryManager.html#a0f50385692a67eab5d5ef5664570f225',1,'fl::FactoryManager::term()'],['../classfl_1_1Term.html#a62dc23ac6846823fbfd38c1d6cbc7040',1,'fl::Term::Term()']]], + ['termfactory',['TermFactory',['../classfl_1_1TermFactory.html#a9029aa048f82f8474c1fbb834477bbeb',1,'fl::TermFactory']]], + ['terminate',['terminate',['../classfl_1_1Exception.html#abb466081bb58ff8ec77ed18837d98c80',1,'fl::Exception']]], + ['terms',['terms',['../classfl_1_1Accumulated.html#a5bdf5ea19e6cecc1641812f2f2265079',1,'fl::Accumulated::terms()'],['../classfl_1_1Variable.html#aef34088e135f22788ffedeb338ce580d',1,'fl::Variable::terms()']]], + ['thenkeyword',['thenKeyword',['../classfl_1_1Rule.html#a64a4724bc25ff81a788df4cfacbaca07',1,'fl::Rule']]], + ['thresholded',['Thresholded',['../classfl_1_1Thresholded.html#a390708b1f0f0f71a5b0ecbebcfe3d533',1,'fl::Thresholded']]], + ['tnorm',['TNorm',['../classfl_1_1TNorm.html#a1fdc4f59a4c6398c87343a68c4c21222',1,'fl::TNorm::TNorm()'],['../classfl_1_1FactoryManager.html#a83b695b1c664038b38f0fcf366ca4632',1,'fl::FactoryManager::tnorm()'],['../classfl_1_1FisImporter.html#a5dc8ba46e949ceb3dcff619c77e77086',1,'fl::FisImporter::tnorm()']]], + ['tnormfactory',['TNormFactory',['../classfl_1_1TNormFactory.html#ad2f476c6d252a4b23d2a007cfd63840a',1,'fl::TNormFactory']]], + ['toinfix',['toInfix',['../classfl_1_1Antecedent.html#a640d2a6ddf95888caae813c6b52b888e',1,'fl::Antecedent::toInfix()'],['../structfl_1_1Function_1_1Node.html#acfbfbe7695d1c55c7b7db22737900b73',1,'fl::Function::Node::toInfix()']]], + ['topostfix',['toPostfix',['../classfl_1_1Antecedent.html#a7af43cf7a789faecc8d5f5af0b979826',1,'fl::Antecedent::toPostfix()'],['../structfl_1_1Function_1_1Node.html#a149a3a2a32108642885610ef45f17a08',1,'fl::Function::Node::toPostfix()'],['../classfl_1_1Function.html#ad58b9d3ca96c588dfd7001a35f575f45',1,'fl::Function::toPostfix()']]], + ['toprefix',['toPrefix',['../classfl_1_1Antecedent.html#ae878e411cf3694a1eb35f1d5ce66eff8',1,'fl::Antecedent::toPrefix()'],['../structfl_1_1Function_1_1Node.html#ac223edba05d5ffe69cda42c358aff9af',1,'fl::Function::Node::toPrefix()']]], + ['toscalar',['toScalar',['../classfl_1_1Operation.html#a0a61cdee4e1d67889fb8614ded1af1d4',1,'fl::Operation']]], + ['tostring',['toString',['../classfl_1_1Engine.html#a6899dd3759b1046152d4df4ff0650d9b',1,'fl::Engine::toString()'],['../classfl_1_1CppExporter.html#a87230aba083ceaf79039f019aaf522ef',1,'fl::CppExporter::toString(const Engine *engine) const '],['../classfl_1_1CppExporter.html#a76425dec96f525c34e1d866251691083',1,'fl::CppExporter::toString(const InputVariable *inputVariable, const Engine *engine) const '],['../classfl_1_1CppExporter.html#abd3167e16610d23bc8de551a5a5153b2',1,'fl::CppExporter::toString(const OutputVariable *outputVariable, const Engine *engine) const '],['../classfl_1_1CppExporter.html#acebe9d5514eef5082fe159b9d5227f5a',1,'fl::CppExporter::toString(const RuleBlock *ruleBlock, const Engine *engine) const '],['../classfl_1_1CppExporter.html#a2d0088f77d76ed43583bd6e0397172d0',1,'fl::CppExporter::toString(scalar value) const '],['../classfl_1_1CppExporter.html#a322a3988ae5979f49151dcc9936ca2b6',1,'fl::CppExporter::toString(const Hedge *hedge) const '],['../classfl_1_1CppExporter.html#ac4e09fd612c8f44efd50567721d075d2',1,'fl::CppExporter::toString(const Term *term) const '],['../classfl_1_1CppExporter.html#afd018e5e813a1bc846dcbf13b6ce1ccf',1,'fl::CppExporter::toString(const Norm *op) const '],['../classfl_1_1CppExporter.html#a47f209db0dfed0a607e776ac247c0734',1,'fl::CppExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1Exporter.html#a4532bc9161aa197ecbb2223974f43136',1,'fl::Exporter::toString()'],['../classfl_1_1FclExporter.html#af001ef5820ca086eee179ccfefcc32d2',1,'fl::FclExporter::toString(const Engine *engine) const '],['../classfl_1_1FclExporter.html#a89882e3c7d382b12d6ad018e9aa7d2db',1,'fl::FclExporter::toString(const TNorm *tnorm) const '],['../classfl_1_1FclExporter.html#a2217ded0027c175476672f60a20e74e9',1,'fl::FclExporter::toString(const SNorm *snorm) const '],['../classfl_1_1FclExporter.html#a316cd5181e2024fae9997745cfc8ac33',1,'fl::FclExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FclExporter.html#aab0d463ecb759bccbf2d88a08d6eda6a',1,'fl::FclExporter::toString(const Term *term) const '],['../classfl_1_1FisExporter.html#a99519ab6acc89c845dd93b4ed8d3b040',1,'fl::FisExporter::toString(const Engine *engine) const '],['../classfl_1_1FisExporter.html#a2a1446ffbfec0bcfb85e708e108e41da',1,'fl::FisExporter::toString(const TNorm *tnorm) const '],['../classfl_1_1FisExporter.html#a3639ee279c13b289215e2f010d7b0317',1,'fl::FisExporter::toString(const SNorm *snorm) const '],['../classfl_1_1FisExporter.html#a2d9d3bba19f92fd9c4e2dfbe3f57c1f9',1,'fl::FisExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FisExporter.html#a5c2629c979ea16c2539b77bf7fae4be2',1,'fl::FisExporter::toString(const Term *term) const '],['../classfl_1_1FldExporter.html#a006a568997e2111bab3ab05cda5e92d7',1,'fl::FldExporter::toString()'],['../classfl_1_1FllExporter.html#a173b52acdd66b05f7d2ff9f9d3a77034',1,'fl::FllExporter::toString(const Engine *engine) const '],['../classfl_1_1FllExporter.html#a51a3cd0489b0525764d660aeea5b4d8e',1,'fl::FllExporter::toString(const Variable *variable) const '],['../classfl_1_1FllExporter.html#a4e1b33a482aa35baffcad435db58f101',1,'fl::FllExporter::toString(const InputVariable *inputVariable) const '],['../classfl_1_1FllExporter.html#a1963248233121774fadf9b470426b1ab',1,'fl::FllExporter::toString(const OutputVariable *outputVariable) const '],['../classfl_1_1FllExporter.html#ae1ae84e6bb6e4089a5c72ebd7a7a7792',1,'fl::FllExporter::toString(const RuleBlock *ruleBlock) const '],['../classfl_1_1FllExporter.html#a51df80793d85e99767482d63fd3bd295',1,'fl::FllExporter::toString(const Rule *rule) const '],['../classfl_1_1FllExporter.html#a9c801344e238cb062adeed29cf72d8b7',1,'fl::FllExporter::toString(const Norm *norm) const '],['../classfl_1_1FllExporter.html#a79fa45d5098091e5c5c2b40aaec12b1a',1,'fl::FllExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1FllExporter.html#ad725c500e88aeaa14a03760027a608a2',1,'fl::FllExporter::toString(const Term *term) const '],['../classfl_1_1JavaExporter.html#a94a80476fdc585b6b23a7b3627ce9d66',1,'fl::JavaExporter::toString(const Engine *engine) const '],['../classfl_1_1JavaExporter.html#aa58115648623ced606d0eba39ab27c78',1,'fl::JavaExporter::toString(const InputVariable *inputVariable, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#aa3178924725d70c06fe0a6e93b1e3238',1,'fl::JavaExporter::toString(const OutputVariable *outputVariable, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#ae8043db7b3be3720456396d5ea1f1856',1,'fl::JavaExporter::toString(const RuleBlock *ruleBlock, const Engine *engine) const '],['../classfl_1_1JavaExporter.html#af7d8739f58620e3398e60ab818334114',1,'fl::JavaExporter::toString(const Term *term) const '],['../classfl_1_1JavaExporter.html#a4308b8e8efe759c20ff1cc9a1287a003',1,'fl::JavaExporter::toString(const Defuzzifier *defuzzifier) const '],['../classfl_1_1JavaExporter.html#a354872e403512edbaced4d8f865a965c',1,'fl::JavaExporter::toString(const Norm *norm) const '],['../classfl_1_1JavaExporter.html#aeff64c84585ae1dd69751e2a86ba9acd',1,'fl::JavaExporter::toString(scalar value) const '],['../classfl_1_1Antecedent.html#a56ee133cd72dba23a17c366e99a0e863',1,'fl::Antecedent::toString()'],['../classfl_1_1Consequent.html#a5bec22a386abfa9de6f22f9697933cec',1,'fl::Consequent::toString()'],['../classfl_1_1Expression.html#a80b60d4107b7604bb6f56976321c6d30',1,'fl::Expression::toString()'],['../classfl_1_1Proposition.html#a4fc5d8e5b865b13faccfbf6f3983bc87',1,'fl::Proposition::toString()'],['../classfl_1_1Operator.html#a324bf32a265ad994f839da41399d44d4',1,'fl::Operator::toString()'],['../classfl_1_1Rule.html#adfa6e97f1301e0d72292c6f08b9123af',1,'fl::Rule::toString()'],['../classfl_1_1RuleBlock.html#a94435fd1ce2df4df3ba5bab4f991ade6',1,'fl::RuleBlock::toString()'],['../structfl_1_1Function_1_1Element.html#a399e44e0aca38be2ea561a8ac3805d9f',1,'fl::Function::Element::toString()'],['../structfl_1_1Function_1_1Operator.html#a34152f4040c7a69f78842c7ad211e725',1,'fl::Function::Operator::toString()'],['../structfl_1_1Function_1_1BuiltInFunction.html#a2d5f12900baee07457ee39422d926929',1,'fl::Function::BuiltInFunction::toString()'],['../structfl_1_1Function_1_1Node.html#a84c26b9bde409b2c33620bc52d1e7ab5',1,'fl::Function::Node::toString()'],['../classfl_1_1Term.html#ad5e7a6c98f286c05f88bf89adac1ca92',1,'fl::Term::toString()'],['../classfl_1_1InputVariable.html#a40085be4ae61578ff1ddcf53f012834e',1,'fl::InputVariable::toString()'],['../classfl_1_1OutputVariable.html#a1791942e79c06f0df511329078a4fa8f',1,'fl::OutputVariable::toString()'],['../classfl_1_1Variable.html#acc8e2aada76ea676684b81bb2b5e12c6',1,'fl::Variable::toString()']]], + ['towriter',['toWriter',['../classfl_1_1FldExporter.html#a51e75da5a6bc7ff06c30f8a3aed263d1',1,'fl::FldExporter']]], + ['translate',['translate',['../classfl_1_1FisExporter.html#adc49761903862ad0f676242eead90273',1,'fl::FisExporter']]], + ['translateproposition',['translateProposition',['../classfl_1_1FisImporter.html#a413d8eb624516006fdb21a55084ea94a',1,'fl::FisImporter']]], + ['trapezoid',['Trapezoid',['../classfl_1_1Trapezoid.html#a4dc77e97a1c3135d08b5d5ae9f32ed07',1,'fl::Trapezoid']]], + ['triangle',['Triangle',['../classfl_1_1Triangle.html#adf8fd9bd87e88f606cc29daab17d1d75',1,'fl::Triangle']]], + ['trim',['trim',['../classfl_1_1Operation.html#a9d43cae361f3ad708316caec6c35ba17',1,'fl::Operation']]], + ['tsukamoto',['tsukamoto',['../classfl_1_1Tsukamoto.html#a0238b45188674d7fa3e45f09ad016343',1,'fl::Tsukamoto']]] +]; diff --git a/docs/html/search/functions_75.html b/docs/html/search/functions_75.html new file mode 100644 index 0000000..a6c28fa --- /dev/null +++ b/docs/html/search/functions_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_75.js b/docs/html/search/functions_75.js new file mode 100644 index 0000000..69a5732 --- /dev/null +++ b/docs/html/search/functions_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['usage',['usage',['../classfl_1_1Console.html#afb3c16a3e549e43207d672f25db3e4c5',1,'fl::Console']]] +]; diff --git a/docs/html/search/functions_76.html b/docs/html/search/functions_76.html new file mode 100644 index 0000000..e5263cc --- /dev/null +++ b/docs/html/search/functions_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_76.js b/docs/html/search/functions_76.js new file mode 100644 index 0000000..a7d1eaf --- /dev/null +++ b/docs/html/search/functions_76.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['variable',['Variable',['../classfl_1_1Variable.html#ad24d35dc5e23847dd520ab35dd47b66b',1,'fl::Variable::Variable(const std::string &name="", scalar minimum=-fl::inf, scalar maximum=fl::inf)'],['../classfl_1_1Variable.html#ae2f77db0362e53cfa67decbc05ace0b8',1,'fl::Variable::Variable(const Variable &copy)']]], + ['version',['version',['../classfl_1_1fuzzylite.html#a8eb9af065085aed7ed5f0fb187c8b43f',1,'fl::fuzzylite']]] +]; diff --git a/docs/html/search/functions_77.html b/docs/html/search/functions_77.html new file mode 100644 index 0000000..add7295 --- /dev/null +++ b/docs/html/search/functions_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_77.js b/docs/html/search/functions_77.js new file mode 100644 index 0000000..a0f3332 --- /dev/null +++ b/docs/html/search/functions_77.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['weightedaverage',['WeightedAverage',['../classfl_1_1WeightedAverage.html#a69cb72ae04264d438690bd0d23f13dd4',1,'fl::WeightedAverage']]], + ['weightedsum',['WeightedSum',['../classfl_1_1WeightedSum.html#a98a8278e11abb3a9dea58e9e9d75c6ba',1,'fl::WeightedSum']]], + ['what',['what',['../classfl_1_1Exception.html#a1f606bf37e5cd79274f606dd8b8697cf',1,'fl::Exception']]], + ['withkeyword',['withKeyword',['../classfl_1_1Rule.html#a0a9cb5b41edddb24376b9d76e276df1a',1,'fl::Rule']]] +]; diff --git a/docs/html/search/functions_7a.html b/docs/html/search/functions_7a.html new file mode 100644 index 0000000..e23b42f --- /dev/null +++ b/docs/html/search/functions_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_7a.js b/docs/html/search/functions_7a.js new file mode 100644 index 0000000..c4d1612 --- /dev/null +++ b/docs/html/search/functions_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zshape',['ZShape',['../classfl_1_1ZShape.html#a7560999842346f564f689a427b9f2114',1,'fl::ZShape']]] +]; diff --git a/docs/html/search/functions_7e.html b/docs/html/search/functions_7e.html new file mode 100644 index 0000000..45c26c5 --- /dev/null +++ b/docs/html/search/functions_7e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_7e.js b/docs/html/search/functions_7e.js new file mode 100644 index 0000000..d479294 --- /dev/null +++ b/docs/html/search/functions_7e.js @@ -0,0 +1,64 @@ +var searchData= +[ + ['_7eaccumulated',['~Accumulated',['../classfl_1_1Accumulated.html#a07ed6f18e909e52e788e1355b4a4f954',1,'fl::Accumulated']]], + ['_7eantecedent',['~Antecedent',['../classfl_1_1Antecedent.html#a589174fb0b4068f6d747cf4edf4899fe',1,'fl::Antecedent']]], + ['_7ebell',['~Bell',['../classfl_1_1Bell.html#a70b83dc932935491affbfb6cce75f899',1,'fl::Bell']]], + ['_7econsequent',['~Consequent',['../classfl_1_1Consequent.html#a69b0e225945376db67cfb288206e2d3e',1,'fl::Consequent']]], + ['_7econstant',['~Constant',['../classfl_1_1Constant.html#a046ec6627286462ec829570f95759545',1,'fl::Constant']]], + ['_7ecppexporter',['~CppExporter',['../classfl_1_1CppExporter.html#a4470fb4b7889c9f6c8171d98a149d5f3',1,'fl::CppExporter']]], + ['_7edefuzzifier',['~Defuzzifier',['../classfl_1_1Defuzzifier.html#a9c3115230b182b30f7a46aa2876e9662',1,'fl::Defuzzifier']]], + ['_7edefuzzifierfactory',['~DefuzzifierFactory',['../classfl_1_1DefuzzifierFactory.html#af20e6ca540bf6f6b7f121f53a41645c3',1,'fl::DefuzzifierFactory']]], + ['_7ediscrete',['~Discrete',['../classfl_1_1Discrete.html#af129934d2b820f343c4918a556f13d13',1,'fl::Discrete']]], + ['_7eelement',['~Element',['../structfl_1_1Function_1_1Element.html#a0e94e77d855e1ca6a306410dca144062',1,'fl::Function::Element']]], + ['_7eengine',['~Engine',['../classfl_1_1Engine.html#a5b4ba98e071767d219624416c4b6008e',1,'fl::Engine']]], + ['_7eexception',['~Exception',['../classfl_1_1Exception.html#a6b2c996dbe10a2ce28e2a3028b7a60ba',1,'fl::Exception']]], + ['_7eexporter',['~Exporter',['../classfl_1_1Exporter.html#ab5319c12e3b59565951467c39988a707',1,'fl::Exporter']]], + ['_7eexpression',['~Expression',['../classfl_1_1Expression.html#a1604308ff2cef911123653a3457fd990',1,'fl::Expression']]], + ['_7efactory',['~Factory',['../classfl_1_1Factory.html#a56895637d3aa26a36bb5f3e93adba041',1,'fl::Factory']]], + ['_7efactorymanager',['~FactoryManager',['../classfl_1_1FactoryManager.html#a286530241e195e0faff93d38393afea6',1,'fl::FactoryManager']]], + ['_7efclexporter',['~FclExporter',['../classfl_1_1FclExporter.html#a80c793f25bb29d33903e204b4cf9f3d8',1,'fl::FclExporter']]], + ['_7efclimporter',['~FclImporter',['../classfl_1_1FclImporter.html#a02c680d209cbcafb198d0e3906b88ffc',1,'fl::FclImporter']]], + ['_7efisexporter',['~FisExporter',['../classfl_1_1FisExporter.html#a059187846eed86957d38b17a15601ccb',1,'fl::FisExporter']]], + ['_7efisimporter',['~FisImporter',['../classfl_1_1FisImporter.html#a5a01cdde2f9c95e379991ab62664d013',1,'fl::FisImporter']]], + ['_7efldexporter',['~FldExporter',['../classfl_1_1FldExporter.html#ae6f89726bc9bb33ef8c36bcc1ebe6440',1,'fl::FldExporter']]], + ['_7efllexporter',['~FllExporter',['../classfl_1_1FllExporter.html#a4401275536a96781f153603234d038e9',1,'fl::FllExporter']]], + ['_7efllimporter',['~FllImporter',['../classfl_1_1FllImporter.html#a2aec511802a61fa8ac76f21104282368',1,'fl::FllImporter']]], + ['_7efunction',['~Function',['../classfl_1_1Function.html#a4533c58e472bc9f0deee6ed3d7309f48',1,'fl::Function']]], + ['_7egaussian',['~Gaussian',['../classfl_1_1Gaussian.html#a7cf9cfc964bbbf96b7bf8203559926de',1,'fl::Gaussian']]], + ['_7egaussianproduct',['~GaussianProduct',['../classfl_1_1GaussianProduct.html#ab5c2aff8ec77cabbafbcbacc93f4c3a8',1,'fl::GaussianProduct']]], + ['_7ehedge',['~Hedge',['../classfl_1_1Hedge.html#a990b388bcdf071d72ed55d6b31df0c69',1,'fl::Hedge']]], + ['_7ehedgefactory',['~HedgeFactory',['../classfl_1_1HedgeFactory.html#a734e0398afcbc1cec74b21e3d0759e75',1,'fl::HedgeFactory']]], + ['_7eimporter',['~Importer',['../classfl_1_1Importer.html#aa80d4e41105f57759edeb802e48e5d88',1,'fl::Importer']]], + ['_7einputvariable',['~InputVariable',['../classfl_1_1InputVariable.html#af8524cb2fae0f1417fe8ffc27a181090',1,'fl::InputVariable']]], + ['_7eintegraldefuzzifier',['~IntegralDefuzzifier',['../classfl_1_1IntegralDefuzzifier.html#a6ab681f34359792ec867ae78f403f1da',1,'fl::IntegralDefuzzifier']]], + ['_7ejavaexporter',['~JavaExporter',['../classfl_1_1JavaExporter.html#a7c357afdb6391ec44215e575e1f3cb7a',1,'fl::JavaExporter']]], + ['_7elargestofmaximum',['~LargestOfMaximum',['../classfl_1_1LargestOfMaximum.html#ad1c94612d3d86d99c9f4ad1ff9cbe092',1,'fl::LargestOfMaximum']]], + ['_7elinear',['~Linear',['../classfl_1_1Linear.html#a4f7012009a7fb8451811b71246c71dfb',1,'fl::Linear']]], + ['_7emeanofmaximum',['~MeanOfMaximum',['../classfl_1_1MeanOfMaximum.html#a8831f3fc9884f33c119892f0c6383f51',1,'fl::MeanOfMaximum']]], + ['_7enorm',['~Norm',['../classfl_1_1Norm.html#a481057fe48f921bcba97d0bc51846089',1,'fl::Norm']]], + ['_7eoperator',['~Operator',['../classfl_1_1Operator.html#a33bb5d7430a9cf054c42f6c62e9ab03b',1,'fl::Operator']]], + ['_7eoutputvariable',['~OutputVariable',['../classfl_1_1OutputVariable.html#a76709622720bd073f218c5d376cfbd32',1,'fl::OutputVariable']]], + ['_7epishape',['~PiShape',['../classfl_1_1PiShape.html#a4e775dd0812a93d312c1b88d2ae1c58e',1,'fl::PiShape']]], + ['_7eramp',['~Ramp',['../classfl_1_1Ramp.html#a0c1010c3f85c5233e716698582d63f07',1,'fl::Ramp']]], + ['_7erectangle',['~Rectangle',['../classfl_1_1Rectangle.html#a360223ebc53f3def1fb7ef58d26e9f27',1,'fl::Rectangle']]], + ['_7erule',['~Rule',['../classfl_1_1Rule.html#a1fcb07152c4c0990d4ae84e4f7249661',1,'fl::Rule']]], + ['_7eruleblock',['~RuleBlock',['../classfl_1_1RuleBlock.html#a821fc78689df167ec6e7c8b534e5615b',1,'fl::RuleBlock']]], + ['_7esigmoid',['~Sigmoid',['../classfl_1_1Sigmoid.html#a739b7c89f1ae2c7a1249e0677b2a2b99',1,'fl::Sigmoid']]], + ['_7esigmoiddifference',['~SigmoidDifference',['../classfl_1_1SigmoidDifference.html#a2b687452721fcf9099cafacdb56becca',1,'fl::SigmoidDifference']]], + ['_7esigmoidproduct',['~SigmoidProduct',['../classfl_1_1SigmoidProduct.html#ab64f25b7a88958654a31a77cee766868',1,'fl::SigmoidProduct']]], + ['_7esmallestofmaximum',['~SmallestOfMaximum',['../classfl_1_1SmallestOfMaximum.html#abc20f251007432e11609952c058480a3',1,'fl::SmallestOfMaximum']]], + ['_7esnorm',['~SNorm',['../classfl_1_1SNorm.html#a95e973ef6bc8e85ed54eb260923c1035',1,'fl::SNorm']]], + ['_7esnormfactory',['~SNormFactory',['../classfl_1_1SNormFactory.html#ad5842aa0eb3048900c03ce3d338684c3',1,'fl::SNormFactory']]], + ['_7esshape',['~SShape',['../classfl_1_1SShape.html#ac00269f23058fb9a75ef38bf567ba9cf',1,'fl::SShape']]], + ['_7eterm',['~Term',['../classfl_1_1Term.html#a0af99d979bfdc52617ceabce9d1f3cc0',1,'fl::Term']]], + ['_7etermfactory',['~TermFactory',['../classfl_1_1TermFactory.html#adf9341c40db429dffb486bf7a998ed2f',1,'fl::TermFactory']]], + ['_7ethresholded',['~Thresholded',['../classfl_1_1Thresholded.html#ac075393794b8c65386bb09ad1e23834b',1,'fl::Thresholded']]], + ['_7etnorm',['~TNorm',['../classfl_1_1TNorm.html#a91e0033f37bbb4749877773695461539',1,'fl::TNorm']]], + ['_7etnormfactory',['~TNormFactory',['../classfl_1_1TNormFactory.html#ac99158ca2c3dc21ccfa76f0eed8d21e0',1,'fl::TNormFactory']]], + ['_7etrapezoid',['~Trapezoid',['../classfl_1_1Trapezoid.html#ad1379bc03d6b842c920cc29741cb2736',1,'fl::Trapezoid']]], + ['_7etriangle',['~Triangle',['../classfl_1_1Triangle.html#a4f50e986809986c82037de5208537e2f',1,'fl::Triangle']]], + ['_7evariable',['~Variable',['../classfl_1_1Variable.html#a029e3696756f21639f6a476b8ff0b138',1,'fl::Variable']]], + ['_7eweightedaverage',['~WeightedAverage',['../classfl_1_1WeightedAverage.html#ae6d56b608f1295269b671a0ac0d5c4bf',1,'fl::WeightedAverage']]], + ['_7eweightedsum',['~WeightedSum',['../classfl_1_1WeightedSum.html#a5fee2381ac48d33305cd29387433cfae',1,'fl::WeightedSum']]], + ['_7ezshape',['~ZShape',['../classfl_1_1ZShape.html#ab2e801c3a211512b7328a71b687f6109',1,'fl::ZShape']]] +]; diff --git a/docs/html/search/mag_sel.png b/docs/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/docs/html/search/mag_sel.png differ diff --git a/docs/html/search/namespaces_66.html b/docs/html/search/namespaces_66.html new file mode 100644 index 0000000..eeb821d --- /dev/null +++ b/docs/html/search/namespaces_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/namespaces_66.js b/docs/html/search/namespaces_66.js new file mode 100644 index 0000000..5582a1f --- /dev/null +++ b/docs/html/search/namespaces_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['fl',['fl',['../namespacefl.html',1,'']]] +]; diff --git a/docs/html/search/nomatches.html b/docs/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/docs/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/docs/html/search/search.css b/docs/html/search/search.css new file mode 100644 index 0000000..5b208ed --- /dev/null +++ b/docs/html/search/search.css @@ -0,0 +1,271 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/docs/html/search/search.js b/docs/html/search/search.js new file mode 100644 index 0000000..80df421 --- /dev/null +++ b/docs/html/search/search.js @@ -0,0 +1,809 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111111111101111111110001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111101111101110110010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111101111101110110010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111101111101111110010001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111001011011111101011101100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000001000101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "variables", + 6: "typedefs", + 7: "defines" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_62.js b/docs/html/search/typedefs_62.js new file mode 100644 index 0000000..be17a1a --- /dev/null +++ b/docs/html/search/typedefs_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['binary',['Binary',['../classfl_1_1Function.html#a72bdd02409670aa19301d1856cc3f4be',1,'fl::Function']]] +]; diff --git a/docs/html/search/typedefs_63.html b/docs/html/search/typedefs_63.html new file mode 100644 index 0000000..4313190 --- /dev/null +++ b/docs/html/search/typedefs_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_63.js b/docs/html/search/typedefs_63.js new file mode 100644 index 0000000..874aae1 --- /dev/null +++ b/docs/html/search/typedefs_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['creator',['Creator',['../classfl_1_1Factory.html#a3f8636d79418ca1b5818767e586e6b0f',1,'fl::Factory']]] +]; diff --git a/docs/html/search/typedefs_6f.html b/docs/html/search/typedefs_6f.html new file mode 100644 index 0000000..509da63 --- /dev/null +++ b/docs/html/search/typedefs_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_6f.js b/docs/html/search/typedefs_6f.js new file mode 100644 index 0000000..479e1f5 --- /dev/null +++ b/docs/html/search/typedefs_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['op',['Op',['../namespacefl.html#a204e02abcb4377f336a7b2af450992ac',1,'fl']]] +]; diff --git a/docs/html/search/typedefs_73.html b/docs/html/search/typedefs_73.html new file mode 100644 index 0000000..0bed01e --- /dev/null +++ b/docs/html/search/typedefs_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_73.js b/docs/html/search/typedefs_73.js new file mode 100644 index 0000000..0df58e2 --- /dev/null +++ b/docs/html/search/typedefs_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['scalar',['scalar',['../namespacefl.html#a7c31a28fa2ed8960a0eb0a779744b689',1,'fl']]] +]; diff --git a/docs/html/search/typedefs_75.html b/docs/html/search/typedefs_75.html new file mode 100644 index 0000000..8350533 --- /dev/null +++ b/docs/html/search/typedefs_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_75.js b/docs/html/search/typedefs_75.js new file mode 100644 index 0000000..bac5dd4 --- /dev/null +++ b/docs/html/search/typedefs_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['unary',['Unary',['../classfl_1_1Function.html#acff7c0f580b0a4a3e7739e5bbe9a3c42',1,'fl::Function']]] +]; diff --git a/docs/html/search/variables_5f.html b/docs/html/search/variables_5f.html new file mode 100644 index 0000000..fc799e5 --- /dev/null +++ b/docs/html/search/variables_5f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_5f.js b/docs/html/search/variables_5f.js new file mode 100644 index 0000000..5f40239 --- /dev/null +++ b/docs/html/search/variables_5f.js @@ -0,0 +1,71 @@ +var searchData= +[ + ['_5fa',['_a',['../classfl_1_1Trapezoid.html#aac990da5f3bc3b2b4764357f7ac7dc66',1,'fl::Trapezoid::_a()'],['../classfl_1_1Triangle.html#a69986be1299cd2e18424d5b955f2733f',1,'fl::Triangle::_a()']]], + ['_5faccumulation',['_accumulation',['../classfl_1_1Accumulated.html#a50d93d91e226d8b791ba47d55c693006',1,'fl::Accumulated']]], + ['_5factivation',['_activation',['../classfl_1_1RuleBlock.html#af7b0fcdd06aec8bf85eec9b8e524e512',1,'fl::RuleBlock::_activation()'],['../classfl_1_1Thresholded.html#aee777ad4584fbb883754fba22ebf69c4',1,'fl::Thresholded::_activation()']]], + ['_5fantecedent',['_antecedent',['../classfl_1_1Rule.html#a683eb935711e5635460ccd2aae058799',1,'fl::Rule']]], + ['_5fb',['_b',['../classfl_1_1Trapezoid.html#a913deb47c560e1b0435a2fc49fcc20ff',1,'fl::Trapezoid::_b()'],['../classfl_1_1Triangle.html#accf99c2e84283ba0a5a3d25ac3540991',1,'fl::Triangle::_b()']]], + ['_5fbottomleft',['_bottomLeft',['../classfl_1_1PiShape.html#aac117c385800e2d294bb420f754e08dd',1,'fl::PiShape']]], + ['_5fbottomright',['_bottomRight',['../classfl_1_1PiShape.html#a5afd826af62985d899c0741892f9dd65',1,'fl::PiShape']]], + ['_5fc',['_c',['../classfl_1_1Trapezoid.html#a96709e4e121d803da2fefeb6047b92c4',1,'fl::Trapezoid::_c()'],['../classfl_1_1Triangle.html#a99df4726d6414912e1ac0fba99f68b47',1,'fl::Triangle::_c()']]], + ['_5fcenter',['_center',['../classfl_1_1Bell.html#a712423c00763794af97e587b9b7a80e3',1,'fl::Bell']]], + ['_5fconclusions',['_conclusions',['../classfl_1_1Consequent.html#afa623758e3674ea30a3b462dd9f26118',1,'fl::Consequent']]], + ['_5fconjunction',['_conjunction',['../classfl_1_1RuleBlock.html#ab1bfd4615560a594ca3565cd2be03b4d',1,'fl::RuleBlock']]], + ['_5fconsequent',['_consequent',['../classfl_1_1Rule.html#ae89e01c6d92f2299883e4ff4af116e97',1,'fl::Rule']]], + ['_5fd',['_d',['../classfl_1_1Trapezoid.html#a1ec763e62d23f610abc43b0356a21c54',1,'fl::Trapezoid']]], + ['_5fdebug',['_debug',['../classfl_1_1fuzzylite.html#a4aaad0b03eebd83ccfb01a3ffb307d51',1,'fl::fuzzylite']]], + ['_5fdecimals',['_decimals',['../classfl_1_1fuzzylite.html#a1fe97fa6ede2cb612d3d75408cc77913',1,'fl::fuzzylite']]], + ['_5fdefaultvalue',['_defaultValue',['../classfl_1_1OutputVariable.html#ae671f7b4d50b1bd0348efca4b18b64ee',1,'fl::OutputVariable']]], + ['_5fdefuzzifier',['_defuzzifier',['../classfl_1_1FactoryManager.html#abfc5c5c5faa761711c5a9e6efba0732c',1,'fl::FactoryManager::_defuzzifier()'],['../classfl_1_1OutputVariable.html#a631ae981ace3b71c309645f84c31c40d',1,'fl::OutputVariable::_defuzzifier()']]], + ['_5fdisjunction',['_disjunction',['../classfl_1_1RuleBlock.html#a15e8f50bae4e37ca96e8c181663e141b',1,'fl::RuleBlock']]], + ['_5fenabled',['_enabled',['../classfl_1_1RuleBlock.html#a4c45f750812d0552af1c2dfdfd401475',1,'fl::RuleBlock::_enabled()'],['../classfl_1_1Variable.html#af3da836e5c21086982d42a53465104c0',1,'fl::Variable::_enabled()']]], + ['_5fend',['_end',['../classfl_1_1Ramp.html#ab51cf85926685a575ae265eed12a362c',1,'fl::Ramp::_end()'],['../classfl_1_1Rectangle.html#a3e607d89ff856e9e770837918b2cff83',1,'fl::Rectangle::_end()'],['../classfl_1_1SShape.html#aace3f0789823a5bfda5b468ef966b052',1,'fl::SShape::_end()'],['../classfl_1_1ZShape.html#ab6958e4e9d2e5db62e7f62893bcd7afd',1,'fl::ZShape::_end()']]], + ['_5fengine',['_engine',['../classfl_1_1Function.html#a62b753626cf4bd6dac6be17ae6c4191b',1,'fl::Function']]], + ['_5ffalling',['_falling',['../classfl_1_1SigmoidDifference.html#aee8ab367cb39e486d41d75ac70171e31',1,'fl::SigmoidDifference::_falling()'],['../classfl_1_1SigmoidProduct.html#acf9520217fc3e23030b069944298432b',1,'fl::SigmoidProduct::_falling()']]], + ['_5fformula',['_formula',['../classfl_1_1Function.html#a170910c5be1bf1c62ebdf0af75edad5d',1,'fl::Function']]], + ['_5ffuzzyoutput',['_fuzzyOutput',['../classfl_1_1OutputVariable.html#a4c790ba61f35ffb40a70465bc4eff269',1,'fl::OutputVariable']]], + ['_5fhedge',['_hedge',['../classfl_1_1FactoryManager.html#a88fdfe634b35c34aabc9cce41748bbef',1,'fl::FactoryManager']]], + ['_5fhedges',['_hedges',['../classfl_1_1Engine.html#ad223b542db52763b4307141dd1743ac8',1,'fl::Engine']]], + ['_5findent',['_indent',['../classfl_1_1FclExporter.html#a752ac81d142301a3f0b18f415cd4bdd3',1,'fl::FclExporter::_indent()'],['../classfl_1_1FllExporter.html#a4ef591a02dab3796d640cb7a22bdd182',1,'fl::FllExporter::_indent()']]], + ['_5finflection',['_inflection',['../classfl_1_1Sigmoid.html#a047e9747674b2e72288301086c060a9d',1,'fl::Sigmoid']]], + ['_5finputvalue',['_inputValue',['../classfl_1_1InputVariable.html#abe998a09cc17fd8d66edae2b5e6e3afe',1,'fl::InputVariable']]], + ['_5finputvariables',['_inputVariables',['../classfl_1_1Engine.html#afe5a903a3c7e0d9f56224d7c640c84e8',1,'fl::Engine']]], + ['_5finstance',['_instance',['../classfl_1_1FactoryManager.html#abcd343824f484712cace3796d35a0c24',1,'fl::FactoryManager']]], + ['_5flastvalidoutput',['_lastValidOutput',['../classfl_1_1OutputVariable.html#a45490aadbbfec20202053a2fb76c345c',1,'fl::OutputVariable']]], + ['_5fleft',['_left',['../classfl_1_1SigmoidDifference.html#a6bb2a9cbf1bec2d66b414ec22f5a2c91',1,'fl::SigmoidDifference::_left()'],['../classfl_1_1SigmoidProduct.html#a111018dbf5382cde37c57a898fe4190b',1,'fl::SigmoidProduct::_left()']]], + ['_5flockoutputrange',['_lockOutputRange',['../classfl_1_1OutputVariable.html#a81794ae643119692cedcaa8d2584c94e',1,'fl::OutputVariable']]], + ['_5flockvalidoutput',['_lockValidOutput',['../classfl_1_1OutputVariable.html#aa42f02897e6a69c82a86e13473448c7f',1,'fl::OutputVariable']]], + ['_5flogging',['_logging',['../classfl_1_1fuzzylite.html#ac45078e9cf4b2bd72550e39172bc6b4d',1,'fl::fuzzylite']]], + ['_5fmacheps',['_macheps',['../classfl_1_1fuzzylite.html#af7ac9d34e39f267de40ae3be3aae787c',1,'fl::fuzzylite']]], + ['_5fmaximum',['_maximum',['../classfl_1_1FldExporter.html#a8c785e9652876bc2859f24fd2246550d',1,'fl::FldExporter::_maximum()'],['../classfl_1_1Accumulated.html#a87c58504eb0f9c015d39ef52830e417c',1,'fl::Accumulated::_maximum()'],['../classfl_1_1Variable.html#a53575c5e4f520ef389ba097d3e5a36e9',1,'fl::Variable::_maximum()']]], + ['_5fmean',['_mean',['../classfl_1_1Gaussian.html#a3afa7aadb27e046ed07d5c77e9a878b5',1,'fl::Gaussian']]], + ['_5fmeana',['_meanA',['../classfl_1_1GaussianProduct.html#acb0046558c2b810abb9566afe149f444',1,'fl::GaussianProduct']]], + ['_5fmeanb',['_meanB',['../classfl_1_1GaussianProduct.html#a566dbd763abb96ea82d70d3a3aa357d4',1,'fl::GaussianProduct']]], + ['_5fminimum',['_minimum',['../classfl_1_1Accumulated.html#a35cbbe5cfe41d3e0fc8518878562c4ae',1,'fl::Accumulated::_minimum()'],['../classfl_1_1Variable.html#a0c19d07387e35f7b96e88b64249f89d1',1,'fl::Variable::_minimum()']]], + ['_5fname',['_name',['../classfl_1_1Engine.html#a49806c12fc00793a8170b6b3cbb55ca7',1,'fl::Engine::_name()'],['../classfl_1_1RuleBlock.html#a9360214a72cf4b5848e48212df2bc17f',1,'fl::RuleBlock::_name()'],['../classfl_1_1Term.html#aa549e2805339c8fe2e41effba52d5bf5',1,'fl::Term::_name()'],['../classfl_1_1Variable.html#add2efa8900070f5f06ffe1497792673a',1,'fl::Variable::_name()']]], + ['_5foutputvariables',['_outputVariables',['../classfl_1_1Engine.html#a042c2d297ef2f399ff5205a751250cf1',1,'fl::Engine']]], + ['_5fresolution',['_resolution',['../classfl_1_1IntegralDefuzzifier.html#a7819eddcff32da2826d990080cf52bc1',1,'fl::IntegralDefuzzifier']]], + ['_5fright',['_right',['../classfl_1_1SigmoidDifference.html#aefda31f6ee4fd714ff6d75b9799b7642',1,'fl::SigmoidDifference::_right()'],['../classfl_1_1SigmoidProduct.html#ade2ae7a6cb509c0bbe6681e6c5705fa9',1,'fl::SigmoidProduct::_right()']]], + ['_5frising',['_rising',['../classfl_1_1SigmoidDifference.html#aaa9b83b82f261e31c2ad1d083de34e8f',1,'fl::SigmoidDifference::_rising()'],['../classfl_1_1SigmoidProduct.html#aa8288569224e8452d47e73022ac104be',1,'fl::SigmoidProduct::_rising()']]], + ['_5froot',['_root',['../classfl_1_1Antecedent.html#a06d8dd233ec6458c52bd8bbc45d16c2c',1,'fl::Antecedent']]], + ['_5fruleblocks',['_ruleblocks',['../classfl_1_1Engine.html#a971cb8784678daa1cfddffdf882df414',1,'fl::Engine']]], + ['_5frules',['_rules',['../classfl_1_1RuleBlock.html#a21c7d3c3b2f78463c49a0067a7e0318c',1,'fl::RuleBlock']]], + ['_5fseparator',['_separator',['../classfl_1_1FldExporter.html#a51b260e8046f2acae03d0e8bd29746b2',1,'fl::FldExporter::_separator()'],['../classfl_1_1FllExporter.html#a2fff42124d24833c1bcf888e64e0fb46',1,'fl::FllExporter::_separator()'],['../classfl_1_1FllImporter.html#ab9df69e5ff68f25bf2fb95fdf9b55f34',1,'fl::FllImporter::_separator()']]], + ['_5fslope',['_slope',['../classfl_1_1Bell.html#a8dde2f9d6b81e8db85ba0e8b31af33a8',1,'fl::Bell::_slope()'],['../classfl_1_1Sigmoid.html#a2a1a6c704cb9619c0dc2c71fe723dd8a',1,'fl::Sigmoid::_slope()']]], + ['_5fsnorm',['_snorm',['../classfl_1_1FactoryManager.html#a8b58509c864378c20b45a4a2b90d816f',1,'fl::FactoryManager']]], + ['_5fstandarddeviation',['_standardDeviation',['../classfl_1_1Gaussian.html#a54d80135fdacc54f4889dc724491f44f',1,'fl::Gaussian']]], + ['_5fstandarddeviationa',['_standardDeviationA',['../classfl_1_1GaussianProduct.html#a6325913403a8d5a752e7eef82b8fe4c9',1,'fl::GaussianProduct']]], + ['_5fstandarddeviationb',['_standardDeviationB',['../classfl_1_1GaussianProduct.html#ab109d8ecd2334f8d627ceda8d7cd5b1f',1,'fl::GaussianProduct']]], + ['_5fstart',['_start',['../classfl_1_1Ramp.html#a4ba4665ac5fd0ef2ec129f04c1c3eae0',1,'fl::Ramp::_start()'],['../classfl_1_1Rectangle.html#a702c94e6b27e9758662d00e30e91d174',1,'fl::Rectangle::_start()'],['../classfl_1_1SShape.html#ada38fba887b769e59706741ea315d810',1,'fl::SShape::_start()'],['../classfl_1_1ZShape.html#aab9a8bf0737de2680c9a421c2c6ab89e',1,'fl::ZShape::_start()']]], + ['_5fterm',['_term',['../classfl_1_1FactoryManager.html#a6287e95f9501f08495ef9277847e25b6',1,'fl::FactoryManager::_term()'],['../classfl_1_1Thresholded.html#a65669113ccd7b7d644f51e327852288e',1,'fl::Thresholded::_term()']]], + ['_5fterms',['_terms',['../classfl_1_1Accumulated.html#a282298974d6e86153e28dedf8f10d863',1,'fl::Accumulated::_terms()'],['../classfl_1_1Variable.html#a7b4716cb6623bddc24a4084f85e63869',1,'fl::Variable::_terms()']]], + ['_5ftext',['_text',['../classfl_1_1Rule.html#a20274fc48a348154088377de031823bf',1,'fl::Rule']]], + ['_5fthreshold',['_threshold',['../classfl_1_1Thresholded.html#a35e57e00911b7a3ede84b320920a7ebb',1,'fl::Thresholded']]], + ['_5ftnorm',['_tnorm',['../classfl_1_1FactoryManager.html#a41e78756d39885587a70b94f09e5350d',1,'fl::FactoryManager']]], + ['_5ftopleft',['_topLeft',['../classfl_1_1PiShape.html#ad3d00a9cdbae079cf73267b9d9c1daaf',1,'fl::PiShape']]], + ['_5ftopright',['_topRight',['../classfl_1_1PiShape.html#ab33f3af8845f990cd73425fabbede063',1,'fl::PiShape']]], + ['_5fvalue',['_value',['../classfl_1_1Constant.html#ae6af66c02a42a87630447148236feb70',1,'fl::Constant']]], + ['_5fweight',['_weight',['../classfl_1_1Rule.html#abfde18c3de35a6475a65775e322ee737',1,'fl::Rule']]], + ['_5fwhat',['_what',['../classfl_1_1Exception.html#a0f3a3e2cf6e03bcd887cbd17b32b6017',1,'fl::Exception']]], + ['_5fwidth',['_width',['../classfl_1_1Bell.html#a960a043c5b9486f4beaee839e08a18ed',1,'fl::Bell']]] +]; diff --git a/docs/html/search/variables_61.html b/docs/html/search/variables_61.html new file mode 100644 index 0000000..a0de7a4 --- /dev/null +++ b/docs/html/search/variables_61.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_61.js b/docs/html/search/variables_61.js new file mode 100644 index 0000000..a1165ac --- /dev/null +++ b/docs/html/search/variables_61.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['arity',['arity',['../structfl_1_1Function_1_1Element.html#a71bfb343da7cd382044ab2dfa1da2320',1,'fl::Function::Element']]], + ['associativity',['associativity',['../structfl_1_1Function_1_1Element.html#ac5cfb06ea9500b5652a5287d3f6b9f01',1,'fl::Function::Element']]] +]; diff --git a/docs/html/search/variables_62.html b/docs/html/search/variables_62.html new file mode 100644 index 0000000..ff41525 --- /dev/null +++ b/docs/html/search/variables_62.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_62.js b/docs/html/search/variables_62.js new file mode 100644 index 0000000..a3e133b --- /dev/null +++ b/docs/html/search/variables_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['binary',['binary',['../structfl_1_1Function_1_1Element.html#a4305dc1ff772374eeeb56985d3c5224d',1,'fl::Function::Element']]] +]; diff --git a/docs/html/search/variables_63.html b/docs/html/search/variables_63.html new file mode 100644 index 0000000..422085c --- /dev/null +++ b/docs/html/search/variables_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_63.js b/docs/html/search/variables_63.js new file mode 100644 index 0000000..b6bf28d --- /dev/null +++ b/docs/html/search/variables_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['centroids',['centroids',['../structfl_1_1Variable_1_1SortByCoG.html#aff5d6538ec5a7d6b2d0f616ce2810de9',1,'fl::Variable::SortByCoG']]], + ['coefficients',['coefficients',['../classfl_1_1Linear.html#a7867e3422a5f07339246f3bd245ac91b',1,'fl::Linear']]] +]; diff --git a/docs/html/search/variables_66.html b/docs/html/search/variables_66.html new file mode 100644 index 0000000..6e18638 --- /dev/null +++ b/docs/html/search/variables_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_66.js b/docs/html/search/variables_66.js new file mode 100644 index 0000000..7427800 --- /dev/null +++ b/docs/html/search/variables_66.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['fl_5fand',['FL_AND',['../classfl_1_1Rule.html#a6d4f3e6cf5f88fe37322d21f8ddcf895',1,'fl::Rule']]], + ['fl_5fequals',['FL_EQUALS',['../classfl_1_1Rule.html#a36c12c5ae1321335d87334023e01fa84',1,'fl::Rule']]], + ['fl_5fif',['FL_IF',['../classfl_1_1Rule.html#accfd136c3453600147f92012d08d58da',1,'fl::Rule']]], + ['fl_5fis',['FL_IS',['../classfl_1_1Rule.html#a70c95c8aba9754c6532035d0e03987cc',1,'fl::Rule']]], + ['fl_5for',['FL_OR',['../classfl_1_1Rule.html#afa624470efc917d0a09ae71c91970019',1,'fl::Rule']]], + ['fl_5fthen',['FL_THEN',['../classfl_1_1Rule.html#aa49f7be45b2b600ce6a3117c6a17e973',1,'fl::Rule']]], + ['fl_5fwith',['FL_WITH',['../classfl_1_1Rule.html#acddaccce7360343f2f4c7fe9b0cdfea5',1,'fl::Rule']]], + ['foperator',['foperator',['../structfl_1_1Function_1_1Node.html#a6006ced779f74ce4a82afa51f6d12986',1,'fl::Function::Node']]], + ['function',['function',['../structfl_1_1Function_1_1Node.html#a0542be42a101c4a7bf83b6f36d7c4803',1,'fl::Function::Node']]], + ['functions',['functions',['../classfl_1_1Function.html#a90c6da801dd404158a35c0fdf1888c76',1,'fl::Function']]] +]; diff --git a/docs/html/search/variables_68.html b/docs/html/search/variables_68.html new file mode 100644 index 0000000..2f0a862 --- /dev/null +++ b/docs/html/search/variables_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_68.js b/docs/html/search/variables_68.js new file mode 100644 index 0000000..9db5e5c --- /dev/null +++ b/docs/html/search/variables_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hedges',['hedges',['../classfl_1_1Proposition.html#a09ad3358683f937dd555118daf929e0e',1,'fl::Proposition']]] +]; diff --git a/docs/html/search/variables_69.html b/docs/html/search/variables_69.html new file mode 100644 index 0000000..44c2cd1 --- /dev/null +++ b/docs/html/search/variables_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_69.js b/docs/html/search/variables_69.js new file mode 100644 index 0000000..43abc84 --- /dev/null +++ b/docs/html/search/variables_69.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['inf',['inf',['../namespacefl.html#a9ce9b761c2cbab8d04a2eae44e63c1f1',1,'fl']]], + ['inputvariables',['inputVariables',['../classfl_1_1Linear.html#ac31901027e4e59deadab95327918a976',1,'fl::Linear']]], + ['isoperator',['isOperator',['../classfl_1_1Expression.html#abd3159cedfb0d6ae5fde256262b96d03',1,'fl::Expression']]] +]; diff --git a/docs/html/search/variables_6b.html b/docs/html/search/variables_6b.html new file mode 100644 index 0000000..d1001a9 --- /dev/null +++ b/docs/html/search/variables_6b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6b.js b/docs/html/search/variables_6b.js new file mode 100644 index 0000000..93930d8 --- /dev/null +++ b/docs/html/search/variables_6b.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['kw_5fdata_5fmaximum',['KW_DATA_MAXIMUM',['../classfl_1_1Console.html#ad943273bdaf462b24899b991ec7d18df',1,'fl::Console']]], + ['kw_5fdata_5fresolution_5fvariable',['KW_DATA_RESOLUTION_VARIABLE',['../classfl_1_1Console.html#aab4578da4e63f52d190e92a14059e371',1,'fl::Console']]], + ['kw_5fdata_5fseparator',['KW_DATA_SEPARATOR',['../classfl_1_1Console.html#a45d009d7a9d01765bacba57daaa39664',1,'fl::Console']]], + ['kw_5fexample',['KW_EXAMPLE',['../classfl_1_1Console.html#a374934d6528911c7c70bfdb5a3fae470',1,'fl::Console']]], + ['kw_5finput_5ffile',['KW_INPUT_FILE',['../classfl_1_1Console.html#a1fb5194708c34f694c0ad6c598833dbe',1,'fl::Console']]], + ['kw_5finput_5fformat',['KW_INPUT_FORMAT',['../classfl_1_1Console.html#acf42edfb62782fdbc2ebeb0765947144',1,'fl::Console']]], + ['kw_5foutput_5ffile',['KW_OUTPUT_FILE',['../classfl_1_1Console.html#af62f7d4a453962b9d6ee99071ff12305',1,'fl::Console']]], + ['kw_5foutput_5fformat',['KW_OUTPUT_FORMAT',['../classfl_1_1Console.html#afa0ff04c5f0afb8eb8ff94f62ae2c453',1,'fl::Console']]] +]; diff --git a/docs/html/search/variables_6c.html b/docs/html/search/variables_6c.html new file mode 100644 index 0000000..8d08e81 --- /dev/null +++ b/docs/html/search/variables_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6c.js b/docs/html/search/variables_6c.js new file mode 100644 index 0000000..8b49aae --- /dev/null +++ b/docs/html/search/variables_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['left',['left',['../classfl_1_1Operator.html#aa9eea842958312649f58e0c415a6aaca',1,'fl::Operator::left()'],['../structfl_1_1Function_1_1Node.html#a80d665ccd5b5f88514ddbc284739346e',1,'fl::Function::Node::left()']]] +]; diff --git a/docs/html/search/variables_6d.html b/docs/html/search/variables_6d.html new file mode 100644 index 0000000..1b8f1a8 --- /dev/null +++ b/docs/html/search/variables_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6d.js b/docs/html/search/variables_6d.js new file mode 100644 index 0000000..154689c --- /dev/null +++ b/docs/html/search/variables_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['map',['map',['../classfl_1_1Factory.html#ade25fed3fa637513c5292c4abe565752',1,'fl::Factory']]] +]; diff --git a/docs/html/search/variables_6e.html b/docs/html/search/variables_6e.html new file mode 100644 index 0000000..2eb4def --- /dev/null +++ b/docs/html/search/variables_6e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6e.js b/docs/html/search/variables_6e.js new file mode 100644 index 0000000..bea7201 --- /dev/null +++ b/docs/html/search/variables_6e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['name',['name',['../classfl_1_1Operator.html#a6f34cbf29f81626d61ebfbcee491d2af',1,'fl::Operator::name()'],['../structfl_1_1Function_1_1Element.html#a78180111ba536fd7d979f359e611ddf6',1,'fl::Function::Element::name()']]], + ['nan',['nan',['../namespacefl.html#ac0141619ed9a08fb175cc92f134720e3',1,'fl']]] +]; diff --git a/docs/html/search/variables_6f.html b/docs/html/search/variables_6f.html new file mode 100644 index 0000000..f06e2e0 --- /dev/null +++ b/docs/html/search/variables_6f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6f.js b/docs/html/search/variables_6f.js new file mode 100644 index 0000000..e69ee28 --- /dev/null +++ b/docs/html/search/variables_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['operators',['operators',['../classfl_1_1Function.html#a56edfcdbbbf5701f030d6e0f5e9684a6',1,'fl::Function']]] +]; diff --git a/docs/html/search/variables_70.html b/docs/html/search/variables_70.html new file mode 100644 index 0000000..439d152 --- /dev/null +++ b/docs/html/search/variables_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_70.js b/docs/html/search/variables_70.js new file mode 100644 index 0000000..4217366 --- /dev/null +++ b/docs/html/search/variables_70.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['precedence',['precedence',['../structfl_1_1Function_1_1Operator.html#a13a251c753eea116a8a84c99c5d3dd99',1,'fl::Function::Operator']]] +]; diff --git a/docs/html/search/variables_72.html b/docs/html/search/variables_72.html new file mode 100644 index 0000000..8a4ee7b --- /dev/null +++ b/docs/html/search/variables_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_72.js b/docs/html/search/variables_72.js new file mode 100644 index 0000000..c01f1f1 --- /dev/null +++ b/docs/html/search/variables_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['right',['right',['../classfl_1_1Operator.html#a2d3a4c691493018eb8d1807eca99b414',1,'fl::Operator::right()'],['../structfl_1_1Function_1_1Node.html#a8307059ce23580e7ce44466d183dd5cf',1,'fl::Function::Node::right()']]], + ['root',['root',['../classfl_1_1Function.html#a3467f99b6dd817795f3af06039d91db5',1,'fl::Function']]] +]; diff --git a/docs/html/search/variables_74.html b/docs/html/search/variables_74.html new file mode 100644 index 0000000..1665fb8 --- /dev/null +++ b/docs/html/search/variables_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_74.js b/docs/html/search/variables_74.js new file mode 100644 index 0000000..1757c3d --- /dev/null +++ b/docs/html/search/variables_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['term',['term',['../classfl_1_1Proposition.html#afe005bc95d5f8b4298ab40c42a78eecb',1,'fl::Proposition']]] +]; diff --git a/docs/html/search/variables_75.html b/docs/html/search/variables_75.html new file mode 100644 index 0000000..7850aec --- /dev/null +++ b/docs/html/search/variables_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_75.js b/docs/html/search/variables_75.js new file mode 100644 index 0000000..94a2df1 --- /dev/null +++ b/docs/html/search/variables_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['unary',['unary',['../structfl_1_1Function_1_1Element.html#a9e76e33ff8628660c4878cc50a6acd73',1,'fl::Function::Element']]] +]; diff --git a/docs/html/search/variables_76.html b/docs/html/search/variables_76.html new file mode 100644 index 0000000..8af2374 --- /dev/null +++ b/docs/html/search/variables_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_76.js b/docs/html/search/variables_76.js new file mode 100644 index 0000000..ce2838a --- /dev/null +++ b/docs/html/search/variables_76.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['value',['value',['../structfl_1_1Function_1_1Node.html#a7587687bc9ba4aa12b9c56c9d0d5138a',1,'fl::Function::Node']]], + ['variable',['variable',['../classfl_1_1Proposition.html#a9b987871dbe823c8e959813cb5e5dc47',1,'fl::Proposition::variable()'],['../structfl_1_1Function_1_1Node.html#a6426ce26425fc1e917bf74f2c4d05373',1,'fl::Function::Node::variable()']]], + ['variables',['variables',['../classfl_1_1Function.html#a10ce03251388d331bf22f95602c2df89',1,'fl::Function']]] +]; diff --git a/docs/html/search/variables_78.html b/docs/html/search/variables_78.html new file mode 100644 index 0000000..602e879 --- /dev/null +++ b/docs/html/search/variables_78.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_78.js b/docs/html/search/variables_78.js new file mode 100644 index 0000000..009ff37 --- /dev/null +++ b/docs/html/search/variables_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['x',['x',['../classfl_1_1Discrete.html#a97b4d0a07be68da9213354537a28d91a',1,'fl::Discrete']]] +]; diff --git a/docs/html/search/variables_79.html b/docs/html/search/variables_79.html new file mode 100644 index 0000000..17faef9 --- /dev/null +++ b/docs/html/search/variables_79.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_79.js b/docs/html/search/variables_79.js new file mode 100644 index 0000000..c1542d7 --- /dev/null +++ b/docs/html/search/variables_79.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['y',['y',['../classfl_1_1Discrete.html#a0b4cd4a9ab92864e89482d7705e0e173',1,'fl::Discrete']]] +]; diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction-members.html b/docs/html/structfl_1_1Function_1_1BuiltInFunction-members.html new file mode 100644 index 0000000..84a3563 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction-members.html @@ -0,0 +1,139 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Function::BuiltInFunction Member List
+
+
+ +

This is the complete list of members for fl::Function::BuiltInFunction, including all inherited members.

+ + + + + + + + + + + + + +
arityfl::Function::Element
associativityfl::Function::Element
binaryfl::Function::Element
BuiltInFunction(const std::string &name, Unary functionPointer, short associativity=-1)fl::Function::BuiltInFunction
BuiltInFunction(const std::string &name, Binary functionPointer, short associativity=-1)fl::Function::BuiltInFunction
Element(const std::string &name)fl::Function::Element
Element(const std::string &name, Unary unary, short associativity=-1)fl::Function::Element
Element(const std::string &name, Binary binary, short associativity=-1)fl::Function::Element
namefl::Function::Element
toString() const fl::Function::BuiltInFunctionvirtual
unaryfl::Function::Element
~Element()fl::Function::Elementvirtual
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction.html b/docs/html/structfl_1_1Function_1_1BuiltInFunction.html new file mode 100644 index 0000000..3a328af --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction.html @@ -0,0 +1,272 @@ + + + + + + +fuzzylite: fl::Function::BuiltInFunction Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Function::BuiltInFunction Struct Reference
+
+
+ +

#include <Function.h>

+
+Inheritance diagram for fl::Function::BuiltInFunction:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Function::BuiltInFunction:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 BuiltInFunction (const std::string &name, Unary functionPointer, short associativity=-1)
 
 BuiltInFunction (const std::string &name, Binary functionPointer, short associativity=-1)
 
std::string toString () const
 
- Public Member Functions inherited from fl::Function::Element
 Element (const std::string &name)
 
 Element (const std::string &name, Unary unary, short associativity=-1)
 
 Element (const std::string &name, Binary binary, short associativity=-1)
 
virtual ~Element ()
 
+ + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from fl::Function::Element
std::string name
 
Unary unary
 
Binary binary
 
short arity
 
short associativity
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::BuiltInFunction::BuiltInFunction (const std::string & name,
Unary functionPointer,
short associativity = -1 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::BuiltInFunction::BuiltInFunction (const std::string & name,
Binary functionPointer,
short associativity = -1 
)
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Function::BuiltInFunction::toString () const
+
+virtual
+
+ +

Implements fl::Function::Element.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction.js b/docs/html/structfl_1_1Function_1_1BuiltInFunction.js new file mode 100644 index 0000000..fa6605a --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction.js @@ -0,0 +1,6 @@ +var structfl_1_1Function_1_1BuiltInFunction = +[ + [ "BuiltInFunction", "structfl_1_1Function_1_1BuiltInFunction.html#aee227557ef13b636f84b2ad25090168b", null ], + [ "BuiltInFunction", "structfl_1_1Function_1_1BuiltInFunction.html#a2c81ad5335e3aa36294f5e2da316a5d4", null ], + [ "toString", "structfl_1_1Function_1_1BuiltInFunction.html#a2d5f12900baee07457ee39422d926929", null ] +]; \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.map b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.map new file mode 100644 index 0000000..5b150e4 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.md5 b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.md5 new file mode 100644 index 0000000..53d9195 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.md5 @@ -0,0 +1 @@ +ea603373ea6007cb8884a9c2f77c5293 \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.png b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.png new file mode 100644 index 0000000..e3a9024 Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1BuiltInFunction__coll__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.map b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.map new file mode 100644 index 0000000..76afde0 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.md5 b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.md5 new file mode 100644 index 0000000..37827b5 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.md5 @@ -0,0 +1 @@ +94f64a096e54498c441b96ecdeb37b6f \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.png b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.png new file mode 100644 index 0000000..560a20d Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1BuiltInFunction__inherit__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1Element-members.html b/docs/html/structfl_1_1Function_1_1Element-members.html new file mode 100644 index 0000000..97bccf7 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element-members.html @@ -0,0 +1,137 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Function::Element Member List
+
+
+ +

This is the complete list of members for fl::Function::Element, including all inherited members.

+ + + + + + + + + + + +
arityfl::Function::Element
associativityfl::Function::Element
binaryfl::Function::Element
Element(const std::string &name)fl::Function::Element
Element(const std::string &name, Unary unary, short associativity=-1)fl::Function::Element
Element(const std::string &name, Binary binary, short associativity=-1)fl::Function::Element
namefl::Function::Element
toString() const =0fl::Function::Elementpure virtual
unaryfl::Function::Element
~Element()fl::Function::Elementvirtual
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Element.html b/docs/html/structfl_1_1Function_1_1Element.html new file mode 100644 index 0000000..0bba202 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element.html @@ -0,0 +1,368 @@ + + + + + + +fuzzylite: fl::Function::Element Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Function::Element Struct Referenceabstract
+
+
+ +

#include <Function.h>

+
+Inheritance diagram for fl::Function::Element:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Function::Element:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + +

+Public Member Functions

 Element (const std::string &name)
 
 Element (const std::string &name, Unary unary, short associativity=-1)
 
 Element (const std::string &name, Binary binary, short associativity=-1)
 
virtual ~Element ()
 
virtual std::string toString () const =0
 
+ + + + + + + + + + + +

+Public Attributes

std::string name
 
Unary unary
 
Binary binary
 
short arity
 
short associativity
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
fl::Function::Element::Element (const std::string & name)
+
+

Parsing elements

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Element::Element (const std::string & name,
Unary unary,
short associativity = -1 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Element::Element (const std::string & name,
Binary binary,
short associativity = -1 
)
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
fl::Function::Element::~Element ()
+
+virtual
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string fl::Function::Element::toString () const
+
+pure virtual
+
+
+

Member Data Documentation

+ +
+
+ + + + +
short fl::Function::Element::arity
+
+ +
+
+ +
+
+ + + + +
short fl::Function::Element::associativity
+
+ +
+
+ +
+
+ + + + +
Binary fl::Function::Element::binary
+
+ +
+
+ +
+
+ + + + +
std::string fl::Function::Element::name
+
+ +
+
+ +
+
+ + + + +
Unary fl::Function::Element::unary
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Element.js b/docs/html/structfl_1_1Function_1_1Element.js new file mode 100644 index 0000000..d409e12 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element.js @@ -0,0 +1,13 @@ +var structfl_1_1Function_1_1Element = +[ + [ "Element", "structfl_1_1Function_1_1Element.html#aa383fb0e7e1f64a272dfa028cbc3705d", null ], + [ "Element", "structfl_1_1Function_1_1Element.html#a2ca8f010c887a5c263746e6eb3f285b3", null ], + [ "Element", "structfl_1_1Function_1_1Element.html#a1ae6b7bc90ebffe97438909239096f47", null ], + [ "~Element", "structfl_1_1Function_1_1Element.html#a0e94e77d855e1ca6a306410dca144062", null ], + [ "toString", "structfl_1_1Function_1_1Element.html#a399e44e0aca38be2ea561a8ac3805d9f", null ], + [ "arity", "structfl_1_1Function_1_1Element.html#a71bfb343da7cd382044ab2dfa1da2320", null ], + [ "associativity", "structfl_1_1Function_1_1Element.html#ac5cfb06ea9500b5652a5287d3f6b9f01", null ], + [ "binary", "structfl_1_1Function_1_1Element.html#a4305dc1ff772374eeeb56985d3c5224d", null ], + [ "name", "structfl_1_1Function_1_1Element.html#a78180111ba536fd7d979f359e611ddf6", null ], + [ "unary", "structfl_1_1Function_1_1Element.html#a9e76e33ff8628660c4878cc50a6acd73", null ] +]; \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Element__coll__graph.map b/docs/html/structfl_1_1Function_1_1Element__coll__graph.map new file mode 100644 index 0000000..77d66c9 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element__coll__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/structfl_1_1Function_1_1Element__coll__graph.md5 b/docs/html/structfl_1_1Function_1_1Element__coll__graph.md5 new file mode 100644 index 0000000..13db317 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element__coll__graph.md5 @@ -0,0 +1 @@ +d8778d22a04673e2ac7c529415f0336a \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Element__coll__graph.png b/docs/html/structfl_1_1Function_1_1Element__coll__graph.png new file mode 100644 index 0000000..c370533 Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1Element__coll__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1Element__inherit__graph.map b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.map new file mode 100644 index 0000000..fe415c6 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/docs/html/structfl_1_1Function_1_1Element__inherit__graph.md5 b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.md5 new file mode 100644 index 0000000..9186a48 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.md5 @@ -0,0 +1 @@ +11093d1bced9ba720d7620341ab198ef \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Element__inherit__graph.png b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.png new file mode 100644 index 0000000..8553f63 Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1Element__inherit__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1Node-members.html b/docs/html/structfl_1_1Function_1_1Node-members.html new file mode 100644 index 0000000..b15c090 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Node-members.html @@ -0,0 +1,142 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Function::Node Member List
+
+
+ +

This is the complete list of members for fl::Function::Node, including all inherited members.

+ + + + + + + + + + + + + + + + +
evaluate(const std::map< std::string, scalar > *variables=NULL) const fl::Function::Node
foperatorfl::Function::Node
functionfl::Function::Node
leftfl::Function::Node
Node(Operator *foperator, Node *left=NULL, Node *right=NULL)fl::Function::Node
Node(BuiltInFunction *function, Node *left=NULL, Node *right=NULL)fl::Function::Node
Node(const std::string &variable)fl::Function::Node
Node(scalar value)fl::Function::Node
rightfl::Function::Node
toInfix(const Node *node=NULL) const fl::Function::Node
toPostfix(const Node *node=NULL) const fl::Function::Node
toPrefix(const Node *node=NULL) const fl::Function::Node
toString() const fl::Function::Node
valuefl::Function::Node
variablefl::Function::Node
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Node.html b/docs/html/structfl_1_1Function_1_1Node.html new file mode 100644 index 0000000..fdc7e3b --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Node.html @@ -0,0 +1,429 @@ + + + + + + +fuzzylite: fl::Function::Node Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Function::Node Struct Reference
+
+
+ +

#include <Function.h>

+
+Collaboration diagram for fl::Function::Node:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Node (Operator *foperator, Node *left=NULL, Node *right=NULL)
 
 Node (BuiltInFunction *function, Node *left=NULL, Node *right=NULL)
 
 Node (const std::string &variable)
 
 Node (scalar value)
 
scalar evaluate (const std::map< std::string, scalar > *variables=NULL) const
 
std::string toString () const
 
std::string toPrefix (const Node *node=NULL) const
 
std::string toInfix (const Node *node=NULL) const
 
std::string toPostfix (const Node *node=NULL) const
 
+ + + + + + + + + + + + + +

+Public Attributes

Operatorfoperator
 
BuiltInFunctionfunction
 
std::string variable
 
scalar value
 
Nodeleft
 
Noderight
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Node::Node (Operatorfoperator,
Nodeleft = NULL,
Noderight = NULL 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Node::Node (BuiltInFunctionfunction,
Nodeleft = NULL,
Noderight = NULL 
)
+
+ +
+
+ +
+
+ + + + + + + + +
fl::Function::Node::Node (const std::string & variable)
+
+ +
+
+ +
+
+ + + + + + + + +
fl::Function::Node::Node (scalar value)
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
scalar fl::Function::Node::evaluate (const std::map< std::string, scalar > * variables = NULL) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::Function::Node::toInfix (const Nodenode = NULL) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::Function::Node::toPostfix (const Nodenode = NULL) const
+
+ +
+
+ +
+
+ + + + + + + + +
std::string fl::Function::Node::toPrefix (const Nodenode = NULL) const
+
+ +
+
+ +
+
+ + + + + + + +
std::string fl::Function::Node::toString () const
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Operator* fl::Function::Node::foperator
+
+ +
+
+ +
+
+ + + + +
BuiltInFunction* fl::Function::Node::function
+
+ +
+
+ +
+
+ + + + +
Node* fl::Function::Node::left
+
+ +
+
+ +
+
+ + + + +
Node* fl::Function::Node::right
+
+ +
+
+ +
+
+ + + + +
scalar fl::Function::Node::value
+
+ +
+
+ +
+
+ + + + +
std::string fl::Function::Node::variable
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Node.js b/docs/html/structfl_1_1Function_1_1Node.js new file mode 100644 index 0000000..834a16f --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Node.js @@ -0,0 +1,18 @@ +var structfl_1_1Function_1_1Node = +[ + [ "Node", "structfl_1_1Function_1_1Node.html#afb68a9731cbc8b0373298d444eed6637", null ], + [ "Node", "structfl_1_1Function_1_1Node.html#aa7922fad2b23c6b51eaae3e8aa435987", null ], + [ "Node", "structfl_1_1Function_1_1Node.html#a816142e6c0dc4b16f60f6ae77276a8df", null ], + [ "Node", "structfl_1_1Function_1_1Node.html#adfe462bb8f6b9559f2e882e357121e50", null ], + [ "evaluate", "structfl_1_1Function_1_1Node.html#a8d0a1c64fd0e5a5966742d3393c240fa", null ], + [ "toInfix", "structfl_1_1Function_1_1Node.html#acfbfbe7695d1c55c7b7db22737900b73", null ], + [ "toPostfix", "structfl_1_1Function_1_1Node.html#a149a3a2a32108642885610ef45f17a08", null ], + [ "toPrefix", "structfl_1_1Function_1_1Node.html#ac223edba05d5ffe69cda42c358aff9af", null ], + [ "toString", "structfl_1_1Function_1_1Node.html#a84c26b9bde409b2c33620bc52d1e7ab5", null ], + [ "foperator", "structfl_1_1Function_1_1Node.html#a6006ced779f74ce4a82afa51f6d12986", null ], + [ "function", "structfl_1_1Function_1_1Node.html#a0542be42a101c4a7bf83b6f36d7c4803", null ], + [ "left", "structfl_1_1Function_1_1Node.html#a80d665ccd5b5f88514ddbc284739346e", null ], + [ "right", "structfl_1_1Function_1_1Node.html#a8307059ce23580e7ce44466d183dd5cf", null ], + [ "value", "structfl_1_1Function_1_1Node.html#a7587687bc9ba4aa12b9c56c9d0d5138a", null ], + [ "variable", "structfl_1_1Function_1_1Node.html#a6426ce26425fc1e917bf74f2c4d05373", null ] +]; \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Node__coll__graph.map b/docs/html/structfl_1_1Function_1_1Node__coll__graph.map new file mode 100644 index 0000000..e7011e1 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Node__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/html/structfl_1_1Function_1_1Node__coll__graph.md5 b/docs/html/structfl_1_1Function_1_1Node__coll__graph.md5 new file mode 100644 index 0000000..165ee40 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Node__coll__graph.md5 @@ -0,0 +1 @@ +e8a6796ad0675114d5722be2333b5192 \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Node__coll__graph.png b/docs/html/structfl_1_1Function_1_1Node__coll__graph.png new file mode 100644 index 0000000..9986ffe Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1Node__coll__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1Operator-members.html b/docs/html/structfl_1_1Function_1_1Operator-members.html new file mode 100644 index 0000000..51b4f13 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator-members.html @@ -0,0 +1,140 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Function::Operator Member List
+
+
+ +

This is the complete list of members for fl::Function::Operator, including all inherited members.

+ + + + + + + + + + + + + + +
arityfl::Function::Element
associativityfl::Function::Element
binaryfl::Function::Element
Element(const std::string &name)fl::Function::Element
Element(const std::string &name, Unary unary, short associativity=-1)fl::Function::Element
Element(const std::string &name, Binary binary, short associativity=-1)fl::Function::Element
namefl::Function::Element
Operator(const std::string &name, Unary unary, short precedence=0, short associativity=-1)fl::Function::Operator
Operator(const std::string &name, Binary unary, short precedence=0, short associativity=-1)fl::Function::Operator
precedencefl::Function::Operator
toString() const fl::Function::Operatorvirtual
unaryfl::Function::Element
~Element()fl::Function::Elementvirtual
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Operator.html b/docs/html/structfl_1_1Function_1_1Operator.html new file mode 100644 index 0000000..fbd2a4e --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator.html @@ -0,0 +1,300 @@ + + + + + + +fuzzylite: fl::Function::Operator Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Function::Operator Struct Reference
+
+
+ +

#include <Function.h>

+
+Inheritance diagram for fl::Function::Operator:
+
+
Inheritance graph
+ + +
+
+Collaboration diagram for fl::Function::Operator:
+
+
Collaboration graph
+ + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 Operator (const std::string &name, Unary unary, short precedence=0, short associativity=-1)
 
 Operator (const std::string &name, Binary unary, short precedence=0, short associativity=-1)
 
std::string toString () const
 
- Public Member Functions inherited from fl::Function::Element
 Element (const std::string &name)
 
 Element (const std::string &name, Unary unary, short associativity=-1)
 
 Element (const std::string &name, Binary binary, short associativity=-1)
 
virtual ~Element ()
 
+ + + + + + + + + + + + + + +

+Public Attributes

short precedence
 
- Public Attributes inherited from fl::Function::Element
std::string name
 
Unary unary
 
Binary binary
 
short arity
 
short associativity
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Operator::Operator (const std::string & name,
Unary unary,
short precedence = 0,
short associativity = -1 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fl::Function::Operator::Operator (const std::string & name,
Binary unary,
short precedence = 0,
short associativity = -1 
)
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string fl::Function::Operator::toString () const
+
+virtual
+
+ +

Implements fl::Function::Element.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
short fl::Function::Operator::precedence
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/structfl_1_1Function_1_1Operator.js b/docs/html/structfl_1_1Function_1_1Operator.js new file mode 100644 index 0000000..22b4ee5 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator.js @@ -0,0 +1,7 @@ +var structfl_1_1Function_1_1Operator = +[ + [ "Operator", "structfl_1_1Function_1_1Operator.html#a28f2a1453f0a3433d4a2865fba33193f", null ], + [ "Operator", "structfl_1_1Function_1_1Operator.html#a12ad8f672f087b51084b21b8035fab2c", null ], + [ "toString", "structfl_1_1Function_1_1Operator.html#a34152f4040c7a69f78842c7ad211e725", null ], + [ "precedence", "structfl_1_1Function_1_1Operator.html#a13a251c753eea116a8a84c99c5d3dd99", null ] +]; \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Operator__coll__graph.map b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.map new file mode 100644 index 0000000..05688a9 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/structfl_1_1Function_1_1Operator__coll__graph.md5 b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.md5 new file mode 100644 index 0000000..09dd319 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.md5 @@ -0,0 +1 @@ +fd51278eba509c7b7a668172d958ba3d \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Operator__coll__graph.png b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.png new file mode 100644 index 0000000..ce874ea Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1Operator__coll__graph.png differ diff --git a/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.map b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.map new file mode 100644 index 0000000..9fb40eb --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.md5 b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.md5 new file mode 100644 index 0000000..b2ee272 --- /dev/null +++ b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.md5 @@ -0,0 +1 @@ +aae4d8ac9e79cb246834239d675d8c34 \ No newline at end of file diff --git a/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.png b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.png new file mode 100644 index 0000000..34270c8 Binary files /dev/null and b/docs/html/structfl_1_1Function_1_1Operator__inherit__graph.png differ diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG-members.html b/docs/html/structfl_1_1Variable_1_1SortByCoG-members.html new file mode 100644 index 0000000..e587bba --- /dev/null +++ b/docs/html/structfl_1_1Variable_1_1SortByCoG-members.html @@ -0,0 +1,129 @@ + + + + + + +fuzzylite: Member List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
fl::Variable::SortByCoG Member List
+
+
+ +

This is the complete list of members for fl::Variable::SortByCoG, including all inherited members.

+ + + +
centroidsfl::Variable::SortByCoG
operator()(const Term *a, const Term *b)fl::Variable::SortByCoGinline
+
+ + + + diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG.html b/docs/html/structfl_1_1Variable_1_1SortByCoG.html new file mode 100644 index 0000000..69c9f0a --- /dev/null +++ b/docs/html/structfl_1_1Variable_1_1SortByCoG.html @@ -0,0 +1,200 @@ + + + + + + +fuzzylite: fl::Variable::SortByCoG Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
fuzzylite +  4.0 +
+
A Fuzzy Logic Control Library in C++
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
fl::Variable::SortByCoG Struct Reference
+
+
+ +

#include <Variable.h>

+
+Collaboration diagram for fl::Variable::SortByCoG:
+
+
Collaboration graph
+ + +
+ + + + +

+Public Member Functions

bool operator() (const Term *a, const Term *b)
 
+ + + +

+Public Attributes

std::map< const Term *, scalarcentroids
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool fl::Variable::SortByCoG::operator() (const Terma,
const Termb 
)
+
+inline
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::map<const Term*, scalar> fl::Variable::SortByCoG::centroids
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG.js b/docs/html/structfl_1_1Variable_1_1SortByCoG.js new file mode 100644 index 0000000..c5e4050 --- /dev/null +++ b/docs/html/structfl_1_1Variable_1_1SortByCoG.js @@ -0,0 +1,5 @@ +var structfl_1_1Variable_1_1SortByCoG = +[ + [ "operator()", "structfl_1_1Variable_1_1SortByCoG.html#a7525f3e02463f76c7fa85805153f8eb8", null ], + [ "centroids", "structfl_1_1Variable_1_1SortByCoG.html#aff5d6538ec5a7d6b2d0f616ce2810de9", null ] +]; \ No newline at end of file diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.map b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.map new file mode 100644 index 0000000..30c9f19 --- /dev/null +++ b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.md5 b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.md5 new file mode 100644 index 0000000..5063cdf --- /dev/null +++ b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.md5 @@ -0,0 +1 @@ +e88320e36ab6cc0c76dc50e5bcf5d43f \ No newline at end of file diff --git a/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.png b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.png new file mode 100644 index 0000000..a97e4bc Binary files /dev/null and b/docs/html/structfl_1_1Variable_1_1SortByCoG__coll__graph.png differ diff --git a/docs/html/svgpan.js b/docs/html/svgpan.js new file mode 100644 index 0000000..4218e79 --- /dev/null +++ b/docs/html/svgpan.js @@ -0,0 +1,319 @@ +/** + * The code below is based on SVGPan Library 1.2 and was modified for doxygen + * to support both zooming and panning via the mouse and via embedded bottons. + * + * This code is licensed under the following BSD license: + * + * Copyright 2009-2010 Andrea Leofreddi . All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY Andrea Leofreddi ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Andrea Leofreddi OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of Andrea Leofreddi. + */ + +var root = document.documentElement; +var state = 'none'; +var stateOrigin; +var stateTf = root.createSVGMatrix(); +var cursorGrab = ' url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAMAAAAolt3jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAlQTFRFAAAA////////c3ilYwAAAAN0Uk5T//8A18oNQQAAAD1JREFUeNp0zlEKACAIA9Bt9z90bZBZkQj29qFBEuBOzQHSnWTTyckEfqUuZgFvslH4ch3qLCO/Kr8cAgwATw4Ax6XRCcoAAAAASUVORK5CYII="), move'; +var zoomSteps = 10; +var zoomInFactor; +var zoomOutFactor; +var windowWidth; +var windowHeight; +var svgDoc; +var minZoom; +var maxZoom; +if (!window) window=this; + +/** + * Show the graph in the middle of the view, scaled to fit + */ +function show() +{ + if (window.innerHeight) // Firefox + { + windowWidth = window.innerWidth; + windowHeight = window.innerHeight; + } + else if (document.documentElement.clientWidth) // Chrome/Safari + { + windowWidth = document.documentElement.clientWidth + windowHeight = document.documentElement.clientHeight + } + if (!windowWidth || !windowHeight) // failsafe + { + windowWidth = 800; + windowHeight = 600; + } + minZoom = Math.min(Math.min(viewHeight,windowHeight)/viewHeight,Math.min(viewWidth,windowWidth)/viewWidth); + maxZoom = minZoom+1.5; + zoomInFactor = Math.pow(maxZoom/minZoom,1.0/zoomSteps); + zoomOutFactor = 1.0/zoomInFactor; + + var g = svgDoc.getElementById('viewport'); + try + { + var bb = g.getBBox(); // this can throw an exception if css { display: none } + var tx = (windowWidth-viewWidth*minZoom+8)/(2*minZoom); + var ty = viewHeight+(windowHeight-viewHeight*minZoom)/(2*minZoom); + var a = 'scale('+minZoom+') rotate(0) translate('+tx+' '+ty+')'; + g.setAttribute('transform',a); + } + catch(e) {} +} + +/** + * Register handlers + */ +function init(evt) +{ + svgDoc = evt.target.ownerDocument; + if (top.window && top.window.registerShow) // register show function in html doc for dynamic sections + { + top.window.registerShow(sectionId,show); + } + show(); + + setAttributes(root, { + "onmousedown" : "handleMouseDown(evt)", + "onmousemove" : "handleMouseMove(evt)", + "onmouseup" : "handleMouseUp(evt)" + }); + + if (window.addEventListener) + { + if (navigator.userAgent.toLowerCase().indexOf('webkit') >= 0 || + navigator.userAgent.toLowerCase().indexOf("opera") >= 0 || + navigator.appVersion.indexOf("MSIE") != -1) + { + window.addEventListener('mousewheel', handleMouseWheel, false); // Chrome/Safari/IE9 + } + else + { + window.addEventListener('DOMMouseScroll', handleMouseWheel, false); // Others + } + } +} + +window.onresize=function() +{ + if (svgDoc) { show(); } +} + +/** + * Instance an SVGPoint object with given event coordinates. + */ +function getEventPoint(evt) +{ + var p = root.createSVGPoint(); + p.x = evt.clientX; + p.y = evt.clientY; + return p; +} + +/** + * Sets the current transform matrix of an element. + */ +function setCTM(element, matrix) +{ + var s = "matrix(" + matrix.a + "," + matrix.b + "," + matrix.c + "," + matrix.d + "," + matrix.e + "," + matrix.f + ")"; + element.setAttribute("transform", s); +} + +/** + * Sets attributes of an element. + */ +function setAttributes(element, attributes) +{ + for (i in attributes) + element.setAttributeNS(null, i, attributes[i]); +} + +function doZoom(g,point,zoomFactor) +{ + var p = point.matrixTransform(g.getCTM().inverse()); + var k = root.createSVGMatrix().translate(p.x, p.y).scale(zoomFactor).translate(-p.x, -p.y); + var n = g.getCTM().multiply(k); + var s = Math.max(n.a,n.d); + if (s>maxZoom) n=n.translate(p.x,p.y).scale(maxZoom/s).translate(-p.x,-p.y); + else if (s'); + d.write('Print SVG'); + d.write(''); + d.write('
'+xs+'
'); + d.write(''); + d.write(''); + d.close(); + } catch(e) { + alert('Failed to open popup window needed for printing!\n'+e.message); + } +} + + + + diff --git a/docs/html/sync_off.png b/docs/html/sync_off.png new file mode 100644 index 0000000..3b443fc Binary files /dev/null and b/docs/html/sync_off.png differ diff --git a/docs/html/sync_on.png b/docs/html/sync_on.png new file mode 100644 index 0000000..e08320f Binary files /dev/null and b/docs/html/sync_on.png differ diff --git a/docs/html/tab_a.png b/docs/html/tab_a.png new file mode 100644 index 0000000..3b725c4 Binary files /dev/null and b/docs/html/tab_a.png differ diff --git a/docs/html/tab_b.png b/docs/html/tab_b.png new file mode 100644 index 0000000..e2b4a86 Binary files /dev/null and b/docs/html/tab_b.png differ diff --git a/docs/html/tab_h.png b/docs/html/tab_h.png new file mode 100644 index 0000000..fd5cb70 Binary files /dev/null and b/docs/html/tab_h.png differ diff --git a/docs/html/tab_s.png b/docs/html/tab_s.png new file mode 100644 index 0000000..ab478c9 Binary files /dev/null and b/docs/html/tab_s.png differ diff --git a/docs/html/tabs.css b/docs/html/tabs.css new file mode 100644 index 0000000..9cf578f --- /dev/null +++ b/docs/html/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/fl/Console.h b/fl/Console.h new file mode 100644 index 0000000..d5de465 --- /dev/null +++ b/fl/Console.h @@ -0,0 +1,48 @@ +/* + * File: Console.h + * Author: jcrada + * + * Created on 30 November 2013, 10:54 AM + */ + +#ifndef FL_CONSOLE_H +#define FL_CONSOLE_H + +#include +#include + +namespace fl { + class Engine; + + class Console { + public: + static const std::string KW_INPUT_FILE; + static const std::string KW_INPUT_FORMAT; + static const std::string KW_OUTPUT_FILE; + static const std::string KW_OUTPUT_FORMAT; + static const std::string KW_EXAMPLE; + static const std::string KW_DATA_RESOLUTION_VARIABLE; + static const std::string KW_DATA_MAXIMUM; + static const std::string KW_DATA_SEPARATOR; + + static Engine* mamdani(); + static Engine* takagiSugeno(); + + protected: + static std::map parse(int argc, char** argv); + static void process(const std::map& options); + + template + static void process(const std::string& input, T& writer, + const std::string& inputFormat, const std::string& outputFormat, + const std::map& options); + + public: + static std::string usage(); + static int main(int argc, char** argv); + }; + +} + +#endif /* FL_CONSOLE_H */ + diff --git a/fl/Engine.h b/fl/Engine.h new file mode 100644 index 0000000..f7f5634 --- /dev/null +++ b/fl/Engine.h @@ -0,0 +1,141 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Engine.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_ENGINE_H +#define FL_ENGINE_H + +#include "fl/fuzzylite.h" +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +#include +#include + +/** + * @class fl::Engine + * @brief A fuzzy engine. + * @file Engine.cpp + * + */ + +namespace fl { + + class InputVariable; + class OutputVariable; + class RuleBlock; + class Hedge; + class TNorm; + class SNorm; + class Defuzzifier; + + class FL_EXPORT Engine { + protected: + /** The name of the engine used for information only*/ + std::string _name; + /** The input variables registered in the engine*/ + std::vector _inputVariables; + /** The output variables registered in the engine*/ + std::vector _outputVariables; + /** The rule blocks registered in the engine*/ + std::vector _ruleblocks; + /** The hedges registered in the engine to be used by fuzzy rules. @see fl::HedgeFactory*/ + std::vector _hedges; + + public: + Engine(const std::string& name = ""); + virtual ~Engine(); + + virtual void configure(const std::string& conjunctionT = "Minimum", + const std::string& disjunctionS = "Maximum", + const std::string& activationT = "Minimum", + const std::string& accumulationS = "Maximum", + const std::string& defuzzifier = "Centroid", + int resolution = IntegralDefuzzifier::defaultResolution()); + + virtual bool isReady(std::string* status = NULL) const; + + virtual void process(); + + virtual void restart(); + + virtual void setName(const std::string& name); + virtual std::string getName() const; + + virtual void setInputValue(const std::string& name, scalar value); + virtual scalar getOutputValue(const std::string& name); + + virtual std::string toString() const; + /** + * Operations for iterable datatype _inputVariables + */ + virtual void addInputVariable(InputVariable* inputVariable); + virtual void insertInputVariable(InputVariable* inputVariable, int index); + virtual InputVariable* getInputVariable(int index) const; + virtual InputVariable* getInputVariable(const std::string& name) const; + virtual InputVariable* removeInputVariable(int index); + virtual InputVariable* removeInputVariable(const std::string& name); + virtual bool hasInputVariable(const std::string& name) const; + virtual int numberOfInputVariables() const; + virtual const std::vector& inputVariables() const; + + /** + * Operations for iterable datatype _outputVariables + */ + virtual void addOutputVariable(OutputVariable* outputVariable); + virtual void insertOutputVariable(OutputVariable* outputVariable, int index); + virtual OutputVariable* getOutputVariable(int index) const; + virtual OutputVariable* getOutputVariable(const std::string& name) const; + virtual bool hasOutputVariable(const std::string& name) const; + virtual OutputVariable* removeOutputVariable(int index); + virtual OutputVariable* removeOutputVariable(const std::string& name); + virtual int numberOfOutputVariables() const; + virtual const std::vector& outputVariables() const; + + /** + * Operations for iterable datatype _ruleblocks + */ + virtual void addRuleBlock(RuleBlock* ruleblock); + virtual void insertRuleBlock(RuleBlock* ruleblock, int index); + virtual RuleBlock* getRuleBlock(int index) const; + virtual RuleBlock* getRuleBlock(const std::string& name) const; + virtual bool hasRuleBlock(const std::string& name) const; + virtual RuleBlock* removeRuleBlock(int index); + virtual RuleBlock* removeRuleBlock(const std::string& name); + virtual int numberOfRuleBlocks() const; + virtual const std::vector& ruleBlocks() const; + + /** + * Operations for std::vector _hedges + */ + virtual void addHedge(Hedge* hedge); + virtual void insertHedge(Hedge* hedge, int index); + virtual Hedge* getHedge(int index) const; + virtual Hedge* getHedge(const std::string& name) const; + virtual bool hasHedge(const std::string& name) const; + virtual Hedge* removeHedge(int index); + virtual Hedge* removeHedge(const std::string& name); + virtual int numberOfHedges() const; + virtual const std::vector& hedges() const; + + }; + +} +#endif /* FL_ENGINE_H */ diff --git a/fl/Exception.h b/fl/Exception.h new file mode 100644 index 0000000..08a5629 --- /dev/null +++ b/fl/Exception.h @@ -0,0 +1,59 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Exception.h + * + * Created on: 14/12/2012 + * Author: jcrada + */ + +#ifndef FL_EXCEPTION_H +#define FL_EXCEPTION_H + +#include "fl/fuzzylite.h" + +#include +#include +#include + +namespace fl { + + class FL_EXPORT Exception : public std::exception { + protected: + std::string _what; + public: + Exception(const std::string& what, const std::string& file, int line, + const std::string& function); + virtual ~Exception() throw (); + + virtual void setWhat(const std::string& what); + virtual std::string getWhat() const; + virtual const char* what() const throw (); + + virtual void append(const std::string& whatElse); + virtual void append(const std::string& file, int line, const std::string& function); + virtual void append(const std::string& whatElse, + const std::string& file, int line, const std::string& function); + + static std::string btCallStack(const int maxCalls = 30); + + static void signalHandler(int signal); + + static void terminate(); + }; + +} +#endif /* FL_EXCEPTION_H */ diff --git a/fl/Headers.h b/fl/Headers.h new file mode 100644 index 0000000..9596d2f --- /dev/null +++ b/fl/Headers.h @@ -0,0 +1,121 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Headers.h + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#ifndef FL_HEADERS_H +#define FL_HEADERS_H + +#include "fl/fuzzylite.h" + +#include "fl/Console.h" +#include "fl/Engine.h" +#include "fl/Exception.h" + +#include "fl/defuzzifier/Bisector.h" +#include "fl/defuzzifier/Centroid.h" +#include "fl/defuzzifier/Defuzzifier.h" +#include "fl/defuzzifier/IntegralDefuzzifier.h" +#include "fl/defuzzifier/SmallestOfMaximum.h" +#include "fl/defuzzifier/LargestOfMaximum.h" +#include "fl/defuzzifier/MeanOfMaximum.h" +#include "fl/defuzzifier/WeightedAverage.h" +#include "fl/defuzzifier/WeightedSum.h" + +#include "fl/factory/Factory.h" +#include "fl/factory/FactoryManager.h" +#include "fl/factory/DefuzzifierFactory.h" +#include "fl/factory/HedgeFactory.h" +#include "fl/factory/SNormFactory.h" +#include "fl/factory/TNormFactory.h" +#include "fl/factory/TermFactory.h" + +#include "fl/imex/CppExporter.h" +#include "fl/imex/FclImporter.h" +#include "fl/imex/FclExporter.h" +#include "fl/imex/FisImporter.h" +#include "fl/imex/FisExporter.h" +#include "fl/imex/FldExporter.h" +#include "fl/imex/FllImporter.h" +#include "fl/imex/FllExporter.h" +#include "fl/imex/JavaExporter.h" + +#include "fl/hedge/Any.h" +#include "fl/hedge/Extremely.h" +#include "fl/hedge/Hedge.h" +#include "fl/hedge/Not.h" +#include "fl/hedge/Seldom.h" +#include "fl/hedge/Somewhat.h" +#include "fl/hedge/Very.h" + +#include "fl/Operation.h" +#include "fl/norm/Norm.h" +#include "fl/norm/SNorm.h" +#include "fl/norm/TNorm.h" + +#include "fl/norm/s/AlgebraicSum.h" +#include "fl/norm/s/BoundedSum.h" +#include "fl/norm/s/DrasticSum.h" +#include "fl/norm/s/EinsteinSum.h" +#include "fl/norm/s/HamacherSum.h" +#include "fl/norm/s/Maximum.h" +#include "fl/norm/s/NormalizedSum.h" + +#include "fl/norm/t/AlgebraicProduct.h" +#include "fl/norm/t/BoundedDifference.h" +#include "fl/norm/t/DrasticProduct.h" +#include "fl/norm/t/EinsteinProduct.h" +#include "fl/norm/t/HamacherProduct.h" +#include "fl/norm/t/Minimum.h" + +#include "fl/rule/Antecedent.h" +#include "fl/rule/Consequent.h" +#include "fl/rule/Rule.h" +#include "fl/rule/RuleBlock.h" +#include "fl/rule/Expression.h" + + +#include "fl/term/Accumulated.h" +#include "fl/term/Bell.h" +#include "fl/term/Constant.h" +#include "fl/term/Discrete.h" +#include "fl/term/Function.h" +#include "fl/term/Gaussian.h" +#include "fl/term/GaussianProduct.h" +#include "fl/term/Linear.h" +#include "fl/term/PiShape.h" +#include "fl/term/Ramp.h" +#include "fl/term/Rectangle.h" +#include "fl/term/SShape.h" +#include "fl/term/Sigmoid.h" +#include "fl/term/SigmoidDifference.h" +#include "fl/term/SigmoidProduct.h" +#include "fl/term/Term.h" +#include "fl/term/Thresholded.h" +#include "fl/term/Trapezoid.h" +#include "fl/term/Triangle.h" +#include "fl/term/ZShape.h" + +#include "fl/variable/InputVariable.h" +#include "fl/variable/OutputVariable.h" +#include "fl/variable/Variable.h" + + +#endif /* FL_HEADERS_H */ diff --git a/fl/Operation.h b/fl/Operation.h new file mode 100644 index 0000000..75118aa --- /dev/null +++ b/fl/Operation.h @@ -0,0 +1,118 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Operation.h + * Author: jcrada + * + * Created on 1 February 2013, 6:10 PM + */ + +#ifndef FL_OPERATION_H +#define FL_OPERATION_H + +#include "fl/fuzzylite.h" + +#include "fl/Exception.h" + +#include +#include +#include + +namespace fl { + + class FL_EXPORT Operation { + public: + template + static T min(T a, T b); + + template + static T max(T a, T b); + + template + static bool isInf(T x); + + template + static bool isNan(T x); + + //Is less than + + static bool isLt(scalar a, scalar b, scalar macheps = fuzzylite::macheps()); + + static bool isLE(scalar a, scalar b, scalar macheps = fuzzylite::macheps()); + + //Is equal + + static bool isEq(scalar a, scalar b, scalar macheps = fuzzylite::macheps()); + + //Is greater than + + static bool isGt(scalar a, scalar b, scalar macheps = fuzzylite::macheps()); + + static bool isGE(scalar a, scalar b, scalar macheps = fuzzylite::macheps()); + + static scalar scale(scalar x, scalar fromMin, scalar fromMax, + scalar toMin, scalar toMax); + + static scalar add(scalar a, scalar b); + static scalar subtract(scalar a, scalar b); + static scalar multiply(scalar a, scalar b); + static scalar divide(scalar a, scalar b); + static scalar modulo(scalar a, scalar b); + static scalar logicalAnd(scalar a, scalar b); + static scalar logicalOr(scalar a, scalar b); + static scalar negate(scalar a); + + static bool increment(std::vector& x, std::vector& min, std::vector& max); + static bool increment(std::vector& x, int position, std::vector& min, std::vector& max); + + static std::string makeValidId(const std::string& name); + + static int isValidForName(int character); + + static std::string findReplace(const std::string& str, const std::string& find, + const std::string& replace, bool replaceAll = true); + + static std::vector split(const std::string& str, + const std::string& delimiter = " ", bool ignoreEmpty = true); + + static std::string trim(const std::string& text); + + static std::string format(const std::string& text, int matchesChar(int), + const std::string& replacement = ""); + + static scalar toScalar(const std::string& x, bool quiet = false, + scalar alternative = fl::nan) throw (fl::Exception); + + static bool isNumeric(const std::string& x); + + static std::string repeat(const std::string& x, int times, + const std::string& sep = ""); + + template + static std::string str(T x, int decimals = fuzzylite::decimals()); + + template + static std::string join(const std::vector& x, + const std::string& separator = ", "); + + template + static std::string join(int items, const std::string& separator, T first, ...); + }; + + typedef Operation Op; +} +#endif /* FL_OPERATION_H */ + diff --git a/fl/defuzzifier/Bisector.h b/fl/defuzzifier/Bisector.h new file mode 100644 index 0000000..4cc71af --- /dev/null +++ b/fl/defuzzifier/Bisector.h @@ -0,0 +1,43 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Bisector.h + * Author: jcrada + * + * Created on 25 April 2013, 3:55 PM + */ + +#ifndef FL_BISECTOR_H +#define FL_BISECTOR_H + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + class FL_EXPORT Bisector : public IntegralDefuzzifier { + public: + Bisector(int resolution = defaultResolution()); + + std::string className() const; + scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; + +} + +#endif /* FL_BISECTOR_H */ + diff --git a/fl/defuzzifier/Centroid.h b/fl/defuzzifier/Centroid.h new file mode 100644 index 0000000..ac35bd6 --- /dev/null +++ b/fl/defuzzifier/Centroid.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Centroid.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_CENTROID_H +#define FL_CENTROID_H + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + class FL_EXPORT Centroid : public IntegralDefuzzifier { + public: + Centroid(int resolution = defaultResolution()); + + std::string className() const; + scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; + +} +#endif /* FL_CENTROID_H */ diff --git a/fl/defuzzifier/Defuzzifier.h b/fl/defuzzifier/Defuzzifier.h new file mode 100644 index 0000000..445c1ca --- /dev/null +++ b/fl/defuzzifier/Defuzzifier.h @@ -0,0 +1,50 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Defuzzifier.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + + +//TODO Check http://en.wikipedia.org/wiki/Defuzzification for other defuzzifiers. + +#ifndef FL_DEFUZZIFIER_H +#define FL_DEFUZZIFIER_H + +#include "fl/fuzzylite.h" +#include + +namespace fl { + class Term; + + class FL_EXPORT Defuzzifier { + public: + + Defuzzifier() { + } + + virtual ~Defuzzifier() { + } + + virtual std::string className() const = 0; + virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const = 0; + + }; + +} +#endif /* FL_DEFUZZIFIER_H */ diff --git a/fl/defuzzifier/IntegralDefuzzifier.h b/fl/defuzzifier/IntegralDefuzzifier.h new file mode 100644 index 0000000..bb182ca --- /dev/null +++ b/fl/defuzzifier/IntegralDefuzzifier.h @@ -0,0 +1,52 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: IntegralDefuzzifier.h + * Author: jcrada + * + * Created on 2 November 2013, 9:18 AM + */ + +#ifndef FL_INTEGRALDEFUZZIFIER_H +#define FL_INTEGRALDEFUZZIFIER_H + +#include "fl/defuzzifier/Defuzzifier.h" + +namespace fl { + //TODO: check http://en.wikipedia.org/wiki/Adaptive_quadrature + + class FL_EXPORT IntegralDefuzzifier : public Defuzzifier { + protected: + int _resolution; + public: + + static int defaultResolution() { + return 200; + } + + IntegralDefuzzifier(int resolution = defaultResolution()); + virtual ~IntegralDefuzzifier(); + + virtual void setResolution(int resolution); + virtual int getResolution() const; + + + }; + +} + +#endif /* INTEGRALDEFUZZIFIER_H */ + diff --git a/fl/defuzzifier/LargestOfMaximum.h b/fl/defuzzifier/LargestOfMaximum.h new file mode 100644 index 0000000..a39460b --- /dev/null +++ b/fl/defuzzifier/LargestOfMaximum.h @@ -0,0 +1,42 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: LargestOfMaximum.h + * Author: jcrada + * + * Created on 8 May 2013, 6:38 PM + */ + +#ifndef FL_LARGESTOFMAXIMUM_H +#define FL_LARGESTOFMAXIMUM_H + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + class FL_EXPORT LargestOfMaximum : public IntegralDefuzzifier { + public: + LargestOfMaximum(int resolution = defaultResolution()); + virtual ~LargestOfMaximum(); + + virtual std::string className() const; + virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; +} +#endif /* FL_LARGESTOFMAXIMUM_H */ + diff --git a/fl/defuzzifier/MeanOfMaximum.h b/fl/defuzzifier/MeanOfMaximum.h new file mode 100644 index 0000000..fc76db2 --- /dev/null +++ b/fl/defuzzifier/MeanOfMaximum.h @@ -0,0 +1,43 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: MeanOfMaximum.h + * Author: jcrada + * + * Created on 8 May 2013, 6:38 PM + */ + +#ifndef FL_MEANOFMAXIMUM_H +#define FL_MEANOFMAXIMUM_H + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + class FL_EXPORT MeanOfMaximum : public IntegralDefuzzifier { + public: + MeanOfMaximum(int resolution = defaultResolution()); + virtual ~MeanOfMaximum(); + + virtual std::string className() const; + virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; +} + +#endif /* FL_MEANOFMAXIMUM_H */ + diff --git a/fl/defuzzifier/SmallestOfMaximum.h b/fl/defuzzifier/SmallestOfMaximum.h new file mode 100644 index 0000000..6bbb5fb --- /dev/null +++ b/fl/defuzzifier/SmallestOfMaximum.h @@ -0,0 +1,43 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SmallestOfMaximum.h + * Author: jcrada + * + * Created on 8 May 2013, 6:38 PM + */ + +#ifndef FL_SMALLESTOFMAXIMUM_H +#define FL_SMALLESTOFMAXIMUM_H + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + class FL_EXPORT SmallestOfMaximum : public IntegralDefuzzifier { + public: + SmallestOfMaximum(int resolution = defaultResolution()); + virtual ~SmallestOfMaximum(); + + virtual std::string className() const; + virtual scalar defuzzify(const Term* term, scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; +} + +#endif /* FL_SMALLESTOFMAXIMUM_H */ + diff --git a/fl/defuzzifier/Tsukamoto.h b/fl/defuzzifier/Tsukamoto.h new file mode 100644 index 0000000..1a0882a --- /dev/null +++ b/fl/defuzzifier/Tsukamoto.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ +/* + * File: Tsukamoto.h + * Author: jcrada + * + * Created on 13 December 2013, 4:24 PM + */ + +#ifndef FL_TSUKAMOTO_H +#define FL_TSUKAMOTO_H + +#include "fl/fuzzylite.h" + +namespace fl { + class Thresholded; + + class FL_EXPORT Tsukamoto { + public: + static scalar tsukamoto(const Thresholded* term, scalar minimum, scalar maximum); + }; + +} + +#endif /* FL_TSUKAMOTO_H */ + diff --git a/fl/defuzzifier/WeightedAverage.h b/fl/defuzzifier/WeightedAverage.h new file mode 100644 index 0000000..215d08d --- /dev/null +++ b/fl/defuzzifier/WeightedAverage.h @@ -0,0 +1,46 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: WeightedAverage.h + * Author: jcrada + * + * Created on 8 May 2013, 4:15 PM + */ + +#ifndef FL_WEIGHTEDAVERAGE_H +#define FL_WEIGHTEDAVERAGE_H + +#include "fl/defuzzifier/Defuzzifier.h" + +namespace fl { + class Thresholded; + + class FL_EXPORT WeightedAverage : public Defuzzifier { + public: + + WeightedAverage(); + virtual ~WeightedAverage(); + + virtual std::string className() const; + virtual scalar defuzzify(const Term* term, + scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; +} + +#endif /* FL_WEIGHTEDAVERAGE_H */ + diff --git a/fl/defuzzifier/WeightedSum.h b/fl/defuzzifier/WeightedSum.h new file mode 100644 index 0000000..0b18648 --- /dev/null +++ b/fl/defuzzifier/WeightedSum.h @@ -0,0 +1,46 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: WeightedSum.h + * Author: jcrada + * + * Created on 8 May 2013, 4:15 PM + */ + +#ifndef FL_WEIGHTEDSUM_H +#define FL_WEIGHTEDSUM_H + + +#include "fl/defuzzifier/Defuzzifier.h" + +namespace fl { + + class FL_EXPORT WeightedSum : public Defuzzifier { + public: + + WeightedSum(); + virtual ~WeightedSum(); + + virtual std::string className() const ; + virtual scalar defuzzify(const Term* term, + scalar minimum, scalar maximum) const; + + static Defuzzifier* constructor(); + }; +} + +#endif /* FL_WEIGHTEDSUM_H */ + diff --git a/fl/factory/DefuzzifierFactory.h b/fl/factory/DefuzzifierFactory.h new file mode 100644 index 0000000..b918d3d --- /dev/null +++ b/fl/factory/DefuzzifierFactory.h @@ -0,0 +1,44 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DefuzzifierFactory.h + * Author: jcrada + * + * Created on 8 January 2013, 11:17 PM + */ + +#ifndef FL_DEFUZZIFIERFACTORY_H +#define FL_DEFUZZIFIERFACTORY_H + +#include "fl/fuzzylite.h" + +#include "fl/factory/Factory.h" + +#include +#include + +namespace fl { + class Defuzzifier; + + class FL_EXPORT DefuzzifierFactory : public Factory{ + public: + DefuzzifierFactory(); + virtual ~DefuzzifierFactory(); + + }; +} +#endif /* DEFUZZIFIERFACTORY_H */ + diff --git a/fl/factory/Factory.h b/fl/factory/Factory.h new file mode 100644 index 0000000..89c9df5 --- /dev/null +++ b/fl/factory/Factory.h @@ -0,0 +1,56 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Factory.h + * Author: jcrada + * + * Created on 29 November 2013, 7:15 AM + */ + +#ifndef FL_FACTORY_H +#define FL_FACTORY_H + +#include "fl/fuzzylite.h" + +#include +#include +#include + +namespace fl { + + template + class FL_EXPORT Factory { + public: + typedef T(*Creator)(); + + protected: + std::map map; + + public: + Factory(); + virtual ~Factory(); + + virtual void registerClass(const std::string& key, Creator creator); + virtual void deregisterClass(const std::string& key); + virtual bool hasRegisteredClass(const std::string& key) const; + virtual std::vector available() const; + virtual T createInstance(const std::string& key) const; + }; + +} + +#endif /* FL_FACTORY_H */ + diff --git a/fl/factory/FactoryManager.h b/fl/factory/FactoryManager.h new file mode 100644 index 0000000..b0e7b5f --- /dev/null +++ b/fl/factory/FactoryManager.h @@ -0,0 +1,69 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Factory.h + * Author: jcrada + * + * Created on 8 January 2013, 11:10 PM + */ + +#ifndef FL_FACTORYMANAGER_H +#define FL_FACTORYMANAGER_H + +#include "fl/fuzzylite.h" + +namespace fl { + class TNormFactory; + class SNormFactory; + class DefuzzifierFactory; + class TermFactory; + class HedgeFactory; + + class FL_EXPORT FactoryManager { + protected: + static FactoryManager* _instance; + + TNormFactory* _tnorm; + SNormFactory* _snorm; + DefuzzifierFactory* _defuzzifier; + TermFactory* _term; + HedgeFactory* _hedge; + + FactoryManager(); + virtual ~FactoryManager(); + + public: + static FactoryManager* instance(); + + virtual void setTnorm(TNormFactory* tnorm); + virtual TNormFactory* tnorm() const; + + virtual void setSnorm(SNormFactory* snorm); + virtual SNormFactory* snorm() const; + + virtual void setDefuzzifier(DefuzzifierFactory* defuzzifier); + virtual DefuzzifierFactory* defuzzifier() const; + + virtual void setTerm(TermFactory* term); + virtual TermFactory* term() const; + + virtual void setHedge(HedgeFactory* hedge); + virtual HedgeFactory* hedge() const; + + }; +} +#endif /* FL_FACTORYMANAGER_H */ + diff --git a/fl/factory/HedgeFactory.h b/fl/factory/HedgeFactory.h new file mode 100644 index 0000000..102b2d7 --- /dev/null +++ b/fl/factory/HedgeFactory.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HedgeFactory.h + * Author: jcrada + * + * Created on 11 January 2013, 8:51 PM + */ + +#ifndef FL_HEDGEFACTORY_H +#define FL_HEDGEFACTORY_H + +#include "fl/fuzzylite.h" + +#include "fl/factory/Factory.h" +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT HedgeFactory : public Factory{ + public: + HedgeFactory(); + virtual ~HedgeFactory(); + + }; +} +#endif /* FL_HEDGEFACTORY_H */ + diff --git a/fl/factory/SNormFactory.h b/fl/factory/SNormFactory.h new file mode 100644 index 0000000..2dc008f --- /dev/null +++ b/fl/factory/SNormFactory.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SNormFactory.h + * Author: jcrada + * + * Created on 8 January 2013, 11:20 PM + */ + +#ifndef FL_SNORMFACTORY_H +#define FL_SNORMFACTORY_H + +#include "fl/fuzzylite.h" + +#include "fl/factory/Factory.h" +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT SNormFactory : public Factory { + public: + SNormFactory(); + virtual ~SNormFactory(); + }; +} +#endif /* FL_SNORMFACTORY_H */ + diff --git a/fl/factory/TNormFactory.h b/fl/factory/TNormFactory.h new file mode 100644 index 0000000..a74c704 --- /dev/null +++ b/fl/factory/TNormFactory.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: TNormFactory.h + * Author: jcrada + * + * Created on 8 January 2013, 11:20 PM + */ + +#ifndef FL_TNORMFACTORY_H +#define FL_TNORMFACTORY_H + +#include "fl/fuzzylite.h" + +#include "fl/factory/Factory.h" +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT TNormFactory : public Factory { + public: + TNormFactory(); + virtual ~TNormFactory(); + + }; +} +#endif /* FL_TNORMFACTORY_H */ + diff --git a/fl/factory/TermFactory.h b/fl/factory/TermFactory.h new file mode 100644 index 0000000..ff932fa --- /dev/null +++ b/fl/factory/TermFactory.h @@ -0,0 +1,44 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: TermFactory.h + * Author: jcrada + * + * Created on 8 January 2013, 11:18 PM + */ + +#ifndef FL_TERMFACTORY_H +#define FL_TERMFACTORY_H + +#include "fl/fuzzylite.h" + +#include "fl/factory/Factory.h" +#include "fl/term/Term.h" + +#include +#include + +namespace fl { + + class FL_EXPORT TermFactory : public Factory{ + public: + TermFactory(); + virtual ~TermFactory(); + + }; +} +#endif /* FL_TERMFACTORY_H */ + diff --git a/fl/fuzzylite.h b/fl/fuzzylite.h new file mode 100644 index 0000000..1d282e5 --- /dev/null +++ b/fl/fuzzylite.h @@ -0,0 +1,147 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: fuzzylite.h + * Author: jcrada + * + * Created on 1 February 2013, 10:47 AM + */ + +#ifndef FL_FUZZYLITE_H +#define FL_FUZZYLITE_H + + +#include +#include +#include + +#ifndef FL_VERSION +#define FL_VERSION "?" +#endif + +#ifndef FL_DATE +#define FL_DATE "?" +#endif + +#ifndef FL_BUILD_PATH +#define FL_BUILD_PATH "" +#endif + +namespace fl { +#ifdef FL_USE_FLOAT + typedef float scalar; +#else + typedef double scalar; +#endif + + static const scalar nan = std::numeric_limits::quiet_NaN(); + static const scalar inf = std::numeric_limits::infinity(); +} + +#define FL__FILE__ std::string(__FILE__).substr(std::string(FL_BUILD_PATH).size()) + +#define FL_LOG_PREFIX FL__FILE__ << " [" << __LINE__ << "]:" + +#define FL_AT FL__FILE__, __LINE__, __FUNCTION__ + + +#define FL_LOG(message) if (fl::fuzzylite::logging()){std::cout << FL_LOG_PREFIX << message << std::endl;} +#define FL_LOGP(message) if (fl::fuzzylite::logging()){std::cout << message << std::endl;} + +#ifndef FL_DEBUG +#define FL_DEBUG false +#endif + +#define FL_BEGIN_DEBUG_BLOCK if (fl::fuzzylite::debug()){ +#define FL_END_DEBUG_BLOCK } + +#define FL_DBG(message) FL_BEGIN_DEBUG_BLOCK \ + std::cout << FL__FILE__ << "::" << __FUNCTION__ << "[" << __LINE__ << "]:" \ + << message << std::endl;\ + FL_END_DEBUG_BLOCK + +//class FL_EXPORT is require to build DLLs in Windows. +#ifdef FL_WINDOWS +#define FL_EXPORT __declspec(dllexport) +#else +#define FL_EXPORT +#endif + +#ifdef FL_WINDOWS +#include //alternative operator spellings: +//#define and && +//#define or || +//#define not ! +//#define bitand & +//#define bitor | + +//TODO: add these functions in Windows +//#define acosh(x) +//#define asinh(x) +//#define atanh(x) +//#define log1p + +//to ignore warnings dealing with exceptions in Windows: +//http://msdn.microsoft.com/en-us/library/sa28fef8%28v=vs.80%29.aspx +#pragma warning(disable:4290) //C++ exception specification ignored except to indicate a function is not __declspec(nothrow) + +#pragma warning(disable:4251) //Windows NMake complains I should have pointers in all headers instead of stack allocated objects. For example, std::string* instead of std::string. + +#pragma warning(disable:4127) //Ignore conditional expression constant of FL_DBG and alike + +#pragma warning(disable:4706) //Ignore assignments within conditional expressions in Tsukamoto. +#else +#endif + +namespace fl { + + class FL_EXPORT fuzzylite { + protected: + static int _decimals; + static scalar _macheps; + static bool _debug; + static bool _logging; + + public: + static std::string name(); + static std::string fullname(); + static std::string version(); + static std::string longVersion(); + static std::string author(); + + static std::string date(); + static std::string platform(); + static std::string configuration(); + + static std::string floatingPoint(); + + static bool debug(); + static void setDebug(bool debug); + + static int decimals(); + static void setDecimals(int decimals); + + static scalar macheps(); + static void setMachEps(scalar macheps); + + static bool logging(); + static void setLogging(bool logging); + }; +} + + +#endif /* FL_FUZZYLITE_H */ + diff --git a/fl/hedge/Any.h b/fl/hedge/Any.h new file mode 100644 index 0000000..b081809 --- /dev/null +++ b/fl/hedge/Any.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Any.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_ANY_H +#define FL_ANY_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Any : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_ANY_H */ diff --git a/fl/hedge/Extremely.h b/fl/hedge/Extremely.h new file mode 100644 index 0000000..eaaf8e8 --- /dev/null +++ b/fl/hedge/Extremely.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Extremely.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_EXTREMELY_H +#define FL_EXTREMELY_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Extremely : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_EXTREMELY_H */ diff --git a/fl/hedge/Hedge.h b/fl/hedge/Hedge.h new file mode 100644 index 0000000..76ec358 --- /dev/null +++ b/fl/hedge/Hedge.h @@ -0,0 +1,47 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Hedge.h + * + * Created on: 3/12/2012 + * Author: jcrada + */ + +#ifndef FL_HEDGE_H +#define FL_HEDGE_H + +#include "fl/fuzzylite.h" + + + +#include + +namespace fl { + + class FL_EXPORT Hedge { + public: + + Hedge() { } + + virtual ~Hedge() { } + + virtual std::string name() const = 0; + virtual scalar hedge(scalar x) const = 0; + + }; +} + +#endif /* FL_HEDGE_H */ diff --git a/fl/hedge/Not.h b/fl/hedge/Not.h new file mode 100644 index 0000000..68af23a --- /dev/null +++ b/fl/hedge/Not.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Not.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_NOT_H +#define FL_NOT_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Not : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_NOT_H */ diff --git a/fl/hedge/Seldom.h b/fl/hedge/Seldom.h new file mode 100644 index 0000000..45fc4fd --- /dev/null +++ b/fl/hedge/Seldom.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Seldom.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_SELDOM_H +#define FL_SELDOM_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Seldom : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_SELDOM_H */ diff --git a/fl/hedge/Somewhat.h b/fl/hedge/Somewhat.h new file mode 100644 index 0000000..b6f400d --- /dev/null +++ b/fl/hedge/Somewhat.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Somewhat.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_SOMEWHAT_H +#define FL_SOMEWHAT_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Somewhat : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_SOMEWHAT_H */ diff --git a/fl/hedge/Very.h b/fl/hedge/Very.h new file mode 100644 index 0000000..fe22986 --- /dev/null +++ b/fl/hedge/Very.h @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Very.h + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#ifndef FL_VERY_H +#define FL_VERY_H + +#include "fl/hedge/Hedge.h" + +namespace fl { + + class FL_EXPORT Very : public Hedge { + public: + std::string name() const; + scalar hedge(scalar x) const; + static Hedge* constructor(); + }; + +} +#endif /* FL_VERY_H */ diff --git a/fl/imex/CppExporter.h b/fl/imex/CppExporter.h new file mode 100644 index 0000000..ffce455 --- /dev/null +++ b/fl/imex/CppExporter.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: CppExporter.h + * Author: jcrada + * + * Created on 1 January 2013, 2:41 PM + */ + +#ifndef FL_CPPEXPORTER_H +#define FL_CPPEXPORTER_H + +#include "fl/imex/Exporter.h" + +namespace fl { + class Engine; + class InputVariable; + class OutputVariable; + class Term; + class RuleBlock; + class Norm; + class Defuzzifier; + class Hedge; + + class FL_EXPORT CppExporter : public Exporter { + public: + CppExporter(); + virtual ~CppExporter(); + virtual std::string name() const; + virtual std::string toString(const Engine* engine) const; + + virtual std::string toString(const InputVariable* inputVariable, const Engine* engine) const; + virtual std::string toString(const OutputVariable* outputVariable, const Engine* engine) const; + virtual std::string toString(const RuleBlock* ruleBlock, const Engine* engine) const; + virtual std::string toString(scalar value) const; + + virtual std::string toString(const Hedge* hedge) const; + virtual std::string toString(const Term* term) const; + virtual std::string toString(const Norm* op) const; + virtual std::string toString(const Defuzzifier* defuzzifier) const; + + }; +} +#endif /* FL_CPPEXPORTER_H */ + diff --git a/fl/imex/Exporter.h b/fl/imex/Exporter.h new file mode 100644 index 0000000..8b9b551 --- /dev/null +++ b/fl/imex/Exporter.h @@ -0,0 +1,45 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Exporter.h + * Author: jcrada + * + * Created on 25 December 2012, 11:40 PM + */ + +#ifndef FL_EXPORTER_H +#define FL_EXPORTER_H + +#include "fl/fuzzylite.h" + +#include + +namespace fl { + class Engine; + class FL_EXPORT Exporter{ + public: + Exporter(){} + virtual ~Exporter(){} + + virtual std::string name() const = 0; + virtual std::string toString(const Engine* engine) const = 0; + + }; + +} + +#endif /* FL_EXPORTER_H */ + diff --git a/fl/imex/FclExporter.h b/fl/imex/FclExporter.h new file mode 100644 index 0000000..554cf50 --- /dev/null +++ b/fl/imex/FclExporter.h @@ -0,0 +1,55 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * FclExporter.h + * + * Created on: 8/12/2012 + * Author: jcrada + */ + +#ifndef FL_FCLEXPORTER_H +#define FL_FCLEXPORTER_H + +#include "fl/imex/Exporter.h" + +namespace fl { + class TNorm; + class SNorm; + class Defuzzifier; + class Term; + + class FL_EXPORT FclExporter : public Exporter { + protected: + std::string _indent; + + public: + FclExporter(const std::string& indent = " "); + virtual ~FclExporter(); + + virtual void setIndent(const std::string& indent); + virtual std::string getIndent() const; + + virtual std::string name() const; + virtual std::string toString(const Engine* engine) const; + + virtual std::string toString(const TNorm* tnorm) const; + virtual std::string toString(const SNorm* snorm) const; + virtual std::string toString(const Defuzzifier* defuzzifier) const; + virtual std::string toString(const Term* term) const; + }; + +} +#endif /* FL_FCLEXPORTER_H */ diff --git a/fl/imex/FclImporter.h b/fl/imex/FclImporter.h new file mode 100644 index 0000000..4948c81 --- /dev/null +++ b/fl/imex/FclImporter.h @@ -0,0 +1,72 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * FclImporter.h + * + * Created on: 8/12/2012 + * Author: jcrada + */ + +#ifndef FL_FCLIMPORTER_H +#define FL_FCLIMPORTER_H + +#include "fl/imex/Importer.h" + + + +#include +#include +#include + +namespace fl { + class Norm; + class TNorm; + class SNorm; + class Term; + class Defuzzifier; + + class FL_EXPORT FclImporter : public Importer { + protected: + virtual void processBlock(const std::string& tag, const std::string& block, Engine* engine) const; + virtual void processVar(const std::string& var, const std::string& block, Engine* engine)const; + virtual void processFuzzify(const std::string& block, Engine* engine)const; + virtual void processDefuzzify(const std::string& block, Engine* engine)const; + virtual void processRuleBlock(const std::string& block, Engine* engine)const; + + virtual TNorm* extractTNorm(const std::string& line) const; + virtual SNorm* extractSNorm(const std::string& line) const; + + virtual Term* extractTerm(const std::string& line) const; + virtual Term* prepareTerm(Term* term, const Engine* engine) const; + + virtual Defuzzifier* extractDefuzzifier(const std::string& line) const; + virtual std::pair extractDefaultValue(const std::string& line) const; + virtual std::pair extractRange(const std::string& line) const; + virtual std::pair extractLocksOutputRange(const std::string& line) const; + virtual bool extractEnabled(const std::string& line) const; + + public: + FclImporter(); + virtual ~FclImporter(); + + virtual std::string name() const; + + virtual Engine* fromString(const std::string& fcl) const; + + }; + +} +#endif /* FL_FCLIMPORTER_H */ diff --git a/fl/imex/FisExporter.h b/fl/imex/FisExporter.h new file mode 100644 index 0000000..8458087 --- /dev/null +++ b/fl/imex/FisExporter.h @@ -0,0 +1,67 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FisExporter.h + * Author: jcrada + * + * Created on 22 December 2012, 5:52 PM + */ + +#ifndef FL_FISEXPORTER_H +#define FL_FISEXPORTER_H + +#include "fl/imex/Exporter.h" + +#include + +namespace fl { + class TNorm; + class SNorm; + class Defuzzifier; + class Term; + class Rule; + class Proposition; + class Variable; + + class FL_EXPORT FisExporter : public Exporter { + protected: + + std::string translate(const std::vector& propositions, + const std::vector variables) const; + + public: + FisExporter(); + virtual ~FisExporter(); + + virtual std::string name() const; + virtual std::string toString(const Engine* engine) const; + + std::string toString(const TNorm* tnorm) const; + std::string toString(const SNorm* snorm) const; + std::string toString(const Defuzzifier* defuzzifier) const; + std::string toString(const Term* term) const; + + std::string exportSystem(const Engine* engine) const; + std::string exportInputs(const Engine* engine) const; + std::string exportOutputs(const Engine* engine) const; + std::string exportRules(const Engine* engine) const; + std::string exportRule(const Rule* rule, const Engine* engine) const; + }; + +} + +#endif /* FL_FISEXPORTER_H */ + diff --git a/fl/imex/FisImporter.h b/fl/imex/FisImporter.h new file mode 100644 index 0000000..88549ee --- /dev/null +++ b/fl/imex/FisImporter.h @@ -0,0 +1,73 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FisImporter.h + * Author: jcrada + * + * Created on 22 December 2012, 5:53 PM + */ + +#ifndef FL_FISIMPORTER_H +#define FL_FISIMPORTER_H + +#include "fl/imex/Importer.h" + +#include +#include + +namespace fl { + class Norm; + class TNorm; + class SNorm; + class Term; + class Defuzzifier; + class Variable; + + class FL_EXPORT FisImporter : public Importer { + protected: + + virtual void importSystem(const std::string& section, Engine* engine, + std::string& andMethod, std::string& orMethod, + std::string& impMethod, std::string& aggMethod, + std::string& defuzzMethod) const; + virtual void importInput(const std::string& section, Engine* engine) const; + virtual void importOutput(const std::string& section, Engine* engine) const; + virtual void importRules(const std::string& section, Engine* engine) const; + virtual std::string translateProposition(scalar code, Variable* variable) const; + + virtual std::string tnorm(const std::string& tnorm) const; + virtual std::string snorm(const std::string& tnorm) const; + virtual std::string defuzzifier(const std::string& tnorm) const; + + + virtual Term* extractTerm(const std::string& line) const; + virtual Term* prepareTerm(Term* term, const Engine* engine) const ; + virtual Term* createInstance(const std::string& termClass, const std::string& name, + const std::vector& params) const; + virtual std::pair extractRange(const std::string& range) const; + + public: + FisImporter(); + virtual ~FisImporter(); + + virtual std::string name() const; + + virtual Engine* fromString(const std::string& fcl) const; + }; + +} +#endif /* FL_FISIMPORTER_H */ + diff --git a/fl/imex/FldExporter.h b/fl/imex/FldExporter.h new file mode 100644 index 0000000..20d3016 --- /dev/null +++ b/fl/imex/FldExporter.h @@ -0,0 +1,60 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FldExporter.h + * Author: jcrada + * + * Created on 30 November 2013, 9:52 AM + */ + +#ifndef FL_FLDEXPORTER_H +#define FL_FLDEXPORTER_H + +#include "fl/fuzzylite.h" +#include "fl/imex/Exporter.h" + +namespace fl { + class Engine; + + class FL_EXPORT FldExporter : public Exporter { + protected: + std::string _separator; + int _maximum; + public: + FldExporter(const std::string& separator = " ", int maximum = 1024); + virtual ~FldExporter(); + + virtual std::string name() const; + + virtual void setSeparator(const std::string& separator); + virtual std::string getSeparator() const; + + virtual void setMaximum(int maximum); + virtual int getMaximum() const; + + //WARNING: The engine will be const_casted, restarted, processed! + virtual std::string toString(const Engine* mutableEngine) const; + + template + void toWriter(Engine* engine, T& writer, + const std::string& separator, int resolution) const; + + + }; +} + +#endif /* FL_FLDEXPORTER_H */ + diff --git a/fl/imex/FllExporter.h b/fl/imex/FllExporter.h new file mode 100644 index 0000000..d3b042a --- /dev/null +++ b/fl/imex/FllExporter.h @@ -0,0 +1,71 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FllExporter.h + * Author: jcrada + * + * Created on 18 December 2013, 8:53 AM + */ + +#ifndef FL_FLLEXPORTER_H +#define FL_FLLEXPORTER_H + +#include "fl/fuzzylite.h" +#include "fl/imex/Exporter.h" + +namespace fl { + class Variable; + class InputVariable; + class OutputVariable; + class RuleBlock; + class Rule; + class Norm; + class Defuzzifier; + class Term; + + class FL_EXPORT FllExporter : public Exporter { + protected: + std::string _indent; + std::string _separator; + public: + FllExporter(const std::string& indent = " ", const std::string& separator = "\n"); + virtual ~FllExporter(); + + virtual std::string name() const; + + virtual void setIndent(const std::string& indent); + virtual std::string getIndent() const; + + virtual void setSeparator(const std::string& separator); + virtual std::string getSeparator() const; + + virtual std::string toString(const Engine* engine) const; + + virtual std::string toString(const Variable* variable) const; + virtual std::string toString(const InputVariable* inputVariable) const; + virtual std::string toString(const OutputVariable* outputVariable) const; + virtual std::string toString(const RuleBlock* ruleBlock) const; + virtual std::string toString(const Rule* rule) const; + + virtual std::string toString(const Norm* norm) const; + virtual std::string toString(const Defuzzifier* defuzzifier) const; + virtual std::string toString(const Term* term) const; + }; + +} + +#endif /* FL_FLLEXPORTER_H */ + diff --git a/fl/imex/FllImporter.h b/fl/imex/FllImporter.h new file mode 100644 index 0000000..90dcdc8 --- /dev/null +++ b/fl/imex/FllImporter.h @@ -0,0 +1,73 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FllImporter.h + * Author: jcrada + * + * Created on 18 December 2013, 8:53 AM + */ + +#ifndef FL_FLLIMPORTER_H +#define FL_FLLIMPORTER_H + +#include "fl/fuzzylite.h" +#include "fl/imex/Importer.h" + +#include + +namespace fl { + class TNorm; + class SNorm; + class Term; + class Defuzzifier; + + class FL_EXPORT FllImporter : public Importer { + protected: + std::string _separator; + public: + FllImporter(const std::string& separator = "\n"); + virtual ~FllImporter(); + + virtual void setSeparator(const std::string& separator); + virtual std::string getSeparator() const; + + virtual std::string name() const; + virtual Engine* fromString(const std::string& fll) const; + + protected: + virtual void process(const std::string& tag, const std::string& block, Engine* engine) const; + virtual void processInputVariable(const std::string& block, Engine* engine) const; + virtual void processOutputVariable(const std::string& block, Engine* engine) const; + virtual void processRuleBlock(const std::string& block, Engine* engine) const; + + virtual TNorm* parseTNorm(const std::string& name) const; + virtual SNorm* parseSNorm(const std::string& name) const; + + virtual Term* parseTerm(const std::string& text, Engine* engine) const; + + virtual Defuzzifier* parseDefuzzifier(const std::string& line) const; + virtual std::pair parseRange(const std::string& line) const; + virtual bool parseBoolean(const std::string& boolean) const; + + virtual std::pair parseKeyValue(const std::string& text, + char separator = ':') const; + virtual std::string clean(const std::string& line) const; + + }; +} + +#endif /* FL_FLLIMPORTER_H */ + diff --git a/fl/imex/Importer.h b/fl/imex/Importer.h new file mode 100644 index 0000000..68b6d89 --- /dev/null +++ b/fl/imex/Importer.h @@ -0,0 +1,49 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Importer.h + * Author: jcrada + * + * Created on 25 December 2012, 11:43 PM + */ + +#ifndef FL_IMPORTER_H +#define FL_IMPORTER_H + +#include "fl/fuzzylite.h" + +#include + +namespace fl { + class Engine; + + class FL_EXPORT Importer { + public: + + Importer() { + } + + virtual ~Importer() { + } + + virtual std::string name() const = 0; + virtual Engine* fromString(const std::string& s) const = 0; + }; + +} + +#endif /* IMPORTER_H */ + diff --git a/fl/imex/JavaExporter.h b/fl/imex/JavaExporter.h new file mode 100644 index 0000000..8cdf25d --- /dev/null +++ b/fl/imex/JavaExporter.h @@ -0,0 +1,59 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: JavaExporter.h + * Author: jcrada + * + * Created on 28 November 2013, 10:20 PM + */ + +#ifndef FL_JAVAEXPORTER_H +#define FL_JAVAEXPORTER_H + +#include "fl/imex/Exporter.h" + +namespace fl { + + class Engine; + class InputVariable; + class OutputVariable; + class RuleBlock; + class Term; + class Defuzzifier; + class Norm; + + class FL_EXPORT JavaExporter : public Exporter { + public: + JavaExporter(); + virtual ~JavaExporter(); + + virtual std::string name() const; + + virtual std::string toString(const Engine* engine) const; + virtual std::string toString(const InputVariable* inputVariable, const Engine* engine) const; + virtual std::string toString(const OutputVariable* outputVariable, const Engine* engine) const; + virtual std::string toString(const RuleBlock* ruleBlock, const Engine* engine) const; + virtual std::string toString(const Term* term) const; + virtual std::string toString(const Defuzzifier* defuzzifier) const; + virtual std::string toString(const Norm* norm) const; + virtual std::string toString(scalar value) const; + + }; + +} + +#endif /* FL_JAVAEXPORTER_H */ + diff --git a/fl/norm/Norm.h b/fl/norm/Norm.h new file mode 100644 index 0000000..38727a3 --- /dev/null +++ b/fl/norm/Norm.h @@ -0,0 +1,47 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Norm.h + * Author: jcrada + * + * Created on 7 April 2013, 10:06 PM + */ + +#ifndef FL_NORM_H +#define FL_NORM_H + +#include "fl/fuzzylite.h" + +#include "fl/Operation.h" + +#include + +namespace fl { + + class FL_EXPORT Norm { + public: + + Norm() { } + + virtual ~Norm() { } + + virtual std::string className() const = 0; + virtual scalar compute(scalar a, scalar b) const = 0; + + }; +} +#endif /* FL_NORM_H */ + diff --git a/fl/norm/SNorm.h b/fl/norm/SNorm.h new file mode 100644 index 0000000..ead9907 --- /dev/null +++ b/fl/norm/SNorm.h @@ -0,0 +1,37 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SNorm.h + * Author: jcrada + * + * Created on 21 December 2012, 9:34 AM + */ + +#ifndef FL_SNORM_H +#define FL_SNORM_H + +#include "fl/norm/Norm.h" + +namespace fl { + + class FL_EXPORT SNorm : public Norm { + public: + SNorm(){} + virtual ~SNorm(){} + }; +} +#endif /* FL_SNORM_H */ + diff --git a/fl/norm/TNorm.h b/fl/norm/TNorm.h new file mode 100644 index 0000000..960517f --- /dev/null +++ b/fl/norm/TNorm.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: TNorm.h + * Author: jcrada + * + * Created on 21 December 2012, 9:33 AM + */ + +#ifndef FL_TNORM_H +#define FL_TNORM_H + +#include "fl/norm/Norm.h" + +namespace fl { + + class FL_EXPORT TNorm : public Norm { + public: + + TNorm() { + } + + virtual ~TNorm() { + } + }; +} +#endif /* TNORM_H */ + diff --git a/fl/norm/s/AlgebraicSum.h b/fl/norm/s/AlgebraicSum.h new file mode 100644 index 0000000..82432b6 --- /dev/null +++ b/fl/norm/s/AlgebraicSum.h @@ -0,0 +1,43 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: AlgebraicSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:07 AM + */ + +#ifndef FL_ALGEBRAICSUM_H +#define FL_ALGEBRAICSUM_H + +#include "fl/norm/SNorm.h" + + +namespace fl { + + class FL_EXPORT AlgebraicSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + + +} + +#endif /* FL_ALGEBRAICSUM_H */ + diff --git a/fl/norm/s/BoundedSum.h b/fl/norm/s/BoundedSum.h new file mode 100644 index 0000000..5ba56f2 --- /dev/null +++ b/fl/norm/s/BoundedSum.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: BoundedSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:09 AM + */ + +#ifndef FL_BOUNDEDSUM_H +#define FL_BOUNDEDSUM_H + +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT BoundedSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; +} + +#endif /* FL_BOUNDEDSUM_H */ + diff --git a/fl/norm/s/DrasticSum.h b/fl/norm/s/DrasticSum.h new file mode 100644 index 0000000..79b85c0 --- /dev/null +++ b/fl/norm/s/DrasticSum.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DrasticSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:10 AM + */ + +#ifndef FL_DRASTICSUM_H +#define FL_DRASTICSUM_H + +#include "fl/norm/SNorm.h" +namespace fl { + + class FL_EXPORT DrasticSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + +} + +#endif /* FL_DRASTICSUM_H */ + diff --git a/fl/norm/s/EinsteinSum.h b/fl/norm/s/EinsteinSum.h new file mode 100644 index 0000000..37ac8b6 --- /dev/null +++ b/fl/norm/s/EinsteinSum.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: EinsteinSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:11 AM + */ + +#ifndef FL_EINSTEINSUM_H +#define FL_EINSTEINSUM_H + +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT EinsteinSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + +} + +#endif /* FL_EINSTEINSUM_H */ + diff --git a/fl/norm/s/HamacherSum.h b/fl/norm/s/HamacherSum.h new file mode 100644 index 0000000..9c54eed --- /dev/null +++ b/fl/norm/s/HamacherSum.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HamacherSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:11 AM + */ + +#ifndef FL_HAMACHERSUM_H +#define FL_HAMACHERSUM_H + +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT HamacherSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + +} + +#endif /* FL_HAMACHERSUM_H */ + diff --git a/fl/norm/s/Maximum.h b/fl/norm/s/Maximum.h new file mode 100644 index 0000000..a4d80b0 --- /dev/null +++ b/fl/norm/s/Maximum.h @@ -0,0 +1,42 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Maximum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:06 AM + */ + +#ifndef FL_MAXIMUM_H +#define FL_MAXIMUM_H + +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT Maximum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + + +} + +#endif /* FL_MAXIMUM_H */ + diff --git a/fl/norm/s/NormalizedSum.h b/fl/norm/s/NormalizedSum.h new file mode 100644 index 0000000..a36b8c6 --- /dev/null +++ b/fl/norm/s/NormalizedSum.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: NormalizedSum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:10 AM + */ + +#ifndef FL_NORMALIZEDSUM_H +#define FL_NORMALIZEDSUM_H + +#include "fl/norm/SNorm.h" + +namespace fl { + + class FL_EXPORT NormalizedSum : public SNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + + static SNorm* constructor(); + }; + +} + +#endif /* FL_NORMALIZEDSUM_H */ + diff --git a/fl/norm/t/AlgebraicProduct.h b/fl/norm/t/AlgebraicProduct.h new file mode 100644 index 0000000..6006222 --- /dev/null +++ b/fl/norm/t/AlgebraicProduct.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: AlgebraicProduct.h + * Author: jcrada + * + * Created on 30 November 2013, 1:47 AM + */ + +#ifndef FL_ALGEBRAICPRODUCT_H +#define FL_ALGEBRAICPRODUCT_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT AlgebraicProduct : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + + +} + +#endif /* FL_ALGEBRAICPRODUCT_H */ + diff --git a/fl/norm/t/BoundedDifference.h b/fl/norm/t/BoundedDifference.h new file mode 100644 index 0000000..6d7c8a7 --- /dev/null +++ b/fl/norm/t/BoundedDifference.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: BoundedDifference.h + * Author: jcrada + * + * Created on 30 November 2013, 1:47 AM + */ + +#ifndef FL_BOUNDEDDIFFERENCE_H +#define FL_BOUNDEDDIFFERENCE_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT BoundedDifference : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + +} + +#endif /* FL_BOUNDEDDIFFERENCE_H */ + diff --git a/fl/norm/t/DrasticProduct.h b/fl/norm/t/DrasticProduct.h new file mode 100644 index 0000000..37ebda4 --- /dev/null +++ b/fl/norm/t/DrasticProduct.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DrasticProduct.h + * Author: jcrada + * + * Created on 30 November 2013, 1:47 AM + */ + +#ifndef FL_DRASTICPRODUCT_H +#define FL_DRASTICPRODUCT_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT DrasticProduct : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + + +} + +#endif /* FL_DRASTICPRODUCT_H */ + diff --git a/fl/norm/t/EinsteinProduct.h b/fl/norm/t/EinsteinProduct.h new file mode 100644 index 0000000..0049b59 --- /dev/null +++ b/fl/norm/t/EinsteinProduct.h @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: EinsteinProduct.h + * Author: jcrada + * + * Created on 30 November 2013, 1:48 AM + */ + +#ifndef FL_EINSTEINPRODUCT_H +#define FL_EINSTEINPRODUCT_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT EinsteinProduct : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + + +} + +#endif /* FL_EINSTEINPRODUCT_H */ + diff --git a/fl/norm/t/HamacherProduct.h b/fl/norm/t/HamacherProduct.h new file mode 100644 index 0000000..ddf301e --- /dev/null +++ b/fl/norm/t/HamacherProduct.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HamacherProduct.h + * Author: jcrada + * + * Created on 30 November 2013, 1:48 AM + */ + +#ifndef FL_HAMACHERPRODUCT_H +#define FL_HAMACHERPRODUCT_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT HamacherProduct : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + +} + +#endif /* FL_HAMACHERPRODUCT_H */ + diff --git a/fl/norm/t/Minimum.h b/fl/norm/t/Minimum.h new file mode 100644 index 0000000..045a741 --- /dev/null +++ b/fl/norm/t/Minimum.h @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Minimum.h + * Author: jcrada + * + * Created on 30 November 2013, 1:46 AM + */ + +#ifndef FL_MINIMUM_H +#define FL_MINIMUM_H + +#include "fl/norm/TNorm.h" + +namespace fl { + + class FL_EXPORT Minimum : public TNorm { + public: + std::string className() const; + scalar compute(scalar a, scalar b) const; + static TNorm* constructor(); + }; + +} + +#endif /* FL_MINIMUM_H */ + diff --git a/fl/rule/Antecedent.h b/fl/rule/Antecedent.h new file mode 100644 index 0000000..a198180 --- /dev/null +++ b/fl/rule/Antecedent.h @@ -0,0 +1,62 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Antecedent.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_ANTECEDENT_H +#define FL_ANTECEDENT_H + +#include "fl/fuzzylite.h" + +#include + +namespace fl { + class Engine; + class TNorm; + class SNorm; + class Expression; + + class FL_EXPORT Antecedent { + protected: + Expression* _root; + + public: + Antecedent(); + virtual ~Antecedent(); + + virtual Expression* getRoot() const; + + virtual void load(const std::string& antecedent, const Engine* engine); + + virtual scalar activationDegree(const TNorm* conjunction, const SNorm* disjunction, + const Expression* node) const; + + virtual scalar activationDegree(const TNorm* conjunction, const SNorm* disjunction) const; + + virtual std::string toString() const; + + virtual std::string toPrefix(const Expression* node = NULL) const; + virtual std::string toInfix(const Expression* node = NULL) const; + virtual std::string toPostfix(const Expression* node = NULL) const; + }; + +} + +#endif /* FL_ANTECEDENT_H */ diff --git a/fl/rule/Consequent.h b/fl/rule/Consequent.h new file mode 100644 index 0000000..1d6acb7 --- /dev/null +++ b/fl/rule/Consequent.h @@ -0,0 +1,55 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Consequent.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_CONSEQUENT_H +#define FL_CONSEQUENT_H + +#include "fl/fuzzylite.h" + +#include +#include + +namespace fl { + class Engine; + class Proposition; + class TNorm; + + class FL_EXPORT Consequent { + protected: + std::vector _conclusions; + + public: + Consequent(); + virtual ~Consequent(); + + virtual std::vector conclusions() const; + + virtual void load(const std::string& consequent, const Engine* engine); + + virtual void modify(scalar strength, const TNorm* activation); + + virtual std::string toString() const; + }; + +} + +#endif /* FL_CONSEQUENT_H */ diff --git a/fl/rule/Expression.h b/fl/rule/Expression.h new file mode 100644 index 0000000..58257ef --- /dev/null +++ b/fl/rule/Expression.h @@ -0,0 +1,73 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Expression.h + * + * Created on: 7/12/2012 + * Author: jcrada + */ + +#ifndef FL_EXPRESSION_H +#define FL_EXPRESSION_H + +#include "fl/fuzzylite.h" + +#include +#include + + + +namespace fl { + class Variable; + class Hedge; + class Term; + + class FL_EXPORT Expression { + public: + bool isOperator; + + Expression(bool isOperator); + virtual ~Expression(); + + virtual std::string toString() const = 0; + }; + + class FL_EXPORT Proposition : public Expression { + public: + Variable* variable; + std::vector hedges; + Term* term; + + Proposition(); + + std::string toString() const; + }; + + + class FL_EXPORT Operator : public Expression { + public: + std::string name; + Expression* left; + Expression* right; + + Operator(); + ~Operator(); + + std::string toString() const; + }; + +} +#endif /* FL_FUZZYEXPRESSION_H */ diff --git a/fl/rule/Rule.h b/fl/rule/Rule.h new file mode 100644 index 0000000..98c30f9 --- /dev/null +++ b/fl/rule/Rule.h @@ -0,0 +1,88 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Rule.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_RULE_H +#define FL_RULE_H + +#include "fl/fuzzylite.h" + +#include + +namespace fl { + class Engine; + class Antecedent; + class Consequent; + class TNorm; + class SNorm; + + class FL_EXPORT Rule { + protected: + scalar _weight; + std::string _text; + Antecedent* _antecedent; + Consequent* _consequent; + + virtual void setText(const std::string& text); + public: + Rule(); + virtual ~Rule(); + + virtual void setAntecedent(Antecedent* antecedent); + virtual Antecedent* getAntecedent() const; + + virtual void setConsequent(Consequent* consequent); + virtual Consequent* getConsequent() const; + + virtual scalar activationDegree(const TNorm* tnorm, const SNorm* snorm) const; + virtual void activate(scalar strength, const TNorm* activation) const; + + virtual void setWeight(scalar weight); + virtual scalar getWeight() const; + + virtual std::string getText() const; + + virtual std::string toString() const; + + static Rule* parse(const std::string& rule, const Engine* engine); + + static std::string FL_IF; + static std::string FL_IS; + static std::string FL_EQUALS; + static std::string FL_THEN; + static std::string FL_AND; + static std::string FL_OR; + static std::string FL_WITH; + + static std::string ifKeyword(); + static std::string isKeyword(); + static std::string assignKeyword(); + static std::string thenKeyword(); + static std::string andKeyword(); + static std::string orKeyword(); + static std::string withKeyword(); + + + }; +} + + +#endif /* FL_RULE_H */ diff --git a/fl/rule/RuleBlock.h b/fl/rule/RuleBlock.h new file mode 100644 index 0000000..4bbbc85 --- /dev/null +++ b/fl/rule/RuleBlock.h @@ -0,0 +1,83 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * RuleBlock.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_RULEBLOCK_H +#define FL_RULEBLOCK_H + +#include "fl/fuzzylite.h" + +#include +#include + +namespace fl { + + class Rule; + class TNorm; + class SNorm; + + class FL_EXPORT RuleBlock { + protected: + std::vector _rules; + std::string _name; + const TNorm* _conjunction; + const SNorm* _disjunction; + const TNorm* _activation; + bool _enabled; + public: + RuleBlock(const std::string& name = ""); + virtual ~RuleBlock(); + + virtual void activate(); + + virtual void setName(std::string name); + virtual std::string getName() const; + + virtual void setConjunction(const TNorm* conjunction); + virtual const TNorm* getConjunction() const; + + virtual void setDisjunction(const SNorm* disjunction); + virtual const SNorm* getDisjunction() const; + + virtual void setActivation(const TNorm* activation); + virtual const TNorm* getActivation() const; + + virtual void setEnabled(bool enabled); + virtual bool isEnabled() const; + + virtual std::string toString() const; + + /** + * Operations for iterable datatype _rules + */ + virtual void addRule(Rule* rule); + virtual void insertRule(Rule* rule, int index); + virtual Rule* getRule(int index) const; + virtual Rule* removeRule(int index); + virtual int numberOfRules() const; + virtual const std::vector& rules() const; + + + + }; + +} +#endif /* RULEBLOCK_H */ diff --git a/fl/term/Accumulated.h b/fl/term/Accumulated.h new file mode 100644 index 0000000..46e2ea8 --- /dev/null +++ b/fl/term/Accumulated.h @@ -0,0 +1,77 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Accumulated.h + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#ifndef FL_ACCUMULATED_H +#define FL_ACCUMULATED_H + +#include "fl/term/Term.h" + +#include + +namespace fl { + + class SNorm; + + class FL_EXPORT Accumulated : public Term { + protected: + std::vector _terms; + scalar _minimum, _maximum; + const SNorm* _accumulation; + public: + Accumulated(const std::string& name = "", + scalar minimum = -fl::inf, + scalar maximum = fl::inf, + const SNorm* accumulation = NULL); + virtual ~Accumulated(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual Accumulated* copy() const; + + virtual scalar membership(scalar x) const; + + + virtual void setMinimum(scalar minimum); + virtual scalar getMinimum() const; + + virtual void setMaximum(scalar maximum); + virtual scalar getMaximum() const; + + virtual void setAccumulation(const SNorm* accumulation); + virtual const SNorm* getAccumulation() const; + + /** + * Operations for std::vector _terms + */ + virtual void addTerm(const Term* term); + virtual const Term* getTerm(int index) const; + virtual const Term* removeTerm(int index); + virtual int numberOfTerms() const; + virtual const std::vector& terms() const; + virtual bool isEmpty() const; + virtual void clear(); + }; + +} +#endif /* FL_ACCUMULATED_H */ diff --git a/fl/term/Bell.h b/fl/term/Bell.h new file mode 100644 index 0000000..f114150 --- /dev/null +++ b/fl/term/Bell.h @@ -0,0 +1,64 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Bell.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_BELL_H +#define FL_BELL_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Bell : public Term { + protected: + scalar _center; + scalar _width; + scalar _slope; + public: + Bell(const std::string& name = "", + scalar center = fl::nan, + scalar width = fl::nan, + scalar slope = fl::nan); + virtual ~Bell(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setCenter(scalar center); + virtual scalar getCenter() const; + + virtual void setWidth(scalar width); + virtual scalar getWidth() const; + + virtual void setSlope(scalar slope); + virtual scalar getSlope() const; + + virtual Bell* copy() const; + + static Term* constructor(); + + }; + +} +#endif /* FL_BELL_H */ diff --git a/fl/term/Constant.h b/fl/term/Constant.h new file mode 100644 index 0000000..37950d7 --- /dev/null +++ b/fl/term/Constant.h @@ -0,0 +1,55 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Constant.h + * Author: jcrada + * + * Created on 8 May 2013, 8:21 PM + */ + +#ifndef FL_CONSTANT_H +#define FL_CONSTANT_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Constant : public Term { + protected: + scalar _value; + + public: + Constant(const std::string& name = "", + scalar value = fl::nan); + virtual ~Constant(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setValue(scalar value); + virtual scalar getValue() const; + + virtual Constant* copy() const; + + static Term* constructor(); + }; +} + +#endif /* FL_CONSTANT_H */ + diff --git a/fl/term/Discrete.h b/fl/term/Discrete.h new file mode 100644 index 0000000..6f4cd5f --- /dev/null +++ b/fl/term/Discrete.h @@ -0,0 +1,69 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Discrete.h + * + * Created on: 5/12/2012 + * Author: jcrada + */ + +#ifndef FL_DISCRETE_H +#define FL_DISCRETE_H + +#include "fl/term/Term.h" + +#include "fl/Exception.h" + +#include +#include + +namespace fl { + + class FL_EXPORT Discrete : public Term { + public: + std::vector x; + std::vector y; + + Discrete(const std::string& name = ""); + + Discrete(const std::string& name, + const std::vector& x, + const std::vector& y); + + Discrete(const std::string& name, + const std::vector >& xy); + + virtual ~Discrete(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + //Warning: this method is unsafe. Make sure you use it correctly. + template + static Discrete* create(const std::string& name, int argc, + T x1, T y1, ...) throw (fl::Exception); + + virtual scalar membership(scalar x) const; + + virtual Discrete* copy() const; + + static Term* constructor(); + + }; + +} +#endif /* FL_DISCRETE_H */ diff --git a/fl/term/Function.h b/fl/term/Function.h new file mode 100644 index 0000000..59500aa --- /dev/null +++ b/fl/term/Function.h @@ -0,0 +1,181 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Function.h + * Author: jcrada + * + * Created on 30 March 2013, 1:13 PM + */ + +#ifndef FL_FUNCTION_H +#define FL_FUNCTION_H + +#include "fl/term/Term.h" + +#include +#include + +namespace fl { + + class Engine; + + class FL_EXPORT Function : public Term { + public: + + /**************************** + * Parsing Elements + ****************************/ + + public: + typedef double(*Unary)(double); + typedef double(*Binary)(double, double); + + struct FL_EXPORT Element { + std::string name; + Unary unary; + Binary binary; + short arity; + short associativity; + Element(const std::string& name); + Element(const std::string& name, Unary unary, short associativity = -1); + Element(const std::string& name, Binary binary, short associativity = -1); + virtual ~Element(); + + virtual std::string toString() const = 0; + + }; + + struct FL_EXPORT Operator : public Element { + short precedence; + + Operator(const std::string& name, Unary unary, short precedence = 0, short associativity = -1); + Operator(const std::string& name, Binary unary, short precedence = 0, short associativity = -1); + + std::string toString() const; + }; + + struct FL_EXPORT BuiltInFunction : public Element { + BuiltInFunction(const std::string& name, Unary functionPointer, short associativity = -1); + BuiltInFunction(const std::string& name, Binary functionPointer, short associativity = -1); + std::string toString() const; + }; + + /************************** + * Tree elements, wrap Elements into Nodes. + **************************/ + + struct FL_EXPORT Node { + Operator* foperator; + BuiltInFunction* function; + std::string variable; + scalar value; + Node* left; + Node* right; + + Node(Operator* foperator, Node* left = NULL, Node* right = NULL); + Node(BuiltInFunction* function, Node* left = NULL, Node* right = NULL); + Node(const std::string& variable); + Node(scalar value); + + scalar evaluate(const std::map* + variables = NULL) const; + + std::string toString() const; + std::string toPrefix(const Node* node = NULL) const; + std::string toInfix(const Node* node = NULL) const; + std::string toPostfix(const Node* node = NULL) const; + }; + + + + + /****************************** + * Term + ******************************/ + + private: + virtual void loadOperators(); + + protected: + std::string _formula; + const Engine* _engine; + + /** + * Parsing methods + */ + + Operator* getOperator(const std::string& key) const; + + BuiltInFunction* getBuiltInFunction(const std::string& key) const; + + + public: + Node* root; + std::map variables; + std::map operators; + std::map functions; + Function(const std::string& name = "", + const std::string& formula = "", const Engine* engine = NULL); + virtual ~Function(); + + static Function* create(const std::string& name, + const std::string& formula, + const Engine* engine = NULL, + bool requiresFunctions = true) throw (fl::Exception); + + virtual scalar membership(scalar x) const; + + virtual scalar evaluate(const std::map* variables) const; + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual void setFormula(const std::string& formula); + virtual std::string getFormula() const; + + virtual void setEngine(const Engine* engine); + virtual const Engine* getEngine() const; + + virtual void load() throw (fl::Exception); + + virtual void load(const std::string& formula, + const Engine* engine = NULL) throw (fl::Exception); + + virtual void loadBuiltInFunctions(); + + virtual Node* parse(const std::string& formula) throw (fl::Exception); + + virtual std::string toPostfix(const std::string& formula) const throw (fl::Exception); + + virtual std::string space(const std::string& formula) const; + + virtual bool isOperand(const std::string& token) const; + virtual bool isBuiltInFunction(const std::string& token) const; + virtual bool isOperator(const std::string& token) const; + + virtual Function* copy() const; + + static Term* constructor(); + + static void main(); + + }; + +} + +#endif /* FL_FUNCTION_H */ + diff --git a/fl/term/Gaussian.h b/fl/term/Gaussian.h new file mode 100644 index 0000000..3bcf2e5 --- /dev/null +++ b/fl/term/Gaussian.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Gaussian.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_GAUSSIAN_H +#define FL_GAUSSIAN_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Gaussian : public Term { + protected: + scalar _mean; + scalar _standardDeviation; + + public: + Gaussian(const std::string& name = "", + scalar mean = fl::nan, + scalar standardDeviation = fl::nan); + virtual ~Gaussian(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setMean(scalar c); + virtual scalar getMean() const; + + virtual void setStandardDeviation(scalar sigma); + virtual scalar getStandardDeviation() const; + + virtual Gaussian* copy() const; + static Term* constructor(); + }; + +} +#endif /* FL_GAUSSIAN_H */ diff --git a/fl/term/GaussianProduct.h b/fl/term/GaussianProduct.h new file mode 100644 index 0000000..26de94a --- /dev/null +++ b/fl/term/GaussianProduct.h @@ -0,0 +1,69 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: GaussianProduct.h + * Author: jcrada + * + * Created on 30 December 2012, 6:05 PM + */ + +#ifndef FL_GAUSSIANPRODUCT_H +#define FL_GAUSSIANPRODUCT_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT GaussianProduct : public Term { + protected: + scalar _meanA; + scalar _standardDeviationA; + scalar _meanB; + scalar _standardDeviationB; + + public: + GaussianProduct(const std::string& name = "", + scalar meanA = fl::nan, + scalar standardDeviationA = fl::nan, + scalar meanB = fl::nan, + scalar standardDeviationB = fl::nan); + + virtual ~GaussianProduct(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setMeanA(scalar meanA); + virtual scalar getMeanA() const; + + virtual void setStandardDeviationA(scalar sigmaA); + virtual scalar getStandardDeviationA() const; + + virtual void setMeanB(scalar meanB); + virtual scalar getMeanB() const; + + virtual void setStandardDeviationB(scalar sigmaB); + virtual scalar getStandardDeviationB() const; + + virtual GaussianProduct* copy() const; + static Term* constructor(); + }; +} +#endif /* FL_GAUSSIANPRODUCT_H */ + diff --git a/fl/term/Linear.h b/fl/term/Linear.h new file mode 100644 index 0000000..098b075 --- /dev/null +++ b/fl/term/Linear.h @@ -0,0 +1,64 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Linear.h + * Author: jcrada + * + * Created on 8 May 2013, 3:42 PM + */ + +#ifndef FL_LINEAR_H +#define FL_LINEAR_H + +#include "fl/term/Term.h" +#include "fl/variable/InputVariable.h" + +namespace fl { + + class FL_EXPORT Linear : public Term { + public: + std::vector coefficients; + std::vector inputVariables; + Linear(const std::string& name = "", + const std::vector& coefficients = std::vector(), + const std::vector& inputVariables = std::vector()); + virtual ~Linear(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + //Warning: this method is unsafe, make sure you use it correctly. + template + static Linear* create(const std::string& name, const std::vector& inputVariables, + T firstCoefficient, ...); + + virtual scalar membership(scalar x) const; + + virtual void set(const std::vector& coefficients, + const std::vector& inputVariables) throw (fl::Exception); + virtual void set(const std::vector& coefficients, + const std::vector& inputVariables) throw (fl::Exception); + + virtual Linear* copy() const; + + static Term* constructor(); + }; + +} + +#endif /* FL_LINEAR_H */ + diff --git a/fl/term/PiShape.h b/fl/term/PiShape.h new file mode 100644 index 0000000..d915f1a --- /dev/null +++ b/fl/term/PiShape.h @@ -0,0 +1,70 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: PiShape.h + * Author: jcrada + * + * Created on 22 December 2012, 5:15 PM + */ + +#ifndef FL_PISHAPE_H +#define FL_PISHAPE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT PiShape : public Term { + protected: + scalar _bottomLeft; + scalar _topLeft; + scalar _topRight; + scalar _bottomRight; + + public: + PiShape(const std::string& name = "", + scalar bottomLeft = fl::nan, + scalar topLeft = fl::nan, + scalar topRight = fl::nan, + scalar bottomRight = fl::nan); + + virtual ~PiShape(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setBottomLeft(scalar a); + virtual scalar getBottomLeft() const; + + virtual void setTopLeft(scalar b); + virtual scalar getTopLeft() const; + + virtual void setTopRight(scalar d); + virtual scalar getTopRight() const; + + virtual void setBottomRight(scalar c); + virtual scalar getBottomRight() const; + + virtual PiShape* copy() const; + static Term* constructor(); + }; +} + +#endif /* FL_PISHAPE_H */ + diff --git a/fl/term/Ramp.h b/fl/term/Ramp.h new file mode 100644 index 0000000..32b7a99 --- /dev/null +++ b/fl/term/Ramp.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Ramp.h + * Author: jcrada + * + * Created on 22 December 2012, 4:27 PM + */ + +#ifndef FL_RAMP_H +#define FL_RAMP_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Ramp : public Term { + protected: + scalar _start, _end; + + public: + Ramp(const std::string& name = "", + scalar start = -fl::inf, + scalar end = fl::inf); + virtual ~Ramp(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setStart(scalar start); + virtual scalar getStart() const; + + virtual void setEnd(scalar end); + virtual scalar getEnd() const; + + virtual Ramp* copy() const; + + static Term* constructor(); + }; +} +#endif /* FL_RAMP_H */ + diff --git a/fl/term/Rectangle.h b/fl/term/Rectangle.h new file mode 100644 index 0000000..6256a85 --- /dev/null +++ b/fl/term/Rectangle.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Rectangle.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_RECTANGLE_H +#define FL_RECTANGLE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Rectangle : public Term { + protected: + scalar _start, _end; + + public: + Rectangle(const std::string& name = "", + scalar start = -fl::inf, + scalar end = fl::inf); + virtual ~Rectangle(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setStart(scalar start); + virtual scalar getStart() const; + + virtual void setEnd(scalar end); + virtual scalar getEnd() const; + + virtual Rectangle* copy() const; + + static Term* constructor(); + }; + +} +#endif /* FL_RECTANGLE_H */ diff --git a/fl/term/SShape.h b/fl/term/SShape.h new file mode 100644 index 0000000..3031f07 --- /dev/null +++ b/fl/term/SShape.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SShape.h + * Author: jcrada + * + * Created on 22 December 2012, 4:43 PM + */ + +#ifndef FL_SSHAPE_H +#define FL_SSHAPE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT SShape : public Term { + protected: + scalar _start, _end; + + public: + SShape(const std::string& name = "", + scalar _start = -fl::inf, + scalar _end = fl::inf); + virtual ~SShape(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setStart(scalar start); + virtual scalar getStart() const; + + virtual void setEnd(scalar end); + virtual scalar getEnd() const; + + virtual SShape* copy() const; + static Term* constructor(); + }; +} + +#endif /* FL_SSHAPE_H */ + diff --git a/fl/term/Sigmoid.h b/fl/term/Sigmoid.h new file mode 100644 index 0000000..75ca543 --- /dev/null +++ b/fl/term/Sigmoid.h @@ -0,0 +1,58 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Sigmoid.h + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#ifndef FL_SIGMOID_H +#define FL_SIGMOID_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Sigmoid : public Term { + protected: + scalar _inflection; + scalar _slope; + public: + Sigmoid(const std::string& name = "", + scalar inflection = fl::nan, + scalar slope = fl::nan); + virtual ~Sigmoid(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setInflection(scalar inflection); + virtual scalar getInflection() const; + + virtual void setSlope(scalar slope); + virtual scalar getSlope() const; + + virtual Sigmoid* copy() const; + + static Term* constructor(); + }; + +} +#endif /* FL_SIGMOID_H */ diff --git a/fl/term/SigmoidDifference.h b/fl/term/SigmoidDifference.h new file mode 100644 index 0000000..789d7e5 --- /dev/null +++ b/fl/term/SigmoidDifference.h @@ -0,0 +1,69 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SigmoidDifference.h + * Author: jcrada + * + * Created on 30 December 2012, 5:58 PM + */ + +#ifndef FL_SIGMOIDDIFFERENCE_H +#define FL_SIGMOIDDIFFERENCE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT SigmoidDifference : public Term { + protected: + scalar _left; + scalar _rising; + scalar _falling; + scalar _right; + + public: + SigmoidDifference(const std::string& name = "", + scalar left = fl::nan, + scalar rising = fl::nan, + scalar falling = fl::nan, + scalar right = fl::nan); + virtual ~SigmoidDifference(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setLeft(scalar leftInflection); + virtual scalar getLeft() const; + + virtual void setRising(scalar risingSlope); + virtual scalar getRising() const; + + virtual void setFalling(scalar fallingSlope); + virtual scalar getFalling() const; + + virtual void setRight(scalar rightInflection); + virtual scalar getRight() const; + + virtual SigmoidDifference* copy() const; + + static Term* constructor(); + }; +} +#endif /* FL_SIGMOIDDIFFERENCE_H */ + diff --git a/fl/term/SigmoidProduct.h b/fl/term/SigmoidProduct.h new file mode 100644 index 0000000..c097989 --- /dev/null +++ b/fl/term/SigmoidProduct.h @@ -0,0 +1,68 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SigmoidProduct.h + * Author: jcrada + * + * Created on 30 December 2012, 5:41 PM + */ + +#ifndef FL_SIGMOIDPRODUCT_H +#define FL_SIGMOIDPRODUCT_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT SigmoidProduct : public Term { + protected: + scalar _left; + scalar _rising; + scalar _falling; + scalar _right; + + public: + SigmoidProduct(const std::string& name = "", + scalar left = fl::nan, + scalar rising = fl::nan, + scalar falling = fl::nan, + scalar right = fl::nan); + virtual ~SigmoidProduct(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setLeft(scalar leftInflection); + virtual scalar getLeft() const; + + virtual void setRising(scalar risingSlope); + virtual scalar getRising() const; + + virtual void setFalling(scalar fallingSlope); + virtual scalar getFalling() const; + + virtual void setRight(scalar rightInflection); + virtual scalar getRight() const; + + virtual SigmoidProduct* copy() const; + static Term* constructor(); + }; +} +#endif /* FL_SIGMOIDPRODUCT_H */ + diff --git a/fl/term/Term.h b/fl/term/Term.h new file mode 100644 index 0000000..0933b2b --- /dev/null +++ b/fl/term/Term.h @@ -0,0 +1,67 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Term.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_TERM_H +#define FL_TERM_H + +#include "fl/fuzzylite.h" + +#include "fl/Operation.h" + +#include +#include +#include +#include +#include + +namespace fl { + + class FL_EXPORT Term { + protected: + std::string _name; + + public: + + Term(const std::string& name = ""); + virtual ~Term(); + + /** + * Sets the name of this term. It must be a valid id (see Op::makeValidId) + * @param name + */ + virtual void setName(const std::string& name); + virtual std::string getName() const; + + virtual std::string toString() const; + + virtual std::string className() const = 0; + virtual std::string parameters() const = 0; + virtual void configure(const std::string& parameters) = 0; + + virtual scalar membership(scalar x) const = 0; + + virtual Term* copy() const = 0; + + }; + +} +#endif /* FL_TERM_H */ diff --git a/fl/term/Thresholded.h b/fl/term/Thresholded.h new file mode 100644 index 0000000..f0138ae --- /dev/null +++ b/fl/term/Thresholded.h @@ -0,0 +1,62 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Thresholded.h + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#ifndef FL_THRESHOLDED_H +#define FL_THRESHOLDED_H + +#include "fl/term/Term.h" + +namespace fl { + class TNorm; + + class FL_EXPORT Thresholded : public Term { + protected: + const Term* _term; + scalar _threshold; + const TNorm* _activation; + + public: + Thresholded(const Term* term = NULL, scalar threshold = 1.0, + const TNorm* activationOperator = NULL); + + virtual ~Thresholded(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setTerm(const Term* term); + virtual const Term* getTerm() const; + + virtual void setThreshold(scalar threshold); + virtual scalar getThreshold() const; + + virtual void setActivation(const TNorm* activation); + virtual const TNorm* getActivation() const; + + virtual Thresholded* copy() const; + }; + +} +#endif /* FL_THRESHOLDED_H */ diff --git a/fl/term/Trapezoid.h b/fl/term/Trapezoid.h new file mode 100644 index 0000000..c93772d --- /dev/null +++ b/fl/term/Trapezoid.h @@ -0,0 +1,65 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Trapezoid.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_TRAPEZOID_H +#define FL_TRAPEZOID_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Trapezoid : public Term { + protected: + scalar _a, _b, _c, _d; + public: + Trapezoid(const std::string& name = "", + scalar a = -fl::inf, + scalar b = fl::nan, + scalar c = fl::nan, + scalar d = fl::inf); + virtual ~Trapezoid(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setA(scalar a); + virtual scalar getA() const; + + virtual void setB(scalar b); + virtual scalar getB() const; + + virtual void setC(scalar c); + virtual scalar getC() const; + + virtual void setD(scalar d); + virtual scalar getD() const; + + virtual Trapezoid* copy() const; + + static Term* constructor(); + }; + +} +#endif /* FL_TRAPEZOID_H */ diff --git a/fl/term/Triangle.h b/fl/term/Triangle.h new file mode 100644 index 0000000..ac7be60 --- /dev/null +++ b/fl/term/Triangle.h @@ -0,0 +1,64 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Triangle.h + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#ifndef FL_TRIANGLE_H +#define FL_TRIANGLE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT Triangle : public Term { + protected: + scalar _a; + scalar _b; + scalar _c; + public: + Triangle(const std::string& name = "", + scalar a = fl::nan, + scalar b = fl::nan, + scalar c = fl::nan); + virtual ~Triangle(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setA(scalar a); + virtual scalar getA() const; + + virtual void setB(scalar b); + virtual scalar getB() const; + + virtual void setC(scalar c); + virtual scalar getC() const; + + virtual Triangle* copy() const; + + static Term* constructor(); + + }; + +} +#endif /* FL_TRIANGLE_H */ diff --git a/fl/term/ZShape.h b/fl/term/ZShape.h new file mode 100644 index 0000000..f7a7c5c --- /dev/null +++ b/fl/term/ZShape.h @@ -0,0 +1,60 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: ZShape.h + * Author: jcrada + * + * Created on 22 December 2012, 5:07 PM + */ + +#ifndef FL_ZSHAPE_H +#define FL_ZSHAPE_H + +#include "fl/term/Term.h" + +namespace fl { + + class FL_EXPORT ZShape : public Term { + protected: + scalar _start, _end; + + public: + ZShape(const std::string& name = "", + scalar _start = -fl::inf, + scalar _end = fl::inf); + + virtual ~ZShape(); + + virtual std::string className() const; + virtual std::string parameters() const; + virtual void configure(const std::string& parameters); + + virtual scalar membership(scalar x) const; + + virtual void setStart(scalar start); + virtual scalar getStart() const; + + virtual void setEnd(scalar end); + virtual scalar getEnd() const; + + virtual ZShape* copy() const; + + static Term* constructor(); + + }; +} +#endif /* ZSHAPE_H */ + diff --git a/fl/variable/InputVariable.h b/fl/variable/InputVariable.h new file mode 100644 index 0000000..317aa9e --- /dev/null +++ b/fl/variable/InputVariable.h @@ -0,0 +1,46 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * InputVariable.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_INPUTVARIABLE_H +#define FL_INPUTVARIABLE_H + +#include "fl/variable/Variable.h" + +namespace fl { + + class FL_EXPORT InputVariable : public Variable { + protected: + scalar _inputValue; + public: + InputVariable(const std::string& name = "", + scalar minimum = -fl::inf, + scalar maximum = fl::inf); + virtual ~InputVariable(); + + virtual void setInputValue(scalar inputValue); + virtual scalar getInputValue() const; + + virtual std::string toString() const; + }; + +} +#endif /* FL_INPUTVARIABLE_H */ diff --git a/fl/variable/OutputVariable.h b/fl/variable/OutputVariable.h new file mode 100644 index 0000000..bd8d60e --- /dev/null +++ b/fl/variable/OutputVariable.h @@ -0,0 +1,76 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * OutputVariable.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_OUTPUTVARIABLE_H +#define FL_OUTPUTVARIABLE_H + +#include "fl/variable/Variable.h" + +#include + +namespace fl { + class Accumulated; + class Defuzzifier; + + class FL_EXPORT OutputVariable : public Variable { + protected: + Accumulated* _fuzzyOutput; + Defuzzifier* _defuzzifier; + scalar _defaultValue; + scalar _lastValidOutput; + bool _lockOutputRange; + bool _lockValidOutput; + + public: + OutputVariable(const std::string& name = "", + scalar minimum = -fl::inf, scalar maximum = fl::inf); + virtual ~OutputVariable(); + + virtual Accumulated* fuzzyOutput() const; + + virtual void setMinimum(scalar minimum); + virtual void setMaximum(scalar maximum); + + virtual void setDefuzzifier(Defuzzifier* defuzzifier); + virtual Defuzzifier* getDefuzzifier() const; + + virtual void setDefaultValue(scalar defaultValue); + virtual scalar getDefaultValue() const; + + virtual void setLastValidOutput(scalar defuzzifiedValue); + virtual scalar getLastValidOutput() const; + + virtual void setLockOutputRange(bool lockOutputRange); + virtual bool isLockingOutputRange() const; + + virtual void setLockValidOutput(bool lockValidOutput); + virtual bool isLockingValidOutput() const; + + virtual scalar defuzzify(); + virtual scalar defuzzifyNoLocks() const; + + virtual std::string toString() const; + + }; + +} +#endif /* FL_OUTPUTVARIABLE_H */ diff --git a/fl/variable/Variable.h b/fl/variable/Variable.h new file mode 100644 index 0000000..cf6390c --- /dev/null +++ b/fl/variable/Variable.h @@ -0,0 +1,102 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Variable.h + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#ifndef FL_VARIABLE_H +#define FL_VARIABLE_H + +#include "fl/fuzzylite.h" + + +#include "fl/defuzzifier/Centroid.h" +#include "fl/norm/Norm.h" + +#include +#include +#include +#include +namespace fl { + + class Term; + + class FL_EXPORT Variable { + protected: + std::string _name; + std::vector _terms; + scalar _minimum, _maximum; + bool _enabled; + + struct SortByCoG { + std::map centroids; + + bool operator() (const Term* a, const Term * b) { + return fl::Op::isLt( + centroids.find(a)->second, + centroids.find(b)->second); + } + }; + + public: + Variable(const std::string& name = "", + scalar minimum = -fl::inf, + scalar maximum = fl::inf); + Variable(const Variable& copy); + + virtual ~Variable(); + + virtual void setName(const std::string& name); + virtual std::string getName() const; + + virtual void setRange(scalar minimum, scalar maximum); + virtual scalar range() const; + + virtual void setMinimum(scalar minimum); + virtual scalar getMinimum() const; + + virtual void setMaximum(scalar maximum); + virtual scalar getMaximum() const; + + virtual void setEnabled(bool enabled); + virtual bool isEnabled() const ; + + virtual std::string fuzzify(scalar x) const; + virtual Term* highestMembership(scalar x, scalar* yhighest = NULL) const; + + virtual std::string toString() const; + + /** + * Operations for iterable datatype _terms + */ + virtual void sort(); + virtual void addTerm(Term* term); + virtual void insertTerm(Term* term, int index); + virtual Term* getTerm(int index) const; + virtual Term* getTerm(const std::string& name) const; + virtual bool hasTerm(const std::string& name) const; + virtual Term* removeTerm(int index); + virtual int numberOfTerms() const; + virtual const std::vector& terms() const; + + }; + +} + +#endif /* FL_VARIABLE_H */ diff --git a/fuzzylite.doxygen b/fuzzylite.doxygen new file mode 100644 index 0000000..4ee925f --- /dev/null +++ b/fuzzylite.doxygen @@ -0,0 +1,1781 @@ +# Doxyfile 1.7.6.1 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" "). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or sequence of words) that should +# identify the project. Note that if you do not use Doxywizard you need +# to put quotes around the project name if it contains spaces. + +PROJECT_NAME = "fuzzylite" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = 4.0 + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer +# a quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = "A Fuzzy Logic Control Library in C++" + +# With the PROJECT_LOGO tag one can specify an logo or icon that is +# included in the documentation. The maximum height of the logo should not +# exceed 55 pixels and the maximum width should not exceed 200 pixels. +# Doxygen will copy the logo to the output directory. + +PROJECT_LOGO = ../fuzzylite.png + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = docs + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = YES + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful if your file system +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding +# "class=itcl::class" will allow you to use the command class in the +# itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this +# tag. The format is ext=language, where ext is a file extension, and language +# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C, +# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make +# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C +# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions +# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also makes the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = YES + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and +# unions are shown inside the group in which they are included (e.g. using +# @ingroup) instead of on a separate page (for HTML and Man pages) or +# section (for LaTeX and RTF). + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and +# unions with only public data fields will be shown inline in the documentation +# of the scope in which they are defined (i.e. file, namespace, or group +# documentation), provided this scope is documented. If set to NO (the default), +# structs, classes, and unions are shown on a separate page (for HTML and Man +# pages) or section (for LaTeX and RTF). + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penalty. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will roughly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols. + +SYMBOL_CACHE_SIZE = 0 + +# Similar to the SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be +# set using LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given +# their name and scope. Since this can be an expensive process and often the +# same symbol appear multiple times in the code, doxygen keeps a cache of +# pre-resolved symbols. If the cache is too small doxygen will become slower. +# If the cache is too large, memory is wasted. The cache size is given by this +# formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespaces are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen +# will list include files with double quotes in the documentation +# rather than with sharp brackets. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen +# will sort the (brief and detailed) documentation of class members so that +# constructors and destructors are listed first. If set to NO (the default) +# the constructors will appear in the respective orders defined by +# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. +# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO +# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to +# do proper type resolution of all parameters of a function it will reject a +# match between the prototype and the implementation of a member function even +# if there is only one candidate or it is obvious which candidate to choose +# by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen +# will still accept a match between prototype and implementation in such cases. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or macro consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and macros in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. +# This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. The create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. +# You can optionally specify a file name after the option, if omitted +# DoxygenLayout.xml will be used as the name of the layout file. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files +# containing the references data. This must be a list of .bib files. The +# .bib extension is automatically appended if omitted. Using this command +# requires the bibtex tool to be installed. See also +# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style +# of the bibliography can be controlled using LATEX_BIB_STYLE. To use this +# feature you need bibtex and perl available in the search path. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# The WARN_NO_PARAMDOC option can be enabled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = YES + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh +# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py +# *.f90 *.f *.for *.vhd *.vhdl + +FILE_PATTERNS = *.h *.cpp + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = bin/ CMakeFiles/ docs/ lib/ nbproject/ + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. +# If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. +# Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. +# The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty or if +# non of the patterns match the file name, INPUT_FILTER is applied. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) +# and it is also possible to disable source filtering for a specific pattern +# using *.ext= (so without naming a filter). This option only has effect when +# FILTER_SOURCE_FILES is enabled. + +FILTER_SOURCE_PATTERNS = + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. +# Otherwise they will link to the documentation. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = YES + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. Note that when using a custom header you are responsible +# for the proper inclusion of any scripts and style sheets that doxygen +# needs, which is dependent on the configuration options used. +# It is advised to generate a default header using "doxygen -w html +# header.html footer.html stylesheet.css YourConfigFile" and then modify +# that header. Note that the header is subject to change so you typically +# have to redo this when upgrading to a newer version of doxygen or when +# changing the value of configuration settings such as GENERATE_TREEVIEW! + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# style sheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that +# the files will be copied as-is; there are no commands or markers available. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. +# Doxygen will adjust the colors in the style sheet and background images +# according to this color. Hue is specified as an angle on a colorwheel, +# see http://en.wikipedia.org/wiki/Hue for more information. +# For instance the value 0 represents red, 60 is yellow, 120 is green, +# 180 is cyan, 240 is blue, 300 purple, and 360 is red again. +# The allowed range is 0 to 359. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of +# the colors in the HTML output. For a value of 0 the output will use +# grayscales only. A value of 255 will produce the most vivid colors. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to +# the luminance component of the colors in the HTML output. Values below +# 100 gradually make the output lighter, whereas values above 100 make +# the output darker. The value divided by 100 is the actual gamma applied, +# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2, +# and 100 does not change the gamma. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = YES + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = com.fuzzylite + +# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. + +DOCSET_PUBLISHER_ID = com.fuzzylite.documentation + +# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. + +DOCSET_PUBLISHER_NAME = Juan Rada-Vilela + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated +# that can be used as input for Qt's qhelpgenerator to generate a +# Qt Compressed Help (.qch) of the generated HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = doc + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to +# add. For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see +# +# Qt Help Project / Custom Filters. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's +# filter section matches. +# +# Qt Help Project / Filter Attributes. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files +# will be generated, which together with the HTML files, form an Eclipse help +# plugin. To install this plugin and make it available under the help contents +# menu in Eclipse, the contents of the directory containing the HTML and XML +# files needs to be copied into the plugins directory of eclipse. The name of +# the directory within the plugins directory should be the same as +# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before +# the help appears. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have +# this name. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) +# at top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. Since the tabs have the same information as the +# navigation tree you can set this option to NO if you already set +# GENERATE_TREEVIEW to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to YES, a side panel will be generated +# containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. +# Since the tree basically has the same information as the tab index you +# could consider to set DISABLE_INDEX to NO when enabling this option. + +GENERATE_TREEVIEW = YES + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values +# (range [0,1..20]) that doxygen will group on one line in the generated HTML +# documentation. Note that a value of 0 will completely suppress the enum +# values from appearing in the overview section. + +ENUM_VALUES_PER_LINE = 4 + +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open +# links to external symbols imported via tag files in a separate window. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are +# not supported properly for IE 6.0, but are supported on all modern browsers. +# Note that when changing this option you need to delete any form_*.png files +# in the HTML output before the changes have effect. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax +# (see http://www.mathjax.org) which uses client side Javascript for the +# rendering instead of using prerendered bitmaps. Use this if you do not +# have LaTeX installed or if you want to formulas look prettier in the HTML +# output. When enabled you also need to install MathJax separately and +# configure the path to it using the MATHJAX_RELPATH option. + +USE_MATHJAX = NO + +# When MathJax is enabled you need to specify the location relative to the +# HTML output directory using the MATHJAX_RELPATH option. The destination +# directory should contain the MathJax.js script. For instance, if the mathjax +# directory is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the +# mathjax.org site, so you can quickly see the result without installing +# MathJax, but it is strongly recommended to install a local copy of MathJax +# before deployment. + +MATHJAX_RELPATH = http://www.mathjax.org/mathjax + +# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension +# names that should be enabled during MathJax rendering. + +MATHJAX_EXTENSIONS = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box +# for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using +# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets +# (GENERATE_DOCSET) there is already a search function so this one should +# typically be disabled. For large projects the javascript based search engine +# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. + +SEARCHENGINE = YES + +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be +# implemented using a PHP enabled web server instead of at the web client +# using Javascript. Doxygen will generate the search PHP script and index +# file to put on the web server. The advantage of the server +# based approach is that it scales better to large projects and allows +# full text search. The disadvantages are that it is more difficult to setup +# and does not have live searching capabilities. + +SERVER_BASED_SEARCH = NO + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. +# Note that when enabling USE_PDFLATEX this option is only used for +# generating bitmaps for formulas in the HTML output, but not in the +# Makefile that is written to the output directory. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4 + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for +# the generated latex document. The footer should contain everything after +# the last chapter. If it is left blank doxygen will generate a +# standard footer. Notice: only use this tag if you know what you are doing! + +LATEX_FOOTER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +# If LATEX_SOURCE_CODE is set to YES then doxygen will include +# source code with syntax highlighting in the LaTeX output. +# Note that which sources are shown also depends on other settings +# such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + +# The LATEX_BIB_STYLE tag can be used to specify the style to use for the +# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See +# http://en.wikipedia.org/wiki/BibTeX for more info. + +LATEX_BIB_STYLE = plain + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load style sheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. +# This is useful +# if you want to understand what is going on. +# On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# pointed to by INCLUDE_PATH will be searched when a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition that +# overrules the definition found in the source code. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all references to function-like macros +# that are alone on a line, have an all uppercase name, and do not end with a +# semicolon, because these will confuse the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option also works with HAVE_DOT disabled, but it is recommended to +# install and use dot, since it yields more powerful graphs. + +CLASS_DIAGRAMS = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = YES + +# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is +# allowed to run in parallel. When set to 0 (the default) doxygen will +# base this on the number of processors available in the system. You can set it +# explicitly to a value larger than 0 to get control over the balance +# between CPU load and processing speed. + +DOT_NUM_THREADS = 0 + +# By default doxygen will use the Helvetica font for all dot files that +# doxygen generates. When you want a differently looking font you can specify +# the font name using DOT_FONTNAME. You need to make sure dot is able to find +# the font, which can be done by putting it in a standard location or by setting +# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the +# directory containing the font. + +DOT_FONTNAME = Helvetica + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the Helvetica font. +# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to +# set the path where dot can find it. + +DOT_FONTPATH = + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = YES + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. + +CALL_GRAPH = NO + +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. + +CALLER_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will generate a graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are svg, png, jpg, or gif. +# If left blank png will be used. If you choose svg you need to set +# HTML_FILE_EXTENSION to xhtml in order to make the SVG files +# visible in IE 9+ (other browsers do not have this requirement). + +DOT_IMAGE_FORMAT = png + +# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to +# enable generation of interactive SVG images that allow zooming and panning. +# Note that this requires a modern browser other than Internet Explorer. +# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you +# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files +# visible. Older versions of IE do not have SVG support. + +INTERACTIVE_SVG = YES + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The MSCFILE_DIRS tag can be used to specify one or more directories that +# contain msc files that are included in the documentation (see the +# \mscfile command). + +MSCFILE_DIRS = + +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. + +DOT_GRAPH_MAX_NODES = 50 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. + +MAX_DOT_GRAPH_DEPTH = 0 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = YES + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES diff --git a/src/Console.cpp b/src/Console.cpp new file mode 100644 index 0000000..fe7e418 --- /dev/null +++ b/src/Console.cpp @@ -0,0 +1,364 @@ +/* + * File: Console.cpp + * Author: jcrada + * + * Created on 30 November 2013, 10:55 AM + */ + +#include "fl/Console.h" + +#include "fl/Headers.h" + +#include +#include +#include +#include + +namespace fl { + const std::string Console::KW_INPUT_FILE = "-i"; + const std::string Console::KW_INPUT_FORMAT = "-if"; + const std::string Console::KW_OUTPUT_FILE = "-o"; + const std::string Console::KW_OUTPUT_FORMAT = "-of"; + const std::string Console::KW_EXAMPLE = "-ex"; + const std::string Console::KW_DATA_MAXIMUM = "-max"; + const std::string Console::KW_DATA_SEPARATOR = "-sep"; + + std::string Console::usage() { + std::vector > options; //not a map to keep order; + options.push_back(std::pair(KW_INPUT_FILE, "inputfile")); + options.push_back(std::pair(KW_INPUT_FORMAT, "fll,fis,fcl")); + options.push_back(std::pair(KW_OUTPUT_FILE, "outputfile")); + options.push_back(std::pair(KW_OUTPUT_FORMAT, "fll,fis,fcl,cpp,java,fld")); + options.push_back(std::pair(KW_EXAMPLE, "(m)amdani,(t)akagi-sugeno")); + options.push_back(std::pair(KW_DATA_MAXIMUM, "maximum")); + options.push_back(std::pair(KW_DATA_SEPARATOR, "separator")); + + std::ostringstream ss; + ss << "========================================\n"; + ss << "fuzzylite: a fuzzy logic control library\n"; + ss << "version: " << fuzzylite::longVersion() << "\n"; + ss << "author: " << fuzzylite::author() << "\n"; + ss << "========================================\n"; + ss << "usage: fuzzylite inputfile outputfile\n"; + ss << " or: fuzzylite "; + for (std::size_t i = 0; i < options.size(); ++i) { + ss << "[" << options.at(i).first << "] "; + } + ss << "\n\n"; + ss << "where: "; + for (std::size_t i = 0; i < options.size(); ++i) { + ss << "[" << options.at(i).first << " " << options.at(i).second << "] \n "; + } + ss << "\n"; + ss << "Visit http://www.fuzzylite.com for more information."; + return ss.str(); + } + + std::map Console::parse(int argc, char** argv) { + if ((argc - 1) % 2 != 0) { + throw fl::Exception("[option error] incomplete number of parameters [key value]", FL_AT); + } + std::map options; + for (int i = 1; i < argc - 1; i += 2) { + std::string key = std::string(argv[i]); + std::string value = std::string(argv[i + 1]); + options[key] = value; + } + if (options.size() == 1) { + std::map::const_iterator it = options.begin(); + if (it->first.at(0) != '-') { + options[KW_INPUT_FILE] = it->first; + options[KW_OUTPUT_FILE] = it->second; + } + } else { + std::map valid; + valid[KW_INPUT_FILE] = "inputfile"; + valid[KW_INPUT_FORMAT] = "fll,fis,fcl"; + valid[KW_OUTPUT_FILE] = "outputfile"; + valid[KW_OUTPUT_FORMAT] = "fll,fis,fcl,cpp,java,fld"; + valid[KW_EXAMPLE] = "(m)amdani,(t)akagi-sugeno"; + valid[KW_DATA_MAXIMUM] = "maximum"; + valid[KW_DATA_SEPARATOR] = "separator"; + for (std::map::const_iterator it = options.begin(); + it != options.end(); ++it) { + if (valid.find(it->first) == valid.end()) { + throw fl::Exception("[option error] option <" + it->first + "> not supported", FL_AT); + } + } + } + return options; + } + + void Console::process(const std::map& options) { + std::map::const_iterator it; + + std::string example; + std::string inputFormat; + std::ostringstream textEngine; + + it = options.find(KW_EXAMPLE); + + bool isExample = (it != options.end()); + + if (isExample) { + example = it->second; + Engine* engine; + if (example == "m" or example == "mamdani") { + engine = mamdani(); + } else if (example == "t" or example == "ts" or example == "takagi-sugeno") { + engine = takagiSugeno(); + } else { + throw fl::Exception("[option error] example <" + example + "> not available", FL_AT); + } + inputFormat = "fll"; + textEngine << FllExporter().toString(engine); + delete engine; + + } else { + it = options.find(KW_INPUT_FILE); + if (it == options.end()) { + throw fl::Exception("[option error] no input file specified", FL_AT); + } + std::string inputFilename = it->second; + std::ifstream inputFile(inputFilename.c_str()); + if (not inputFile.is_open()) { + throw fl::Exception("[file error] file <" + inputFilename + "> could not be opened", FL_AT); + } + std::string line; + while (inputFile.good()) { + std::getline(inputFile, line); + textEngine << line << std::endl; + } + inputFile.close(); + + it = options.find(KW_INPUT_FORMAT); + if (it != options.end()) { + inputFormat = it->second; + } else { + std::size_t extensionIndex = inputFilename.find_last_of("."); + if (extensionIndex != std::string::npos) { + inputFormat = inputFilename.substr(extensionIndex + 1); + } else { + throw fl::Exception("[format error] unspecified format of input file", FL_AT); + } + } + } + + std::string outputFilename; + it = options.find(KW_OUTPUT_FILE); + if (it != options.end()) { + outputFilename = it->second; + } + + std::string outputFormat; + it = options.find(KW_OUTPUT_FORMAT); + if (it != options.end()) { + outputFormat = it->second; + } else { + std::size_t extensionIndex = outputFilename.find_last_of("."); + if (extensionIndex != std::string::npos) { + outputFormat = outputFilename.substr(extensionIndex + 1); + } else { + throw fl::Exception("[format error] unspecified format of output file", FL_AT); + } + } + + + if (outputFilename.empty()) { + process(textEngine.str(), std::cout, inputFormat, outputFormat, options); + } else { + std::ofstream writer(outputFilename.c_str()); + if (not writer.is_open()) { + throw fl::Exception("[file error] file <" + outputFilename + "> could not be created", FL_AT); + } + process(textEngine.str(), writer, inputFormat, outputFormat, options); + writer.flush(); + writer.close(); + } + } + + template + void Console::process(const std::string& input, T& writer, + const std::string& inputFormat, const std::string& outputFormat, + const std::map& options) { + Importer* importer; + if ("fll" == inputFormat) { + importer = new FllImporter; + } else if ("fcl" == inputFormat) { + importer = new FclImporter; + } else if ("fis" == inputFormat) { + importer = new FisImporter; + } else { + throw fl::Exception("[import error] format <" + inputFormat + "> " + "not supported", FL_AT); + } + + Engine* engine = NULL; + try { + engine = importer->fromString(input); + } catch (fl::Exception& ex) { + if (engine) delete engine; + delete importer; + throw ex; + } + + Exporter* exporter; + if ("fll" == outputFormat) { + exporter = new FllExporter; + } else if ("fcl" == outputFormat) { + exporter = new FclExporter; + } else if ("fis" == outputFormat) { + exporter = new FisExporter; + } else if ("c++" == outputFormat or "cpp" == outputFormat) { + exporter = new CppExporter; + } else if ("java" == outputFormat) { + exporter = new JavaExporter; + } else if ("fld" == outputFormat) { + std::string separator = " "; + std::map::const_iterator it; + it = options.find(KW_DATA_SEPARATOR); + if (it != options.end()) { + separator = it->second; + } + + it = options.find(KW_DATA_MAXIMUM); + if (it != options.end()) { + int maximum = (int) Op::toScalar(it->second); + exporter = new FldExporter(separator, maximum); + } else { + exporter = new FldExporter(separator); + } + } else { + throw fl::Exception("[export error] format <" + outputFormat + "> " + "not supported", FL_AT); + } + + try { + writer << exporter->toString(engine); + } catch (fl::Exception& ex) { + if (engine) delete engine; + delete importer; + delete exporter; + throw ex; + } + } + + template void Console::process(const std::string& input, std::ostringstream& writer, + const std::string& inputFormat, const std::string& outputFormat, + const std::map& options); + + template void Console::process(const std::string& input, std::ofstream& writer, + const std::string& inputFormat, const std::string& outputFormat, + const std::map& options); + + Engine* Console::mamdani() { + Engine* engine = new Engine("simple-dimmer"); + + InputVariable* ambient = new InputVariable("Ambient", 0, 1); + ambient->addTerm(new Triangle("DARK", .0, .25, .5)); + ambient->addTerm(new Triangle("MEDIUM", .25, .5, .75)); + ambient->addTerm(new Triangle("BRIGHT", .5, .75, 1)); + engine->addInputVariable(ambient); + + + OutputVariable* power = new OutputVariable("Power", 0, 2); + power->setDefaultValue(fl::nan); + power->addTerm(new Triangle("LOW", 0.0, 0.5, 1)); + power->addTerm(new Triangle("MEDIUM", 0.5, 1, 1.5)); + power->addTerm(new Triangle("HIGH", 1, 1.5, 2)); + engine->addOutputVariable(power); + + RuleBlock* ruleblock = new RuleBlock(); + ruleblock->addRule(Rule::parse("if Ambient is DARK then Power is HIGH", engine)); + ruleblock->addRule(Rule::parse("if Ambient is MEDIUM then Power is MEDIUM", engine)); + ruleblock->addRule(Rule::parse("if Ambient is BRIGHT then Power is LOW", engine)); + + engine->addRuleBlock(ruleblock); + + engine->configure("", "", "Minimum", "Maximum", "Centroid"); + + return engine; + } + + Engine* Console::takagiSugeno() { + Engine* engine = new Engine("approximation of sin(x)/x"); + + fl::InputVariable* inputX = new fl::InputVariable("inputX"); + inputX->setRange(0, 10); + inputX->addTerm(new fl::Triangle("NEAR_1", 0, 1, 2)); + inputX->addTerm(new fl::Triangle("NEAR_2", 1, 2, 3)); + inputX->addTerm(new fl::Triangle("NEAR_3", 2, 3, 4)); + inputX->addTerm(new fl::Triangle("NEAR_4", 3, 4, 5)); + inputX->addTerm(new fl::Triangle("NEAR_5", 4, 5, 6)); + inputX->addTerm(new fl::Triangle("NEAR_6", 5, 6, 7)); + inputX->addTerm(new fl::Triangle("NEAR_7", 6, 7, 8)); + inputX->addTerm(new fl::Triangle("NEAR_8", 7, 8, 9)); + inputX->addTerm(new fl::Triangle("NEAR_9", 8, 9, 10)); + engine->addInputVariable(inputX); + + + fl::OutputVariable* outputFx = new fl::OutputVariable("outputFx"); + outputFx->setRange(-1, 1); + outputFx->setDefaultValue(fl::nan); + outputFx->setLockValidOutput(true); //To use its value with diffFx + outputFx->addTerm(new Constant("f1", 0.84)); + outputFx->addTerm(new Constant("f2", 0.45)); + outputFx->addTerm(new Constant("f3", 0.04)); + outputFx->addTerm(new Constant("f4", -0.18)); + outputFx->addTerm(new Constant("f5", -0.19)); + outputFx->addTerm(new Constant("f6", -0.04)); + outputFx->addTerm(new Constant("f7", 0.09)); + outputFx->addTerm(new Constant("f8", 0.12)); + outputFx->addTerm(new Constant("f9", 0.04)); + engine->addOutputVariable(outputFx); + + fl::OutputVariable* trueFx = new fl::OutputVariable("trueFx"); + trueFx->setRange(fl::nan, fl::nan); + trueFx->setLockValidOutput(true); //To use its value with diffFx + trueFx->addTerm(fl::Function::create("fx", "sin(inputX)/inputX")); + engine->addOutputVariable(trueFx); + + fl::OutputVariable* diffFx = new fl::OutputVariable("diffFx"); + diffFx->addTerm(fl::Function::create("diff", "fabs(outputFx-trueFx)", engine)); + diffFx->setRange(fl::nan, fl::nan); + // diffFx->setLockValidOutput(true); //To use in input diffPreviousFx + engine->addOutputVariable(diffFx); + + fl::RuleBlock* block = new fl::RuleBlock(); + block->addRule(fl::Rule::parse("if inputX is NEAR_1 then outputFx = f1", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_2 then outputFx = f2", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_3 then outputFx = f3", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_4 then outputFx = f4", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_5 then outputFx = f5", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_6 then outputFx = f6", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_7 then outputFx = f7", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_8 then outputFx = f8", engine)); + block->addRule(fl::Rule::parse("if inputX is NEAR_9 then outputFx = f9", engine)); + block->addRule(fl::Rule::parse("if inputX is any then trueFx = fx and diffFx = diff", engine)); + engine->addRuleBlock(block); + + engine->configure("", "", "AlgebraicProduct", "", "WeightedAverage"); + + return engine; + } + + int Console::main(int argc, char** argv) { + (void) argc; + (void) argv; + if (argc <= 1) { + std::cout << usage() << std::endl; + return EXIT_SUCCESS; + } + + try { + std::map options = parse(argc, argv); + process(options); + } catch (fl::Exception& ex) { + std::cout << ex.getWhat() << std::endl; + return EXIT_FAILURE; + } + return EXIT_SUCCESS; + } + + +} \ No newline at end of file diff --git a/src/Engine.cpp b/src/Engine.cpp new file mode 100644 index 0000000..906f2be --- /dev/null +++ b/src/Engine.cpp @@ -0,0 +1,507 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Engine.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/Engine.h" + +#include "fl/variable/InputVariable.h" +#include "fl/variable/OutputVariable.h" +#include "fl/rule/RuleBlock.h" +#include "fl/rule/Rule.h" +#include "fl/hedge/Hedge.h" + +#include "fl/term/Accumulated.h" + +#include "fl/factory/FactoryManager.h" +#include "fl/factory/DefuzzifierFactory.h" +#include "fl/factory/SNormFactory.h" +#include "fl/factory/TNormFactory.h" + +#include "fl/imex/CppExporter.h" +#include "fl/imex/FllExporter.h" + +#include "fl/defuzzifier/WeightedAverage.h" +#include "fl/defuzzifier/WeightedSum.h" + +#include "fl/term/Constant.h" +#include "fl/term/Linear.h" +#include "fl/term/Function.h" + + +namespace fl { + + Engine::Engine(const std::string& name) : _name(name) { + } + + Engine::~Engine() { + for (int i = numberOfRuleBlocks() - 1; i >= 0; --i) { + delete removeRuleBlock(i); + } + + for (int i = numberOfHedges() - 1; i >= 0; --i) { + delete removeHedge(i); + } + + for (int i = numberOfOutputVariables() - 1; i >= 0; --i) { + delete removeOutputVariable(i); + } + + for (int i = numberOfInputVariables() - 1; i >= 0; --i) { + delete removeInputVariable(i); + } + } + + void Engine::configure(const std::string& conjunctionT, const std::string& disjunctionS, + const std::string& activationT, const std::string& accumulationS, + const std::string& defuzzifier, int resolution) { + TNormFactory* tnormFactory = FactoryManager::instance()->tnorm(); + SNormFactory* snormFactory = FactoryManager::instance()->snorm(); + DefuzzifierFactory* defuzzFactory = FactoryManager::instance()->defuzzifier(); + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + _ruleblocks.at(i)->setConjunction(tnormFactory->createInstance(conjunctionT)); + _ruleblocks.at(i)->setDisjunction(snormFactory->createInstance(disjunctionS)); + _ruleblocks.at(i)->setActivation(tnormFactory->createInstance(activationT)); + } + + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + _outputVariables.at(i)->setDefuzzifier(defuzzFactory->createInstance(defuzzifier)); + if (_outputVariables.at(i)->getDefuzzifier()) { + IntegralDefuzzifier* integralDefuzzifier = + dynamic_cast (_outputVariables.at(i)->getDefuzzifier()); + if (integralDefuzzifier) { + integralDefuzzifier->setResolution(resolution); + } + } + _outputVariables.at(i)->fuzzyOutput()->setAccumulation( + snormFactory->createInstance(accumulationS)); + } + } + + bool Engine::isReady(std::string* status) const { + std::ostringstream ss; + if (_inputVariables.empty()) { + ss << "- Engine has no input variables\n"; + } + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + InputVariable* inputVariable = _inputVariables.at(i); + if (not inputVariable) { + ss << "- Engine has a NULL input variable at index <" << i << ">\n"; + } else if (inputVariable->terms().empty()) { + //ignore because sometimes inputs can be empty: takagi-sugeno/matlab/slcpp1.fis + // ss << "- Input variable <" << _inputVariables.at(i)->getName() << ">" + // << " has no terms\n"; + } + } + + if (_outputVariables.empty()) { + ss << "- Engine has no output variables\n"; + } + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + OutputVariable* outputVariable = _outputVariables.at(i); + if (not outputVariable) { + ss << "- Engine has a NULL output variable at index <" << i << ">\n"; + } else { + if (outputVariable->terms().empty()) { + ss << "- Output variable <" << outputVariable->getName() << ">" + << " has no terms\n"; + } + Defuzzifier* defuzzifier = outputVariable->getDefuzzifier(); + if (not defuzzifier) { + ss << "- Output variable <" << outputVariable->getName() << ">" + << " has no defuzzifier\n"; + } else if (dynamic_cast (defuzzifier) + and not outputVariable->fuzzyOutput()->getAccumulation()) { + ss << "- Output variable <" << outputVariable->getName() << ">" + << " has no Accumulation\n"; + } + } + } + + if (_ruleblocks.empty()) { + ss << "- Engine has no rule blocks\n"; + } + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + RuleBlock* ruleblock = _ruleblocks.at(i); + if (not ruleblock) { + ss << "- Engine has a NULL rule block at index <" << i << ">\n"; + } else { + if (ruleblock->rules().empty()) { + ss << "- Rule block <" << ruleblock->getName() << "> has no rules\n"; + } + int requiresConjunction = 0; + int requiresDisjunction = 0; + for (int r = 0; r < ruleblock->numberOfRules(); ++r) { + Rule* rule = ruleblock->getRule(r); + if (not rule) { + ss << "- Rule block <" << ruleblock->getName() + << "> has a NULL rule at index <" << r << ">\n"; + } else { + std::size_t thenIndex = rule->getText().find(" " + Rule::thenKeyword() + " "); + std::size_t andIndex = rule->getText().find(" " + Rule::andKeyword() + " "); + std::size_t orIndex = rule->getText().find(" " + Rule::orKeyword() + " "); + if (andIndex != std::string::npos and andIndex < thenIndex) { + ++requiresConjunction; + } + if (orIndex != std::string::npos and orIndex < thenIndex) { + ++requiresDisjunction; + } + } + } + if (requiresConjunction > 0 and not ruleblock->getConjunction()) { + ss << "- Rule block <" << ruleblock->getName() << "> has no Conjunction\n"; + ss << "- Rule block <" << ruleblock->getName() << "> has " + << requiresConjunction << " rules that require Conjunction\n"; + } + + if (requiresDisjunction > 0 and not ruleblock->getDisjunction()) { + ss << "- Rule block <" << ruleblock->getName() << "> has no Disjunction\n"; + ss << "- Rule block <" << ruleblock->getName() << "> has " + << requiresDisjunction << " rules that require Disjunction\n"; + } + + if (not ruleblock->getActivation()) { + ss << "- Rule block <" << ruleblock->getName() << "> has no Activation\n"; + } + } + } + if (status) *status = ss.str(); + return ss.str().empty(); + } + + void Engine::restart() { + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + _inputVariables[i]->setInputValue(fl::nan); + } + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + _outputVariables[i]->setLastValidOutput(fl::nan); + _outputVariables[i]->fuzzyOutput()->clear(); + } + } + + void Engine::process() { + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + _outputVariables.at(i)->fuzzyOutput()->clear(); + } + + FL_BEGIN_DEBUG_BLOCK; + FL_DBG("==============="); + FL_DBG("CURRENT INPUTS:"); + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + InputVariable* inputVariable = _inputVariables.at(i); + scalar inputValue = inputVariable->getInputValue(); + (void) inputValue; + if (inputVariable->isEnabled()) { + FL_DBG(inputVariable->getName() << ".input = " << Op::str(inputValue)); + FL_DBG(inputVariable->getName() << ".fuzzy = " << inputVariable->fuzzify(inputValue)); + } else { + FL_DBG(inputVariable->getName() << ".enabled = false"); + } + } + FL_END_DEBUG_BLOCK + + + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + if (_ruleblocks.at(i)->isEnabled()) { + _ruleblocks.at(i)->activate(); + } + } + + + FL_BEGIN_DEBUG_BLOCK; + FL_DBG("==============="); + FL_DBG("CURRENT OUTPUTS:"); + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + OutputVariable* outputVariable = _outputVariables.at(i); + if (outputVariable->isEnabled()) { + FL_DBG(outputVariable->getName() << ".default = " + << outputVariable->getDefaultValue()); + + FL_DBG(outputVariable->getName() << ".lockRange = " + << outputVariable->isLockingOutputRange()); + + FL_DBG(outputVariable->getName() << ".lockValid = " + << outputVariable->isLockingValidOutput()); + + //no locking is ever performed during this debugging block; + scalar output = outputVariable->defuzzifyNoLocks(); + (void) output; + FL_DBG(outputVariable->getName() << ".output = " << output); + FL_DBG(outputVariable->getName() << ".fuzzy = " << + outputVariable->fuzzify(output)); + FL_DBG(outputVariable->fuzzyOutput()->toString()); + } else { + FL_DBG(outputVariable->getName() << ".enabled = false"); + } + } + FL_DBG("=============="); + FL_END_DEBUG_BLOCK + } + + void Engine::setName(const std::string& name) { + this->_name = name; + } + + std::string Engine::getName() const { + return this->_name; + } + + void Engine::setInputValue(const std::string& name, scalar value) { + InputVariable* inputVariable = getInputVariable(name); + inputVariable->setInputValue(value); + } + + scalar Engine::getOutputValue(const std::string& name) { + OutputVariable* outputVariable = getOutputVariable(name); + return outputVariable->defuzzify(); + } + + std::string Engine::toString() const { + return FllExporter().toString(this); + } + + /** + * Operations for iterable datatype _inputVariables + */ + void Engine::addInputVariable(InputVariable* inputVariable) { + this->_inputVariables.push_back(inputVariable); + } + + void Engine::insertInputVariable(InputVariable* inputVariable, int index) { + this->_inputVariables.insert(this->_inputVariables.begin() + index, + inputVariable); + } + + InputVariable* Engine::getInputVariable(int index) const { + return this->_inputVariables.at(index); + } + + InputVariable* Engine::getInputVariable(const std::string& name) const { + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + if (_inputVariables.at(i)->getName() == name) + return _inputVariables.at(i); + } + throw fl::Exception("[engine error] input variable <" + name + "> not found", FL_AT); + } + + bool Engine::hasInputVariable(const std::string& name) const { + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + if (_inputVariables.at(i)->getName() == name) + return true; + } + return false; + } + + InputVariable* Engine::removeInputVariable(int index) { + InputVariable* result = this->_inputVariables.at(index); + this->_inputVariables.erase(this->_inputVariables.begin() + index); + return result; + } + + InputVariable* Engine::removeInputVariable(const std::string& name) { + for (std::size_t i = 0; i < _inputVariables.size(); ++i) { + if (_inputVariables.at(i)->getName() == name) { + InputVariable* result = this->_inputVariables.at(i); + this->_inputVariables.erase(this->_inputVariables.begin() + i); + return result; + } + } + throw fl::Exception("[engine error] input variable <" + name + "> not found", FL_AT); + } + + int Engine::numberOfInputVariables() const { + return this->_inputVariables.size(); + } + + const std::vector& Engine::inputVariables() const { + return this->_inputVariables; + } + + /** + * Operations for iterable datatype _outputVariables + */ + void Engine::addOutputVariable(OutputVariable* outputVariable) { + this->_outputVariables.push_back(outputVariable); + } + + void Engine::insertOutputVariable(OutputVariable* outputVariable, int index) { + this->_outputVariables.insert(this->_outputVariables.begin() + index, + outputVariable); + } + + OutputVariable* Engine::getOutputVariable(int index) const { + return this->_outputVariables.at(index); + } + + OutputVariable* Engine::getOutputVariable(const std::string& name) const { + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + if (_outputVariables.at(i)->getName() == name) + return _outputVariables.at(i); + } + throw fl::Exception("[engine error] output variable <" + name + "> not found", FL_AT); + } + + bool Engine::hasOutputVariable(const std::string& name) const { + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + if (_outputVariables.at(i)->getName() == name) + return true; + } + return false; + } + + OutputVariable* Engine::removeOutputVariable(int index) { + OutputVariable* result = this->_outputVariables.at(index); + this->_outputVariables.erase(this->_outputVariables.begin() + index); + return result; + } + + OutputVariable* Engine::removeOutputVariable(const std::string& name) { + for (std::size_t i = 0; i < _outputVariables.size(); ++i) { + if (_outputVariables.at(i)->getName() == name) { + OutputVariable* result = this->_outputVariables.at(i); + this->_outputVariables.erase(this->_outputVariables.begin() + i); + return result; + } + } + throw fl::Exception("[engine error] output variable <" + name + "> not found", FL_AT); + } + + int Engine::numberOfOutputVariables() const { + return this->_outputVariables.size(); + } + + const std::vector& Engine::outputVariables() const { + return this->_outputVariables; + } + + /** + * Operations for iterable datatype _ruleblocks + */ + void Engine::addRuleBlock(RuleBlock* ruleblock) { + this->_ruleblocks.push_back(ruleblock); + } + + void Engine::insertRuleBlock(RuleBlock* ruleblock, int index) { + this->_ruleblocks.insert(this->_ruleblocks.begin() + index, ruleblock); + } + + RuleBlock* Engine::getRuleBlock(int index) const { + return this->_ruleblocks.at(index); + } + + RuleBlock* Engine::getRuleBlock(const std::string& name) const { + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + if (_ruleblocks.at(i)->getName() == name) + return _ruleblocks.at(i); + } + throw fl::Exception("[engine error] rule block <" + name + "> not found", FL_AT); + } + + bool Engine::hasRuleBlock(const std::string& name) const { + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + if (_ruleblocks.at(i)->getName() == name) + return true; + } + return false; + } + + RuleBlock* Engine::removeRuleBlock(int index) { + RuleBlock* result = this->_ruleblocks.at(index); + this->_ruleblocks.erase(this->_ruleblocks.begin() + index); + return result; + } + + RuleBlock* Engine::removeRuleBlock(const std::string& name) { + for (std::size_t i = 0; i < _ruleblocks.size(); ++i) { + if (_ruleblocks.at(i)->getName() == name) { + RuleBlock* result = this->_ruleblocks.at(i); + this->_ruleblocks.erase(this->_ruleblocks.begin() + i); + return result; + } + } + throw fl::Exception("[engine error] rule block <" + name + "> not found", FL_AT); + } + + int Engine::numberOfRuleBlocks() const { + return this->_ruleblocks.size(); + } + + const std::vector& Engine::ruleBlocks() const { + return this->_ruleblocks; + } + + /** + * Operations for std::vector _hedges + */ + void Engine::addHedge(Hedge* hedge) { + this->_hedges.push_back(hedge); + } + + void Engine::insertHedge(Hedge* hedge, int index) { + this->_hedges.insert(this->_hedges.begin() + index, hedge); + } + + Hedge* Engine::getHedge(int index) const { + return this->_hedges.at(index); + } + + Hedge* Engine::getHedge(const std::string& name) const { + for (std::size_t i = 0; i < this->_hedges.size(); ++i) { + if (name == this->_hedges.at(i)->name()) + return this->_hedges.at(i); + } + throw fl::Exception("[engine error] hedge <" + name + "> not found", FL_AT); + } + + bool Engine::hasHedge(const std::string& name) const { + for (std::size_t i = 0; i < this->_hedges.size(); ++i) { + if (name == this->_hedges.at(i)->name()) + return true; + } + return false; + } + + Hedge* Engine::removeHedge(int index) { + Hedge* result = this->_hedges.at(index); + this->_hedges.erase(this->_hedges.begin() + index); + return result; + } + + Hedge* Engine::removeHedge(const std::string& name) { + for (std::size_t i = 0; i < this->_hedges.size(); ++i) { + if (name == this->_hedges.at(i)->name()) { + Hedge* result = this->_hedges.at(i); + this->_hedges.erase(this->_hedges.begin() + i); + return result; + } + } + throw fl::Exception("[engine error] hedge <" + name + "> not found", FL_AT); + } + + int Engine::numberOfHedges() const { + return this->_hedges.size(); + } + + const std::vector& Engine::hedges() const { + return this->_hedges; + } + + +} diff --git a/src/Exception.cpp b/src/Exception.cpp new file mode 100644 index 0000000..eda7b4a --- /dev/null +++ b/src/Exception.cpp @@ -0,0 +1,149 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Exception.cpp + * + * Created on: 14/12/2012 + * Author: jcrada + */ + +#include "fl/Exception.h" + + +#ifdef FL_BACKTRACE_OFF +//do nothing +#else +#ifdef FL_UNIX +#include + +#elif defined FL_WINDOWS +#include +#include +#include +#endif + +#endif + +#include + + +namespace fl { + + Exception::Exception(const std::string& what, const std::string& file, int line, + const std::string& function) + : std::exception(), _what(what + "\n") { + append(file, line, function); + FL_DBG(this->what()); + } + + Exception::~Exception() throw () { + } + + void Exception::setWhat(const std::string& what) { + this->_what = what; + } + + std::string Exception::getWhat() const { + return this->_what; + } + + const char* Exception::what() const throw () { + return this->_what.c_str(); + } + + void Exception::append(const std::string& whatElse) { + this->_what += whatElse + "\n"; + } + + void Exception::append(const std::string& file, int line, const std::string& function) { + std::ostringstream ss; + ss << "{" << file << "::" << function << "() [line:" << line << "]}"; + _what += "\n" + ss.str(); + } + + void Exception::append(const std::string& whatElse, + const std::string& file, int line, const std::string& function) { + append(whatElse); + append(file, line, function); + } + + std::string Exception::btCallStack(const int maxCalls) { +#ifdef FL_BACKTRACE_OFF + (void) maxCalls; + return "[backtrace missing] fuzzylite was built with option -DFL_BACKTRACE_OFF"; +#elif defined FL_UNIX + std::ostringstream btStream; + int bufferSize = maxCalls; + void* buffer[bufferSize]; + int backtraceSize = backtrace(buffer, bufferSize); + char **btSymbols = backtrace_symbols(buffer, backtraceSize); + if (btSymbols == NULL) { + btStream << "[backtrace error] no symbols could be retrieved"; + } else { + if (backtraceSize == 0) btStream << "[backtrace is empty]"; + for (int i = 0; i < backtraceSize; ++i) { + btStream << btSymbols[i] << "\n"; + } + } + free(btSymbols); + return btStream.str(); + + +#elif defined FL_WINDOWS + std::ostringstream btStream; + (void) maxCalls; //Can't allocate an with non-constant size in Windows + const int bufferSize = 30; + void* buffer[bufferSize]; + SymInitialize(GetCurrentProcess(), NULL, TRUE); + + int backtraceSize = CaptureStackBackTrace(0, bufferSize, buffer, NULL); + SYMBOL_INFO* btSymbol = (SYMBOL_INFO *) calloc(sizeof ( SYMBOL_INFO) + 256 * sizeof ( char), 1); + btSymbol->MaxNameLen = 255; + btSymbol->SizeOfStruct = sizeof ( SYMBOL_INFO); + + if (not btSymbol) { + btStream << "[backtrace error] no symbols could be retrieved"; + } else { + if (backtraceSize == 0) btStream << "[backtrace is empty]"; + for (int i = 0; i < backtraceSize; ++i) { + SymFromAddr(GetCurrentProcess(), (DWORD64) (buffer[ i ]), 0, btSymbol); + btStream << (backtraceSize - i - 1) << ": " << + btSymbol->Name << " at 0x" << btSymbol->Address << "\n"; + } + } + free(btSymbol); + return btStream.str(); +#else + return "[backtrace missing] supported only in Unix and Windows platforms"; +#endif + } + //execinfo + + void Exception::signalHandler(int signal) { + std::ostringstream ex; + ex << "[caught signal " << signal << "] backtrace:\n"; + ex << fl::Exception::btCallStack(); + throw fl::Exception(ex.str(), FL_AT); + } + + void Exception::terminate() { + std::string message = "[unexpected exception] backtrace:\n" + + fl::Exception::btCallStack(50); + FL_LOGP(message); + exit(EXIT_FAILURE); + } + +} diff --git a/src/Operation.cpp b/src/Operation.cpp new file mode 100644 index 0000000..133bdb7 --- /dev/null +++ b/src/Operation.cpp @@ -0,0 +1,346 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/Operation.h" + +#include +#include +#include +#include +#include + +namespace fl { + + template + T Operation::min(T a, T b) { + if (isNan(a)) return b; + if (isNan(b)) return a; + return a < b ? a : b; + } + template FL_EXPORT scalar Operation::min(scalar a, scalar b); + template FL_EXPORT int Operation::min(int a, int b); + + template + T Operation::max(T a, T b) { + if (isNan(a)) return b; + if (isNan(b)) return a; + return a > b ? a : b; + } + template FL_EXPORT scalar Operation::max(scalar a, scalar b); + template FL_EXPORT int Operation::max(int a, int b); + + template + bool Operation::isInf(T x) { + return std::abs(x) == fl::inf; + } + template FL_EXPORT bool Operation::isInf(int x); + template FL_EXPORT bool Operation::isInf(scalar x); + + template + bool Operation::isNan(T x) { + return not (x == x); + } + template FL_EXPORT bool Operation::isNan(int x); + template FL_EXPORT bool Operation::isNan(scalar x); + + bool Operation::isLt(scalar a, scalar b, scalar macheps) { + return not isEq(a, b, macheps) and a < b; + } + + bool Operation::isLE(scalar a, scalar b, scalar macheps) { + return isEq(a, b, macheps) or a < b; + } + + bool Operation::isEq(scalar a, scalar b, scalar macheps) { + return std::fabs(a - b) < macheps; + } + + bool Operation::isGt(scalar a, scalar b, scalar macheps) { + return not isEq(a, b, macheps) and a > b; + } + + bool Operation::isGE(scalar a, scalar b, scalar macheps) { + return isEq(a, b, macheps) or a > b; + } + + scalar Operation::scale(scalar x, scalar fromMin, scalar fromMax, scalar toMin, scalar toMax) { + return (toMax - toMin) / (fromMax - fromMin) * (x - fromMin) + toMin; + } + + scalar Operation::add(scalar a, scalar b) { + return a + b; + } + + scalar Operation::subtract(scalar a, scalar b) { + return a - b; + } + + scalar Operation::multiply(scalar a, scalar b) { + return a * b; + } + + scalar Operation::divide(scalar a, scalar b) { + return a / b; + } + + scalar Operation::modulo(scalar a, scalar b) { + return fmod(a, b); + } + + scalar Operation::logicalAnd(scalar a, scalar b) { + return (isEq(a, 1.0) and isEq(b, 1.0)) ? 1.0 : 0.0; + } + + scalar Operation::logicalOr(scalar a, scalar b) { + return (isEq(a, 1.0) or isEq(b, 1.0)) ? 1.0 : 0.0; + } + + scalar Operation::negate(scalar a) { + return -a; + } + + bool Operation::increment(std::vector& x, std::vector& min, std::vector& max) { + return increment(x, (int) x.size() - 1, min, max); + } + + bool Operation::increment(std::vector& x, int position, std::vector& min, std::vector& max) { + if (position < 0) return true; + + bool overflow = false; + if (x.at(position) < max.at(position)) { + ++x.at(position); + } else { + overflow = (position == 0); + x.at(position) = min.at(position); + --position; + if (position >= 0) { + overflow = increment(x, position, min, max); + } + } + return overflow; + } + + std::string Operation::makeValidId(const std::string& name) { + std::ostringstream ss; + for (std::size_t i = 0; i < name.length() ;++i){ + char c = name[i]; + if (c == '_' or c == '.' or isalnum(c)){ + ss << c; + } + } + return ss.str(); + } + + int Operation::isValidForName(int character) { + return character == '_' or character == '.' or isalnum(character); + } + + std::string Operation::findReplace(const std::string& str, const std::string& find, + const std::string& replace, bool replaceAll) { + std::ostringstream result; + std::size_t fromIndex = 0, nextIndex; + do { + nextIndex = str.find(find, fromIndex); + result << str.substr(fromIndex, nextIndex - fromIndex); + if (nextIndex != std::string::npos) + result << replace; + fromIndex = nextIndex + find.size(); + } while (replaceAll and nextIndex != std::string::npos); + return result.str(); + } + + std::vector Operation::split(const std::string& str, + const std::string& delimiter, bool ignoreEmpty) { + std::vector result; + if (str.empty() or delimiter.empty()) { + result.push_back(str); + return result; + } + std::string::const_iterator position = str.begin(), next = str.begin(); + while (next != str.end()) { + next = std::search(position, str.end(), delimiter.begin(), delimiter.end()); + std::string token(position, next); + if (not (token.empty() and ignoreEmpty)) { + result.push_back(token); + } + if (next != str.end()) { + position = next + delimiter.size(); + } + } + return result; + } + + std::string Operation::trim(const std::string& text) { + if (text.empty()) return text; + if (not (std::isspace(text.at(0)) or std::isspace(text.at(text.size() - 1)))) + return text; + int start = 0, end = text.size() - 1; + while (start <= end and std::isspace(text.at(start))) { + ++start; + } + while (end >= start and std::isspace(text.at(end))) { + --end; + } + int length = end - start + 1; + if (length <= 0) return ""; + return text.substr(start, length); + } + + std::string Operation::format(const std::string& text, int matchesChar(int), + const std::string& replacement) { + std::ostringstream ss; + std::string::const_iterator it = text.begin(); + while (it != text.end()) { + if (matchesChar(*it)) { + ss << *it; + } else { + ss << replacement; + } + ++it; + } + return ss.str(); + } + + scalar Operation::toScalar(const std::string& x, bool quiet, scalar alternative) + throw (fl::Exception) { + std::istringstream iss(x); + scalar result; + iss >> result; + char strict; + if (not (iss.fail() or iss.get(strict))) return result; + + std::ostringstream nan, pInf, nInf; + nan << fl::nan; + pInf << fl::inf; + nInf << (-fl::inf); + + if (x == nan.str() or x == "nan") + return fl::nan; + if (x == pInf.str() or x == "inf") + return fl::inf; + if (x == nInf.str() or x == "-inf") + return -fl::inf; + if (!quiet) { + std::ostringstream ex; + ex << "[conversion error] from <" << x << "> to scalar"; + throw fl::Exception(ex.str(), FL_AT); + } + return alternative; + } + + bool Operation::isNumeric(const std::string& x) { + try { + fl::Op::toScalar(x); + return true; + } catch (fl::Exception& ex) { + (void) ex; + return false; + } + } + + std::string Operation::repeat(const std::string& x, int times, const std::string& sep) { + std::ostringstream ss; + for (int i = 0; i < times; ++i) { + ss << x; + if (not sep.empty() and i + 1 < times) ss << sep; + } + return ss.str(); + } + + template + std::string Operation::str(T x, int decimals) { + std::ostringstream ss; + ss << std::setprecision(decimals) << std::fixed; + if (fl::Op::isNan(x)) { + ss << "nan"; + } else if (fl::Op::isInf(x)) { + if (fl::Op::isLt(x, 0.0)) ss << "-"; + ss << "inf"; + } else if (fl::Op::isEq(x, 0.0)) { + ss << std::fabs((x * 0.0)); //believe it or not, -1.33227e-15 * 0.0 = -0.0 + } else ss << x; + return ss.str(); + } + template FL_EXPORT std::string Operation::str(short x, int precision); + template FL_EXPORT std::string Operation::str(int x, int precision); + template FL_EXPORT std::string Operation::str(scalar x, int precision); + + template <> FL_EXPORT std::string Operation::str(const std::string& x, int precision) { + (void) precision; + return x; + } + + template + std::string Operation::join(const std::vector& x, + const std::string& separator) { + std::ostringstream ss; + for (std::size_t i = 0; i < x.size(); ++i) { + ss << str(x.at(i)); + if (i + 1 < x.size()) ss << separator; + } + return ss.str(); + } + template FL_EXPORT std::string Operation::join(const std::vector& x, + const std::string& separator); + template FL_EXPORT std::string Operation::join(const std::vector& x, + const std::string& separator); + + template <> FL_EXPORT + std::string Operation::join(const std::vector& x, + const std::string& separator) { + std::ostringstream ss; + for (std::size_t i = 0; i < x.size(); ++i) { + ss << x.at(i); + if (i + 1 < x.size()) ss << separator; + } + return ss.str(); + } + + template + std::string Operation::join(int items, const std::string& separator, T first, ...) { + std::ostringstream ss; + ss << str(first); + if (items > 1) ss << separator; + va_list args; + va_start(args, first); + for (int i = 0; i < items - 1; ++i) { + ss << str(va_arg(args, T)); + if (i + 1 < items - 1) ss << separator; + } + va_end(args); + return ss.str(); + } + + template FL_EXPORT std::string Operation::join(int items, const std::string& separator, + int first, ...); + template FL_EXPORT std::string Operation::join(int items, const std::string& separator, + scalar first, ...); + + template <> FL_EXPORT + std::string Operation::join(int items, const std::string& separator, const char* first, ...) { + std::ostringstream ss; + ss << first; + if (items > 1) ss << separator; + va_list args; + va_start(args, first); + for (int i = 0; i < items - 1; ++i) { + ss << va_arg(args, const char*); + if (i + 1 < items - 1) ss << separator; + } + va_end(args); + return ss.str(); + } + +} diff --git a/src/defuzzifier/Bisector.cpp b/src/defuzzifier/Bisector.cpp new file mode 100644 index 0000000..307af8c --- /dev/null +++ b/src/defuzzifier/Bisector.cpp @@ -0,0 +1,72 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Bisector.cpp + * Author: jcrada + * + * Created on 25 April 2013, 3:56 PM + */ + +#include "fl/defuzzifier/Bisector.h" + +#include "fl/term/Term.h" +#include "fl/term/Accumulated.h" + + +namespace fl { + + Bisector::Bisector(int resolution) + : IntegralDefuzzifier(resolution) { + } + + std::string Bisector::className() const { + return "Bisector"; + } + + scalar Bisector::defuzzify(const Term* term, scalar minimum, scalar maximum) const { + if (maximum - minimum > _resolution) { + FL_LOG("[accuracy warning] the resolution <" << _resolution << "> " + "is smaller than the range <" << minimum << ", " << maximum << ">. In order to " + "improve the accuracy, the resolution should be at least equal to the range."); + } + scalar dx = (maximum - minimum) / _resolution; + + int counter = _resolution; + int left = 0, right = 0; + scalar leftArea = 0, rightArea = 0; + scalar xLeft = minimum, xRight = maximum; + while (counter-- > 0) { + if (fl::Op::isLE(leftArea, rightArea)) { + xLeft = minimum + (left + 0.5) * dx; + leftArea += term->membership(xLeft); + left++; + } else { + xRight = maximum - (right + 0.5) * dx; + rightArea += term->membership(xRight); + right++; + } + } + + //Inverse weighted average to compensate + scalar bisector = (leftArea * xRight + rightArea * xLeft) / (leftArea + rightArea); + return bisector; + } + + Defuzzifier* Bisector::constructor() { + return new Bisector; + } + +} diff --git a/src/defuzzifier/Centroid.cpp b/src/defuzzifier/Centroid.cpp new file mode 100644 index 0000000..bdd604d --- /dev/null +++ b/src/defuzzifier/Centroid.cpp @@ -0,0 +1,68 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Centroid.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/defuzzifier/Centroid.h" + + + +#include "fl/term/Term.h" +#include "fl/term/Accumulated.h" + + +namespace fl { + + Centroid::Centroid(int divisions) + : IntegralDefuzzifier(divisions) { + } + + std::string Centroid::className() const { + return "Centroid"; + } + + scalar Centroid::defuzzify(const Term* term, scalar minimum, scalar maximum) const { + if (maximum - minimum > _resolution) { + FL_LOG("[accuracy warning] the resolution <" << _resolution << "> " + "is smaller than the range <" << minimum << ", " << maximum << ">. In order to " + "improve the accuracy, the resolution should be at least equal to the range."); + } + scalar dx = (maximum - minimum) / _resolution; + scalar x, y; + scalar area = 0, xcentroid = 0, ycentroid = 0; + for (int i = 0; i < _resolution; ++i) { + x = minimum + (i + 0.5) * dx; + y = term->membership(x); + + xcentroid += y * x; + ycentroid += y * y; + area += y; + } + xcentroid /= area; + ycentroid /= 2 * area; + area *= dx; //total area... unused, but for future reference. + return xcentroid; + } + + Defuzzifier* Centroid::constructor() { + return new Centroid; + } + +} diff --git a/src/defuzzifier/IntegralDefuzzifier.cpp b/src/defuzzifier/IntegralDefuzzifier.cpp new file mode 100644 index 0000000..fbdf98e --- /dev/null +++ b/src/defuzzifier/IntegralDefuzzifier.cpp @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: IntegralDefuzzifier.cpp + * Author: jcrada + * + * Created on 2 November 2013, 9:24 AM + */ + +#include "fl/defuzzifier/IntegralDefuzzifier.h" + +namespace fl { + + IntegralDefuzzifier::IntegralDefuzzifier(int resolution) + : Defuzzifier(), _resolution(resolution) { + } + + IntegralDefuzzifier::~IntegralDefuzzifier() { + } + + void IntegralDefuzzifier::setResolution(int resolution) { + this->_resolution = resolution; + } + + int IntegralDefuzzifier::getResolution() const { + return this->_resolution; + } +} \ No newline at end of file diff --git a/src/defuzzifier/LargestOfMaximum.cpp b/src/defuzzifier/LargestOfMaximum.cpp new file mode 100644 index 0000000..0fb60af --- /dev/null +++ b/src/defuzzifier/LargestOfMaximum.cpp @@ -0,0 +1,69 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * LargestOfMaximum.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/defuzzifier/LargestOfMaximum.h" + +#include "fl/term/Term.h" + +#include "fl/Exception.h" + + + + +namespace fl { + + LargestOfMaximum::LargestOfMaximum(int resolution) + : IntegralDefuzzifier(resolution) { + } + + LargestOfMaximum::~LargestOfMaximum() { + } + + std::string LargestOfMaximum::className() const { + return "LargestOfMaximum"; + } + + scalar LargestOfMaximum::defuzzify(const Term* term, scalar minimum, scalar maximum) const { + if (maximum - minimum > _resolution) { + FL_LOG("[accuracy warning] the resolution <" << _resolution << "> " + "is smaller than the range <" << minimum << ", " << maximum << ">. In order to " + "improve the accuracy, the resolution should be at least equal to the range."); + } + scalar dx = (maximum - minimum) / _resolution; + scalar x, y; + scalar ymax = -1.0, xlargest = maximum; + for (int i = 0; i < _resolution; ++i) { + x = minimum + (i + 0.5) * dx; + y = term->membership(x); + + if (Op::isGE(y, ymax)) { + ymax = y; + xlargest = x; + } + } + return xlargest; + } + + Defuzzifier* LargestOfMaximum::constructor() { + return new LargestOfMaximum; + } +} diff --git a/src/defuzzifier/MeanOfMaximum.cpp b/src/defuzzifier/MeanOfMaximum.cpp new file mode 100644 index 0000000..5487d40 --- /dev/null +++ b/src/defuzzifier/MeanOfMaximum.cpp @@ -0,0 +1,81 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * MeanOfMaximum.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/defuzzifier/MeanOfMaximum.h" + +#include "fl/term/Term.h" + +#include "fl/Exception.h" + + + + +namespace fl { + + MeanOfMaximum::MeanOfMaximum(int resolution) + : IntegralDefuzzifier(resolution) { + } + + MeanOfMaximum::~MeanOfMaximum() { + } + + std::string MeanOfMaximum::className() const { + return "MeanOfMaximum"; + } + + scalar MeanOfMaximum::defuzzify(const Term* term, scalar minimum, scalar maximum) const { + if (maximum - minimum > _resolution) { + FL_LOG("[accuracy warning] the resolution <" << _resolution << "> " + "is smaller than the range <" << minimum << ", " << maximum << ">. In order to " + "improve the accuracy, the resolution should be at least equal to the range."); + } + scalar dx = (maximum - minimum) / _resolution; + scalar x, y; + scalar ymax = -1.0; + scalar xsmallest = minimum; + scalar xlargest = maximum; + bool samePlateau = false; + for (int i = 0; i < _resolution; ++i) { + x = minimum + (i + 0.5) * dx; + y = term->membership(x); + + if (Op::isGt(y, ymax)) { + ymax = y; + + xsmallest = x; + xlargest = x; + + samePlateau = true; + } else if (Op::isEq(y, ymax) and samePlateau) { + xlargest = x; + } else if (Op::isLt(y, ymax)) { + samePlateau = false; + } + } + + return (xlargest + xsmallest) / 2.0; + } + + Defuzzifier* MeanOfMaximum::constructor() { + return new MeanOfMaximum; + } +} diff --git a/src/defuzzifier/SmallestOfMaximum.cpp b/src/defuzzifier/SmallestOfMaximum.cpp new file mode 100644 index 0000000..67db671 --- /dev/null +++ b/src/defuzzifier/SmallestOfMaximum.cpp @@ -0,0 +1,67 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * SmallestOfMaximum.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/defuzzifier/SmallestOfMaximum.h" + +#include "fl/term/Term.h" +#include "fl/Exception.h" + + +namespace fl { + + SmallestOfMaximum::SmallestOfMaximum(int resolution) + : IntegralDefuzzifier(resolution) { + } + + SmallestOfMaximum::~SmallestOfMaximum() { + } + + std::string SmallestOfMaximum::className() const { + return "SmallestOfMaximum"; + } + + scalar SmallestOfMaximum::defuzzify(const Term* term, scalar minimum, scalar maximum) const { + if (maximum - minimum > _resolution) { + FL_LOG("[accuracy warning] the resolution <" << _resolution << "> " + "is smaller than the range <" << minimum << ", " << maximum << ">. In order to " + "improve the accuracy, the resolution should be at least equal to the range."); + } + scalar dx = (maximum - minimum) / _resolution; + scalar x, y; + scalar ymax = -1.0, xsmallest = minimum; + for (int i = 0; i < _resolution; ++i) { + x = minimum + (i + 0.5) * dx; + y = term->membership(x); + + if (Op::isGt(y, ymax)) { + xsmallest = x; + ymax = y; + } + } + return xsmallest; + } + + Defuzzifier* SmallestOfMaximum::constructor(){ + return new SmallestOfMaximum; + } +} + diff --git a/src/defuzzifier/Tsukamoto.cpp b/src/defuzzifier/Tsukamoto.cpp new file mode 100644 index 0000000..0c9523e --- /dev/null +++ b/src/defuzzifier/Tsukamoto.cpp @@ -0,0 +1,100 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/defuzzifier/Tsukamoto.h" + +#include "fl/term/Thresholded.h" + +#include "fl/term/Ramp.h" +#include "fl/term/Sigmoid.h" +#include "fl/term/SShape.h" +#include "fl/term/ZShape.h" + +namespace fl { + + scalar Tsukamoto::tsukamoto(const Thresholded* term, scalar minimum, scalar maximum) { + const Term* monotonic = term->getTerm(); + const Ramp* ramp = NULL; + const Sigmoid* sigmoid = NULL; + const SShape* sshape = NULL; + const ZShape* zshape = NULL; + scalar w = term->getThreshold(); + scalar z = fl::nan; //result; + if ((ramp = dynamic_cast (monotonic))) { + z = Op::scale(w, 0, 1, ramp->getStart(), ramp->getEnd()); + + } else if ((sigmoid = dynamic_cast (monotonic))) { + if (Op::isEq(w, 1.0)) { + if (Op::isGE(sigmoid->getSlope(), 0.0)) { + z = maximum; + } else { + z = minimum; + } + + } else if (Op::isEq(w, 0.0)) { + if (Op::isGE(sigmoid->getSlope(), 0.0)) { + z = minimum; + } else { + z = maximum; + } + } else { + scalar a = sigmoid->getSlope(); + scalar b = sigmoid->getInflection(); + z = b + (std::log(1.0 / w - 1.0) / -a); + } + + } else if ((sshape = dynamic_cast (monotonic))) { + scalar difference = sshape->getEnd() - sshape->getStart(); + scalar a = sshape->getStart() + std::sqrt(w * difference * difference / 2.0); + scalar b = sshape->getEnd() + std::sqrt(difference * difference * (w - 1.0) / -2.0); + if (std::fabs(w - monotonic->membership(a)) < + std::fabs(w - monotonic->membership(b))) { + z = a; + } else { + z = b; + } + + } else if ((zshape = dynamic_cast (monotonic))) { + scalar difference = zshape->getEnd() - zshape->getStart(); + scalar a = zshape->getStart() + std::sqrt(difference * difference * (w - 1.0) / -2.0); + scalar b = zshape->getEnd() + std::sqrt(w * difference * difference / 2.0); + if (std::fabs(w - monotonic->membership(a)) < + std::fabs(w - monotonic->membership(b))) { + z = a; + } else { + z = b; + } + } + + if (not Op::isNan(z)) { + //Compare difference between estimated and true value + scalar fz = monotonic->membership(z); + if (not Op::isEq(w, fz, 1e-2)) { + FL_DBG("[tsukamoto warning] difference <" << Op::str(std::abs(w-fz)) << "> " + "might suggest an inaccurate computation of z because it is " + "expected w=f(z) in " << monotonic->className() << + " term <" << monotonic->getName() << ">, but " + "w=" << term->getThreshold() << " " + "f(z)=" << fz << " and " + "z=" << Op::str(z)); + } + } else { +// else if it is not a Tsukamoto controller, then fallback to the inverse Tsukamoto + z = monotonic->membership(term->getThreshold()); + } + return z; + } + +} diff --git a/src/defuzzifier/WeightedAverage.cpp b/src/defuzzifier/WeightedAverage.cpp new file mode 100644 index 0000000..bb2e1a9 --- /dev/null +++ b/src/defuzzifier/WeightedAverage.cpp @@ -0,0 +1,78 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/defuzzifier/WeightedAverage.h" + +#include "fl/term/Accumulated.h" +#include "fl/term/Thresholded.h" + +#include "fl/defuzzifier/Tsukamoto.h" +#include "fl/norm/Norm.h" +#include "fl/norm/TNorm.h" + +namespace fl { + + WeightedAverage::WeightedAverage() : Defuzzifier() { + } + + WeightedAverage::~WeightedAverage() { + } + + std::string WeightedAverage::className() const { + return "WeightedAverage"; + } + + scalar WeightedAverage::defuzzify(const Term* term, + scalar minimum, scalar maximum) const { + (void) minimum; + (void) maximum; + const Accumulated* takagiSugeno = dynamic_cast (term); + if (not takagiSugeno) { + std::ostringstream ss; + ss << "[defuzzification error]" + << "expected an Accumulated term instead of" + << "<" << term->toString() << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + + scalar sum = 0.0; + scalar weights = 0.0; + FL_DBG("Defuzzifying " << takagiSugeno->numberOfTerms() << " output terms"); + for (int i = 0; i < takagiSugeno->numberOfTerms(); ++i) { + const Thresholded* thresholded = dynamic_cast (takagiSugeno->getTerm(i)); + if (not thresholded) { + std::ostringstream ss; + ss << "[defuzzification error]" + << "expected a Thresholded term instead of" + << "<" << takagiSugeno->getTerm(i)->toString() << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + + scalar w = thresholded->getThreshold(); + scalar z = Tsukamoto::tsukamoto(thresholded, + takagiSugeno->getMinimum(), takagiSugeno->getMaximum()); + //Traditionally, activation is the AlgebraicProduct + sum += thresholded->getActivation()->compute(w, z); + weights += w; + } + + return sum / weights; + } + + Defuzzifier* WeightedAverage::constructor() { + return new WeightedAverage; + } + +} \ No newline at end of file diff --git a/src/defuzzifier/WeightedSum.cpp b/src/defuzzifier/WeightedSum.cpp new file mode 100644 index 0000000..a2e8e58 --- /dev/null +++ b/src/defuzzifier/WeightedSum.cpp @@ -0,0 +1,73 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/defuzzifier/WeightedSum.h" + +#include "fl/term/Accumulated.h" +#include "fl/term/Thresholded.h" +#include "fl/defuzzifier/Tsukamoto.h" +#include "fl/norm/TNorm.h" + +namespace fl { + + WeightedSum::WeightedSum() : Defuzzifier() { + } + + WeightedSum::~WeightedSum() { + } + + std::string WeightedSum::className() const { + return "WeightedSum"; + } + + scalar WeightedSum::defuzzify(const Term* term, + scalar minimum, scalar maximum) const { + (void) minimum; + (void) maximum; + const Accumulated* takagiSugeno = dynamic_cast (term); + if (not takagiSugeno) { + std::ostringstream ss; + ss << "[defuzzification error]" + << "expected an Accumulated term instead of" + << "<" << term->toString() << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + + scalar sum = 0.0; + for (int i = 0; i < takagiSugeno->numberOfTerms(); ++i) { + const Thresholded* thresholded = dynamic_cast (takagiSugeno->getTerm(i)); + if (not thresholded) { + std::ostringstream ss; + ss << "[defuzzification error]" + << "expected a Thresholded term instead of" + << "<" << takagiSugeno->getTerm(i)->toString() << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + + scalar w = thresholded->getThreshold(); + scalar z = Tsukamoto::tsukamoto(thresholded, + takagiSugeno->getMinimum(), takagiSugeno->getMaximum()); + //Traditionally, activation is the AlgebraicProduct + sum += thresholded->getActivation()->compute(w, z); + } + + return sum; + } + + Defuzzifier* WeightedSum::constructor() { + return new WeightedSum; + } + +} diff --git a/src/factory/DefuzzifierFactory.cpp b/src/factory/DefuzzifierFactory.cpp new file mode 100644 index 0000000..f3ac97f --- /dev/null +++ b/src/factory/DefuzzifierFactory.cpp @@ -0,0 +1,49 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DefuzzifierFactory.cpp + * Author: jcrada + * + * Created on 8 January 2013, 11:17 PM + */ + +#include "fl/factory/DefuzzifierFactory.h" + +#include "fl/defuzzifier/Centroid.h" +#include "fl/defuzzifier/Bisector.h" +#include "fl/defuzzifier/SmallestOfMaximum.h" +#include "fl/defuzzifier/LargestOfMaximum.h" +#include "fl/defuzzifier/MeanOfMaximum.h" +#include "fl/defuzzifier/WeightedAverage.h" +#include "fl/defuzzifier/WeightedSum.h" +#include "fl/Exception.h" + +namespace fl { + + DefuzzifierFactory::DefuzzifierFactory() { + registerClass(Bisector().className(), &(Bisector::constructor)); + registerClass(Centroid().className(), &(Centroid::constructor)); + registerClass(LargestOfMaximum().className(), &(LargestOfMaximum::constructor)); + registerClass(MeanOfMaximum().className(), &(MeanOfMaximum::constructor)); + registerClass(SmallestOfMaximum().className(), &(SmallestOfMaximum::constructor)); + registerClass(WeightedAverage().className(), &(WeightedAverage::constructor)); + registerClass(WeightedSum().className(), &(WeightedSum::constructor)); + } + + DefuzzifierFactory::~DefuzzifierFactory() { + } + +} diff --git a/src/factory/Factory.cpp b/src/factory/Factory.cpp new file mode 100644 index 0000000..88b8606 --- /dev/null +++ b/src/factory/Factory.cpp @@ -0,0 +1,97 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Factory.cpp + * Author: jcrada + * + * Created on 29 November 2013, 11:48 PM + */ + +#include "fl/factory/Factory.h" +#include "fl/Exception.h" + +#include "fl/defuzzifier/Defuzzifier.h" +#include "fl/hedge/Hedge.h" +#include "fl/norm/SNorm.h" +#include "fl/norm/TNorm.h" +#include "fl/term/Term.h" + + +namespace fl { + + template + Factory::Factory() { + + } + + template + Factory::~Factory() { + + } + + template + void Factory::registerClass(const std::string& key, Creator creator) { + this->map[key] = creator; + } + + template + void Factory::deregisterClass(const std::string& key) { + typename std::map::iterator it = this->map.find(key); + if (it != this->map.end()) { + this->map.erase(it); + } + } + + template + bool Factory::hasRegisteredClass(const std::string& key) const { + typename std::map::const_iterator it = this->map.find(key); + return (it != this->map.end()); + } + + template + std::vector Factory::available() const { + std::vector result; + typename std::map::const_iterator it = this->map.begin(); + while (it != this->map.end()) { + result.push_back(it->first); + ++it; + } + return result; + } + + template + T Factory::createInstance(const std::string& key) const { + if (key.empty()) return NULL; + typename std::map::const_iterator it = this->map.find(key); + if (it != this->map.end()) { + if (it->second) { + return it->second(); + } + return NULL; + } + std::ostringstream ss; + ss << "[factory error] class <" << key << "> not registered"; + throw fl::Exception(ss.str(), FL_AT); + } +} + +template class fl::Factory; +template class fl::Factory; +template class fl::Factory; +template class fl::Factory; +template class fl::Factory; + + diff --git a/src/factory/FactoryManager.cpp b/src/factory/FactoryManager.cpp new file mode 100644 index 0000000..3b56bd5 --- /dev/null +++ b/src/factory/FactoryManager.cpp @@ -0,0 +1,102 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Factory.cpp + * Author: jcrada + * + * Created on 8 January 2013, 11:10 PM + */ + +#include "fl/factory/FactoryManager.h" +#include "fl/factory/DefuzzifierFactory.h" +#include "fl/factory/SNormFactory.h" +#include "fl/factory/TNormFactory.h" +#include "fl/factory/TermFactory.h" +#include "fl/factory/HedgeFactory.h" + +namespace fl { + + FactoryManager* FactoryManager::_instance = NULL; + + FactoryManager* FactoryManager::instance() { + if (not _instance) { + _instance = new FactoryManager; + _instance->setTnorm(new TNormFactory); + _instance->setSnorm(new SNormFactory); + _instance->setDefuzzifier(new DefuzzifierFactory); + _instance->setTerm(new TermFactory); + _instance->setHedge(new HedgeFactory); + } + return _instance; + } + + FactoryManager::FactoryManager() : + _tnorm(NULL), _snorm(NULL), _defuzzifier(NULL), _term(NULL), _hedge(NULL) { } + + FactoryManager::~FactoryManager() { + if (_hedge) delete _hedge; + if (_term) delete _term; + if (_defuzzifier) delete _defuzzifier; + if (_snorm) delete _snorm; + if (_tnorm) delete _tnorm; + } + + void FactoryManager::setTnorm(TNormFactory* tnorm) { + if (this->_tnorm) delete this->_tnorm; + this->_tnorm = tnorm; + } + + TNormFactory* FactoryManager::tnorm() const { + return this->_tnorm; + } + + void FactoryManager::setSnorm(SNormFactory* snorm) { + if (this->_snorm) delete this->_snorm; + this->_snorm = snorm; + } + + SNormFactory* FactoryManager::snorm() const { + return this->_snorm; + } + + void FactoryManager::setDefuzzifier(DefuzzifierFactory* defuzzifier) { + if (this->_defuzzifier) delete this->_defuzzifier; + this->_defuzzifier = defuzzifier; + } + + DefuzzifierFactory* FactoryManager::defuzzifier() const { + return this->_defuzzifier; + } + + void FactoryManager::setTerm(TermFactory* term) { + if (this->_term) delete this->_term; + this->_term = term; + } + + TermFactory* FactoryManager::term() const { + return this->_term; + } + + void FactoryManager::setHedge(HedgeFactory* hedge) { + if (this->_hedge) delete this->_hedge; + this->_hedge = hedge; + } + + HedgeFactory* FactoryManager::hedge() const { + return this->_hedge; + } + +} diff --git a/src/factory/HedgeFactory.cpp b/src/factory/HedgeFactory.cpp new file mode 100644 index 0000000..f5a09b3 --- /dev/null +++ b/src/factory/HedgeFactory.cpp @@ -0,0 +1,47 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HedgeFactory.cpp + * Author: jcrada + * + * Created on 11 January 2013, 8:51 PM + */ + +#include "fl/factory/HedgeFactory.h" + +#include "fl/hedge/Any.h" +#include "fl/hedge/Extremely.h" +#include "fl/hedge/Not.h" +#include "fl/hedge/Seldom.h" +#include "fl/hedge/Somewhat.h" +#include "fl/hedge/Very.h" + + +namespace fl { + + HedgeFactory::HedgeFactory() { + registerClass(Any().name(), &(Any::constructor)); + registerClass(Extremely().name(), Extremely::constructor); + registerClass(Not().name(), Not::constructor); + registerClass(Seldom().name(), Seldom::constructor); + registerClass(Somewhat().name(), Somewhat::constructor); + registerClass(Very().name(), Very::constructor); + } + + HedgeFactory::~HedgeFactory() { + } + +} diff --git a/src/factory/SNormFactory.cpp b/src/factory/SNormFactory.cpp new file mode 100644 index 0000000..0223e17 --- /dev/null +++ b/src/factory/SNormFactory.cpp @@ -0,0 +1,48 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SNormFactory.cpp + * Author: jcrada + * + * Created on 8 January 2013, 11:20 PM + */ + +#include "fl/factory/SNormFactory.h" + +#include "fl/norm/s/AlgebraicSum.h" +#include "fl/norm/s/BoundedSum.h" +#include "fl/norm/s/DrasticSum.h" +#include "fl/norm/s/EinsteinSum.h" +#include "fl/norm/s/HamacherSum.h" +#include "fl/norm/s/Maximum.h" +#include "fl/norm/s/NormalizedSum.h" + +namespace fl { + + SNormFactory::SNormFactory() { + registerClass(AlgebraicSum().className(), &(AlgebraicSum::constructor)); + registerClass(BoundedSum().className(), &(BoundedSum::constructor)); + registerClass(DrasticSum().className(), &(DrasticSum::constructor)); + registerClass(EinsteinSum().className(), &(EinsteinSum::constructor)); + registerClass(HamacherSum().className(), &(HamacherSum::constructor)); + registerClass(Maximum().className(), &(Maximum::constructor)); + registerClass(NormalizedSum().className(), &(NormalizedSum::constructor)); + } + + SNormFactory::~SNormFactory() { + } + +} diff --git a/src/factory/TNormFactory.cpp b/src/factory/TNormFactory.cpp new file mode 100644 index 0000000..c6d29be --- /dev/null +++ b/src/factory/TNormFactory.cpp @@ -0,0 +1,46 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: TNormFactory.cpp + * Author: jcrada + * + * Created on 8 January 2013) return 11:20 PM + */ + +#include "fl/factory/TNormFactory.h" + +#include "fl/norm/t/AlgebraicProduct.h" +#include "fl/norm/t/BoundedDifference.h" +#include "fl/norm/t/DrasticProduct.h" +#include "fl/norm/t/EinsteinProduct.h" +#include "fl/norm/t/HamacherProduct.h" +#include "fl/norm/t/Minimum.h" + +namespace fl { + + TNormFactory::TNormFactory() { + registerClass(Minimum().className(), &(Minimum::constructor)); + registerClass(AlgebraicProduct().className(), &(AlgebraicProduct::constructor)); + registerClass(BoundedDifference().className(), &(BoundedDifference::constructor)); + registerClass(DrasticProduct().className(), &(DrasticProduct::constructor)); + registerClass(EinsteinProduct().className(), &(EinsteinProduct::constructor)); + registerClass(HamacherProduct().className(), &(HamacherProduct::constructor)); + } + + TNormFactory::~TNormFactory() { + } + +} diff --git a/src/factory/TermFactory.cpp b/src/factory/TermFactory.cpp new file mode 100644 index 0000000..a719388 --- /dev/null +++ b/src/factory/TermFactory.cpp @@ -0,0 +1,71 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: TermFactory.cpp + * Author: jcrada + * + * Created on 8 January 2013, 11:18 PM + */ + +#include "fl/factory/TermFactory.h" + +#include "fl/term/Term.h" +#include "fl/Exception.h" + +#include "fl/term/Bell.h" +#include "fl/term/Constant.h" +#include "fl/term/Discrete.h" +#include "fl/term/Function.h" +#include "fl/term/Gaussian.h" +#include "fl/term/GaussianProduct.h" +#include "fl/term/Linear.h" +#include "fl/term/PiShape.h" +#include "fl/term/Ramp.h" +#include "fl/term/Rectangle.h" +#include "fl/term/SShape.h" +#include "fl/term/Sigmoid.h" +#include "fl/term/SigmoidDifference.h" +#include "fl/term/SigmoidProduct.h" +#include "fl/term/Trapezoid.h" +#include "fl/term/Triangle.h" +#include "fl/term/ZShape.h" + +namespace fl { + + TermFactory::TermFactory() { + registerClass(Bell().className(), &(Bell::constructor)); + registerClass(Constant().className(), &(Constant::constructor)); + registerClass(Discrete().className(), &(Discrete::constructor)); + registerClass(Function().className(), &(Function::constructor)); + registerClass(Gaussian().className(), &(Gaussian::constructor)); + registerClass(GaussianProduct().className(), &(GaussianProduct::constructor)); + registerClass(Linear().className(), &(Linear::constructor)); + registerClass(PiShape().className(), &(PiShape::constructor)); + registerClass(Ramp().className(), &(Ramp::constructor)); + registerClass(Rectangle().className(), &(Rectangle::constructor)); + registerClass(SShape().className(), &(SShape::constructor)); + registerClass(Sigmoid().className(), &(Sigmoid::constructor)); + registerClass(SigmoidDifference().className(), &(SigmoidDifference::constructor)); + registerClass(SigmoidProduct().className(), &(SigmoidProduct::constructor)); + registerClass(Trapezoid().className(), &(Trapezoid::constructor)); + registerClass(Triangle().className(), &(Triangle::constructor)); + registerClass(ZShape().className(), &(ZShape::constructor)); + } + + TermFactory::~TermFactory() { + } + +} diff --git a/src/fuzzylite.cpp b/src/fuzzylite.cpp new file mode 100644 index 0000000..482f1b7 --- /dev/null +++ b/src/fuzzylite.cpp @@ -0,0 +1,120 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * fuzzylite.cpp + * + * Created on 1 February 2013, 10:47 AM + * Author: jcrada + */ + +#include "fl/fuzzylite.h" + +namespace fl { + + int fuzzylite::_decimals = 3; + scalar fuzzylite::_macheps = 1e-5; + bool fuzzylite::_debug = FL_DEBUG; + bool fuzzylite::_logging = true; + + std::string fuzzylite::name() { + return "fuzzylite"; + } + + std::string fuzzylite::fullname(){ + return name() + "-" + longVersion(); + } + + std::string fuzzylite::version() { + return FL_VERSION; + } + + std::string fuzzylite::longVersion() { + return FL_VERSION "b" FL_DATE; + } + + std::string fuzzylite::author() { + return "Juan Rada-Vilela"; + } + + std::string fuzzylite::date() { + return FL_DATE; + } + + std::string fuzzylite::platform() { +#ifdef FL_UNIX + return "Unix"; +#elif defined FL_WINDOWS + return "Windows"; +#else + return "?"; +#endif + } + + std::string fuzzylite::configuration() { + if (FL_DEBUG) + return "Debug"; + return "Release"; + } + + std::string fuzzylite::floatingPoint() { + scalar someScalar = 0; + (void) someScalar; + std::string type; + + std::ostringstream ss; +#ifdef FL_USE_FLOAT + type = "float"; +#else + type = "double"; +#endif + ss << "fl::scalar is defined as \'" << type << "\' using " << + sizeof (someScalar) << " bytes"; + return ss.str(); + } + + void fuzzylite::setDebug(bool debug) { + _debug = debug; + } + + bool fuzzylite::debug() { + return _debug; + } + + void fuzzylite::setDecimals(int decimals) { + _decimals = decimals; + } + + int fuzzylite::decimals() { + return _decimals; + } + + void fuzzylite::setMachEps(scalar macheps) { + _macheps = macheps; + } + + scalar fuzzylite::macheps() { + return _macheps; + } + + void fuzzylite::setLogging(bool logging) { + _logging = logging; + } + + bool fuzzylite::logging() { + return _logging; + } + +} diff --git a/src/hedge/Any.cpp b/src/hedge/Any.cpp new file mode 100644 index 0000000..fef023b --- /dev/null +++ b/src/hedge/Any.cpp @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Any.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Any.h" + +namespace fl { + + std::string Any::name() const { + return "any"; + } + + scalar Any::hedge(scalar x) const { + (void) x; + return 1.0; + } + + Hedge* Any::constructor(){ + return new Any; + } + +} diff --git a/src/hedge/Extremely.cpp b/src/hedge/Extremely.cpp new file mode 100644 index 0000000..7f2299e --- /dev/null +++ b/src/hedge/Extremely.cpp @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Extremely.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Extremely.h" +#include "fl/Operation.h" + +namespace fl { + + std::string Extremely::name() const { + return "extremely"; + } + + scalar Extremely::hedge(scalar x) const { + return Op::isLE(x, 0.5) + ? 2 * x * x + : 1 - 2 * (1 - x) * (1 - x); + } + + Hedge* Extremely::constructor(){ + return new Extremely; + } +} diff --git a/src/hedge/Not.cpp b/src/hedge/Not.cpp new file mode 100644 index 0000000..97581e4 --- /dev/null +++ b/src/hedge/Not.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Not.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Not.h" + +namespace fl { + + std::string Not::name() const { + return "not"; + } + + scalar Not::hedge(scalar x) const { + return 1 - x; + } + + Hedge* Not::constructor(){ + return new Not; + } + +} diff --git a/src/hedge/Seldom.cpp b/src/hedge/Seldom.cpp new file mode 100644 index 0000000..b57f199 --- /dev/null +++ b/src/hedge/Seldom.cpp @@ -0,0 +1,44 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Seldom.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Seldom.h" +#include "fl/Operation.h" + +#include + +namespace fl { + + std::string Seldom::name() const { + return "seldom"; + } + + scalar Seldom::hedge(scalar x) const { + return Op::isLE(x, 0.5) + ? std::sqrt(x / 2) + : 1 - std::sqrt((1 - x) / 2); + } + + Hedge* Seldom::constructor(){ + return new Seldom; + } + +} diff --git a/src/hedge/Somewhat.cpp b/src/hedge/Somewhat.cpp new file mode 100644 index 0000000..bcb446d --- /dev/null +++ b/src/hedge/Somewhat.cpp @@ -0,0 +1,41 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Somewhat.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Somewhat.h" + +#include + +namespace fl { + + std::string Somewhat::name() const { + return "somewhat"; + } + + scalar Somewhat::hedge(scalar x) const { + return std::sqrt(x); + } + + Hedge* Somewhat::constructor(){ + return new Somewhat; + } + +} diff --git a/src/hedge/Very.cpp b/src/hedge/Very.cpp new file mode 100644 index 0000000..f767c14 --- /dev/null +++ b/src/hedge/Very.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Very.cpp + * + * Created on: 4/12/2012 + * Author: jcrada + */ + +#include "fl/hedge/Very.h" + +namespace fl { + + std::string Very::name() const { + return "very"; + } + + scalar Very::hedge(scalar x) const { + return x * x; + } + + Hedge* Very::constructor() { + return new Very; + } + +} diff --git a/src/imex/CppExporter.cpp b/src/imex/CppExporter.cpp new file mode 100644 index 0000000..ef01439 --- /dev/null +++ b/src/imex/CppExporter.cpp @@ -0,0 +1,223 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: CppExporter.cpp + * Author: jcrada + * + * Created on 1 January 2013, 2:41 PM + */ + +#include "fl/imex/CppExporter.h" + +#include "fl/Headers.h" + +#include + +namespace fl { + + CppExporter::CppExporter() { + } + + CppExporter::~CppExporter() { + } + + std::string CppExporter::name() const { + return "CppExporter"; + } + + std::string CppExporter::toString(const Engine* engine) const { + std::ostringstream cpp; + cpp << "fl::Engine* engine = new fl::Engine;\n"; + cpp << "engine->setName(\"" << engine->getName() << "\");\n"; + + cpp << "\n"; + + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + cpp << toString(engine->getInputVariable(i), engine) << "\n"; + } + + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + cpp << toString(engine->getOutputVariable(i), engine) << "\n"; + } + + for (int i = 0; i < engine->numberOfRuleBlocks(); ++i) { + cpp << toString(engine->getRuleBlock(i), engine) << "\n"; + } + + return cpp.str(); + } + + std::string CppExporter::toString(const InputVariable* inputVariable, const Engine* engine) const { + std::ostringstream ss; + std::string name = "inputVariable"; + if (engine->numberOfInputVariables() > 1) { + int index = std::distance(engine->inputVariables().begin(), + std::find(engine->inputVariables().begin(), + engine->inputVariables().end(), inputVariable)); + name += Op::str(index + 1); + } + ss << "fl::InputVariable* " << name << " = new fl::InputVariable;\n"; + ss << name << "->setEnabled(" << (inputVariable->isEnabled() ? "true" : "false") << ");\n"; + ss << name << "->setName(\"" << inputVariable->getName() << "\");\n"; + ss << name << "->setRange(" << + toString(inputVariable->getMinimum()) << ", " << + toString(inputVariable->getMaximum()) << ");\n"; + for (int t = 0; t < inputVariable->numberOfTerms(); ++t) { + ss << name << "->addTerm(" << toString(inputVariable->getTerm(t)) << ");\n"; + } + ss << "engine->addInputVariable(" << name << ");\n"; + return ss.str(); + } + + std::string CppExporter::toString(const OutputVariable* outputVariable, const Engine* engine) const { + std::ostringstream ss; + std::string name = "outputVariable"; + if (engine->numberOfOutputVariables() > 1) { + int index = std::distance(engine->outputVariables().begin(), + std::find(engine->outputVariables().begin(), + engine->outputVariables().end(), outputVariable)); + name += Op::str(index + 1); + } + ss << "fl::OutputVariable* " << name << " = new fl::OutputVariable;\n"; + ss << name << "->setEnabled(" << (outputVariable->isEnabled() ? "true" : "false") << ");\n"; + ss << name << "->setName(\"" << outputVariable->getName() << "\");\n"; + ss << name << "->setRange(" << + toString(outputVariable->getMinimum()) << ", " << + toString(outputVariable->getMaximum()) << ");\n"; + ss << name << "->fuzzyOutput()->setAccumulation(" << + toString(outputVariable->fuzzyOutput()->getAccumulation()) << ");\n"; + ss << name << "->setDefuzzifier(" << + toString(outputVariable->getDefuzzifier()) << ");\n"; + ss << name << "->setDefaultValue(" << + toString(outputVariable->getDefaultValue()) << ");\n"; + ss << name << "->setLockValidOutput(" << + (outputVariable->isLockingValidOutput() ? "true" : "false") << ");\n"; + ss << name << "->setLockOutputRange(" << + (outputVariable->isLockingOutputRange() ? "true" : "false") << ");\n"; + for (int t = 0; t < outputVariable->numberOfTerms(); ++t) { + ss << name << "->addTerm(" << toString(outputVariable->getTerm(t)) << ");\n"; + } + ss << "engine->addOutputVariable(" << name << ");\n"; + return ss.str(); + } + + std::string CppExporter::toString(const RuleBlock* ruleBlock, const Engine* engine) const { + std::ostringstream ss; + std::string name = "ruleBlock"; + if (engine->numberOfRuleBlocks() > 1) { + int index = std::distance(engine->ruleBlocks().begin(), + std::find(engine->ruleBlocks().begin(), + engine->ruleBlocks().end(), ruleBlock)); + name += Op::str(index + 1); + } + ss << "fl::RuleBlock* " << name << " = new fl::RuleBlock;\n"; + ss << name << "->setEnabled(" << (ruleBlock->isEnabled() ? "true" : "false") << ");\n"; + ss << name << "->setName(\"" << ruleBlock->getName() << "\");\n"; + ss << name << "->setConjunction(" << + toString(ruleBlock->getConjunction()) << ");\n"; + ss << name << "->setDisjunction(" + << toString(ruleBlock->getDisjunction()) << ");\n"; + ss << name << "->setActivation(" + << toString(ruleBlock->getActivation()) << ");\n"; + for (int r = 0; r < ruleBlock->numberOfRules(); ++r) { + ss << name << "->addRule(fl::Rule::parse(\"" << + ruleBlock->getRule(r)->getText() << "\", engine));\n"; + } + ss << "engine->addRuleBlock(" << name << ");\n"; + return ss.str(); + } + + std::string CppExporter::toString(scalar value) const { + std::ostringstream ss; + if (fl::Op::isNan(value)) + ss << "fl::nan"; + else if (fl::Op::isInf(value)) + ss << (Op::isGE(value, 0.0) ? "" : "-") << "fl::inf"; + else ss << fl::Op::str(value); + return ss.str(); + } + + std::string CppExporter::toString(const Term* term) const { + if (not term) return "NULL"; + + if (term->className() == Discrete().className()) { + const Discrete* discrete = dynamic_cast (term); + std::ostringstream ss; + ss << "fl::" << term->className() << "::create(\"" << term->getName() << "\", "; + ss << discrete->x.size() + discrete->y.size() << ", "; + for (std::size_t i = 0; i < discrete->x.size(); ++i) { + ss << fl::Op::str(discrete->x.at(i)) << ", " + << fl::Op::str(discrete->y.at(i)); + if (i + 1 < discrete->x.size()) ss << ", "; + } + ss << ")"; + return ss.str(); + } + + if (term->className() == Function().className()) { + const Function* function = dynamic_cast (term); + std::ostringstream ss; + ss << "fl::" << term->className() << "::create(\"" << term->getName() << "\", " + << "\"" << function->getFormula() << "\", engine)"; + return ss.str(); + } + + if (term->className() == Linear().className()) { + const Linear* linear = dynamic_cast (term); + std::ostringstream ss; + ss << "fl::" << term->className() << "::create(\"" << term->getName() << "\", " + << "engine->inputVariables(), "; + for (std::size_t i = 0; i < linear->coefficients.size(); ++i) { + ss << fl::Op::str(linear->coefficients.at(i)); + if (i + 1 < linear->coefficients.size()) ss << ", "; + } + ss << ")"; + return ss.str(); + } + + std::ostringstream ss; + ss << "new fl::" << term->className() << "(\"" << term->getName() << "\", " + << Op::findReplace(term->parameters(), " ", ", ") << ")"; + return ss.str(); + } + + std::string CppExporter::toString(const Hedge * hedge) const { + if (hedge->name() == Any().name()) return "new fl::Any"; + if (hedge->name() == Extremely().name()) return "new fl::Extremely"; + if (hedge->name() == Not().name()) return "new fl::Not"; + if (hedge->name() == Seldom().name()) return "new fl::Seldom"; + if (hedge->name() == Somewhat().name()) return "new fl::Somewhat"; + if (hedge->name() == Very().name()) return "new fl::Very"; + return hedge->name(); + } + + std::string CppExporter::toString(const Norm* op) const { + if (not op) return "NULL"; + return "new fl::" + op->className(); + } + + std::string CppExporter::toString(const Defuzzifier* defuzzifier) const { + if (not defuzzifier) return "NULL"; + const IntegralDefuzzifier* integralDefuzzifier = + dynamic_cast (defuzzifier); + if (integralDefuzzifier) { + return "new fl::" + integralDefuzzifier->className() + "(" + + fl::Op::str(integralDefuzzifier->getResolution()) + ")"; + } + return "new fl::" + defuzzifier->className(); + } + +} diff --git a/src/imex/FclExporter.cpp b/src/imex/FclExporter.cpp new file mode 100644 index 0000000..90bc128 --- /dev/null +++ b/src/imex/FclExporter.cpp @@ -0,0 +1,209 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * FclExporter.cpp + * + * Created on: 8/12/2012 + * Author: jcrada + */ + +#include "fl/imex/FclExporter.h" + +#include "fl/Headers.h" + +#include + +namespace fl { + + FclExporter::FclExporter(const std::string& indent) : Exporter(), _indent(indent) { + } + + FclExporter::~FclExporter() { + } + + void FclExporter::setIndent(const std::string& indent) { + this->_indent = indent; + } + + std::string FclExporter::getIndent() const { + return this->_indent; + } + + std::string FclExporter::name() const { + return "FclExporter"; + } + + std::string FclExporter::toString(const Engine* engine) const { + std::ostringstream fcl; + fcl << "FUNCTION_BLOCK " << engine->getName() << "\n\n"; + + fcl << "VAR_INPUT\n"; + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + fcl << _indent << engine->getInputVariable(i)->getName() << ": REAL;\n"; + } + fcl << "END_VAR\n\n"; + + fcl << "VAR_OUTPUT\n"; + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + fcl << _indent << engine->getOutputVariable(i)->getName() << ": REAL;\n"; + } + fcl << "END_VAR\n\n"; + + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + InputVariable* inputVariable = engine->getInputVariable(i); + fcl << "FUZZIFY " << inputVariable->getName() << "\n"; + fcl << _indent << "ENABLED : " << + (inputVariable->isEnabled() ? "TRUE" : "FALSE") << ";\n"; + fcl << _indent << "RANGE := (" << fl::Op::join(2, " .. ", + inputVariable->getMinimum(), inputVariable->getMaximum()) + << ");\n"; + + for (int t = 0; t < inputVariable->numberOfTerms(); ++t) { + Term* term = inputVariable->getTerm(t); + fcl << _indent << "TERM " << term->getName() << " := " << toString(term) + << ";\n"; + } + fcl << "END_FUZZIFY\n\n"; + } + + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + OutputVariable* outputVariable = engine->getOutputVariable(i); + fcl << "DEFUZZIFY " << outputVariable->getName() << "\n"; + fcl << _indent << "ENABLED : " << + (outputVariable->isEnabled() ? "TRUE" : "FALSE") << ";\n"; + fcl << _indent << "RANGE := (" << fl::Op::join(2, " .. ", + outputVariable->getMinimum(), outputVariable->getMaximum()) + << ");\n"; + + for (int t = 0; t < outputVariable->numberOfTerms(); ++t) { + Term* term = outputVariable->getTerm(t); + fcl << _indent << "TERM " << term->getName() << " := " << toString(term) + << ";\n"; + } + if (outputVariable->getDefuzzifier()) { + fcl << _indent << "METHOD : " << toString(outputVariable->getDefuzzifier()) << ";\n"; + } + if (outputVariable->fuzzyOutput()->getAccumulation()) + fcl << _indent << "ACCU : " << toString(outputVariable->fuzzyOutput()->getAccumulation()) << ";\n"; + + fcl << _indent << "DEFAULT := " << fl::Op::str(outputVariable->getDefaultValue()); + if (outputVariable->isLockingValidOutput()) { + fcl << " | NC"; + } + fcl << ";\n"; + + if (outputVariable->isLockingValidOutput() or outputVariable->isLockingOutputRange()) { + fcl << _indent << "LOCK : "; + std::string lock; + if (outputVariable->isLockingValidOutput()) { + lock = "VALID"; + } + if (outputVariable->isLockingOutputRange()) { + if (not lock.empty()) lock += " | "; + lock += "RANGE"; + } + fcl << lock << ";\n"; + } + + fcl << "END_DEFUZZIFY\n"; + fcl << "\n"; + } + + for (int i = 0; i < engine->numberOfRuleBlocks(); ++i) { + RuleBlock* ruleblock = engine->getRuleBlock(i); + fcl << "RULEBLOCK " << ruleblock->getName() << "\n"; + fcl << _indent << "ENABLED : " << + (ruleblock->isEnabled() ? "TRUE" : "FALSE") << ";\n"; + if (ruleblock->getConjunction()) + fcl << _indent << "AND : " << toString(ruleblock->getConjunction()) << ";\n"; + if (ruleblock->getDisjunction()) + fcl << _indent << "OR : " << toString(ruleblock->getDisjunction()) << ";\n"; + if (ruleblock->getActivation()) + fcl << _indent << "ACT : " << toString(ruleblock->getActivation()) << ";\n"; + + for (int r = 0; r < ruleblock->numberOfRules(); ++r) { + fcl << _indent << "RULE " << (r + 1) << " : " << + ruleblock->getRule(r)->getText() << "\n"; + } + fcl << "END_RULEBLOCK\n"; + fcl << "\n"; + } + + fcl << "END_FUNCTION_BLOCK\n"; + return fcl.str(); + } + + std::string FclExporter::toString(const TNorm * tnorm) const { + if (not tnorm) return ""; + std::string name = tnorm->className(); + if (name == Minimum().className()) return "MIN"; + if (name == AlgebraicProduct().className()) return "PROD"; + if (name == BoundedDifference().className()) return "BDIF"; + if (name == DrasticProduct().className()) return "DPROD"; + if (name == EinsteinProduct().className()) return "EPROD"; + if (name == HamacherProduct().className()) return "HPROD"; + return tnorm->className(); + } + + std::string FclExporter::toString(const SNorm * snorm) const { + if (not snorm) return ""; + std::string name = snorm->className(); + if (name == Maximum().className()) return "MAX"; + if (name == AlgebraicSum().className()) return "ASUM"; + if (name == NormalizedSum().className()) return "NSUM"; + if (name == BoundedSum().className()) return "BSUM"; + if (name == DrasticSum().className()) return "DSUM"; + if (name == EinsteinSum().className()) return "ESUM"; + if (name == HamacherSum().className()) return "HSUM"; + return snorm->className(); + } + + std::string FclExporter::toString(const Defuzzifier* defuzzifier) const { + if (not defuzzifier) return ""; + if (defuzzifier->className() == Centroid().className()) return "COG"; + if (defuzzifier->className() == Bisector().className()) return "COA"; + if (defuzzifier->className() == SmallestOfMaximum().className()) return "LM"; + if (defuzzifier->className() == LargestOfMaximum().className()) return "RM"; + if (defuzzifier->className() == MeanOfMaximum().className()) return "MM"; + if (defuzzifier->className() == WeightedAverage().className()) return "COGS"; + if (defuzzifier->className() == WeightedSum().className()) return "COGSS"; + return defuzzifier->className(); + } + + std::string FclExporter::toString(const Term* term) const { + if (not term) return ""; + if (term->className() == Discrete().className()) { + const Discrete* discrete = dynamic_cast (term); + std::ostringstream ss; + for (std::size_t i = 0; i < discrete->x.size(); ++i) { + ss << "(" << fl::Op::str(discrete->x.at(i)) << ", " + << fl::Op::str(discrete->y.at(i)) << ")"; + if (i + 1 < discrete->x.size()) ss << " "; + } + return ss.str(); + } + + if (term->className() == Constant().className()) { + const Constant* constant = dynamic_cast (term); + return fl::Op::str(constant->getValue()); + } + + std::ostringstream ss; + ss << term->className() << " " << term->parameters(); + return ss.str(); + } + +} diff --git a/src/imex/FclImporter.cpp b/src/imex/FclImporter.cpp new file mode 100644 index 0000000..e84f03a --- /dev/null +++ b/src/imex/FclImporter.cpp @@ -0,0 +1,623 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * FclImporter.cpp + * + * Created on: 8/12/2012 + * Author: jcrada + */ + +#include "fl/imex/FclImporter.h" + +#include "fl/Headers.h" + +#include +#include + +namespace fl { + + FclImporter::FclImporter() { + } + + FclImporter::~FclImporter() { + } + + std::string FclImporter::name() const { + return "FclImporter"; + } + + Engine* FclImporter::fromString(const std::string& fcl) const { + Engine* engine = new Engine; + + std::map tags; + tags["VAR_INPUT"] = "END_VAR"; + tags["VAR_OUTPUT"] = "END_VAR"; + tags["FUZZIFY"] = "END_FUZZIFY"; + tags["DEFUZZIFY"] = "END_DEFUZZIFY"; + tags["RULEBLOCK"] = "END_RULEBLOCK"; + std::map::const_iterator tagFinder; + + std::string currentTag = "", closingTag = ""; + std::ostringstream block; + std::istringstream fclReader(fcl); + std::string line; + int lineNumber = 0; + try { + while (std::getline(fclReader, line)) { + ++lineNumber; + std::vector comments; + comments = Op::split(line, "//"); + if ((int) comments.size() > 1) { + line = comments.front(); + } + line = Op::trim(line); + if (line.empty() or line.at(0) == '#') + continue; + line = fl::Op::findReplace(line, ";", ""); + std::istringstream tokenizer(line); + std::string firstToken; + tokenizer >> firstToken; + + if (firstToken == "FUNCTION_BLOCK") { + if (tokenizer.rdbuf()->in_avail() > 0) { + std::ostringstream name; + std::string token; + tokenizer >> token; + name << token; + while (tokenizer >> token) { + name << " " << token; + } + engine->setName(name.str()); + } + continue; + } + if (firstToken == "END_FUNCTION_BLOCK") { + break; + } + + if (currentTag.empty()) { + tagFinder = tags.find(firstToken); + if (tagFinder == tags.end()) { + std::ostringstream ex; + ex << "[syntax error] unknown block definition <" << firstToken + << "> " << " in line " << lineNumber << ": " << line; + throw fl::Exception(ex.str(), FL_AT); + } + currentTag = tagFinder->first; + closingTag = tagFinder->second; + block.str(""); + block.clear(); + block << line << "\n"; + continue; + } + + if (not currentTag.empty()) { + if (firstToken == closingTag) { + processBlock(currentTag, block.str(), engine); + currentTag = ""; + closingTag = ""; + } else if (tags.find(firstToken) != tags.end()) { + //if opening new block without closing the previous one + std::ostringstream ex; + ex << "[syntax error] expected <" << closingTag << "> before <" + << firstToken << "> in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } else { + block << line << "\n"; + } + continue; + } + } + + if (not currentTag.empty()) { + std::ostringstream ex; + ex << "[syntax error] "; + if (block.rdbuf()->in_avail() > 0) { + ex << "expected <" << closingTag << "> for block:\n" << block.str(); + } else { + ex << "expected <" << closingTag << ">, but not found"; + } + throw fl::Exception(ex.str(), FL_AT); + } + } catch (fl::Exception& ex) { + delete engine; + throw ex; + } + return engine; + } + + void FclImporter::processBlock(const std::string& tag, const std::string& block, Engine* engine) const { + if (tag == "VAR_INPUT" or tag == "VAR_OUTPUT") { + processVar(tag, block, engine); + } else if (tag == "FUZZIFY") { + processFuzzify(block, engine); + } else if (tag == "DEFUZZIFY") { + processDefuzzify(block, engine); + } else if (tag == "RULEBLOCK") { + processRuleBlock(block, engine); + } else { + std::ostringstream ex; + ex << "[syntax error] unexpected tag <" << tag << "> for block:\n" << block; + throw fl::Exception(ex.str(), FL_AT); + } + } + + void FclImporter::processVar(const std::string& tag, const std::string& block, Engine* engine)const { + std::istringstream blockReader(block); + std::string line; + + std::getline(blockReader, line); //discard first line as it is VAR_INPUT + while (std::getline(blockReader, line)) { + std::vector token = Op::split(line, ":"); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key : value) in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + std::string name = fl::Op::makeValidId(token.at(0)); + if (tag == "VAR_INPUT") + engine->addInputVariable(new InputVariable(name)); + else if (tag == "VAR_OUTPUT") + engine->addOutputVariable(new OutputVariable(name)); + else { + std::ostringstream ex; + ex << "[syntax error] unexpected tag <" << tag << "> in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + } + } + + void FclImporter::processFuzzify(const std::string& block, Engine* engine)const { + std::istringstream blockReader(block); + std::string line; + + std::getline(blockReader, line); + std::string name; + std::size_t index = line.find_first_of(' '); + if (index != std::string::npos) { + name = fl::Op::makeValidId(line.substr(index + 1)); + } else { + std::ostringstream ex; + ex << "[syntax error] expected name of input variable in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + if (not engine->hasInputVariable(name)) { + std::ostringstream ex; + ex << "[syntax error] engine does not contain " + "input variable <" << name << "> from line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + + InputVariable* inputVariable = engine->getInputVariable(name); + while (std::getline(blockReader, line)) { + std::istringstream ss(line); + std::string firstToken; + ss >> firstToken; + try { + if (firstToken == "RANGE") { + std::pair minmax = extractRange(line); + inputVariable->setMinimum(minmax.first); + inputVariable->setMaximum(minmax.second); + } else if (firstToken == "ENABLED") { + inputVariable->setEnabled(extractEnabled(line)); + } else if (firstToken == "TERM") { + inputVariable->addTerm(prepareTerm(extractTerm(line), engine)); + } else throw fl::Exception("[syntax error] unexpected token " + "<" + firstToken + ">" + line, FL_AT); + } catch (fl::Exception& ex) { + ex.append("At line: <" + line + ">"); + throw ex; + } + } + + } + + void FclImporter::processDefuzzify(const std::string& block, Engine* engine) const { + std::istringstream blockReader(block); + std::string line; + + std::getline(blockReader, line); + std::string name; + std::size_t index = line.find_first_of(' '); + if (index != std::string::npos) { + name = fl::Op::makeValidId(line.substr(index + 1)); + } else { + std::ostringstream ex; + ex << "[syntax error] expected an output variable name in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + if (not engine->hasOutputVariable(name)) { + std::ostringstream ex; + ex << "[syntax error] output variable <" << name + << "> not registered in engine. " + << "Line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + + OutputVariable* outputVariable = engine->getOutputVariable(name); + while (std::getline(blockReader, line)) { + line = fl::Op::trim(line); + std::istringstream tokenizer(line); + std::string firstToken; + tokenizer >> firstToken; + if (firstToken == "TERM") { + outputVariable->addTerm(prepareTerm(extractTerm(line), engine)); + } else if (firstToken == "METHOD") { + outputVariable->setDefuzzifier(extractDefuzzifier(line)); + } else if (firstToken == "ACCU") { + outputVariable->fuzzyOutput()->setAccumulation(extractSNorm(line)); + } else if (firstToken == "DEFAULT") { + std::pair defaultAndLock = extractDefaultValue(line); + outputVariable->setDefaultValue(defaultAndLock.first); + outputVariable->setLockValidOutput(defaultAndLock.second or + outputVariable->isLockingValidOutput()); + } else if (firstToken == "RANGE") { + std::pair minmax = extractRange(line); + outputVariable->setMinimum(minmax.first); + outputVariable->setMaximum(minmax.second); + } else if (firstToken == "LOCK") { + std::pair output_range = extractLocksOutputRange(line); + outputVariable->setLockValidOutput(output_range.first); + outputVariable->setLockOutputRange(output_range.second); + } else if (firstToken == "ENABLED") { + outputVariable->setEnabled(extractEnabled(line)); + } else { + std::ostringstream ex; + ex << "[syntax error] unexpected token <" << firstToken << + "> in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + } + + } + + void FclImporter::processRuleBlock(const std::string& block, Engine* engine)const { + std::istringstream blockReader(block); + std::string line; + + std::string name; + std::getline(blockReader, line); + std::size_t index = line.find_last_of(' '); + if (index != std::string::npos) name = line.substr(index); + RuleBlock * ruleblock = new RuleBlock(name); + engine->addRuleBlock(ruleblock); + + while (std::getline(blockReader, line)) { + std::string firstToken = line.substr(0, line.find_first_of(' ')); + if (firstToken == "AND") { + ruleblock->setConjunction(extractTNorm(line)); + } else if (firstToken == "OR") { + ruleblock->setDisjunction(extractSNorm(line)); + } else if (firstToken == "ACT") { + ruleblock->setActivation(extractTNorm(line)); + } else if (firstToken == "ENABLED") { + ruleblock->setEnabled(extractEnabled(line)); + } else if (firstToken == "RULE") { + std::size_t ruleStart = line.find_first_of(':'); + if (ruleStart == std::string::npos) ruleStart = 4; // "RULE".size() + std::string rule = line.substr(ruleStart + 1); + rule = fl::Op::trim(rule); + ruleblock->addRule(Rule::parse(rule, engine)); + } else { + std::ostringstream ex; + ex << "[syntax error] keyword <" << firstToken + << "> not recognized in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + } + } + + TNorm* FclImporter::extractTNorm(const std::string& line) const { + std::vector token = Op::split(line, ":"); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key : value) in line: " + << line; + throw fl::Exception(ex.str(), FL_AT); + } + std::string name = Op::trim(token.at(1)); + std::string className = name; + if (name == "MIN") className = Minimum().className(); + else if (name == "PROD") className = AlgebraicProduct().className(); + else if (name == "BDIF") className = BoundedDifference().className(); + else if (name == "DPROD") className = DrasticProduct().className(); + else if (name == "EPROD") className = EinsteinProduct().className(); + else if (name == "HPROD") className = HamacherProduct().className(); + + try { + return FactoryManager::instance()->tnorm()->createInstance(className); + } catch (fl::Exception& ex) { + ex.append("[syntax error] T-Norm <" + name + "> not recognized in line:\n" + + line, FL_AT); + throw ex; + } + } + + SNorm* FclImporter::extractSNorm(const std::string& line) const { + std::vector token = Op::split(line, ":"); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key : value) in line: " + << line; + throw fl::Exception(ex.str(), FL_AT); + } + std::string name = Op::trim(token.at(1)); + std::string className = name; + if (name == "MAX") className = Maximum().className(); + else if (name == "ASUM") className = AlgebraicSum().className(); + else if (name == "BSUM") className = BoundedSum().className(); + else if (name == "NSUM") className = NormalizedSum().className(); + else if (name == "DSUM") className = DrasticSum().className(); + else if (name == "ESUM") className = EinsteinSum().className(); + else if (name == "HSUM") className = HamacherSum().className(); + + try { + return FactoryManager::instance()->snorm()->createInstance(className); + } catch (fl::Exception& ex) { + ex.append("[syntax error] S-Norm <" + name + "> not recognized in line:\n" + + line, FL_AT); + throw ex; + } + } + + Term* FclImporter::extractTerm(const std::string& line) const { + std::ostringstream spacer; + for (std::size_t i = 0; i < line.size(); ++i) { + if (line.at(i) == '(' or line.at(i) == ')' or line.at(i) == ',') { + spacer << " " << line.at(i) << " "; + } else if (line.at(i) == ':') { + spacer << " :"; + } else if (line.at(i) == '=') { + spacer << "= "; + } else + spacer << line.at(i); + } + std::string spacedLine = spacer.str(); + + enum FSM { + S_KWTERM, S_NAME, S_ASSIGN, S_TERMCLASS, S_PARAMETERS + }; + FSM state = S_KWTERM; + std::istringstream tokenizer(spacedLine); + std::string token; + std::string name, termClass; + std::vector parameters; + while (tokenizer >> token) { + if (state == S_KWTERM and token == "TERM") { + state = S_NAME; + continue; + } + if (state == S_NAME) { + name = token; + state = S_ASSIGN; + continue; + } + if (state == S_ASSIGN and token == ":=") { + state = S_TERMCLASS; + continue; + } + if (state == S_TERMCLASS) { + if (fl::Op::isNumeric(token)) { + termClass = Constant().className(); + parameters.push_back(token); + } else if (token == "(") { + termClass = Discrete().className(); + } else { + termClass = token; + } + state = S_PARAMETERS; + continue; + } + if (state == S_PARAMETERS) { + if (termClass != Function().className() and + (token == "(" or token == ")" or token == ",")) { + continue; + } + if (token == ";") break; + parameters.push_back(fl::Op::trim(token)); + } + } + if (state <= S_ASSIGN) + throw fl::Exception("[syntax error] malformed term in line: " + line, FL_AT); + + try { + Term * result = FactoryManager::instance()->term()->createInstance(termClass); + result->setName(fl::Op::makeValidId(name)); + if (dynamic_cast (result)) { + result->configure(Op::join(parameters, "")); //remove spaces for text of function + } else { + result->configure(Op::join(parameters, " ")); + } + + return result; + } catch (fl::Exception& ex) { + ex.append(FL_AT); + throw ex; + } + } + + Term* FclImporter::prepareTerm(Term* term, const Engine* engine) const { + Linear* linear = NULL; + Function* function = NULL; + if ((linear = dynamic_cast (term))) { + linear->inputVariables = std::vector + (engine->inputVariables().begin(), + engine->inputVariables().end()); + } else if ((function = dynamic_cast (term))) { + function->setEngine(engine); + //builtin functions are loaded from TermFactory calling Function::create + function->load(); + } + return term; + } + + Defuzzifier* FclImporter::extractDefuzzifier(const std::string& line) const { + std::vector token = Op::split(line, ":"); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key : value) in " + << "line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + + std::string name = fl::Op::trim(token.at(1)); + std::string className = name; + if (name == "COG") className = Centroid().className(); + if (name == "COA") className = Bisector().className(); + if (name == "LM") className = SmallestOfMaximum().className(); + if (name == "RM") className = LargestOfMaximum().className(); + if (name == "MM") className = MeanOfMaximum().className(); + if (name == "COGS") className = WeightedAverage().className(); + if (name == "COGSS") className = WeightedSum().className(); + + try { + return FactoryManager::instance()->defuzzifier()->createInstance(className); + } catch (fl::Exception& ex) { + ex.append("[syntax error] defuzzifier <" + name + + "> not recognized in line:\n" + line, FL_AT); + throw ex; + } + } + + std::pair FclImporter::extractDefaultValue(const std::string& line) const { + std::vector token = Op::split(line, ":="); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key := value) in line: " + << line; + throw fl::Exception(ex.str(), FL_AT); + } + + std::vector values = Op::split(token.at(1), "|"); + + std::string defaultValue = values.front(); + std::string nc; + if (values.size() == 2) nc = values.back(); + + defaultValue = fl::Op::trim(defaultValue); + nc = fl::Op::trim(nc); + + scalar value; + try { + value = fl::Op::toScalar(defaultValue); + } catch (...) { + std::ostringstream ex; + ex << "[syntax error] expected numeric value, " + << "but found <" << defaultValue << "> in line: " + << line; + throw fl::Exception(ex.str(), FL_AT); + } + + bool lockValidOutput = (nc == "NC"); + + if (not (lockValidOutput or nc.empty())) { + throw fl::Exception("[syntax error] expected keyword , " + "but found <" + nc + "> in line: " + line, FL_AT); + } + + return std::pair(value, lockValidOutput); + } + + std::pair FclImporter::extractRange(const std::string& line) const { + std::vector token = Op::split(line, ":="); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key := value) in line: " + << line; + throw fl::Exception(ex.str(), FL_AT); + } + + std::string rangeToken = token.at(1); + + std::ostringstream range; + for (std::size_t i = 0; i < rangeToken.size(); ++i) { + char character = rangeToken.at(i); + if (character == '(' or character == ')' or character == ' ' or character == ';') + continue; + range << character; + } + token = Op::split(range.str(), ".."); + if (token.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type 'start .. end', " + << "but found <" << range << "> in line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + scalar minimum, maximum; + int index; + try { + minimum = Op::toScalar(token.at(index = 0)); + maximum = Op::toScalar(token.at(index = 1)); + } catch (...) { + std::ostringstream ex; + ex << "[syntax error] expected numeric value, but found <" << token.at(index) << "> in " + << "line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + return std::pair(minimum, maximum); + } + + std::pair FclImporter::extractLocksOutputRange(const std::string& line) const { + std::size_t index = line.find_first_of(":"); + if (index == std::string::npos) { + throw fl::Exception("[syntax error] expected property of type " + "'key : value' in line: " + line, FL_AT); + } + bool output, range; + std::string value = line.substr(index + 1); + std::vector flags = fl::Op::split(value, "|"); + if (flags.size() == 1) { + std::string flag = fl::Op::trim(flags.front()); + output = (flag == "VALID"); + range = (flag == "RANGE"); + if (not (output or range)) { + throw fl::Exception("[syntax error] expected locking flags " + ", but found <" + flag + "> in line: " + line, FL_AT); + } + } else if (flags.size() == 2) { + std::string flagA = fl::Op::trim(flags.front()); + std::string flagB = fl::Op::trim(flags.back()); + output = (flagA == "VALID" or flagB == "VALID"); + range = (flagA == "RANGE" or flagB == "RANGE"); + if (not (output and range)) { + throw fl::Exception("[syntax error] expected locking flags " + ", but found " + "<" + flags.front() + "|" + flags.back() + "> in line: " + line, FL_AT); + } + } else { + throw fl::Exception("[syntax error] expected locking flags " + ", but found " + "<" + value + "> in line: " + line, FL_AT); + } + return std::pair(output, range); + } + + bool FclImporter::extractEnabled(const std::string& line) const { + std::vector tokens = Op::split(line, ":"); + if (tokens.size() != 2) { + std::ostringstream ex; + ex << "[syntax error] expected property of type (key : value) in " + << "line: " << line; + throw fl::Exception(ex.str(), FL_AT); + } + + std::string boolean = fl::Op::trim(tokens.at(1)); + if (boolean == "TRUE") return true; + if (boolean == "FALSE") return false; + throw fl::Exception("[syntax error] expected boolean , but found <" + line + ">", FL_AT); + } + +} diff --git a/src/imex/FisExporter.cpp b/src/imex/FisExporter.cpp new file mode 100644 index 0000000..9b7486a --- /dev/null +++ b/src/imex/FisExporter.cpp @@ -0,0 +1,456 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FisExporter.cpp + * Author: jcrada + * + * Created on 22 December 2012, 5:53 PM + */ + +#include "fl/imex/FisExporter.h" + +#include "fl/Headers.h" +#include +namespace fl { + + FisExporter::FisExporter() { + } + + FisExporter::~FisExporter() { + } + + std::string FisExporter::name() const { + return "FisExporter"; + } + + std::string FisExporter::toString(const Engine* engine) const { + std::ostringstream fis; + fis << exportSystem(engine) << "\n"; + + fis << exportInputs(engine); + + fis << exportOutputs(engine); + + fis << exportRules(engine); + + return fis.str(); + } + + std::string FisExporter::exportSystem(const Engine* engine) const { + std::ostringstream fis; + fis << "[System]\n"; + fis << "Name='" << engine->getName() << "'\n"; + std::string type = "unknown"; + if (engine->numberOfOutputVariables() > 0) { + int sugeno = 0, mamdani = 0; + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + Defuzzifier* defuzzifier = engine->getOutputVariable(i)->getDefuzzifier(); + if (dynamic_cast (defuzzifier)) { + ++mamdani; + } else { + ++sugeno; + } + } + if (mamdani > 0 and sugeno == 0) type = "mamdani"; + else if (mamdani == 0 and sugeno > 0) type = "sugeno"; + else type = "unknown"; + } + fis << "Type='" << type << "'\n"; + + // fis << "Version=" << FL_VERSION << "\n"; + fis << "NumInputs=" << engine->numberOfInputVariables() << "\n"; + fis << "NumOutputs=" << engine->numberOfOutputVariables() << "\n"; + if (engine->numberOfRuleBlocks() > 0) + fis << "NumRules=" << engine->getRuleBlock(0)->numberOfRules() << "\n"; + + const TNorm* tnorm = NULL; + const SNorm* snorm = NULL; + const TNorm* activation = NULL; + std::string uniquenessError; + for (int i = 0; i < engine->numberOfRuleBlocks(); ++i) { + RuleBlock* rb = engine->getRuleBlock(i); + std::string tnormClass = (rb->getConjunction() ? rb->getConjunction()->className() : ""); + std::string snormClass = (rb->getDisjunction() ? rb->getDisjunction()->className() : ""); + std::string activationClass = (rb->getActivation() ? rb->getActivation()->className() : ""); + + if (not tnorm) tnorm = rb->getConjunction(); + else if (tnorm->className() != tnormClass) + uniquenessError = "T-Norm"; + + if (not snorm) snorm = rb->getDisjunction(); + else if (snorm->className() != snormClass) + uniquenessError = "S-Norm"; + + if (not activation) activation = rb->getActivation(); + else if (activation->className() != activationClass) + uniquenessError = "activation T-Norm"; + if (not uniquenessError.empty()) break; + } + + if (not uniquenessError.empty()) + throw fl::Exception("[exporter error] fis files require all ruleblocks " + "to have the same " + uniquenessError, FL_AT); + + fis << "AndMethod='" << toString(tnorm) << "'\n"; + fis << "OrMethod='" << toString(snorm) << "'\n"; + fis << "ImpMethod='" << toString(activation) << "'\n"; + + const SNorm* accumulation = NULL; + Defuzzifier* defuzzifier = NULL; + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + OutputVariable* outputVariable = engine->getOutputVariable(i); + std::string defuzzClass = outputVariable->getDefuzzifier() ? + outputVariable->getDefuzzifier()->className() : ""; + std::string accumClass = outputVariable->fuzzyOutput()->getAccumulation() ? + outputVariable->fuzzyOutput()->getAccumulation()->className() : ""; + + if (not defuzzifier) defuzzifier = outputVariable->getDefuzzifier(); + else if (defuzzifier->className() != defuzzClass) + uniquenessError = "defuzzifier"; + if (not accumulation) accumulation = outputVariable->fuzzyOutput()->getAccumulation(); + else if (accumulation->className() != accumClass) + uniquenessError = "accumulation S-Norm"; + if (not uniquenessError.empty()) break; + } + + if (not uniquenessError.empty()) + throw fl::Exception("[exporter error] fis files require all output variables " + "to have the same " + uniquenessError, FL_AT); + + fis << "AggMethod='" << toString(accumulation) << "'\n"; + fis << "DefuzzMethod='" << toString(defuzzifier) << "'\n"; + return fis.str(); + } + + std::string FisExporter::exportInputs(const Engine* engine) const { + std::ostringstream fis; + for (int ixVar = 0; ixVar < engine->numberOfInputVariables(); ++ixVar) { + InputVariable* var = engine->getInputVariable(ixVar); + fis << "[Input" << (ixVar + 1) << "]\n"; + fis << "Enabled=" << var->isEnabled() << "\n"; + fis << "Name='" << var->getName() << "'\n"; + fis << "Range=[" << fl::Op::join(2, " ", var->getMinimum(), var->getMaximum()) << "]\n"; + fis << "NumMFs=" << var->numberOfTerms() << "\n"; + for (int ixTerm = 0; ixTerm < var->numberOfTerms(); ++ixTerm) { + fis << "MF" << (ixTerm + 1) << "='" << var->getTerm(ixTerm)->getName() << "':" + << toString(var->getTerm(ixTerm)) << "\n"; + } + fis << "\n"; + } + return fis.str(); + } + + std::string FisExporter::exportOutputs(const Engine* engine) const { + std::ostringstream fis; + for (int ixVar = 0; ixVar < engine->numberOfOutputVariables(); ++ixVar) { + OutputVariable* var = engine->getOutputVariable(ixVar); + fis << "[Output" << (ixVar + 1) << "]\n"; + fis << "Enabled=" << var->isEnabled() << "\n"; + fis << "Name='" << var->getName() << "'\n"; + fis << "Range=[" << fl::Op::join(2, " ", var->getMinimum(), var->getMaximum()) << "]\n"; + fis << "Default=" << fl::Op::str(var->getDefaultValue()) << "\n"; + fis << "LockValid=" << var->isLockingValidOutput() << "\n"; + fis << "LockRange=" << var->isLockingOutputRange() << "\n"; + fis << "NumMFs=" << var->numberOfTerms() << "\n"; + for (int ixTerm = 0; ixTerm < var->numberOfTerms(); ++ixTerm) { + fis << "MF" << (ixTerm + 1) << "='" << var->getTerm(ixTerm)->getName() << "':" + << toString(var->getTerm(ixTerm)) << "\n"; + } + fis << "\n"; + } + return fis.str(); + } + + std::string FisExporter::exportRules(const Engine* engine) const { + std::ostringstream fis; + fis << "[Rules]\n"; + for (int ixRuleBlock = 0; ixRuleBlock < engine->numberOfRuleBlocks(); ++ixRuleBlock) { + RuleBlock* rb = engine->getRuleBlock(ixRuleBlock); + if (engine->numberOfRuleBlocks() > 1) fis << "# RuleBlock " << rb->getName() << "\n"; + for (int ixRule = 0; ixRule < rb->numberOfRules(); ++ixRule) { + fis << exportRule(rb->getRule(ixRule), engine) << "\n"; + } + } + return fis.str(); + } + + std::string FisExporter::exportRule(const Rule* rule, const Engine* engine) const { + if (not rule) return ""; + std::vector propositions; + std::vector operators; + + std::queue bfsQueue; + bfsQueue.push(rule->getAntecedent()->getRoot()); + while (not bfsQueue.empty()) { + Expression* front = bfsQueue.front(); + bfsQueue.pop(); + if (front->isOperator) { + Operator* op = dynamic_cast (front); + bfsQueue.push(op->left); + bfsQueue.push(op->right); + operators.push_back(op); + } else { + propositions.push_back(dynamic_cast (front)); + } + } + + bool equalOperators = true; + for (std::size_t i = 0; i + 1 < operators.size(); ++i) { + if (operators.at(i)->name != operators.at(i + 1)->name) { + equalOperators = false; + break; + } + } + if (not equalOperators) { + throw fl::Exception("[exporter error] " + "fis files do not support rules with different connectors " + "(i.e. ['and', 'or']). All connectors within a rule must be the same", FL_AT); + } + std::ostringstream fis; + std::vector inputVariables, outputVariables; + for (int i = 0; i < engine->numberOfInputVariables(); ++i) + inputVariables.push_back(engine->getInputVariable(i)); + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) + outputVariables.push_back(engine->getOutputVariable(i)); + + fis << translate(propositions, inputVariables) << ", "; + fis << translate(rule->getConsequent()->conclusions(), outputVariables); + fis << "(" << Op::str(rule->getWeight()) << ") : "; + if (operators.size() == 0) fis << "1"; //does not matter + else { + if (operators.at(0)->name == Rule::FL_AND) fis << "1"; + else if (operators.at(0)->name == Rule::FL_OR) fis << "2"; + else fis << operators.at(0)->name; + } + return fis.str(); + } + + std::string FisExporter::translate(const std::vector& propositions, + const std::vector variables) const { + std::ostringstream ss; + for (std::size_t ixVariable = 0; ixVariable < variables.size(); ++ixVariable) { + Variable* variable = variables.at(ixVariable); + int termIndexPlusOne = 0; + scalar plusHedge = 0; + int negated = 1; + for (std::size_t ixProposition = 0; ixProposition < propositions.size(); ++ixProposition) { + Proposition* proposition = propositions.at(ixProposition); + if (proposition->variable != variable) continue; + + for (int termIndex = 0; termIndex < variable->numberOfTerms(); ++termIndex) { + if (variable->getTerm(termIndex) == proposition->term) { + termIndexPlusOne = termIndex + 1; + break; + } + } + + std::vector hedges = proposition->hedges; + if (hedges.size() > 1) { + FL_DBG("[exporter warning] only a few combinations of multiple " + "hedges are supported in fis files"); + } + for (std::size_t ixHedge = 0; ixHedge < hedges.size(); ++ixHedge) { + Hedge* hedge = hedges.at(ixHedge); + if (hedge->name() == Not().name()) negated *= -1; + else if (hedge->name() == Extremely().name()) plusHedge += 0.3; + else if (hedge->name() == Very().name()) plusHedge += 0.2; + else if (hedge->name() == Somewhat().name()) plusHedge += 0.05; + else if (hedge->name() == Seldom().name()) plusHedge += 0.01; + else if (hedge->name() == Any().name()) plusHedge += 0.99; + else plusHedge = fl::nan; //Unreconized hedge combination (e.g. Any) + } + + break; + } + if (negated < 0) ss << "-"; + if (not fl::Op::isNan(plusHedge)) { + ss << fl::Op::str(termIndexPlusOne + plusHedge); + } else { + ss << termIndexPlusOne << ".?"; // Unreconized hedge combination + } + ss << " "; + } + return ss.str(); + } + + std::string FisExporter::toString(const TNorm * tnorm) const { + if (not tnorm) return ""; + std::string name = tnorm->className(); + if (name == Minimum().className()) return "min"; + if (name == AlgebraicProduct().className()) return "prod"; + if (name == BoundedDifference().className()) return "bounded_difference"; + if (name == DrasticProduct().className()) return "drastic_product"; + if (name == EinsteinProduct().className()) return "einstein_product"; + if (name == HamacherProduct().className()) return "hamacher_product"; + return tnorm->className(); + } + + std::string FisExporter::toString(const SNorm * snorm) const { + if (not snorm) return ""; + std::string name = snorm->className(); + if (name == Maximum().className()) return "max"; + if (name == AlgebraicSum().className()) return "sum"; + if (name == BoundedSum().className()) return "bounded_sum"; + if (name == NormalizedSum().className()) return "normalized_sum"; + if (name == DrasticSum().className()) return "drastic_sum"; + if (name == EinsteinSum().className()) return "einstein_sum"; + if (name == HamacherSum().className()) return "hamacher_sum"; + return snorm->className(); + } + + std::string FisExporter::toString(const Defuzzifier * defuzzifier) const { + if (not defuzzifier) return ""; + if (defuzzifier->className() == Centroid().className()) return "centroid"; + if (defuzzifier->className() == Bisector().className()) return "bisector"; + if (defuzzifier->className() == LargestOfMaximum().className()) return "lom"; + if (defuzzifier->className() == MeanOfMaximum().className()) return "mom"; + if (defuzzifier->className() == SmallestOfMaximum().className()) return "som"; + if (defuzzifier->className() == WeightedAverage().className()) return "wtaver"; + if (defuzzifier->className() == WeightedSum().className()) return "wtsum"; + return defuzzifier->className(); + } + + std::string FisExporter::toString(const Term * term) const { + std::ostringstream ss; + if (term->className() == Bell().className()) { + const Bell* x = dynamic_cast (term); + ss << "'gbellmf',[" << fl::Op::join(3, " ", + x->getWidth(), x->getSlope(), x->getCenter()) << "]"; + return ss.str(); + } + + if (term->className() == Constant().className()) { + const Constant* x = dynamic_cast (term); + ss << "'constant',[" << fl::Op::str(x->getValue()) << "]"; + return ss.str(); + } + + if (term->className() == Discrete().className()) { + ss << "'discretemf',["; + const Discrete* x = dynamic_cast (term); + for (std::size_t i = 0; i < x->x.size(); ++i) { + ss << fl::Op::str(x->x.at(i)) << " " << fl::Op::str(x->y.at(i)); + if (i + 1 < x->x.size()) ss << " "; + } + ss << "]"; + return ss.str(); + } + + if (term->className() == Function().className()) { + const Function* x = dynamic_cast (term); + ss << "'function',[" << x->getFormula() << "]"; + return ss.str(); + } + + if (term->className() == Gaussian().className()) { + const Gaussian* x = dynamic_cast (term); + ss << "'gaussmf',[" << fl::Op::join(2, " ", + x->getStandardDeviation(), x->getMean()) << "]"; + return ss.str(); + } + + if (term->className() == GaussianProduct().className()) { + const GaussianProduct* x = dynamic_cast (term); + ss << "'gauss2mf',[" << fl::Op::join(4, " ", + x->getStandardDeviationA(), x->getMeanA(), + x->getStandardDeviationB(), x->getMeanB()) << "]"; + return ss.str(); + } + + if (term->className() == Linear().className()) { + const Linear* x = dynamic_cast (term); + ss << "'linear',[" << fl::Op::join(x->coefficients, " ") << "]"; + return ss.str(); + } + + + if (term->className() == PiShape().className()) { + const PiShape* x = dynamic_cast (term); + ss << "'pimf',[" << fl::Op::join(4, " ", + x->getBottomLeft(), x->getTopLeft(), + x->getTopRight(), x->getBottomRight()) << "]"; + return ss.str(); + } + + if (term->className() == Ramp().className()) { + const Ramp* x = dynamic_cast (term); + ss << "'rampmf',[" << fl::Op::join(2, " ", + x->getStart(), x->getEnd()) << "]"; + return ss.str(); + } + + if (term->className() == Rectangle().className()) { + const Rectangle* x = dynamic_cast (term); + ss << "'rectmf',[" << fl::Op::join(2, " ", + x->getStart(), x->getEnd()) << "]"; + return ss.str(); + } + + if (term->className() == SigmoidDifference().className()) { + const SigmoidDifference* x = dynamic_cast (term); + ss << "'dsigmf',[" << fl::Op::join(4, " ", + x->getRising(), x->getLeft(), + x->getFalling(), x->getRight()) << "]"; + return ss.str(); + } + + if (term->className() == Sigmoid().className()) { + const Sigmoid* x = dynamic_cast (term); + ss << "'sigmf',[" << fl::Op::join(2, " ", + x->getSlope(), x->getInflection()) << "]"; + return ss.str(); + } + + if (term->className() == SigmoidProduct().className()) { + const SigmoidProduct* x = dynamic_cast (term); + ss << "'psigmf',[" << fl::Op::join(4, " ", + x->getRising(), x->getLeft(), + x->getFalling(), x->getRight()) << "]"; + return ss.str(); + } + + if (term->className() == SShape().className()) { + const SShape* x = dynamic_cast (term); + ss << "'smf',[" << fl::Op::join(2, " ", + x->getStart(), x->getEnd()) << "]"; + return ss.str(); + } + + if (term->className() == Trapezoid().className()) { + const Trapezoid* x = dynamic_cast (term); + ss << "'trapmf',[" << fl::Op::join(4, " ", + x->getA(), x->getB(), x->getC(), x->getD()) << "]"; + return ss.str(); + } + + if (term->className() == Triangle().className()) { + const Triangle* x = dynamic_cast (term); + ss << "'trimf',[" << fl::Op::join(3, " ", + x->getA(), x->getB(), x->getC()) << "]"; + return ss.str(); + } + + if (term->className() == ZShape().className()) { + const ZShape* x = dynamic_cast (term); + ss << "'zmf',[" << fl::Op::join(2, " ", + x->getStart(), x->getEnd()) << "]"; + return ss.str(); + } + + ss << "[exporter error] term of class <" << term->className() << "> not supported"; + throw fl::Exception(ss.str(), FL_AT); + } +} \ No newline at end of file diff --git a/src/imex/FisImporter.cpp b/src/imex/FisImporter.cpp new file mode 100644 index 0000000..d9eb8fa --- /dev/null +++ b/src/imex/FisImporter.cpp @@ -0,0 +1,507 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FisImporter.cpp + * Author: jcrada + * + * Created on 22 December 2012, 5:54 PM + */ + +#include "fl/imex/FisImporter.h" + +#include "fl/Headers.h" + +#include +#include +#include + +namespace fl { + + FisImporter::FisImporter() { + } + + FisImporter::~FisImporter() { + } + + std::string FisImporter::name() const { + return "FisImporter"; + } + + Engine* FisImporter::fromString(const std::string& fis) const { + Engine* engine = new Engine; + + std::istringstream fisReader(fis); + std::string line; + int lineNumber = 0; + + std::vector sections; + while (std::getline(fisReader, line)) { + ++lineNumber; + std::vector comments; + comments = Op::split(line, "//"); + if (comments.size() > 1) { + line = comments.front(); + } + comments = Op::split(line, "#"); + if (comments.size() > 1) { + line = comments.front(); + } + line = Op::trim(line); + line = fl::Op::findReplace(line, "'", ""); + if (line.empty() or line.at(0) == '%') + continue; + + if ("[System]" == line.substr(0, std::string("[System]").size()) + or "[Input" == line.substr(0, std::string("[Input").size()) + or "[Output" == line.substr(0, std::string("[Output").size()) + or "[Rules]" == line.substr(0, std::string("[Rules]").size())) { + sections.push_back(line); + } else { + if (not sections.empty()) { + sections.at(sections.size() - 1) += "\n" + line; + } else { + throw fl::Exception("[import error] line <" + line + "> " + "does not belong to any section", FL_AT); + } + } + } + std::string andMethod, orMethod, impMethod, aggMethod, defuzzMethod; + try { + for (std::size_t i = 0; i < sections.size(); ++i) { + if ("[System]" == sections.at(i).substr(0, std::string("[System]").size())) + importSystem(sections.at(i), engine, + andMethod, orMethod, impMethod, aggMethod, defuzzMethod); + else if ("[Input" == sections.at(i).substr(0, std::string("[Input").size())) + importInput(sections.at(i), engine); + else if ("[Output" == sections.at(i).substr(0, std::string("[Output").size())) + importOutput(sections.at(i), engine); + else if ("[Rules]" == sections.at(i).substr(0, std::string("[Rules]").size())) + importRules(sections.at(i), engine); + else + throw fl::Exception("[import error] section <" + + sections.at(i) + "> not recognized", FL_AT); + } + engine->configure(tnorm(andMethod), snorm(orMethod), + tnorm(impMethod), snorm(aggMethod), + defuzzifier(defuzzMethod)); + } catch (fl::Exception& ex) { + delete engine; + throw ex; + } + + return engine; + } + + void FisImporter::importSystem(const std::string& section, Engine * engine, + std::string& andMethod, std::string& orMethod, + std::string& impMethod, std::string& aggMethod, + std::string& defuzzMethod) const { + std::istringstream reader(section); + std::string line; + std::getline(reader, line); //ignore first line [System] + while (std::getline(reader, line)) { + std::vector keyValue = fl::Op::split(line, "="); + + std::string key = fl::Op::trim(keyValue.at(0)); + std::string value; + for (std::size_t i = 1; i < keyValue.size(); ++i) { + value += keyValue.at(i); + } + value = fl::Op::trim(value); + if (key == "Name") engine->setName(value); + else if (key == "AndMethod") andMethod = value; + else if (key == "OrMethod") orMethod = value; + else if (key == "ImpMethod") impMethod = value; + else if (key == "AggMethod") aggMethod = value; + else if (key == "DefuzzMethod") defuzzMethod = value; + else if (key == "Type" or key == "Version" + or key == "NumInputs" or key == "NumOutputs" + or key == "NumRules" or key == "NumMFs") { + //ignore because are redundant. + } else throw fl::Exception("[import error] token <" + key + "> not recognized", FL_AT); + } + } + + void FisImporter::importInput(const std::string& section, Engine* engine) const { + std::istringstream reader(section); + std::string line; + std::getline(reader, line); //ignore first line [Input#] + + InputVariable* input = new InputVariable; + engine->addInputVariable(input); + + while (std::getline(reader, line)) { + std::vector keyValue = fl::Op::split(line, "="); + if (keyValue.size() != 2) + throw fl::Exception("[syntax error] expected a property of type " + "'key=value', but found < " + line + ">", FL_AT); + std::string key = fl::Op::trim(keyValue.at(0)); + std::string value = fl::Op::trim(keyValue.at(1)); + + if (key == "Name") input->setName(fl::Op::makeValidId(value)); + else if (key == "Enabled") { + input->setEnabled(Op::isEq(Op::toScalar(value), 1.0)); + } else if (key == "Range") { + std::pair minmax = extractRange(value); + input->setMinimum(minmax.first); + input->setMaximum(minmax.second); + } else if (key.substr(0, 2) == "MF") { + input->addTerm(prepareTerm(extractTerm(value), engine)); + } else if (key == "NumMFs") { + //ignore + } else { + throw fl::Exception("[import error] token <" + key + "> not recognized", FL_AT); + } + } + } + + void FisImporter::importOutput(const std::string& section, Engine* engine) const { + std::istringstream reader(section); + std::string line; + std::getline(reader, line); //ignore first line [Output#] + + OutputVariable* output = new OutputVariable; + engine->addOutputVariable(output); + + + while (std::getline(reader, line)) { + std::vector keyValue = fl::Op::split(line, "="); + if (keyValue.size() != 2) + throw fl::Exception("[syntax error] expected a property of type " + "'key=value', but found < " + line + ">", FL_AT); + std::string key = fl::Op::trim(keyValue.at(0)); + std::string value = fl::Op::trim(keyValue.at(1)); + + if (key == "Name") output->setName(fl::Op::makeValidId(value)); + else if (key == "Enabled") { + output->setEnabled(Op::isEq(Op::toScalar(value), 1.0)); + } else if (key == "Range") { + std::pair minmax = extractRange(value); + output->setMinimum(minmax.first); + output->setMaximum(minmax.second); + } else if (key.substr(0, 2) == "MF") { + output->addTerm(prepareTerm(extractTerm(value), engine)); + } else if (key == "Default") { + output->setDefaultValue(fl::Op::toScalar(value)); + } else if (key == "LockValid") { + output->setLockValidOutput((int) fl::Op::toScalar(value) == 1); + } else if (key == "LockRange") { + output->setLockOutputRange((int) fl::Op::toScalar(value) == 1); + } else if (key == "NumMFs") { + //ignore + } else { + throw fl::Exception("[import error] token <" + key + "> not recognized", FL_AT); + } + } + } + + void FisImporter::importRules(const std::string& section, Engine* engine) const { + std::istringstream reader(section); + std::string line; + std::getline(reader, line); //ignore first line [Rules] + + RuleBlock* ruleblock = new RuleBlock; + engine->addRuleBlock(ruleblock); + + while (std::getline(reader, line)) { + std::vector inputsAndRest = fl::Op::split(line, ","); + if (inputsAndRest.size() != 2) + throw fl::Exception("[syntax error] expected rule to match pattern " + "<'i '+, 'o '+ (w) : '1|2'>, but found instead <" + line + ">", FL_AT); + + std::vector outputsAndRest = fl::Op::split(inputsAndRest.at(1), ":"); + if (outputsAndRest.size() != 2) + throw fl::Exception("[syntax error] expected rule to match pattern " + "<'i '+, 'o '+ (w) : '1|2'>, but found instead <" + line + ">", FL_AT); + + std::vector inputs = fl::Op::split(inputsAndRest.at(0), " "); + std::vector outputs = fl::Op::split(outputsAndRest.at(0), " "); + std::string weightInParenthesis = outputs.at(outputs.size() - 1); + outputs.erase(outputs.begin() + outputs.size() - 1); + std::string connector = fl::Op::trim(outputsAndRest.at(1)); + + if ((int) inputs.size() != engine->numberOfInputVariables()) { + std::ostringstream ss; + ss << "[syntax error] expected <" << engine->numberOfInputVariables() << ">" + " input variables, but found <" << inputs.size() << ">" + " input variables in rule <" << line << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + if ((int) outputs.size() != engine->numberOfOutputVariables()) { + std::ostringstream ss; + ss << "[syntax error] expected <" << engine->numberOfOutputVariables() << ">" + " output variables, but found <" << outputs.size() << ">" + " output variables in rule <" << line << ">"; + throw fl::Exception(ss.str(), FL_AT); + } + + std::vector antecedent, consequent; + + for (std::size_t i = 0; i < inputs.size(); ++i) { + scalar inputCode = fl::Op::toScalar(inputs.at(i)); + if (fl::Op::isEq(inputCode, 0.0)) continue; + std::ostringstream ss; + ss << engine->getInputVariable(i)->getName() << " " + << fl::Rule::FL_IS << " " + << translateProposition(inputCode, engine->getInputVariable(i)); + antecedent.push_back(ss.str()); + } + + for (std::size_t i = 0; i < outputs.size(); ++i) { + scalar outputCode = fl::Op::toScalar(outputs.at(i)); + if (fl::Op::isEq(outputCode, 0.0)) continue; + std::ostringstream ss; + ss << engine->getOutputVariable(i)->getName() << " " + << fl::Rule::FL_IS << " " + << translateProposition(outputCode, engine->getOutputVariable(i)); + consequent.push_back(ss.str()); + } + + std::ostringstream rule; + + rule << fl::Rule::FL_IF << " "; + for (std::size_t i = 0; i < antecedent.size(); ++i) { + rule << antecedent.at(i); + if (i + 1 < antecedent.size()) { + rule << " "; + if (connector == "1") rule << fl::Rule::FL_AND << " "; + else if (connector == "2") rule << fl::Rule::FL_OR << " "; + else throw fl::Exception("[syntax error] connector <" + + connector + "> not recognized", FL_AT); + } + } + + rule << " " << fl::Rule::FL_THEN << " "; + for (std::size_t i = 0; i < consequent.size(); ++i) { + rule << consequent.at(i); + if (i + 1 < consequent.size()) { + rule << " " << fl::Rule::FL_AND << " "; + } + } + + std::ostringstream ss; + for (std::size_t i = 0; i < weightInParenthesis.size(); ++i) { + if (weightInParenthesis.at(i) == '(' + or weightInParenthesis.at(i) == ')' + or weightInParenthesis.at(i) == ' ') continue; + ss << weightInParenthesis.at(i); + } + + scalar weight = fl::Op::toScalar(ss.str()); + if (not fl::Op::isEq(weight, 1.0)) + rule << " " << fl::Rule::FL_WITH << " " << Op::str(weight); + + ruleblock->addRule(fl::Rule::parse(rule.str(), engine)); + } + } + + std::string FisImporter::translateProposition(scalar code, Variable* variable) const { + int intPart = (int) std::floor(std::fabs(code)) - 1; + scalar fracPart = std::fmod(std::fabs(code), 1.0); + if (intPart >= variable->numberOfTerms()) { + std::ostringstream ex; + ex << "[syntax error] the code <" << code << "> refers to a term " + "out of range from variable <" << variable->toString() << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + + bool isAny = intPart < 0; + std::ostringstream ss; + if (code < 0) ss << Not().name() << " "; + if (fl::Op::isEq(fracPart, 0.01)) ss << Seldom().name() << " "; + else if (fl::Op::isEq(fracPart, 0.05)) ss << Somewhat().name() << " "; + else if (fl::Op::isEq(fracPart, 0.2)) ss << Very().name() << " "; + else if (fl::Op::isEq(fracPart, 0.3)) ss << Extremely().name() << " "; + else if (fl::Op::isEq(fracPart, 0.4)) ss << Very().name() << " " << Very().name() << " "; + else if (fl::Op::isEq(fracPart, 0.99)) ss << Any().name() << " "; + else if (not fl::Op::isEq(fracPart, 0)) + throw fl::Exception("[syntax error] no hedge defined in FIS format for <" + + fl::Op::str(fracPart) + ">", FL_AT); + if (not isAny) { + ss << variable->getTerm(intPart)->getName(); + } + return ss.str(); + } + + std::string FisImporter::tnorm(const std::string & name) const { + if (name == "min") return Minimum().className(); + else if (name == "prod") return AlgebraicProduct().className(); + else if (name == "bounded_difference") return BoundedDifference().className(); + else if (name == "drastic_product") return DrasticProduct().className(); + else if (name == "einstein_product") return EinsteinProduct().className(); + else if (name == "hamacher_product") return HamacherProduct().className(); + return name; + } + + std::string FisImporter::snorm(const std::string & name) const { + if (name == "max") return Maximum().className(); + else if (name == "sum" or name == "probor") return AlgebraicSum().className(); + else if (name == "bounded_sum") return BoundedSum().className(); + else if (name == "normalized_sum") return NormalizedSum().className(); + else if (name == "drastic_sum") return DrasticSum().className(); + else if (name == "einstein_sum") return EinsteinSum().className(); + else if (name == "hamacher_sum") return HamacherSum().className(); + return name; + } + + std::string FisImporter::defuzzifier(const std::string & name) const { + if (name == "centroid") return Centroid().className(); + if (name == "bisector") return Bisector().className(); + if (name == "lom") return LargestOfMaximum().className(); + if (name == "mom") return MeanOfMaximum().className(); + if (name == "som") return SmallestOfMaximum().className(); + if (name == "wtaver") return WeightedAverage().className(); + if (name == "wtsum") return WeightedSum().className(); + return name; + } + + std::pair FisImporter::extractRange(const std::string& range) const { + std::vector parts = fl::Op::split(range, " "); + if (parts.size() != 2) + throw fl::Exception("[syntax error] expected range in format '[begin end]'," + " but found <" + range + ">", FL_AT); + std::string begin = parts.at(0), end = parts.at(1); + if (begin.at(0) != '[' or end.at(end.size() - 1) != ']') + throw fl::Exception("[syntax error] expected range in format '[begin end]'," + " but found <" + range + ">", FL_AT); + std::pair result; + result.first = fl::Op::toScalar(begin.substr(1)); + result.second = fl::Op::toScalar(end.substr(0, end.size() - 1)); + return result; + } + + Term * FisImporter::extractTerm(const std::string & fis) const { + std::ostringstream ss; + for (std::size_t i = 0; i < fis.size(); ++i) { + if (not (fis.at(i) == '[' or fis.at(i) == ']')) { + ss << fis.at(i); + } + } + std::string line = ss.str(); + + std::vector nameTerm = fl::Op::split(line, ":"); + if (nameTerm.size() != 2) { + throw fl::Exception("[syntax error] expected term in format 'name':'class',[params], " + "but found <" + line + ">", FL_AT); + } + std::vector termParams = fl::Op::split(nameTerm.at(1), ","); + if (termParams.size() != 2) { + throw fl::Exception("[syntax error] expected term in format 'name':'class',[params], " + "but found " + line, FL_AT); + } + + std::vector parameters = fl::Op::split(termParams.at(1), " "); + for (std::size_t i = 0; i < parameters.size(); ++i) { + parameters.at(i) = fl::Op::trim(parameters.at(i)); + } + return createInstance( + fl::Op::trim(termParams.at(0)), + fl::Op::trim(nameTerm.at(0)), + parameters); + } + + Term* FisImporter::prepareTerm(Term* term, const Engine* engine) const { + Linear* linear = NULL; + Function* function = NULL; + if ((linear = dynamic_cast (term))) { + linear->inputVariables = std::vector + (engine->inputVariables().begin(), + engine->inputVariables().end()); + } else if ((function = dynamic_cast (term))) { + function->setEngine(engine); + //builtin functions are loaded from TermFactory calling Function::create + function->load(); + } + return term; + } + + Term * FisImporter::createInstance(const std::string& mClass, + const std::string& name, const std::vector& params) const { + std::map mapping; + mapping["discretemf"] = Discrete().className(); + mapping["constant"] = Constant().className(); + mapping["function"] = Function().className(); + mapping["gbellmf"] = Bell().className(); + mapping["gaussmf"] = Gaussian().className(); + mapping["gauss2mf"] = GaussianProduct().className(); + mapping["linear"] = Linear().className(); + mapping["pimf"] = PiShape().className(); + mapping["rampmf"] = Ramp().className(); + mapping["rectmf"] = Rectangle().className(); + mapping["smf"] = SShape().className(); + mapping["sigmf"] = Sigmoid().className(); + mapping["dsigmf"] = SigmoidDifference().className(); + mapping["psigmf"] = SigmoidProduct().className(); + mapping["trapmf"] = Trapezoid().className(); + mapping["trimf"] = Triangle().className(); + mapping["zmf"] = ZShape().className(); + + std::vector sortedParams; + if (mClass != "function") { + for (std::size_t i = 0; i < params.size(); ++i) { + sortedParams.push_back(fl::Op::toScalar(params.at(i))); + } + } + + if (mClass == "gbellmf" and params.size() >= 3) { + sortedParams.at(0) = fl::Op::toScalar(params.at(2)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + sortedParams.at(2) = fl::Op::toScalar(params.at(1)); + } else if (mClass == "gaussmf" and params.size() >= 2) { + sortedParams.at(0) = fl::Op::toScalar(params.at(1)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + } else if (mClass == "gauss2mf" and params.size() >= 4) { + sortedParams.at(0) = fl::Op::toScalar(params.at(1)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + sortedParams.at(2) = fl::Op::toScalar(params.at(3)); + sortedParams.at(3) = fl::Op::toScalar(params.at(2)); + } else if (mClass == "sigmf" and params.size() >= 2) { + sortedParams.at(0) = fl::Op::toScalar(params.at(1)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + } else if (mClass == "dsigmf" and params.size() >= 4) { + sortedParams.at(0) = fl::Op::toScalar(params.at(1)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + sortedParams.at(2) = fl::Op::toScalar(params.at(2)); + sortedParams.at(3) = fl::Op::toScalar(params.at(3)); + } else if (mClass == "psigmf" and params.size() >= 4) { + sortedParams.at(0) = fl::Op::toScalar(params.at(1)); + sortedParams.at(1) = fl::Op::toScalar(params.at(0)); + sortedParams.at(2) = fl::Op::toScalar(params.at(2)); + sortedParams.at(3) = fl::Op::toScalar(params.at(3)); + } + + std::string flClass; + std::map::const_iterator it = mapping.find(mClass); + if (it != mapping.end()) flClass = it->second; + else flClass = mClass; + + try { + Term* result = FactoryManager::instance()->term()->createInstance(flClass); + result->setName(Op::makeValidId(name)); + if (dynamic_cast (result)) { + result->configure(Op::join(params, "")); + } else { + result->configure(Op::join(sortedParams, " ")); + } + return result; + } catch (fl::Exception& ex) { + ex.append(FL_AT); + throw ex; + } + } + + +} \ No newline at end of file diff --git a/src/imex/FldExporter.cpp b/src/imex/FldExporter.cpp new file mode 100644 index 0000000..9afaf39 --- /dev/null +++ b/src/imex/FldExporter.cpp @@ -0,0 +1,125 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DataExporter.cpp + * Author: jcrada + * + * Created on 30 November 2013, 9:54 AM + */ + +#include "fl/imex/FldExporter.h" + +#include "fl/Engine.h" +#include "fl/variable/Variable.h" +#include "fl/variable/InputVariable.h" +#include "fl/variable/OutputVariable.h" + +#include +#include +#include + +namespace fl { + + FldExporter::FldExporter(const std::string& separator, int maximum) + : _separator(separator), _maximum(maximum) { + + } + + FldExporter::~FldExporter() { + } + + std::string FldExporter::name() const { + return "FldExporter"; + } + + void FldExporter::setSeparator(const std::string& separator) { + this->_separator = separator; + } + + std::string FldExporter::getSeparator() const { + return this->_separator; + } + + void FldExporter::setMaximum(int maximum) { + this->_maximum = maximum; + } + + int FldExporter::getMaximum() const { + return this->_maximum; + } + + std::string FldExporter::toString(const Engine* mutableEngine) const { + Engine* engine = const_cast (mutableEngine); + std::ostringstream result; + toWriter(engine, result, _separator, _maximum); + return result.str(); + } + + template + void FldExporter::toWriter(Engine* engine, T& writer, + const std::string& separator, int maximum) const { + std::vector variables; + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + variables.push_back(engine->getInputVariable(i)->getName()); + } + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + variables.push_back(engine->getOutputVariable(i)->getName()); + } + writer << Op::join(variables, separator) << "\n"; + + int resolution = -1 + (int) std::max(1.0, std::pow( + maximum, 1.0 / engine->numberOfInputVariables())); + std::vector sampleValues, minSampleValues, maxSampleValues; + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + sampleValues.push_back(0); + minSampleValues.push_back(0); + maxSampleValues.push_back(resolution); + } + + engine->restart(); + + bool overflow = false; + while (not overflow) { + std::vector values; + + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + InputVariable* inputVariable = engine->getInputVariable(i); + scalar range = inputVariable->range(); + scalar inputValue = inputVariable->getMinimum() + + sampleValues.at(i) * range / resolution; + inputVariable->setInputValue(inputValue); + values.push_back(Op::str(inputValue)); + } + + engine->process(); + + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + OutputVariable* outputVariable = engine->getOutputVariable(i); + values.push_back(Op::str(outputVariable->defuzzify())); + } + + writer << Op::join(values, separator) << "\n"; + writer.flush(); + + overflow = Op::increment(sampleValues, minSampleValues, maxSampleValues); + } + } + + template FL_EXPORT void FldExporter::toWriter(Engine* engine, std::ofstream& writer, + const std::string& separator, int resolution) const; + template FL_EXPORT void FldExporter::toWriter(Engine* engine, std::ostringstream& writer, + const std::string& separator, int resolution) const; +} diff --git a/src/imex/FllExporter.cpp b/src/imex/FllExporter.cpp new file mode 100644 index 0000000..840b61c --- /dev/null +++ b/src/imex/FllExporter.cpp @@ -0,0 +1,153 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FllExporter.cpp + * Author: jcrada + * + * Created on 18 December 2013, 8:58 AM + */ + +#include "fl/imex/FllExporter.h" + +#include "fl/Headers.h" + +namespace fl { + + FllExporter::FllExporter(const std::string& indent, const std::string& separator) + : Exporter(), _indent(indent), _separator(separator) { + } + + FllExporter::~FllExporter() { + } + + std::string FllExporter::name() const { + return "FllExporter"; + } + + void FllExporter::setIndent(const std::string& indent) { + this->_indent = indent; + } + + std::string FllExporter::getIndent() const { + return this->_indent; + } + + void FllExporter::setSeparator(const std::string& separator) { + this->_separator = separator; + } + + std::string FllExporter::getSeparator() const { + return this->_separator; + } + + std::string FllExporter::toString(const Engine* engine) const { + std::ostringstream ss; + ss << "Engine: " << engine->getName() << _separator; + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + ss << toString(engine->getInputVariable(i)); + } + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + ss << toString(engine->getOutputVariable(i)); + } + for (int i = 0; i < engine->numberOfRuleBlocks(); ++i) { + ss << toString(engine->getRuleBlock(i)); + } + return ss.str(); + } + + std::string FllExporter::toString(const Variable* variable) const { + std::ostringstream ss; + ss << "Variable: " << variable->getName() << _separator; + std::string tab = _indent; + ss << tab << "enabled: " << (variable->isEnabled() ? "true" : "false") << _separator; + ss << tab << "range: " << Op::str(variable->getMinimum()) + << " " << Op::str(variable->getMaximum()) << _separator; + for (int i = 0; i < variable->numberOfTerms(); ++i) { + ss << tab << toString(variable->getTerm(i)) << _separator; + } + return ss.str(); + } + + std::string FllExporter::toString(const InputVariable* inputVariable) const { + std::ostringstream ss; + ss << "InputVariable: " << inputVariable->getName() << _separator; + std::string tab = _indent; + ss << tab << "enabled: " << (inputVariable->isEnabled() ? "true" : "false") << _separator; + ss << tab << "range: " << Op::str(inputVariable->getMinimum()) + << " " << Op::str(inputVariable->getMaximum()) << _separator; + for (int i = 0; i < inputVariable->numberOfTerms(); ++i) { + ss << tab << toString(inputVariable->getTerm(i)) << _separator; + } + return ss.str(); + } + + std::string FllExporter::toString(const OutputVariable* outputVariable) const { + std::ostringstream ss; + ss << "OutputVariable: " << outputVariable->getName() << _separator; + std::string tab = _indent; + ss << tab << "enabled: " << (outputVariable->isEnabled() ? "true" : "false") << _separator; + ss << tab << "range: " << Op::str(outputVariable->getMinimum()) + << " " << Op::str(outputVariable->getMaximum()) << _separator; + ss << tab << "accumulation: " << toString(outputVariable->fuzzyOutput()->getAccumulation()) << _separator; + ss << tab << "defuzzifier: " << toString(outputVariable->getDefuzzifier()) << _separator; + ss << tab << "default: " << Op::str(outputVariable->getDefaultValue()) << _separator; + ss << tab << "lock-valid: " << (outputVariable->isLockingValidOutput() ? "true" : "false") << _separator; + ss << tab << "lock-range: " << (outputVariable->isLockingOutputRange() ? "true" : "false") << _separator; + for (int i = 0; i < outputVariable->numberOfTerms(); ++i) { + ss << tab << toString(outputVariable->getTerm(i)) << _separator; + } + return ss.str(); + } + + std::string FllExporter::toString(const RuleBlock* ruleBlock) const { + std::ostringstream ss; + ss << "RuleBlock: " << ruleBlock->getName() << _separator; + std::string tab = _indent; + ss << tab << "enabled: " << (ruleBlock->isEnabled() ? "true" : "false") << _separator; + ss << tab << "conjunction: " << toString(ruleBlock->getConjunction()) << _separator; + ss << tab << "disjunction: " << toString(ruleBlock->getDisjunction()) << _separator; + ss << tab << "activation: " << toString(ruleBlock->getActivation()) << _separator; + for (int i = 0; i < ruleBlock->numberOfRules(); ++i) { + ss << tab << toString(ruleBlock->getRule(i)) << _separator; + } + return ss.str(); + } + + std::string FllExporter::toString(const Rule* rule) const { + return "rule: " + rule->getText(); + } + + std::string FllExporter::toString(const Term* term) const { + return "term: " + term->getName() + " " + term->className() + + " " + term->parameters(); + } + + std::string FllExporter::toString(const Norm* norm) const { + if (norm) return norm->className(); + return "none"; + } + + std::string FllExporter::toString(const Defuzzifier* defuzzifier) const { + if (not defuzzifier) return "none"; + const IntegralDefuzzifier* integralDefuzzifier = + dynamic_cast (defuzzifier); + if (integralDefuzzifier) { + return defuzzifier->className() + " " + Op::str(integralDefuzzifier->getResolution()); + } + return defuzzifier->className(); + } + +} diff --git a/src/imex/FllImporter.cpp b/src/imex/FllImporter.cpp new file mode 100644 index 0000000..10f7057 --- /dev/null +++ b/src/imex/FllImporter.cpp @@ -0,0 +1,309 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: FllImporter.cpp + * Author: jcrada + * + * Created on 18 December 2013, 11:42 AM + */ + +#include "fl/imex/FllImporter.h" + +#include "fl/Headers.h" + +#include + +namespace fl { + + FllImporter::FllImporter(const std::string& separator) : _separator(separator) { + } + + FllImporter::~FllImporter() { + + } + + std::string FllImporter::name() const { + return "FllImporter"; + } + + void FllImporter::setSeparator(const std::string& separator) { + this->_separator = separator; + } + + std::string FllImporter::getSeparator() const { + return this->_separator; + } + + Engine* FllImporter::fromString(const std::string& fll) const { + Engine* engine = new Engine; + + std::string tag; + std::ostringstream block; + bool processPending = false; + std::istringstream fclReader(fll); + std::string line; + std::queue lineQueue; + int lineNumber = 0; + try { + while (not lineQueue.empty() or std::getline(fclReader, line)) { + if (not lineQueue.empty()) { + line = lineQueue.front(); + lineQueue.pop(); + } else { + std::vector split = Op::split(line, _separator); + line = split.front(); + for (std::size_t i = 1; i < split.size(); ++i) { + lineQueue.push(split.at(i)); + } + ++lineNumber; + } + line = clean(line); + if (line.empty()) continue; + std::size_t colon = line.find_first_of(':'); + if (colon == std::string::npos) { + throw fl::Exception("[import error] expected a colon at line " + + Op::str(lineNumber) + ": " + line, FL_AT); + } + std::string key = Op::trim(line.substr(0, colon)); + std::string value = Op::trim(line.substr(colon + 1)); + if ("Engine" == key) { + engine->setName(value); + continue; + } else { + processPending = (key == "InputVariable" + or key == "OutputVariable" + or key == "RuleBlock"); + } + if (processPending) { + process(tag, block.str(), engine); + block.str(""); //clear buffer + block.clear(); //clear error flags + processPending = false; + tag = key; + } + block << key << ":" << value << "\n"; + } + process(tag, block.str(), engine); + } catch (fl::Exception& ex) { + delete engine; + throw ex; + } + return engine; + } + + void FllImporter::process(const std::string& tag, const std::string& block, Engine* engine) const { + if (tag.empty()) return; + if ("InputVariable" == tag) { + processInputVariable(block, engine); + } else if ("OutputVariable" == tag) { + processOutputVariable(block, engine); + } else if ("RuleBlock" == tag) { + processRuleBlock(block, engine); + } else { + throw fl::Exception("[import error] block tag <" + tag + "> not recognized", FL_AT); + } + } + + void FllImporter::processInputVariable(const std::string& block, Engine* engine) const { + std::istringstream reader(block); + std::string line; + InputVariable* inputVariable = new InputVariable; + engine->addInputVariable(inputVariable); + while (std::getline(reader, line)) { + std::pair keyValue = parseKeyValue(line, ':'); + if ("InputVariable" == keyValue.first) { + inputVariable->setName(keyValue.second); + } else if ("enabled" == keyValue.first) { + inputVariable->setEnabled(parseBoolean(keyValue.second)); + } else if ("range" == keyValue.first) { + std::pair range = parseRange(keyValue.second); + inputVariable->setRange(range.first, range.second); + } else if ("term" == keyValue.first) { + inputVariable->addTerm(parseTerm(keyValue.second, engine)); + } else { + throw fl::Exception("[import error] key <" + keyValue.first + "> not " + "recognized in pair <" + keyValue.first + ":" + keyValue.second + ">", FL_AT); + } + } + } + + void FllImporter::processOutputVariable(const std::string& block, Engine* engine) const { + std::istringstream reader(block); + std::string line; + OutputVariable* outputVariable = new OutputVariable; + engine->addOutputVariable(outputVariable); + while (std::getline(reader, line)) { + std::pair keyValue = parseKeyValue(line, ':'); + if ("OutputVariable" == keyValue.first) { + outputVariable->setName(keyValue.second); + } else if ("enabled" == keyValue.first) { + outputVariable->setEnabled(parseBoolean(keyValue.second)); + } else if ("range" == keyValue.first) { + std::pair range = parseRange(keyValue.second); + outputVariable->setRange(range.first, range.second); + } else if ("default" == keyValue.first) { + outputVariable->setDefaultValue(Op::toScalar(keyValue.second)); + } else if ("lock-valid" == keyValue.first) { + outputVariable->setLockValidOutput(parseBoolean(keyValue.second)); + } else if ("lock-range" == keyValue.first) { + outputVariable->setLockOutputRange(parseBoolean(keyValue.second)); + } else if ("defuzzifier" == keyValue.first) { + outputVariable->setDefuzzifier(parseDefuzzifier(keyValue.second)); + } else if ("accumulation" == keyValue.first) { + outputVariable->fuzzyOutput()->setAccumulation(parseSNorm(keyValue.second)); + } else if ("term" == keyValue.first) { + outputVariable->addTerm(parseTerm(keyValue.second, engine)); + } else { + throw fl::Exception("[import error] key <" + keyValue.first + "> not " + "recognized in pair <" + keyValue.first + ":" + keyValue.second + ">", FL_AT); + } + } + } + + void FllImporter::processRuleBlock(const std::string& block, Engine* engine) const { + std::istringstream reader(block); + std::string line; + RuleBlock* ruleBlock = new RuleBlock; + engine->addRuleBlock(ruleBlock); + while (std::getline(reader, line)) { + std::pair keyValue = parseKeyValue(line, ':'); + if ("RuleBlock" == keyValue.first) { + ruleBlock->setName(keyValue.second); + } else if ("enabled" == keyValue.first) { + ruleBlock->setEnabled(parseBoolean(keyValue.second)); + } else if ("conjunction" == keyValue.first) { + ruleBlock->setConjunction(parseTNorm(keyValue.second)); + } else if ("disjunction" == keyValue.first) { + ruleBlock->setDisjunction(parseSNorm(keyValue.second)); + } else if ("activation" == keyValue.first) { + ruleBlock->setActivation(parseTNorm(keyValue.second)); + } else if ("rule" == keyValue.first) { + ruleBlock->addRule(fl::Rule::parse(keyValue.second, engine)); + } else { + throw fl::Exception("[import error] key <" + keyValue.first + "> not " + "recognized in pair <" + keyValue.first + ":" + keyValue.second + ">", FL_AT); + } + } + } + + Term* FllImporter::parseTerm(const std::string& text, Engine* engine) const { + std::vector tokens = Op::split(text, " "); + + //MEDIUM Triangle 0.500 1.000 1.500 + + if (tokens.size() < 2) { + throw fl::Exception("[syntax error] expected a term in format , " + "but found <" + text + ">", FL_AT); + } + Term* term = FactoryManager::instance()->term()->createInstance(tokens.at(1)); + term->setName(Op::makeValidId(tokens.at(0))); + std::ostringstream parameters; + for (std::size_t i = 2; i < tokens.size(); ++i) { + parameters << tokens.at(i); + if (i + 1 < tokens.size()) parameters << " "; + } + term->configure(parameters.str()); + //special cases: + Linear* linear = NULL; + Function* function = NULL; + if ((linear = dynamic_cast (term))) { + linear->inputVariables = std::vector + (engine->inputVariables().begin(), + engine->inputVariables().end()); + } else if ((function = dynamic_cast (term))) { + function->setEngine(engine); + //builtin functions are loaded from TermFactory calling Function::create + function->load(); + } + return term; + } + + TNorm* FllImporter::parseTNorm(const std::string& name) const { + if (name.empty() or "none" == name) return NULL; + return FactoryManager::instance()->tnorm()->createInstance(name); + } + + SNorm* FllImporter::parseSNorm(const std::string& name) const { + if (name.empty() or "none" == name) return NULL; + return FactoryManager::instance()->snorm()->createInstance(name); + } + + Defuzzifier* FllImporter::parseDefuzzifier(const std::string& text) const { + if (text.empty() or "none" == text) return NULL; + std::vector parameters = Op::split(text, " "); + std::string name = parameters.at(0); + Defuzzifier* defuzzifier = FactoryManager::instance()->defuzzifier()->createInstance(name); + if (parameters.size() > 1) { + IntegralDefuzzifier* integralDefuzzifier = + dynamic_cast (defuzzifier); + if (integralDefuzzifier) { + integralDefuzzifier->setResolution((int)Op::toScalar(parameters.at(1))); + } + } + return defuzzifier; + } + + std::pair FllImporter::parseRange(const std::string& text) const { + std::pair range = parseKeyValue(text, ' '); + return std::pair(Op::toScalar(range.first), Op::toScalar(range.second)); + } + + bool FllImporter::parseBoolean(const std::string& boolean) const { + if ("true" == boolean) return true; + if ("false" == boolean) return false; + throw fl::Exception("[syntax error] expected boolean , " + "but found <" + boolean + ">", FL_AT); + } + + std::pair FllImporter::parseKeyValue(const std::string& text, + char separator) const { + std::size_t half = text.find_first_of(separator); + if (half == std::string::npos) { + std::ostringstream ex; + ex << "[syntax error] expected pair in the form " + ", but found <" << text << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + std::pair result; + result.first = text.substr(0, half); + result.second = text.substr(half + 1); + return result; + } + + std::string FllImporter::clean(const std::string& line) const { + if (line.empty()) return line; + if (line.size() == 1) return isspace(line.at(0)) ? "" : line; + int start = 0, end = line.size() - 1; + while (start <= end and isspace(line.at(start))) { + ++start; + } + int sharp = start; + while (sharp <= end) { + if (line.at(sharp) == '#') { + end = sharp - 1; + break; + } + ++sharp; + } + while (end >= start and (line.at(end) == '#' or isspace(line.at(end)))) { + --end; + } + + int length = end - start + 1; + return line.substr(start, length); + } + +} \ No newline at end of file diff --git a/src/imex/JavaExporter.cpp b/src/imex/JavaExporter.cpp new file mode 100644 index 0000000..09d1a23 --- /dev/null +++ b/src/imex/JavaExporter.cpp @@ -0,0 +1,221 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: JavaExporter.cpp + * Author: jcrada + * + * Created on 28 November 2013, 10:21 PM + */ + +#include "fl/imex/JavaExporter.h" + +#include "fl/Headers.h" + +#include +namespace fl { + + JavaExporter::JavaExporter() : Exporter() { + } + + JavaExporter::~JavaExporter() { + + } + + std::string JavaExporter::name() const { + return "JavaExporter"; + } + + std::string JavaExporter::toString(const Engine* engine) const { + std::ostringstream ss; + ss << "Engine engine = new Engine();\n"; + ss << "engine.setName(\"" << engine->getName() << "\");\n"; + ss << "\n"; + + for (int i = 0; i < engine->numberOfInputVariables(); ++i) { + ss << toString(engine->getInputVariable(i), engine) << "\n"; + } + + for (int i = 0; i < engine->numberOfOutputVariables(); ++i) { + ss << toString(engine->getOutputVariable(i), engine) << "\n"; + } + + for (int i = 0; i < engine->numberOfRuleBlocks(); ++i) { + ss << toString(engine->getRuleBlock(i), engine) << "\n"; + } + + return ss.str(); + } + + std::string JavaExporter::toString(const InputVariable* inputVariable, const Engine* engine) const { + std::ostringstream ss; + std::string name = "inputVariable"; + if (engine->numberOfInputVariables() > 1) { + int index = std::distance(engine->inputVariables().begin(), + std::find(engine->inputVariables().begin(), + engine->inputVariables().end(), inputVariable)); + name += Op::str(index + 1); + } + ss << "InputVariable " << name << " = new InputVariable();\n"; + ss << name << ".setEnabled(" << (inputVariable->isEnabled() ? "true" : "false") << ");\n"; + ss << name << ".setName(\"" << inputVariable->getName() << "\");\n"; + ss << name << ".setRange(" + << toString(inputVariable->getMinimum()) << ", " + << toString(inputVariable->getMaximum()) << ");\n"; + + for (int i = 0; i < inputVariable->numberOfTerms(); ++i) { + ss << name << ".addTerm(" << + toString(inputVariable->getTerm(i)) << ");\n"; + } + ss << "engine.addInputVariable(" << name << ");\n"; + return ss.str(); + } + + std::string JavaExporter::toString(const OutputVariable* outputVariable, const Engine* engine) const { + std::ostringstream ss; + std::string name = "outputVariable"; + if (engine->numberOfOutputVariables() > 1) { + int index = std::distance(engine->outputVariables().begin(), + std::find(engine->outputVariables().begin(), + engine->outputVariables().end(), outputVariable)); + name += Op::str(index + 1); + } + ss << "OutputVariable " << name << " = new OutputVariable();\n"; + ss << name << ".setEnabled(" << (outputVariable->isEnabled() ? "true" : "false") << ");\n"; + ss << name << ".setName(\"" << outputVariable->getName() << "\");\n"; + ss << name << ".setRange(" + << toString(outputVariable->getMinimum()) << ", " + << toString(outputVariable->getMaximum()) << ");\n"; + ss << name << ".fuzzyOutput().setAccumulation(" << + toString(outputVariable->fuzzyOutput()->getAccumulation()) << ");\n"; + ss << name << ".setDefuzzifier(" << + toString(outputVariable->getDefuzzifier()) << ");\n"; + ss << name << ".setDefaultValue(" << + toString(outputVariable->getDefaultValue()) << ");\n"; + ss << name << ".setLockValidOutput(" << + (outputVariable->isLockingValidOutput() ? "true" : "false") << ");\n"; + ss << name << ".setLockOutputRange(" << + (outputVariable->isLockingOutputRange() ? "true" : "false") << ");\n"; + for (int i = 0; i < outputVariable->numberOfTerms(); ++i) { + ss << name << ".addTerm(" << + toString(outputVariable->getTerm(i)) << ");\n"; + } + ss << "engine.addOutputVariable(" << name << ");\n"; + return ss.str(); + } + + std::string JavaExporter::toString(const RuleBlock* ruleBlock, const Engine* engine) const { + std::ostringstream ss; + std::string name = "ruleBlock"; + if (engine->numberOfRuleBlocks() > 1) { + int index = std::distance(engine->ruleBlocks().begin(), + std::find(engine->ruleBlocks().begin(), + engine->ruleBlocks().end(), ruleBlock)); + name += Op::str(index + 1); + } + ss << "RuleBlock " << name << " = new RuleBlock();\n"; + ss << name << ".setEnabled(" << (ruleBlock->isEnabled() ? "true" : "false") << ");\n"; + ss << name << ".setName(\"" << ruleBlock->getName() << "\");\n"; + ss << name << ".setConjunction(" + << toString(ruleBlock->getConjunction()) << ");\n"; + ss << name << ".setDisjunction(" + << toString(ruleBlock->getDisjunction()) << ");\n"; + ss << name << ".setActivation(" + << toString(ruleBlock->getActivation()) << ");\n"; + for (int i = 0; i < ruleBlock->numberOfRules(); ++i) { + Rule* rule = ruleBlock->getRule(i); + ss << name << ".addRule(Rule.parse(\"" << rule->getText() << "\", engine));\n"; + } + ss << "engine.addRuleBlock(" << name << ");\n"; + return ss.str(); + } + + std::string JavaExporter::toString(const Term* term) const { + if (not term) { + return "null"; + } + + if (term->className() == Discrete().className()) { + const Discrete* discrete = dynamic_cast (term); + std::ostringstream ss; + std::vector xy; + for (std::size_t i = 0; i < discrete->x.size(); ++i) { + xy.push_back(discrete->x.at(i)); + xy.push_back(discrete->y.at(i)); + } + ss << term->className() << ".create(\"" << term->getName() << "\", " + << Op::join(xy, ", ") << ")"; + return ss.str(); + } + + + if (term->className() == Function().className()) { + const Function* function = dynamic_cast (term); + std::ostringstream ss; + ss << term->className() << ".create(\"" << term->getName() << "\", " + << "\"" << function->getFormula() << "\", engine, true)"; + return ss.str(); + } + + if (term->className() == Linear().className()) { + const Linear* linear = dynamic_cast (term); + std::ostringstream ss; + ss << term->className() << ".create(\"" << term->getName() << "\", " + << "engine.getInputVariables(), " + << Op::join(linear->coefficients, ", ") << ")"; + return ss.str(); + } + + std::ostringstream ss; + ss << "new " << term->className() << "(\"" << term->getName() << "\", " + << Op::findReplace(term->parameters(), " ", ", ") << ")"; + return ss.str(); + } + + std::string JavaExporter::toString(const Defuzzifier* defuzzifier) const { + if (not defuzzifier) { + return "null"; + } + const IntegralDefuzzifier* integralDefuzzifier = + dynamic_cast (defuzzifier); + if (integralDefuzzifier) { + std::ostringstream ss; + ss << "new " << defuzzifier->className() << "(" << + integralDefuzzifier->getResolution() << ")"; + return ss.str(); + } + return "new " + defuzzifier->className() + "()"; + } + + std::string JavaExporter::toString(const Norm* norm) const { + if (not norm) { + return "null"; + } + return "new " + norm->className() + "()"; + } + + std::string JavaExporter::toString(scalar value) const { + if (Op::isNan(value)) { + return "Double.NaN"; + } else if (Op::isInf(value)) { + return (value > 0 + ? "Double.POSITIVE_INFINITY" + : "Double.NEGATIVE_INFINITY"); + } + return Op::str(value); + } + +} + diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..7827d67 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,218 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * main.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/Headers.h" + +#include +#include +#include +#include +#include + +using namespace fl; + +/* +void baz(){ + int *x = (int*) - 1; // make a bad pointer + FL_LOG("%d\n" << *x); // causes segfault +} + +void bar(){ + baz(); +} + +void foo(){ + bar(); +} + */ + + + +void exportAllExamples(const std::string& from, const std::string& to) { + std::vector examples; + examples.push_back("/mamdani/AllTerms"); + examples.push_back("/mamdani/SimpleDimmer"); + examples.push_back("/mamdani/matlab/mam21"); + examples.push_back("/mamdani/matlab/mam22"); + examples.push_back("/mamdani/matlab/shower"); + examples.push_back("/mamdani/matlab/tank"); + examples.push_back("/mamdani/matlab/tank2"); + examples.push_back("/mamdani/matlab/tipper"); + examples.push_back("/mamdani/matlab/tipper1"); + examples.push_back("/mamdani/octave/investment_portfolio"); + examples.push_back("/mamdani/octave/mamdani_tip_calculator"); + examples.push_back("/takagi-sugeno/approximation"); + examples.push_back("/takagi-sugeno/SimpleDimmer"); + examples.push_back("/takagi-sugeno/matlab/fpeaks"); + examples.push_back("/takagi-sugeno/matlab/invkine1"); + examples.push_back("/takagi-sugeno/matlab/invkine2"); + examples.push_back("/takagi-sugeno/matlab/juggler"); + examples.push_back("/takagi-sugeno/matlab/membrn1"); + examples.push_back("/takagi-sugeno/matlab/membrn2"); + examples.push_back("/takagi-sugeno/matlab/slbb"); + examples.push_back("/takagi-sugeno/matlab/slcp"); + examples.push_back("/takagi-sugeno/matlab/slcp1"); + examples.push_back("/takagi-sugeno/matlab/slcpp1"); + examples.push_back("/takagi-sugeno/matlab/sltbu_fl"); + examples.push_back("/takagi-sugeno/matlab/sugeno1"); + examples.push_back("/takagi-sugeno/matlab/tanksg"); + examples.push_back("/takagi-sugeno/matlab/tippersg"); + examples.push_back("/takagi-sugeno/octave/cubic_approximator"); + examples.push_back("/takagi-sugeno/octave/heart_disease_risk"); + examples.push_back("/takagi-sugeno/octave/linear_tip_calculator"); + examples.push_back("/takagi-sugeno/octave/sugeno_tip_calculator"); + examples.push_back("/tsukamoto/tsukamoto"); + + std::string sourceBase = "/home/jcrada/Development/fl/fuzzylite/examples"; + // std::string targetBase = "/home/jcrada/Development/fuzzylite/examples/" + to; + std::string targetBase = "/tmp/fl/"; + + Importer* importer; + if (from == "fll") importer = new FllImporter; + else if (from == "fis") importer = new FisImporter; + else if (from == "fcl") importer = new FclImporter; + else throw fl::Exception("[examples error] unrecognized format <" + from + "> to import", FL_AT); + + Exporter* exporter; + if (to == "fll") exporter = new FllExporter; + else if (to == "fld") exporter = new FldExporter(" ", 1024); + else if (to == "fcl") exporter = new FclExporter; + else if (to == "fis") exporter = new FisExporter; + else if (to == "cpp") exporter = new CppExporter; + else if (to == "java") exporter = new JavaExporter; + else throw fl::Exception("[examples error] unrecognized format <" + to + "> to export", FL_AT); + + std::vector > tests; + tests.push_back(std::pair(new FllExporter, new FllImporter)); + tests.push_back(std::pair(new FclExporter, new FclImporter)); + tests.push_back(std::pair(new FisExporter, new FisImporter)); + std::ostringstream errors; + for (std::size_t i = 0; i < examples.size(); ++i) { + FL_LOG("Processing " << (i + 1) << "/" << examples.size() << ": " << examples.at(i)); + try { + std::ostringstream ss; + std::string input = sourceBase + examples.at(i) + "." + from; + std::ifstream source(input.c_str()); + if (source.is_open()) { + std::string line; + while (source.good()) { + std::getline(source, line); + ss << line << "\n"; + } + source.close(); + } else throw fl::Exception("[examples error] file not found: " + input, FL_AT); + + Engine* engine = importer->fromString(ss.str()); + + for (std::size_t t = 0; t < tests.size(); ++t) { + std::string out = tests.at(t).first->toString(engine); + Engine* copy = tests.at(t).second->fromString(out); + std::string out_copy = tests.at(t).first->toString(copy); + + if (out != out_copy) { + errors << "[imex error] different results <" + << importer->name() << "," << exporter->name() << "> " + "at " + examples.at(t) + "." + from + ":\n"; + } + } + + std::string output = targetBase + examples.at(i) + "." + to; + std::ofstream target(output.c_str()); + if (target.is_open()) { + if (to == "cpp") { + target << "#include \n\n" + << "int main(int argc, char** argv){\n" + << exporter->toString(engine) + << "\n}\n"; + } else if (to == "java") { + std::string className = examples.at(i).substr(examples.at(i).find_last_of('/') + 1); + target << "import com.fuzzylite.*;\n" + << "import com.fuzzylite.defuzzifier.*;\n" + << "import com.fuzzylite.factory.*;\n" + << "import com.fuzzylite.hedge.*;\n" + << "import com.fuzzylite.imex.*;\n" + << "import com.fuzzylite.norm.*;\n" + << "import com.fuzzylite.norm.s.*;\n" + << "import com.fuzzylite.norm.t.*;\n" + << "import com.fuzzylite.rule.*;\n" + << "import com.fuzzylite.term.*;\n" + << "import com.fuzzylite.variable.*;\n\n" + << "public class " << Op::makeValidId(className) << "{\n" + << "public static void main(String[] args){\n" + << exporter->toString(engine) + << "\n}\n}\n"; + } else { + target << exporter->toString(engine); + } + target.close(); + } + delete engine; + } catch (fl::Exception& ex) { + errors << "error at " << examples.at(i) << ":\n" << ex.what() << "\n"; + } + } + delete importer; + delete exporter; + for (std::size_t i = 0; i < tests.size(); ++i) { + delete tests.at(i).first; + delete tests.at(i).second; + } + if (errors.str().empty()) { + FL_LOG("No errors were found exporting files"); + } else { + FL_LOG("The following errors were encountered while exporting files:" << errors.str()); + } +} + +int main(int argc, char** argv) { + (void) argc; + (void) argv; + std::set_terminate(fl::Exception::terminate); + std::set_unexpected(fl::Exception::terminate); + signal(SIGSEGV, fl::Exception::signalHandler); + signal(SIGABRT, fl::Exception::signalHandler); + signal(SIGILL, fl::Exception::signalHandler); + signal(SIGSEGV, fl::Exception::signalHandler); + signal(SIGFPE, fl::Exception::signalHandler); +#ifdef FL_UNIX + signal(SIGBUS, fl::Exception::signalHandler); + signal(SIGPIPE, fl::Exception::signalHandler); +#endif + + try { +// fuzzylite::setDecimals(3); +// exportAllExamples("fis", "fll"); +// exportAllExamples("fis", "fcl"); +// exportAllExamples("fis", "fis"); +// exportAllExamples("fis", "cpp"); +// exportAllExamples("fis", "java"); +// fuzzylite::setDecimals(8); +// exportAllExamples("fis", "fld"); +// return 0; + return Console::main(argc, argv); + } catch (fl::Exception& e) { + FL_LOG(e.what()); + FL_LOG(e.btCallStack()); + return EXIT_FAILURE; + } +} + diff --git a/src/norm/s/AlgebraicSum.cpp b/src/norm/s/AlgebraicSum.cpp new file mode 100644 index 0000000..7cf79d2 --- /dev/null +++ b/src/norm/s/AlgebraicSum.cpp @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: AlgebraicSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:15 AM + */ + +#include "fl/norm/s/AlgebraicSum.h" + +namespace fl { + + std::string AlgebraicSum::className() const { + return "AlgebraicSum"; + } + + scalar AlgebraicSum::compute(scalar a, scalar b) const { + return a + b - (a * b); + } + + SNorm* AlgebraicSum::constructor() { + return new AlgebraicSum; + } +} \ No newline at end of file diff --git a/src/norm/s/BoundedSum.cpp b/src/norm/s/BoundedSum.cpp new file mode 100644 index 0000000..9bb9150 --- /dev/null +++ b/src/norm/s/BoundedSum.cpp @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: BoundedSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:16 AM + */ + +#include "fl/norm/s/BoundedSum.h" + +namespace fl { + + std::string BoundedSum::className() const { + return "BoundedSum"; + } + + scalar BoundedSum::compute(scalar a, scalar b) const { + return Op::min(1.0, a + b); + } + + SNorm* BoundedSum::constructor() { + return new BoundedSum; + } +} diff --git a/src/norm/s/DrasticSum.cpp b/src/norm/s/DrasticSum.cpp new file mode 100644 index 0000000..ad3e053 --- /dev/null +++ b/src/norm/s/DrasticSum.cpp @@ -0,0 +1,42 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DrasticSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:17 AM + */ + +#include "fl/norm/s/DrasticSum.h" + +namespace fl { + + std::string DrasticSum::className() const { + return "DrasticSum"; + } + + scalar DrasticSum::compute(scalar a, scalar b) const { + if (Op::isEq(Op::min(a, b), 0.0)) { + return Op::max(a, b); + } + return 1.0; + } + + SNorm* DrasticSum::constructor() { + return new DrasticSum; + } + +} diff --git a/src/norm/s/EinsteinSum.cpp b/src/norm/s/EinsteinSum.cpp new file mode 100644 index 0000000..816dbc1 --- /dev/null +++ b/src/norm/s/EinsteinSum.cpp @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: EinsteinSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:17 AM + */ + +#include "fl/norm/s/EinsteinSum.h" + +namespace fl { + + std::string EinsteinSum::className() const { + return "EinsteinSum"; + } + + scalar EinsteinSum::compute(scalar a, scalar b) const { + return (a + b) / (1.0 + a * b); + } + + SNorm* EinsteinSum::constructor() { + return new EinsteinSum; + } +} \ No newline at end of file diff --git a/src/norm/s/HamacherSum.cpp b/src/norm/s/HamacherSum.cpp new file mode 100644 index 0000000..9331e3d --- /dev/null +++ b/src/norm/s/HamacherSum.cpp @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HamacherSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:17 AM + */ + +#include "fl/norm/s/HamacherSum.h" + +namespace fl { + + std::string HamacherSum::className() const { + return "HamacherSum"; + } + + scalar HamacherSum::compute(scalar a, scalar b) const { + return (a + b - 2 * a * b) / (1 - a * b); + } + + SNorm* HamacherSum::constructor() { + return new HamacherSum; + } +} diff --git a/src/norm/s/Maximum.cpp b/src/norm/s/Maximum.cpp new file mode 100644 index 0000000..55198d9 --- /dev/null +++ b/src/norm/s/Maximum.cpp @@ -0,0 +1,38 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Maximum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:14 AM + */ + +#include "fl/norm/s/Maximum.h" + +namespace fl { + + std::string Maximum::className() const { + return "Maximum"; + } + + scalar Maximum::compute(scalar a, scalar b) const { + return Op::max(a, b); + } + + SNorm* Maximum::constructor() { + return new Maximum; + } +} diff --git a/src/norm/s/NormalizedSum.cpp b/src/norm/s/NormalizedSum.cpp new file mode 100644 index 0000000..09fcd54 --- /dev/null +++ b/src/norm/s/NormalizedSum.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: NormalizedSum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:16 AM + */ + +#include "fl/norm/s/NormalizedSum.h" + +namespace fl { + + std::string NormalizedSum::className() const { + return "NormalizedSum"; + } + + scalar NormalizedSum::compute(scalar a, scalar b) const { + return a + b / Op::max(1.0, Op::max(a, b)); + } + + SNorm* NormalizedSum::constructor() { + return new NormalizedSum; + } + +} diff --git a/src/norm/t/AlgebraicProduct.cpp b/src/norm/t/AlgebraicProduct.cpp new file mode 100644 index 0000000..dc435c9 --- /dev/null +++ b/src/norm/t/AlgebraicProduct.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: AlgebraicProduct.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:53 AM + */ + +#include "fl/norm/t/AlgebraicProduct.h" + +namespace fl { + + std::string AlgebraicProduct::className() const { + return "AlgebraicProduct"; + } + + scalar AlgebraicProduct::compute(scalar a, scalar b) const { + return a * b; + } + + TNorm* AlgebraicProduct::constructor() { + return new AlgebraicProduct; + } + +} diff --git a/src/norm/t/BoundedDifference.cpp b/src/norm/t/BoundedDifference.cpp new file mode 100644 index 0000000..5426cb2 --- /dev/null +++ b/src/norm/t/BoundedDifference.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: BoundedDifference.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:54 AM + */ + +#include "fl/norm/t/BoundedDifference.h" + + +namespace fl { + + std::string BoundedDifference::className() const { + return "BoundedDifference"; + } + + scalar BoundedDifference::compute(scalar a, scalar b) const { + return Op::max(0.0, a + b - 1); + } + + TNorm* BoundedDifference::constructor() { + return new BoundedDifference; + } +} \ No newline at end of file diff --git a/src/norm/t/DrasticProduct.cpp b/src/norm/t/DrasticProduct.cpp new file mode 100644 index 0000000..3c19936 --- /dev/null +++ b/src/norm/t/DrasticProduct.cpp @@ -0,0 +1,42 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: DrasticProduct.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:54 AM + */ + +#include "fl/norm/t/DrasticProduct.h" + +namespace fl { + + std::string DrasticProduct::className() const { + return "DrasticProduct"; + } + + scalar DrasticProduct::compute(scalar a, scalar b) const { + if (Op::isEq(Op::max(a, b), 1.0)) { + return Op::min(a, b); + } + return 0.0; + } + + TNorm* DrasticProduct::constructor() { + return new DrasticProduct; + } + +} \ No newline at end of file diff --git a/src/norm/t/EinsteinProduct.cpp b/src/norm/t/EinsteinProduct.cpp new file mode 100644 index 0000000..b426d34 --- /dev/null +++ b/src/norm/t/EinsteinProduct.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: EinsteinProduct.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:55 AM + */ + +#include "fl/norm/t/EinsteinProduct.h" + +namespace fl { + + std::string EinsteinProduct::className() const { + return "EinsteinProduct"; + } + + scalar EinsteinProduct::compute(scalar a, scalar b) const { + return (a * b) / (2 - (a + b - a * b)); + } + + TNorm* EinsteinProduct::constructor() { + return new EinsteinProduct; + } + +} \ No newline at end of file diff --git a/src/norm/t/HamacherProduct.cpp b/src/norm/t/HamacherProduct.cpp new file mode 100644 index 0000000..6a5573e --- /dev/null +++ b/src/norm/t/HamacherProduct.cpp @@ -0,0 +1,39 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: HamacherProduct.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:55 AM + */ + +#include "fl/norm/t/HamacherProduct.h" + + +namespace fl { + + std::string HamacherProduct::className() const { + return "HamacherProduct"; + } + + scalar HamacherProduct::compute(scalar a, scalar b) const { + return (a * b) / (a + b - a * b); + } + + TNorm* HamacherProduct::constructor() { + return new HamacherProduct; + } +} \ No newline at end of file diff --git a/src/norm/t/Minimum.cpp b/src/norm/t/Minimum.cpp new file mode 100644 index 0000000..61f900c --- /dev/null +++ b/src/norm/t/Minimum.cpp @@ -0,0 +1,40 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Minimum.cpp + * Author: jcrada + * + * Created on 30 November 2013, 1:52 AM + */ + +#include "fl/norm/t/Minimum.h" + +namespace fl { + + std::string Minimum::className() const { + return "Minimum"; + } + + scalar Minimum::compute(scalar a, scalar b) const { + return Op::min(a, b); + } + + TNorm* Minimum::constructor() { + return new Minimum; + } + + +} diff --git a/src/rule/Antecedent.cpp b/src/rule/Antecedent.cpp new file mode 100644 index 0000000..1b2522d --- /dev/null +++ b/src/rule/Antecedent.cpp @@ -0,0 +1,279 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Antecedent.cpp + * + * Created on: 3/12/2012 + * Author: jcrada + */ + +#include "fl/rule/Antecedent.h" + +#include "fl/rule/Expression.h" + +#include "fl/Engine.h" +#include "fl/variable/InputVariable.h" +#include "fl/hedge/Hedge.h" +#include "fl/hedge/Any.h" +#include "fl/term/Term.h" + +#include "fl/rule/Rule.h" +#include "fl/norm/TNorm.h" +#include "fl/norm/SNorm.h" + +#include "fl/term/Function.h" + +#include "fl/factory/FactoryManager.h" +#include "fl/factory/HedgeFactory.h" + +#include +#include + +namespace fl { + + Antecedent::Antecedent() + : _root(NULL) { } + + Antecedent::~Antecedent() { + if (_root) delete _root; + } + + Expression* Antecedent::getRoot() const { + return this->_root; + } + + scalar Antecedent::activationDegree(const TNorm* conjunction, const SNorm* disjunction, + const Expression* node) const { + if (not node->isOperator) { //then it is a Proposition + const Proposition* proposition = + dynamic_cast (node); + if (not proposition->variable->isEnabled()){ + return 0.0; + } + bool isAny = false; + for (std::size_t i = 0; i < proposition->hedges.size(); ++i) { + isAny |= proposition->hedges.at(i)->name() == Any().name(); + if (isAny) return 1.0; + } + InputVariable* inputVariable = dynamic_cast (proposition->variable); + scalar result = proposition->term->membership(inputVariable->getInputValue()); + for (std::size_t i = 0; i < proposition->hedges.size(); ++i) { + result = proposition->hedges.at(i)->hedge(result); + } + return result; + } + //if node is an operatorsk + const Operator* fuzzyOperator = + dynamic_cast (node); + if (not fuzzyOperator->left or not fuzzyOperator->right) { + std::ostringstream ex; + ex << "[syntax error] left and right operands must exist"; + throw fl::Exception(ex.str(), FL_AT); + } + if (fuzzyOperator->name == Rule::FL_AND) + return conjunction->compute( + this->activationDegree(conjunction, disjunction, fuzzyOperator->left), + this->activationDegree(conjunction, disjunction, fuzzyOperator->right)); + + if (fuzzyOperator->name == Rule::FL_OR) + return disjunction->compute( + this->activationDegree(conjunction, disjunction, fuzzyOperator->left), + this->activationDegree(conjunction, disjunction, fuzzyOperator->right)); + std::ostringstream ex; + ex << "[syntax error] operator <" << fuzzyOperator->name << "> not recognized"; + throw fl::Exception(ex.str(), FL_AT); + + } + + scalar Antecedent::activationDegree(const TNorm* conjunction, const SNorm* disjunction) const { + return this->activationDegree(conjunction, disjunction, this->_root); + } + + void Antecedent::load(const std::string& antecedent, const Engine* engine) { + /* + Builds an proposition tree from the antecedent of a fuzzy rule. + The rules are: + 1) After a variable comes 'is', + 2) After 'is' comes a hedge or a term + 3) After a hedge comes a hedge or a term + 4) After a term comes a variable or an operator + */ + + Function function; + + std::string postfix = function.toPostfix(antecedent); + std::stringstream tokenizer(postfix); + std::string token; + + enum FSM { + S_VARIABLE = 1, S_IS = 2, S_HEDGE = 4, S_TERM = 8, S_AND_OR = 16 + }; + int state = S_VARIABLE; + std::stack expressionStack; + Proposition* proposition = NULL; + while (tokenizer >> token) { + if (state bitand S_VARIABLE) { + if (engine->hasInputVariable(token)) { + proposition = new Proposition; + proposition->variable = engine->getInputVariable(token); + expressionStack.push(proposition); + + state = S_IS; + continue; + } + } + + if (state bitand S_IS) { + if (token == Rule::FL_IS) { + state = S_HEDGE bitor S_TERM; + continue; + } + } + + if (state bitand S_HEDGE) { + Hedge* hedge = NULL; + if (engine->hasHedge(token)){ + hedge = engine->getHedge(token); + }else{ + std::vector hedges = FactoryManager::instance()->hedge()->available(); + if (std::find(hedges.begin(), hedges.end(), token) != hedges.end()){ + hedge = FactoryManager::instance()->hedge()->createInstance(token); + //TODO: find a better way, eventually. + const_cast(engine)->addHedge(hedge); + } + } + if (hedge) { + proposition->hedges.push_back(hedge); + if (dynamic_cast(hedge)) { + state = S_VARIABLE bitor S_AND_OR; + } else { + state = S_HEDGE bitor S_TERM; + } + continue; + } + } + + if (state bitand S_TERM) { + if (proposition->variable->hasTerm(token)) { + proposition->term = + proposition->variable->getTerm(token); + state = S_VARIABLE bitor S_AND_OR; + continue; + } + } + + if (state bitand S_AND_OR) { + if (token == Rule::FL_AND or token == Rule::FL_OR) { + if (expressionStack.size() < 2) { + std::ostringstream ex; + ex << "[syntax error] logical operator <" << token << "> expects two operands," + << "but found " << expressionStack.size(); + throw fl::Exception(ex.str(), FL_AT); + } + Operator* fuzzyOperator = new Operator; + fuzzyOperator->name = token; + fuzzyOperator->right = expressionStack.top(); + expressionStack.pop(); + fuzzyOperator->left = expressionStack.top(); + expressionStack.pop(); + expressionStack.push(fuzzyOperator); + + state = S_VARIABLE bitor S_AND_OR; + continue; + } + } + + //If reached this point, there was an error + if ((state bitand S_VARIABLE) or (state bitand S_AND_OR)) { + std::ostringstream ex; + ex << "[syntax error] expected input variable or logical operator, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + if (state bitand S_IS) { + std::ostringstream ex; + ex << "[syntax error] expected keyword <" << Rule::FL_IS << ">, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + if ((state bitand S_HEDGE) or (state bitand S_TERM)) { + std::ostringstream ex; + ex << "[syntax error] expected hedge or term, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + std::ostringstream ex; + ex << "[syntax error] unexpected token <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + + if (expressionStack.size() != 1) { + std::ostringstream ex; + ex << "[syntax error] stack expected to contain the root, but contains " + << expressionStack.size() << " nodes"; + throw fl::Exception(ex.str(), FL_AT); + } + this->_root = expressionStack.top(); + } + + std::string Antecedent::toString() const { + return this->toInfix(this->_root); + } + + std::string Antecedent::toPrefix(const Expression* node) const { + if (not node) + node = this->_root; + if (not node->isOperator) { //is proposition + return node->toString(); + } + const Operator* fuzzyOperator = + dynamic_cast (node); + std::stringstream ss; + ss << fuzzyOperator->toString() << " " + << this->toPrefix(fuzzyOperator->left) << " " + << this->toPrefix(fuzzyOperator->right) << " "; + return ss.str(); + } + + std::string Antecedent::toInfix(const Expression* node) const { + if (not node) + node = this->_root; + if (not node->isOperator) { //is proposition + return node->toString(); + } + const Operator* fuzzyOperator = + dynamic_cast (node); + std::stringstream ss; + ss << this->toInfix(fuzzyOperator->left) << " " + << fuzzyOperator->toString() << " " + << this->toInfix(fuzzyOperator->right) << " "; + return ss.str(); + } + + std::string Antecedent::toPostfix(const Expression* node) const { + if (not node) + node = this->_root; + if (not node->isOperator) { //is proposition + return node->toString(); + } + const Operator* fuzzyOperator = + dynamic_cast (node); + std::stringstream ss; + ss << this->toPostfix(fuzzyOperator->left) << " " + << this->toPostfix(fuzzyOperator->right) << " " + << fuzzyOperator->toString() << " "; + return ss.str(); + } + + +} diff --git a/src/rule/Consequent.cpp b/src/rule/Consequent.cpp new file mode 100644 index 0000000..9172b42 --- /dev/null +++ b/src/rule/Consequent.cpp @@ -0,0 +1,197 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Consequent.cpp + * + * Created on: 3/12/2012 + * Author: jcrada + */ + +#include "fl/rule/Consequent.h" + +#include "fl/rule/Expression.h" + +#include "fl/rule/Rule.h" + +#include "fl/Engine.h" +#include "fl/variable/OutputVariable.h" + + +#include "fl/hedge/Hedge.h" +#include "fl/norm/TNorm.h" + +#include "fl/term/Thresholded.h" +#include "fl/term/Accumulated.h" + +#include "fl/factory/FactoryManager.h" +#include "fl/factory/HedgeFactory.h" + +#include + +namespace fl { + + Consequent::Consequent() { + } + + Consequent::~Consequent() { + for (std::size_t i = 0; i < _conclusions.size(); ++i) { + delete _conclusions.at(i); + } + } + + std::vector Consequent::conclusions() const { + return this->_conclusions; + } + + void Consequent::modify(scalar strength, const TNorm* activation) { + for (std::size_t i = 0; i < _conclusions.size(); ++i) { + Proposition* proposition = _conclusions.at(i); + if (not proposition->variable->isEnabled()){ + continue; + } + scalar threshold = strength; + for (std::size_t h = 0; h < proposition->hedges.size(); ++h) { + threshold = proposition->hedges.at(h)->hedge(threshold); + } + Thresholded* term = new Thresholded(_conclusions.at(i)->term); + term->setThreshold(threshold); + term->setActivation(activation); + OutputVariable* outputVariable = dynamic_cast (proposition->variable); + outputVariable->fuzzyOutput()->addTerm(term); + FL_DBG("Accumulating " << term->toString()); + } + } + + void Consequent::load(const std::string& consequent, const Engine* engine) { + + /** + Extracts the list of propositions from the consequent + The rules are: + 1) After a variable comes 'is' or '=', + 2) After 'is' comes a hedge or a term + 3) After a hedge comes a hedge or a term + 4) After a term comes operators 'and' or 'with' + 5) After operator 'and' comes a variable + 6) After operator 'with' comes a float + */ + enum FSM { + S_VARIABLE = 1, S_IS = 2, S_HEDGE = 4, S_TERM = 8, + S_AND = 16 + }; + int state = S_VARIABLE; + + _conclusions.clear(); + + Proposition* proposition = NULL; + + std::stringstream tokenizer(consequent); + std::string token; + while (tokenizer >> token) { + if (state bitand S_VARIABLE) { + if (engine->hasOutputVariable(token)) { + proposition = new Proposition; + proposition->variable = engine->getOutputVariable(token); + _conclusions.push_back(proposition); + + state = S_IS; + continue; + } + } + + if (state bitand S_IS) { + if (token == Rule::FL_IS or token == Rule::FL_EQUALS) { + state = S_HEDGE | S_TERM; + continue; + } + } + + if (state bitand S_HEDGE) { + Hedge* hedge = NULL; + if (engine->hasHedge(token)) { + hedge = engine->getHedge(token); + } else { + std::vector hedges = FactoryManager::instance()->hedge()->available(); + if (std::find(hedges.begin(), hedges.end(), token) != hedges.end()) { + hedge = FactoryManager::instance()->hedge()->createInstance(token); + //TODO: find a better way, eventually. + const_cast (engine)->addHedge(hedge); + } + } + if (hedge) { + proposition->hedges.push_back(hedge); + state = S_HEDGE | S_TERM; + continue; + } + } + + if (state bitand S_TERM) { + if (proposition->variable->hasTerm(token)) { + proposition->term = proposition->variable->getTerm(token); + state = S_AND; + continue; + } + } + + if (state bitand S_AND) { + if (token == Rule::FL_AND) { + state = S_VARIABLE; + continue; + } + } + + //if reached this point, there was an error: + if (state bitand S_VARIABLE) { + std::ostringstream ex; + ex << "[syntax error] expected output variable, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + if (state bitand S_IS) { + std::ostringstream ex; + ex << "[syntax error] expected keyword <" << Rule::FL_IS << "> or <" + << Rule::FL_EQUALS << ">, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + + if ((state bitand S_HEDGE) or (state bitand S_TERM)) { + std::ostringstream ex; + ex << "[syntax error] expected hedge or term, but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + + if (state bitand S_AND) { + std::ostringstream ex; + ex << "[syntax error] expected operator <" << Rule::FL_AND << ">, " + << "but found <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + + std::ostringstream ex; + ex << "[syntax error] unexpected token <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + } + + std::string Consequent::toString() const { + std::stringstream ss; + for (std::size_t i = 0; i < _conclusions.size(); ++i) { + ss << _conclusions.at(i)->toString(); + if (i + 1 < _conclusions.size()) + ss << " " << Rule::FL_AND << " "; + } + return ss.str(); + } + +} diff --git a/src/rule/Expression.cpp b/src/rule/Expression.cpp new file mode 100644 index 0000000..6c6d270 --- /dev/null +++ b/src/rule/Expression.cpp @@ -0,0 +1,63 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/rule/Expression.h" + +#include "fl/variable/Variable.h" +#include "fl/hedge/Hedge.h" +#include "fl/term/Term.h" +#include "fl/rule/Rule.h" + +namespace fl { + + Expression::Expression(bool isOperator) + : isOperator(isOperator) { + } + + Expression::~Expression() { + } + + Proposition::Proposition() + : Expression(false), variable(NULL), term(NULL) { + } + + std::string Proposition::toString() const { + std::ostringstream ss; + ss << variable->getName() << " " << Rule::FL_IS << " "; + for (std::size_t i = 0; i < hedges.size(); ++i) { + ss << hedges.at(i)->name() << " "; + } + if (term) { //term is NULL if hedge is any + ss << term->getName(); + } + return ss.str(); + } + + Operator::Operator() + : Expression(true), left(NULL), right(NULL) { + } + + Operator::~Operator() { + if (left) + delete left; + if (right) + delete right; + } + + std::string Operator::toString() const { + return name; + } + +} diff --git a/src/rule/Rule.cpp b/src/rule/Rule.cpp new file mode 100644 index 0000000..0cc29c6 --- /dev/null +++ b/src/rule/Rule.cpp @@ -0,0 +1,210 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Rule.cpp + * + * Created on: 3/12/2012 + * Author: jcrada + */ + +#include "fl/rule/Rule.h" + +#include "fl/rule/Antecedent.h" +#include "fl/rule/Consequent.h" + +#include "fl/norm/Norm.h" + +#include "fl/Exception.h" + +#include + +#include + +namespace fl { + + std::string Rule::FL_IF = "if"; + std::string Rule::FL_IS = "is"; + std::string Rule::FL_EQUALS = "="; + std::string Rule::FL_THEN = "then"; + std::string Rule::FL_AND = "and"; + std::string Rule::FL_OR = "or"; + std::string Rule::FL_WITH = "with"; + + Rule::Rule() + : _weight(1.0), _antecedent(NULL), _consequent(NULL) { + } + + Rule::~Rule() { + if (_consequent) delete _consequent; + if (_antecedent) delete _antecedent; + } + + void Rule::setWeight(scalar weight) { + this->_weight = weight; + } + + scalar Rule::getWeight() const { + return this->_weight; + } + + void Rule::setAntecedent(Antecedent* antecedent) { + this->_antecedent = antecedent; + } + + Antecedent* Rule::getAntecedent() const { + return this->_antecedent; + } + + void Rule::setConsequent(Consequent* consequent) { + this->_consequent = consequent; + } + + Consequent* Rule::getConsequent() const { + return this->_consequent; + } + + scalar Rule::activationDegree(const TNorm* tnorm, + const SNorm* snorm) const { + return getAntecedent()->activationDegree(tnorm, snorm) * _weight; + } + + void Rule::activate(scalar strength, const TNorm* activation) const { + return getConsequent()->modify(strength, activation); + } + + void Rule::setText(const std::string& text) { + this->_text = text; + } + + std::string Rule::getText() const { + return this->_text; + } + + std::string Rule::toString() const { + std::stringstream ss; + ss << FL_IF << " " << getAntecedent()->toString() << " " + << FL_THEN << " " << getConsequent()->toString(); + if (not fl::Op::isEq(_weight, 1.0)) { + ss << " " << FL_WITH << " " << fl::Op::str(_weight); + } + return ss.str(); + } + + std::string Rule::ifKeyword() { + return fl::Rule::FL_IF; + } + + std::string Rule::isKeyword() { + return fl::Rule::FL_IS; + } + + std::string Rule::assignKeyword() { + return fl::Rule::FL_EQUALS; + } + + std::string Rule::thenKeyword() { + return fl::Rule::FL_THEN; + } + + std::string Rule::andKeyword() { + return fl::Rule::FL_AND; + } + + std::string Rule::orKeyword() { + return fl::Rule::FL_OR; + } + + std::string Rule::withKeyword() { + return fl::Rule::FL_WITH; + } + + Rule* Rule::parse(const std::string& rule, const Engine* engine) { + Rule* result = new Rule(); + result->setText(rule); + std::istringstream tokenizer(rule); + std::string token; + std::ostringstream ossAntecedent, ossConsequent; + + enum FSM { + S_NONE, S_IF, S_THEN, S_WITH, S_END + }; + FSM state = S_NONE; + try { + while (tokenizer >> token) { + + switch (state) { + case S_NONE: + if (token == Rule::FL_IF) state = S_IF; + else { + std::ostringstream ex; + ex << "[syntax error] expected keyword <" << Rule::FL_IF << + ">, but found <" << token << "> in rule: " << rule; + throw fl::Exception(ex.str(), FL_AT); + } + break; + case S_IF: + if (token == Rule::FL_THEN) state = S_THEN; + else ossAntecedent << token << " "; + break; + case S_THEN: + if (token == Rule::FL_WITH) state = S_WITH; + else ossConsequent << token << " "; + break; + case S_WITH: + try { + result->setWeight(fl::Op::toScalar(token)); + state = S_END; + } catch (fl::Exception& e) { + std::ostringstream ex; + ex << "[syntax error] expected a numeric value as the weight of the rule: " + << rule; + e.append(ex.str(), FL_AT); + throw e; + } + break; + case S_END: + std::ostringstream ex; + ex << "[syntax error] unexpected token <" << token << "> at the end of rule"; + throw fl::Exception(ex.str(), FL_AT); + } + } + if (state == S_NONE) { + std::ostringstream ex; + ex << "[syntax error] keyword <" << Rule::FL_IF << "> not found in rule: " << rule; + throw fl::Exception(ex.str(), FL_AT); + } else if (state == S_IF) { + std::ostringstream ex; + ex << "[syntax error] keyword <" << Rule::FL_THEN << "> not found in rule: " << rule; + throw fl::Exception(ex.str(), FL_AT); + } else if (state == S_WITH) { + std::ostringstream ex; + ex << "[syntax error] expected a numeric value as the weight of the rule: " << rule; + throw fl::Exception(ex.str(), FL_AT); + } + + result->_antecedent = new Antecedent; + result->_antecedent->load(ossAntecedent.str(), engine); + + result->_consequent = new Consequent; + result->_consequent->load(ossConsequent.str(), engine); + } catch (fl::Exception& ex) { + delete result; + throw ex; + } + return result; + } + +} diff --git a/src/rule/RuleBlock.cpp b/src/rule/RuleBlock.cpp new file mode 100644 index 0000000..712664c --- /dev/null +++ b/src/rule/RuleBlock.cpp @@ -0,0 +1,134 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * RuleBlock.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/rule/RuleBlock.h" + +#include "fl/rule/Rule.h" + +#include "fl/norm/TNorm.h" +#include "fl/norm/SNorm.h" + +#include "fl/imex/FllExporter.h" + +#include + +namespace fl { + + RuleBlock::RuleBlock(const std::string& name) + : _name(name), _conjunction(NULL), _disjunction(NULL), _activation(NULL), _enabled(true) { + } + + RuleBlock::~RuleBlock() { + for (std::size_t i = 0; i < _rules.size(); ++i) { + delete _rules.at(i); + } + } + + void RuleBlock::activate() { + FL_DBG("==================="); + FL_DBG("ACTIVATING RULEBLOCK " << _name); + for (std::size_t i = 0; i < _rules.size(); ++i) { + scalar activationDegree = _rules.at(i)->activationDegree(_conjunction, _disjunction); + FL_DBG(_rules.at(i)->toString() << " [activationDegree=" << activationDegree << "]"); + if (Op::isGt(activationDegree, 0.0)) { + _rules.at(i)->activate(activationDegree, _activation); + } + } + } + + void RuleBlock::setName(std::string name) { + this->_name = name; + } + + std::string RuleBlock::getName() const { + return this->_name; + } + + void RuleBlock::setConjunction(const TNorm* tnorm) { + if (this->_conjunction) delete this->_conjunction; + this->_conjunction = tnorm; + } + + const TNorm* RuleBlock::getConjunction() const { + return this->_conjunction; + } + + void RuleBlock::setDisjunction(const SNorm* snorm) { + if (this->_disjunction) delete this->_disjunction; + this->_disjunction = snorm; + } + + const SNorm* RuleBlock::getDisjunction() const { + return this->_disjunction; + } + + void RuleBlock::setActivation(const TNorm* activation) { + if (this->_activation) delete this->_activation; + this->_activation = activation; + } + + const TNorm* RuleBlock::getActivation() const { + return this->_activation; + } + + void RuleBlock::setEnabled(bool enabled) { + this->_enabled = enabled; + } + + bool RuleBlock::isEnabled() const { + return this->_enabled; + } + + std::string RuleBlock::toString() const { + return FllExporter("", "; ").toString(this); + } + + /** + * Operations for datatype _rules + */ + void RuleBlock::addRule(Rule* rule) { + this->_rules.push_back(rule); + } + + void RuleBlock::insertRule(Rule* rule, int index) { + this->_rules.insert(this->_rules.begin() + index, rule); + } + + Rule* RuleBlock::getRule(int index) const { + return this->_rules.at(index); + } + + Rule* RuleBlock::removeRule(int index) { + Rule* result = this->_rules.at(index); + this->_rules.erase(this->_rules.begin() + index); + return result; + } + + int RuleBlock::numberOfRules() const { + return this->_rules.size(); + } + + const std::vector& RuleBlock::rules() const { + return this->_rules; + } + +} diff --git a/src/term/Accumulated.cpp b/src/term/Accumulated.cpp new file mode 100644 index 0000000..d7255d4 --- /dev/null +++ b/src/term/Accumulated.cpp @@ -0,0 +1,134 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Accumulated.cpp + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#include "fl/term/Accumulated.h" + +#include "fl/norm/SNorm.h" + +#include "fl/imex/FllExporter.h" + +#include + +namespace fl { + + Accumulated::Accumulated(const std::string& name, scalar minimum, scalar maximum, + const SNorm* accumulation) + : Term(name), _minimum(minimum), _maximum(maximum), _accumulation(accumulation) { + } + + Accumulated::~Accumulated() { + } + + std::string Accumulated::className() const { + return "Accumulated"; + } + + std::string Accumulated::parameters() const { + FllExporter exporter; + std::ostringstream ss; + ss << Op::str(_minimum) << " " << Op::str(_maximum) << " "; + ss << exporter.toString(_accumulation); + for (std::size_t i = 0; i < _terms.size(); ++i) { + ss << " " << exporter.toString(_terms.at(i)); + } + return ss.str(); + } + + void Accumulated::configure(const std::string& parameters) { + (void) parameters; + } + + Accumulated* Accumulated::copy() const { + return new Accumulated(*this); + } + + scalar Accumulated::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + scalar mu = 0.0; + for (std::size_t i = 0; i < _terms.size(); ++i) { + mu = _accumulation->compute(mu, _terms.at(i)->membership(x)); + } + return mu; + } + + void Accumulated::setMinimum(scalar minimum) { + this->_minimum = minimum; + } + + scalar Accumulated::getMinimum() const { + return this->_minimum; + } + + void Accumulated::setMaximum(scalar maximum) { + this->_maximum = maximum; + } + + scalar Accumulated::getMaximum() const { + return this->_maximum; + } + + void Accumulated::setAccumulation(const SNorm* accumulation) { + if (this->_accumulation) delete this->_accumulation; + this->_accumulation = accumulation; + } + + const SNorm* Accumulated::getAccumulation() const { + return this->_accumulation; + } + + /** + * Operations for std::vector _terms + */ + void Accumulated::addTerm(const Term* term) { + this->_terms.push_back(term); + } + + const Term* Accumulated::removeTerm(int index) { + const Term* result = this->_terms.at(index); + this->_terms.erase(this->_terms.begin() + index); + return result; + } + + void Accumulated::clear() { + for (std::size_t i = 0; i < _terms.size(); ++i) { + delete _terms.at(i); + } + _terms.clear(); + } + + const Term* Accumulated::getTerm(int index) const { + return this->_terms.at(index); + } + + const std::vector& Accumulated::terms() const { + return this->_terms; + } + + int Accumulated::numberOfTerms() const { + return _terms.size(); + } + + bool Accumulated::isEmpty() const { + return _terms.size() == 0; + } + +} diff --git a/src/term/Bell.cpp b/src/term/Bell.cpp new file mode 100644 index 0000000..8502b50 --- /dev/null +++ b/src/term/Bell.cpp @@ -0,0 +1,98 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Bell.cpp + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#include "fl/term/Bell.h" + +#include +#include + +namespace fl { + + Bell::Bell(const std::string& name, scalar center, scalar width, scalar slope) + : Term(name), _center(center), _width(width), _slope(slope) { + } + + Bell::~Bell() { + } + + std::string Bell::className() const { + return "Bell"; + } + + std::string Bell::parameters() const { + return Op::join(3, " ", _center, _width, _slope); + } + + void Bell::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 3; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setCenter(Op::toScalar(values.at(0))); + setWidth(Op::toScalar(values.at(1))); + setSlope(Op::toScalar(values.at(2))); + } + + scalar Bell::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + //from octave: gbellmf.m + return 1.0 / (1.0 + std::pow(std::abs((x - _center) / _width), 2 * _slope)); + } + + void Bell::setWidth(scalar a) { + this->_width = a; + } + + scalar Bell::getWidth() const { + return this->_width; + } + + void Bell::setSlope(scalar b) { + this->_slope = b; + } + + scalar Bell::getSlope() const { + return this->_slope; + } + + void Bell::setCenter(scalar c) { + this->_center = c; + } + + scalar Bell::getCenter() const { + return this->_center; + } + + Bell* Bell::copy() const { + return new Bell(*this); + } + + Term* Bell::constructor() { + return new Bell; + } + +} diff --git a/src/term/Constant.cpp b/src/term/Constant.cpp new file mode 100644 index 0000000..b5fe693 --- /dev/null +++ b/src/term/Constant.cpp @@ -0,0 +1,61 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +#include "fl/term/Constant.h" + +namespace fl { + + Constant::Constant(const std::string& name, scalar value) + : Term(name), _value(value) { + } + + Constant::~Constant() { + } + + std::string Constant::className() const { + return "Constant"; + } + + std::string Constant::parameters() const { + return Op::str(_value); + } + + void Constant::configure(const std::string& parameters) { + if (parameters.empty()) return; + setValue(Op::toScalar(parameters)); + } + + scalar Constant::membership(scalar x) const { + (void) x; + return this->_value; + } + + void Constant::setValue(scalar value) { + this->_value = value; + } + + scalar Constant::getValue() const { + return this->_value; + } + + Constant* Constant::copy() const { + return new Constant(*this); + } + + Term* Constant::constructor() { + return new Constant; + } + +} diff --git a/src/term/Discrete.cpp b/src/term/Discrete.cpp new file mode 100644 index 0000000..af9dee8 --- /dev/null +++ b/src/term/Discrete.cpp @@ -0,0 +1,160 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Discrete.cpp + * + * Created on: 5/12/2012 + * Author: jcrada + */ + +#include "fl/term/Discrete.h" + +#include + +namespace fl { + + Discrete::Discrete(const std::string& name) + : Term(name) { + } + + Discrete::Discrete(const std::string& name, + const std::vector& x, + const std::vector& y) + : Term(name), x(x), y(y) { + } + + Discrete::Discrete(const std::string& name, + const std::vector >& xy) + : Term(name) { + for (std::size_t i = 0; i < xy.size(); ++i) { + x.push_back(xy.at(i).first); + y.push_back(xy.at(i).second); + } + } + + Discrete::~Discrete() { + } + + std::string Discrete::className() const { + return "Discrete"; + } + + std::string Discrete::parameters() const { + std::ostringstream ss; + for (std::size_t i = 0; i < x.size(); ++i) { + ss << fl::Op::str(x.at(i)) << " " << fl::Op::str(y.at(i)); + if (i + 1 < x.size()) ss << " "; + } + return ss.str(); + } + + void Discrete::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector strValues = Op::split(parameters, " "); + if ((int) strValues.size() % 2 != 0) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << "> requires " + "an even set of parameter values (x,y), " + "but found <" << parameters.size() << "> values"; + throw fl::Exception(ex.str(), FL_AT); + } + + this->x.clear(); + this->y.clear(); + for (std::size_t i = 0; i + 1 < strValues.size(); i += 2) { + this->x.push_back(Op::toScalar(strValues.at(i))); + this->y.push_back(Op::toScalar(strValues.at(i + 1))); + } + } + + template + Discrete* Discrete::create(const std::string& name, int argc, + T x1, T y1, ...) throw (fl::Exception) { + if (argc % 2 != 0 or argc < 2) { + throw fl::Exception("[discrete term] expected an even number of " + "parameters matching (x,y)+, but passed " + "<" + fl::Op::str(argc) + "> parameters", FL_AT); + } + std::vector x, y; + x.push_back(x1); + y.push_back(y1); + va_list args; + va_start(args, y1); + bool xNext = true; + for (int i = 0; i < argc - 2; ++i) { + if (xNext) x.push_back((scalar) va_arg(args, T)); + else y.push_back((scalar) va_arg(args, T)); + xNext = not xNext; + } + va_end(args); + return new Discrete(name, x, y); + } + + template FL_EXPORT Discrete* Discrete::create(const std::string& name, int argc, + scalar x1, scalar y1, ...) throw (fl::Exception); + template FL_EXPORT Discrete* Discrete::create(const std::string& name, int argc, + int x1, int y1, ...) throw (fl::Exception); + + scalar Discrete::membership(scalar _x_) const { + if (fl::Op::isNan(_x_)) return fl::nan; + if (x.empty() or y.empty()) return 0.0; + if (x.size() != y.size()) { + std::ostringstream ex; + ex << "[discrete term] vectors x[" + << x.size() << "] and y[" << y.size() << "] have different sizes"; + throw fl::Exception(ex.str(), FL_AT); + } + + /* ______________________ + * / \ + * / \ + * ____________/ \____________ + * x[0] x[n-1] + */ + + + if (fl::Op::isLE(_x_, x.front())) return y.front(); + if (fl::Op::isGE(_x_, x.back())) return y.back(); + + int lower = -1, upper = -1; + + for (std::size_t i = 0; i < x.size(); ++i) { + if (Op::isEq(x.at(i), _x_)) return y.at(i); + //approximate on the left + if (Op::isLt(x.at(i), _x_)) { + lower = i; + } + //get the immediate next one on the right + if (Op::isGt(x.at(i), _x_)) { + upper = i; + break; + } + } + if (upper < 0) upper = x.size() - 1; + if (lower < 0) lower = 0; + + return Op::scale(_x_, x.at(lower), x.at(upper), y.at(lower), y.at(upper)); + } + + Discrete* Discrete::copy() const { + return new Discrete(*this); + } + + Term* Discrete::constructor() { + return new Discrete; + } + +} diff --git a/src/term/Function.cpp b/src/term/Function.cpp new file mode 100644 index 0000000..dd3bd2f --- /dev/null +++ b/src/term/Function.cpp @@ -0,0 +1,670 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Function.cpp + * Author: jcrada + * + * Created on 7 April 2013, 10:17 PM + */ + +#include "fl/term/Function.h" + +#include "fl/Engine.h" +#include "fl/variable/InputVariable.h" +#include "fl/variable/OutputVariable.h" +#include "fl/rule/Rule.h" + +#include +#include +#include +#include +#include + +namespace fl { + + /********************************** + * Function class. + **********************************/ + Function::Function(const std::string& name, + const std::string& formula, const Engine* engine) + : Term(name), _formula(formula), _engine(engine), root(NULL) { + loadOperators(); + } + + Function::~Function() { + if (this->root) delete this->root; + for (std::map::iterator it = this->operators.begin(); + it != this->operators.end(); ++it) { + delete it->second; + } + for (std::map::iterator it = this->functions.begin(); + it != this->functions.end(); ++it) { + delete it->second; + } + } + + std::string Function::className() const { + return "Function"; + } + + std::string Function::parameters() const { + return _formula; + } + + void Function::configure(const std::string& parameters) { + this->_formula = parameters; + } + + Function* Function::create(const std::string& name, + const std::string& infix, const Engine* engine, + bool requiresFunctions) throw (fl::Exception) { + Function* result = new Function(name); + if (requiresFunctions) { + result->loadBuiltInFunctions(); + } + try { + result->load(infix, engine); + } catch (fl::Exception& ex) { + delete result; + throw ex; + } + return result; + } + + scalar Function::membership(scalar x) const { + if (not this->root) return fl::nan; + if (this->_engine) { + for (int i = 0; i < this->_engine->numberOfInputVariables(); ++i) { + InputVariable* input = this->_engine->getInputVariable(i); + const_cast (this)->variables[input->getName()] = + input->getInputValue(); + } + for (int i = 0; i < this->_engine->numberOfOutputVariables(); ++i) { + OutputVariable* output = this->_engine->getOutputVariable(i); + const_cast (this)->variables[output->getName()] = + output->getLastValidOutput(); + } + } + const_cast (this)->variables["x"] = x; + return this->evaluate(&this->variables); + } + + scalar Function::evaluate(const std::map* localVariables) const { + if (not this->root) + throw fl::Exception("[function error] evaluation failed because function is not loaded", FL_AT); + if (localVariables) + return this->root->evaluate(localVariables); + return this->root->evaluate(&this->variables); + } + + void Function::load() throw (fl::Exception) { + load(this->_formula, this->_engine); + } + + void Function::load(const std::string& formula, + const Engine* engine) throw (fl::Exception) { + this->root = parse(formula); + this->_formula = formula; + this->_engine = engine; + } + + void Function::setFormula(const std::string& formula) { + this->_formula = formula; + } + + std::string Function::getFormula() const { + return this->_formula; + } + + void Function::setEngine(const Engine* engine) { + this->_engine = engine; + } + + const Engine* Function::getEngine() const { + return this->_engine; + } + + Function* Function::copy() const { + Function* result = new Function(this->_name); + if (not functions.empty()) { + result->loadBuiltInFunctions(); + } + try { + result->load(this->_formula, this->_engine); + } catch (fl::Exception& ex) { + FL_LOG("[function warning] ignored exception: " << ex.what()); + } + return result; + } + + Term* Function::constructor() { + return fl::Function::create("", ""); + } + + /** + * Parsing elements + */ + + Function::Element::Element(const std::string& name) + : name(name), unary(NULL), binary(NULL), arity(0), associativity(-1) { + } + + Function::Element::Element(const std::string& name, Unary unary, short associativity) + : name(name), unary(unary), binary(NULL), arity(1), associativity(associativity) { + } + + Function::Element::Element(const std::string& name, Binary binary, short associativity) + : name(name), unary(NULL), binary(binary), arity(2), associativity(associativity) { + } + + Function::Element::~Element() { + } + + Function::Operator::Operator(const std::string& name, Unary unary, + short precedence, short associativity) + : Element(name, unary, associativity), precedence(precedence) { + } + + Function::Operator::Operator(const std::string& name, Binary binary, + short precedence, short associativity) + : Element(name, binary, associativity), precedence(precedence) { + } + + std::string Function::Operator::toString() const { + std::ostringstream ss; + ss << "Operator (name=" << name << ", " + << "precedence=" << precedence << ", " + << "arity=" << arity << ", " + << "associativity=" << associativity << ", "; + if (arity == 1) ss << "pointer=" << unary; + else if (arity == 2) ss << "pointer=" << binary; + else ss << "pointer=error"; + ss << ")"; + return ss.str(); + } + + Function::BuiltInFunction::BuiltInFunction(const std::string& name, + Unary unary, short associativity) + : Element(name, unary, associativity) { + } + + Function::BuiltInFunction::BuiltInFunction(const std::string& name, + Binary binary, short associativity) + : Element(name, binary, associativity) { + } + + std::string Function::BuiltInFunction::toString() const { + std::ostringstream ss; + ss << "BuiltInFunction (name=" << name << ", " + << "arity=" << arity << ", " + << "associativity=" << associativity << ", "; + if (arity == 1) ss << "pointer=" << unary; + else if (arity == 2) ss << "pointer=" << binary; + else ss << "pointer=error"; + ss << ")"; + return ss.str(); + } + + /*********************************** + * Load Operators and Functions + ***********************************/ + + void Function::loadOperators() { + short p = 7; + // (!) Logical and (~) Bitwise NOT + // this->_unaryOperators["!"] = new Operator("!", std::logical_not, p, 1); + // ~ negates a number + this->operators["~"] = new Operator("~", fl::Op::negate, p, 1); + --p; //Power + this->operators["^"] = new Operator("^", std::pow, p, 1); + --p; //Multiplication, Division, and Modulo + this->operators["*"] = new Operator("*", fl::Op::multiply, p); + this->operators["/"] = new Operator("/", fl::Op::divide, p); + this->operators["%"] = new Operator("%", fl::Op::modulo, p); + --p; //Addition, Subtraction + this->operators["+"] = new Operator("+", fl::Op::add, p); + this->operators["-"] = new Operator("-", fl::Op::subtract, p); + // --p; //Bitwise AND + // this->_binaryOperators["&"] = new Operator("&", std::bit_and, p); + // --p; //Bitwise OR + // this->_binaryOperators["|"] = new Operator("|", std::bit_or, p); + --p; //Logical AND + this->operators[fl::Rule::andKeyword()] = + new Operator(fl::Rule::andKeyword(), fl::Op::logicalAnd, p); + --p; //Logical OR + this->operators[fl::Rule::orKeyword()] = + new Operator(fl::Rule::orKeyword(), fl::Op::logicalOr, p); + } + + void Function::loadBuiltInFunctions() { + this->functions["acos"] = new BuiltInFunction("acos", &(std::acos)); + this->functions["asin"] = new BuiltInFunction("asin", &(std::asin)); + this->functions["atan"] = new BuiltInFunction("atan", &(std::atan)); + + this->functions["ceil"] = new BuiltInFunction("ceil", &(std::ceil)); + this->functions["cos"] = new BuiltInFunction("cos", &(std::cos)); + this->functions["cosh"] = new BuiltInFunction("cosh", &(std::cosh)); + this->functions["exp"] = new BuiltInFunction("exp", &(std::exp)); + this->functions["fabs"] = new BuiltInFunction("fabs", &(std::fabs)); + this->functions["floor"] = new BuiltInFunction("floor", &(std::floor)); + this->functions["log"] = new BuiltInFunction("log", &(std::log)); + this->functions["log10"] = new BuiltInFunction("log10", &(std::log10)); + + this->functions["sin"] = new BuiltInFunction("sin", &(std::sin)); + this->functions["sinh"] = new BuiltInFunction("sinh", &(std::sinh)); + this->functions["sqrt"] = new BuiltInFunction("sqrt", &(std::sqrt)); + this->functions["tan"] = new BuiltInFunction("tan", &(std::tan)); + this->functions["tanh"] = new BuiltInFunction("tanh", &(std::tanh)); + +#ifdef FL_UNIX + //not found in Windows + this->functions["log1p"] = new BuiltInFunction("log1p", &(log1p)); + this->functions["acosh"] = new BuiltInFunction("acosh", &(acosh)); + this->functions["asinh"] = new BuiltInFunction("asinh", &(asinh)); + this->functions["atanh"] = new BuiltInFunction("atanh", &(atanh)); +#endif + + this->functions["pow"] = new BuiltInFunction("pow", &(std::pow)); + this->functions["atan2"] = new BuiltInFunction("atan2", &(std::atan2)); + this->functions["fmod"] = new BuiltInFunction("fmod", &(std::fmod)); + } + + std::string Function::space(const std::string& formula) const { + std::vector chars; + chars.push_back("("); + chars.push_back(")"); + chars.push_back(","); + + for (std::map::const_iterator itOp = this->operators.begin(); + itOp != this->operators.end(); ++itOp) { + if (itOp->first == fl::Rule::andKeyword() or + itOp->first == fl::Rule::orKeyword()) { + continue; + } + chars.push_back(itOp->first); + } + + std::string result = formula; + for (std::size_t i = 0; i < chars.size(); ++i) { + result = fl::Op::findReplace(result, chars.at(i), " " + chars.at(i) + " "); + } + return result; + } + + std::string Function::toPostfix(const std::string& formula) const throw (fl::Exception) { + std::string spacedFormula = space(formula); + + std::queue queue; + std::stack stack; + + std::stringstream tokenizer(spacedFormula); + std::string token; + while (tokenizer >> token) { + if (isOperand(token)) { + queue.push(token); + + } else if (isBuiltInFunction(token)) { + stack.push(token); + + } else if (token == ",") { + while (not stack.empty() and stack.top() != "(") { + queue.push(stack.top()); + stack.pop(); + } + if (stack.empty() or stack.top() != "(") { + std::ostringstream ex; + ex << "[parsing error] mismatching parentheses in: " << formula; + throw fl::Exception(ex.str(), FL_AT); + } + + } else if (isOperator(token)) { + Operator* op1 = getOperator(token); + while (true) { + Operator* op2 = NULL; + if (not stack.empty() and isOperator(stack.top())) { + op2 = this->getOperator(stack.top()); + } else break; + + if ((op1->associativity < 0 and op1->precedence <= op2->precedence) + or op1->precedence < op2->precedence) { + queue.push(stack.top()); + stack.pop(); + } else + break; + } + stack.push(token); + + } else if (token == "(") { + stack.push(token); + + } else if (token == ")") { + while (not stack.empty() and stack.top() != "(") { + queue.push(stack.top()); + stack.pop(); + } + if (stack.empty() or stack.top() != "(") { + std::ostringstream ex; + ex << "[parsing error] mismatching parentheses in: " << formula; + throw fl::Exception(ex.str(), FL_AT); + } + stack.pop(); //get rid of "(" + + if (not stack.empty() and isBuiltInFunction(stack.top())) { + queue.push(stack.top()); + stack.pop(); + } + } else { + std::ostringstream ex; + ex << "[parsing error] unexpected error with token <" << token << ">"; + throw fl::Exception(ex.str(), FL_AT); + } + } + + while (not stack.empty()) { + if (stack.top() == "(" or stack.top() == ")") { + std::ostringstream ex; + ex << "[parsing error] mismatching parentheses in: " << formula; + throw fl::Exception(ex.str(), FL_AT); + } + queue.push(stack.top()); + stack.pop(); + } + + std::stringstream ssPostfix; + while (not queue.empty()) { + ssPostfix << queue.front(); + queue.pop(); + if (not queue.empty()) ssPostfix << " "; + } + // FL_DBG("postfix=" << ssPostfix.str()); + return ssPostfix.str(); + } + + Function::Operator* Function::getOperator(const std::string& key) const { + std::map::const_iterator it = + this->operators.find(key); + if (it == this->operators.end()) return NULL; + return it->second; + } + + Function::BuiltInFunction* + Function::getBuiltInFunction(const std::string& key) const { + std::map::const_iterator it = + this->functions.find(key); + if (it == this->functions.end()) return NULL; + return it->second; + } + + bool Function::isOperand(const std::string& name) const { + //An operand is not a parenthesis... + if (name == "(" or name == ")" or name == ",") return false; + //nor an operator... + if (isOperator(name)) return false; + //nor a function... + if (isBuiltInFunction(name)) return false; + //...it is everything else :) + return true; + } + + bool Function::isOperator(const std::string& name) const { + return operators.find(name) != operators.end(); + } + + bool Function::isBuiltInFunction(const std::string& name) const { + return functions.find(name) != functions.end(); + } + + /****************************** + * Tree Node Elements + ******************************/ + + Function::Node::Node(Operator* foperator, Node* left, Node* right) + : foperator(foperator), function(NULL), variable(""), value(fl::nan), + left(left), right(right) { + } + + Function::Node::Node(BuiltInFunction* function, Node* left, Node* right) + : foperator(NULL), function(function), variable(""), value(fl::nan), + left(left), right(right) { + } + + Function::Node::Node(const std::string& variable) + : foperator(NULL), function(NULL), variable(variable), value(fl::nan), + left(NULL), right(NULL) { + } + + Function::Node::Node(scalar value) + : foperator(NULL), function(NULL), variable(""), value(value), left(NULL), right(NULL) { + } + + scalar Function::Node::evaluate(const std::map* variables) const { + scalar result = fl::nan; + if (foperator) { + if (foperator->arity == 1) { + result = foperator->unary(left->evaluate(variables)); + } else if (foperator->arity == 2) { + result = foperator->binary(right->evaluate(variables), left->evaluate(variables)); + } else { + throw fl::Exception("[function error] <" + fl::Op::str(foperator->arity) + ">-ary" + " operators are not supported, only unary or binary are", FL_AT); + } + } else if (function) { + if (function->arity == 1) { + result = function->unary(left->evaluate(variables)); + } else if (function->arity == 2) { + result = function->binary(right->evaluate(variables), left->evaluate(variables)); + } else { + throw fl::Exception("[function error] <" + fl::Op::str(foperator->arity) + ">-ary" + " functions are not supported, only unary or binary are", FL_AT); + } + } else if (not variable.empty()) { + if (not variables) { + throw fl::Exception("[function error] " + "expected a map of variables, but none was provided", FL_AT); + } + std::map::const_iterator it = variables->find(variable); + if (it != variables->end()) result = it->second; + else throw fl::Exception("[function error] " + "unknown variable <" + variable + ">", FL_AT); + } else { + result = value; + } + // FL_DBG(toPostfix() << " = " << result); + return result; + } + + std::string Function::Node::toString() const { + std::ostringstream ss; + if (foperator) ss << foperator->name; + else if (function) ss << function->name; + else if (not variable.empty()) ss << variable; + else ss << fl::Op::str(value); + return ss.str(); + } + + std::string Function::Node::toPrefix(const Node* node) const { + if (not node) node = this; + if (not fl::Op::isNan(node->value)) { //is terminal + return fl::Op::str(node->value); + } + if (not node->variable.empty()) { + return node->variable; + } + + std::ostringstream ss; + ss << node->toString(); + if (node->left) + ss << " " << this->toPrefix(node->left); + if (node->right) + ss << " " << this->toPrefix(node->right); + return ss.str(); + } + + std::string Function::Node::toInfix(const Node* node) const { + if (not node) node = this; + if (not fl::Op::isNan(node->value)) { //is proposition + return fl::Op::str(node->value); + } + if (not node->variable.empty()) { + return node->variable; + } + + std::ostringstream ss; + if (node->left) + ss << this->toInfix(node->left) << " "; + ss << node->toString(); + if (node->right) + ss << " " << this->toInfix(node->right); + return ss.str(); + } + + std::string Function::Node::toPostfix(const Node* node) const { + if (not node) node = this; + if (not fl::Op::isNan(node->value)) { //is proposition + return fl::Op::str(node->value); + } + if (not node->variable.empty()) { + return node->variable; + } + + std::ostringstream ss; + if (node->left) + ss << this->toPostfix(node->left) << " "; + if (node->right) + ss << this->toPostfix(node->right) << " "; + ss << node->toString(); + return ss.str(); + } + + /**************************************** + * The Glorious Parser + * Shunting-yard algorithm + * TODO: Maybe change it for http://en.wikipedia.org/wiki/Operator-precedence_parser + ***************************************/ + + Function::Node* Function::parse(const std::string& formula) throw (fl::Exception) { + if (formula.empty()) return NULL; + std::string postfix = toPostfix(formula); + + std::stack stack; + + std::istringstream tokenizer(postfix); + std::string token; + while (tokenizer >> token) { + if (isOperator(token)) { + Operator* op = getOperator(token); + if (op->arity > (int) stack.size()) { + std::ostringstream ss; + ss << "[function error] " + "operator <" << op->name << "> has arity <" << op->arity << ">, " + "but <" << stack.size() << "> element" << + (stack.size() == 1 ? " is " : "s are") << + " available"; + throw fl::Exception(ss.str(), FL_AT); + } + + Node* node = new Node(op); + node->left = stack.top(); + stack.pop(); + if (op->arity == 2) { + node->right = stack.top(); + stack.pop(); + } + stack.push(node); + } else if (isBuiltInFunction(token)) { + BuiltInFunction* function = getBuiltInFunction(token); + if (function->arity > (int) stack.size()) { + std::ostringstream ss; + ss << "[function error] " + "function <" << function->name << "> has arity <" << function->arity << ">, " + "but <" << stack.size() << "> element" << + (stack.size() == 1 ? " is " : "s are") << + " available"; + throw fl::Exception(ss.str(), FL_AT); + } + + Node* node = new Node(function); + node->left = stack.top(); + stack.pop(); + if (function->arity == 2) { + node->right = stack.top(); + stack.pop(); + } + stack.push(node); + + } else if (isOperand(token)) { + Node* node; + try { + scalar value = fl::Op::toScalar(token, false); + node = new Node(value); + } catch (fl::Exception& ex) { + (void) ex; + node = new Node(token); + } + stack.push(node); + } + } + + if (stack.size() != 1) + throw fl::Exception("[function error] malformed formula <" + + formula + ">", FL_AT); + + return stack.top(); + } + + void Function::main() { + Function f; + f.loadBuiltInFunctions(); + std::string text = "3+4*2/(1-5)^2^3"; + FL_LOG(f.toPostfix(text)); + FL_LOG("P: " << f.parse(text)->toInfix()); + FL_LOG(">" << f.parse(text)->evaluate()); + //3 4 2 * 1 5 - 2 3 ^ ^ / + + + f.variables["y"] = 1.0; + text = "sin(y*x)^2/x"; + FL_LOG("pre: " << f.parse(text)->toPrefix()); + FL_LOG("in: " << f.parse(text)->toInfix()); + FL_LOG("pos: " << f.parse(text)->toPostfix()); + f.load(text); + FL_LOG("Result: " << f.membership(1)); + //y x * sin 2 ^ x / + return; + + text = "(Temperature is High and Oxigen is Low) or " + "(Temperature is Low and (Oxigen is Low or Oxigen is High))"; + FL_LOG(f.toPostfix(text)); + + f.variables["pi"] = 3.14; + text = "-5 *4/sin(-pi/2)"; + FL_LOG(f.toPostfix(text)); + try { + FL_LOG(f.parse(text)->evaluate()); + } catch (fl::Exception& e) { + FL_LOG(e.getWhat()); + } + f.variables["pi"] = 3.14; + text = "~5 *4/sin(~pi/2)"; + FL_LOG(f.toPostfix(text)); + try { + FL_LOG(f.parse(text)->evaluate(&f.variables)); + } catch (fl::Exception& e) { + FL_LOG(e.getWhat()); + } + } + + +} \ No newline at end of file diff --git a/src/term/Gaussian.cpp b/src/term/Gaussian.cpp new file mode 100644 index 0000000..c4108f0 --- /dev/null +++ b/src/term/Gaussian.cpp @@ -0,0 +1,89 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Gaussian.cpp + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#include "fl/term/Gaussian.h" + +#include +#include + +namespace fl { + + Gaussian::Gaussian(const std::string& name, + scalar mean, scalar standardDeviation) + : Term(name), _mean(mean), _standardDeviation(standardDeviation) { + } + + Gaussian::~Gaussian() { + } + + std::string Gaussian::className() const { + return "Gaussian"; + } + + std::string Gaussian::parameters() const { + return Op::join(2, " ", _mean, _standardDeviation); + } + + void Gaussian::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setMean(Op::toScalar(values.at(0))); + setStandardDeviation(Op::toScalar(values.at(1))); + } + + scalar Gaussian::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + return std::exp((-(x - _mean) * (x - _mean)) / (2 * _standardDeviation * _standardDeviation)); + } + + void Gaussian::setMean(scalar c) { + this->_mean = c; + } + + scalar Gaussian::getMean() const { + return this->_mean; + } + + void Gaussian::setStandardDeviation(scalar sigma) { + this->_standardDeviation = sigma; + } + + scalar Gaussian::getStandardDeviation() const { + return this->_standardDeviation; + } + + Gaussian* Gaussian::copy() const { + return new Gaussian(*this); + } + + Term* Gaussian::constructor() { + return new Gaussian; + } + +} diff --git a/src/term/GaussianProduct.cpp b/src/term/GaussianProduct.cpp new file mode 100644 index 0000000..4ff8aeb --- /dev/null +++ b/src/term/GaussianProduct.cpp @@ -0,0 +1,111 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: GaussianProduct.cpp + * Author: jcrada + * + * Created on 30 December 2012, 6:05 PM + */ + +#include "fl/term/GaussianProduct.h" + +namespace fl { + + GaussianProduct::GaussianProduct(const std::string& name, + scalar meanA, scalar standardDeviationA, scalar meanB, scalar standardDeviationB) + : Term(name), _meanA(meanA), _standardDeviationA(standardDeviationA), + _meanB(meanB), _standardDeviationB(standardDeviationB) { + } + + GaussianProduct::~GaussianProduct() { + } + + std::string GaussianProduct::className() const { + return "GaussianProduct"; + } + + std::string GaussianProduct::parameters() const { + return Op::join(4, " ", _meanA, _standardDeviationA, _meanB, _standardDeviationB); + } + + void GaussianProduct::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 4; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setMeanA(Op::toScalar(values.at(0))); + setStandardDeviationA(Op::toScalar(values.at(1))); + setMeanB(Op::toScalar(values.at(2))); + setStandardDeviationB(Op::toScalar(values.at(3))); + } + + scalar GaussianProduct::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + bool xLEa = fl::Op::isLE(x, _meanA); + scalar a = std::exp((-(x - _meanA) * (x - _meanA)) / (2 * _standardDeviationA * _standardDeviationA)) + * xLEa + (1 - xLEa); + bool xGEb = fl::Op::isGE(x, _meanB); + scalar b = std::exp((-(x - _meanB) * (x - _meanB)) / (2 * _standardDeviationB * _standardDeviationB)) + * xGEb + (1 - xGEb); + return a * b; + } + + void GaussianProduct::setMeanA(scalar meanA) { + this->_meanA = meanA; + } + + scalar GaussianProduct::getMeanA() const { + return this->_meanA; + } + + void GaussianProduct::setStandardDeviationA(scalar sigmaA) { + this->_standardDeviationA = sigmaA; + } + + scalar GaussianProduct::getStandardDeviationA() const { + return this->_standardDeviationA; + } + + void GaussianProduct::setMeanB(scalar meanB) { + this->_meanB = meanB; + } + + scalar GaussianProduct::getMeanB() const { + return this->_meanB; + } + + void GaussianProduct::setStandardDeviationB(scalar sigmaB) { + this->_standardDeviationB = sigmaB; + } + + scalar GaussianProduct::getStandardDeviationB() const { + return this->_standardDeviationB; + } + + GaussianProduct* GaussianProduct::copy() const { + return new GaussianProduct(*this); + } + + Term* GaussianProduct::constructor() { + return new GaussianProduct; + } + +} diff --git a/src/term/Linear.cpp b/src/term/Linear.cpp new file mode 100644 index 0000000..f644347 --- /dev/null +++ b/src/term/Linear.cpp @@ -0,0 +1,124 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + + +#include "fl/term/Linear.h" + +#include + +namespace fl { + + Linear::Linear(const std::string& name, + const std::vector& coefficients, + const std::vector& inputVariables) + : Term(name), coefficients(coefficients) { + this->inputVariables = std::vector + (inputVariables.begin(), inputVariables.end()); + } + + Linear::~Linear() { + } + + std::string Linear::className() const { + return "Linear"; + } + + std::string Linear::parameters() const { + return Op::join(this->coefficients, " "); + } + + void Linear::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector strValues = Op::split(parameters, " "); + std::vector values; + for (std::size_t i = 0; i < strValues.size(); ++i) { + values.push_back(Op::toScalar(strValues.at(i))); + } + this->coefficients = values; + } + + template + Linear* Linear::create(const std::string& name, + const std::vector& inputVariables, + T firstCoefficient, ...) { + std::vector coefficients; + coefficients.push_back(firstCoefficient); + + va_list args; + va_start(args, firstCoefficient); + for (std::size_t i = 0; i < inputVariables.size(); ++i) { + coefficients.push_back((scalar) va_arg(args, T)); + } + va_end(args); + return new Linear(name, coefficients, inputVariables); + } + + template FL_EXPORT Linear* Linear::create(const std::string& name, + const std::vector& inputVariables, + scalar firstCoefficient, ...); + + template FL_EXPORT Linear* Linear::create(const std::string& name, + const std::vector& inputVariables, + int firstCoefficient, ...); + + scalar Linear::membership(scalar x) const { + (void) x; + if (coefficients.size() != inputVariables.size() + 1) { + std::ostringstream ss; + ss << "[linear error] the number of coefficients <" << coefficients.size() << "> " + "need to be equal to the number of input variables " + "<" << inputVariables.size() << "> plus a constant c " + "(e.g. ax + by + c)"; + throw fl::Exception(ss.str(), FL_AT); + } + scalar result = 0; + for (std::size_t i = 0; i < inputVariables.size(); ++i) { + result += coefficients.at(i) * inputVariables.at(i)->getInputValue(); + } + if (coefficients.size() > inputVariables.size()) { + result += coefficients.back(); + } + + return result; + } + + void Linear::set(const std::vector& coefficients, + const std::vector& inputVariables) throw (fl::Exception) { + set(coefficients, std::vector + (inputVariables.begin(), inputVariables.end())); + } + + void Linear::set(const std::vector& coefficients, + const std::vector& inputVariables) throw (fl::Exception) { + if (coefficients.size() != inputVariables.size() + 1) { + std::ostringstream ss; + ss << "[linear term] the number of coefficients <" << coefficients.size() << "> " + "need to be equal to the number of input variables " + "<" << inputVariables.size() << "> plus a constant c " + "(i.e. ax + by + c)"; + throw fl::Exception(ss.str(), FL_AT); + } + this->coefficients = coefficients; + this->inputVariables = inputVariables; + } + + Linear* Linear::copy() const { + return new Linear(*this); + } + + Term* Linear::constructor() { + return new Linear; + } +} diff --git a/src/term/PiShape.cpp b/src/term/PiShape.cpp new file mode 100644 index 0000000..390d391 --- /dev/null +++ b/src/term/PiShape.cpp @@ -0,0 +1,128 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: PiShape.cpp + * Author: jcrada + * + * Created on 22 December 2012, 5:15 PM + */ + +#include "fl/term/PiShape.h" + +namespace fl { + + PiShape::PiShape(const std::string& name, scalar bottomLeft, scalar topLeft, + scalar topRight, scalar bottomRight) + : Term(name), _bottomLeft(bottomLeft), _topLeft(topLeft), + _topRight(topRight), _bottomRight(bottomRight) { + } + + PiShape::~PiShape() { + } + + std::string PiShape::className() const { + return "PiShape"; + } + + std::string PiShape::parameters() const { + return Op::join(4, " ", _bottomLeft, _topLeft, _topRight, _bottomRight); + } + + void PiShape::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 4; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setBottomLeft(Op::toScalar(values.at(0))); + setTopLeft(Op::toScalar(values.at(1))); + setTopRight(Op::toScalar(values.at(2))); + setBottomRight(Op::toScalar(values.at(3))); + } + + scalar PiShape::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + //from Octave smf.m + scalar a_b_ave = (_bottomLeft + _topLeft) / 2.0; + scalar b_minus_a = _topLeft - _bottomLeft; + scalar c_d_ave = (_topRight + _bottomRight) / 2.0; + scalar d_minus_c = _bottomRight - _topRight; + + if (Op::isLE(x, _bottomLeft)) return 0.0; + + else if (Op::isLE(x, a_b_ave)) + return 2.0 * std::pow((x - _bottomLeft) / b_minus_a, 2); + + else if (Op::isLt(x, _topLeft)) + return 1.0 - 2.0 * std::pow((x - _topLeft) / b_minus_a, 2); + + else if (Op::isLE(x, _topRight)) + return 1; + + else if (Op::isLE(x, c_d_ave)) + return 1 - 2 * std::pow((x - _topRight) / d_minus_c, 2); + + else if (Op::isLt(x, _bottomRight)) + return 2 * std::pow((x - _bottomRight) / d_minus_c, 2); + + return 0.0; + + } + + void PiShape::setBottomLeft(scalar a) { + this->_bottomLeft = a; + } + + scalar PiShape::getBottomLeft() const { + return this->_bottomLeft; + } + + void PiShape::setTopLeft(scalar b) { + this->_topLeft = b; + } + + scalar PiShape::getTopLeft() const { + return this->_topLeft; + } + + void PiShape::setTopRight(scalar d) { + this->_topRight = d; + } + + scalar PiShape::getTopRight() const { + return this->_topRight; + } + + void PiShape::setBottomRight(scalar c) { + this->_bottomRight = c; + } + + scalar PiShape::getBottomRight() const { + return this->_bottomRight; + } + + PiShape* PiShape::copy() const { + return new PiShape(*this); + } + + Term* PiShape::constructor() { + return new PiShape; + } +} \ No newline at end of file diff --git a/src/term/Ramp.cpp b/src/term/Ramp.cpp new file mode 100644 index 0000000..6520f6e --- /dev/null +++ b/src/term/Ramp.cpp @@ -0,0 +1,96 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Ramp.cpp + * Author: jcrada + * + * Created on 22 December 2012, 4:27 PM + */ + +#include "fl/term/Ramp.h" + +namespace fl { + + Ramp::Ramp(const std::string& name, scalar start, scalar end) + : Term(name), _start(start), _end(end) { + } + + Ramp::~Ramp() { + } + + std::string Ramp::className() const { + return "Ramp"; + } + + std::string Ramp::parameters() const { + return Op::join(2, " ", _start, _end); + } + + void Ramp::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setStart(Op::toScalar(values.at(0))); + setEnd(Op::toScalar(values.at(1))); + } + + scalar Ramp::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + + if (Op::isEq(_start, _end)) return 0.0; + + if (Op::isLt(_start, _end)) { + if (Op::isLE(x, _start)) return 0.0; + if (Op::isGE(x, _end)) return 1.0; + return (x - _start) / (_end - _start); + } else { + if (Op::isGE(x, _start)) return 0.0; + if (Op::isLE(x, _end)) return 1.0; + return (_start - x) / (_start - _end); + } + } + + void Ramp::setStart(scalar start) { + this->_start = start; + } + + scalar Ramp::getStart() const { + return this->_start; + } + + void Ramp::setEnd(scalar end) { + this->_end = end; + } + + scalar Ramp::getEnd() const { + return this->_end; + } + + Ramp* Ramp::copy() const { + return new Ramp(*this); + } + + Term* Ramp::constructor() { + return new Ramp; + } + +} \ No newline at end of file diff --git a/src/term/Rectangle.cpp b/src/term/Rectangle.cpp new file mode 100644 index 0000000..dc5a4ec --- /dev/null +++ b/src/term/Rectangle.cpp @@ -0,0 +1,90 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Rectangle.cpp + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#include "fl/term/Rectangle.h" + +#include + +namespace fl { + + Rectangle::Rectangle(const std::string& name, scalar start, + scalar end) + : Term(name), _start(start), _end(end) { + } + + Rectangle::~Rectangle() { + } + + std::string Rectangle::className() const { + return "Rectangle"; + } + + std::string Rectangle::parameters() const { + return Op::join(2, " ", _start, _end); + } + + void Rectangle::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setStart(Op::toScalar(values.at(0))); + setEnd(Op::toScalar(values.at(1))); + } + + scalar Rectangle::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + if (fl::Op::isLt(x, _start) or fl::Op::isGt(x, _end)) + return 0.0; + return 1.0; + } + + void Rectangle::setStart(scalar minimum) { + this->_start = minimum; + } + + scalar Rectangle::getStart() const { + return this->_start; + } + + void Rectangle::setEnd(scalar maximum) { + this->_end = maximum; + } + + scalar Rectangle::getEnd() const { + return this->_end; + } + + Rectangle* Rectangle::copy() const { + return new Rectangle(*this); + } + + Term* Rectangle::constructor() { + return new Rectangle; + } + +} diff --git a/src/term/SShape.cpp b/src/term/SShape.cpp new file mode 100644 index 0000000..7a599d5 --- /dev/null +++ b/src/term/SShape.cpp @@ -0,0 +1,99 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SShape.cpp + * Author: jcrada + * + * Created on 22 December 2012, 4:43 PM + */ + +#include "fl/term/SShape.h" + +namespace fl { + + SShape::SShape(const std::string& name, scalar start, scalar end) + : Term(name), _start(start), _end(end) { + } + + SShape::~SShape() { + } + + std::string SShape::className() const { + return "SShape"; + } + + std::string SShape::parameters() const { + return Op::join(2, " ", _start, _end); + } + + void SShape::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setStart(Op::toScalar(values.at(0))); + setEnd(Op::toScalar(values.at(1))); + } + + scalar SShape::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + //from Octave smf.m + scalar average = (_start + _end) / 2; + scalar difference = _end - _start; + + if (Op::isLE(x, _start)) return 0.0; + + else if (Op::isLE(x, average)) + return 2 * std::pow((x - _start) / difference, 2); + + else if (Op::isLt(x, _end)) + return 1.0 - 2.0 * std::pow((x - _end) / difference, 2); + + return 1.0; + } + + void SShape::setStart(scalar start) { + this->_start = start; + } + + scalar SShape::getStart() const { + return this->_start; + } + + void SShape::setEnd(scalar end) { + this->_end = end; + } + + scalar SShape::getEnd() const { + return this->_end; + } + + SShape* SShape::copy() const { + return new SShape(*this); + } + + Term* SShape::constructor() { + return new SShape; + } + + + +} \ No newline at end of file diff --git a/src/term/Sigmoid.cpp b/src/term/Sigmoid.cpp new file mode 100644 index 0000000..8769efb --- /dev/null +++ b/src/term/Sigmoid.cpp @@ -0,0 +1,87 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Sigmoid.cpp + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#include "fl/term/Sigmoid.h" + +#include +#include + +namespace fl { + + Sigmoid::Sigmoid(const std::string& name, scalar inflection, scalar slope) + : Term(name), _inflection(inflection), _slope(slope) { + } + + Sigmoid::~Sigmoid() { + } + + std::string Sigmoid::className() const { + return "Sigmoid"; + } + + std::string Sigmoid::parameters() const { + return Op::join(2, " ", _inflection, _slope); + } + + void Sigmoid::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setInflection(Op::toScalar(values.at(0))); + setSlope(Op::toScalar(values.at(1))); + } + + scalar Sigmoid::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + return 1.0 / (1.0 + std::exp(-_slope * (x - _inflection))); + } + + void Sigmoid::setSlope(scalar a) { + this->_slope = a; + } + + scalar Sigmoid::getSlope() const { + return this->_slope; + } + + void Sigmoid::setInflection(scalar c) { + this->_inflection = c; + } + + scalar Sigmoid::getInflection() const { + return this->_inflection; + } + + Sigmoid* Sigmoid::copy() const { + return new Sigmoid(*this); + } + + Term* Sigmoid::constructor() { + return new Sigmoid; + } +} diff --git a/src/term/SigmoidDifference.cpp b/src/term/SigmoidDifference.cpp new file mode 100644 index 0000000..d6e1fa5 --- /dev/null +++ b/src/term/SigmoidDifference.cpp @@ -0,0 +1,110 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SigmoidDifference.cpp + * Author: jcrada + * + * Created on 30 December 2012, 5:58 PM + */ + +#include "fl/term/SigmoidDifference.h" + +#include +#include +namespace fl { + + SigmoidDifference::SigmoidDifference(const std::string& name, + scalar left, scalar rising, + scalar falling, scalar right) + : Term(name), _left(left), _rising(rising), _falling(falling), _right(right) { + } + + SigmoidDifference::~SigmoidDifference() { + } + + std::string SigmoidDifference::className() const { + return "SigmoidDifference"; + } + + std::string SigmoidDifference::parameters() const { + return Op::join(4, " ", _left, _rising, _falling, _right); + } + + void SigmoidDifference::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 4; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setLeft(Op::toScalar(values.at(0))); + setRising(Op::toScalar(values.at(1))); + setFalling(Op::toScalar(values.at(2))); + setRight(Op::toScalar(values.at(3))); + } + + scalar SigmoidDifference::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + + scalar a = 1.0 / (1 + std::exp(-_rising * (x - _left))); + scalar b = 1.0 / (1 + std::exp(-_falling * (x - _right))); + return std::abs(a - b); + } + + void SigmoidDifference::setLeft(scalar leftInflection) { + this->_left = leftInflection; + } + + scalar SigmoidDifference::getLeft() const { + return this->_left; + } + + void SigmoidDifference::setRising(scalar risingSlope) { + this->_rising = risingSlope; + } + + scalar SigmoidDifference::getRising() const { + return this->_rising; + } + + void SigmoidDifference::setFalling(scalar fallingSlope) { + this->_falling = fallingSlope; + } + + scalar SigmoidDifference::getFalling() const { + return this->_falling; + } + + void SigmoidDifference::setRight(scalar rightInflection) { + this->_right = rightInflection; + } + + scalar SigmoidDifference::getRight() const { + return this->_right; + } + + SigmoidDifference* SigmoidDifference::copy() const { + return new SigmoidDifference(*this); + } + + Term* SigmoidDifference::constructor() { + return new SigmoidDifference; + } + +} diff --git a/src/term/SigmoidProduct.cpp b/src/term/SigmoidProduct.cpp new file mode 100644 index 0000000..1a3ad38 --- /dev/null +++ b/src/term/SigmoidProduct.cpp @@ -0,0 +1,108 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: SigmoidProduct.cpp + * Author: jcrada + * + * Created on 30 December 2012, 5:41 PM + */ + +#include "fl/term/SigmoidProduct.h" + +#include +#include +namespace fl { + + SigmoidProduct::SigmoidProduct(const std::string& name, + scalar left, scalar rising, + scalar falling, scalar right) + : Term(name), _left(left), _rising(rising), _falling(falling), _right(right) { + } + + SigmoidProduct::~SigmoidProduct() { + } + + std::string SigmoidProduct::className() const { + return "SigmoidProduct"; + } + + std::string SigmoidProduct::parameters() const { + return Op::join(4, " ", _left, _rising, _falling, _right); + } + + void SigmoidProduct::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 4; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setLeft(Op::toScalar(values.at(0))); + setRising(Op::toScalar(values.at(1))); + setFalling(Op::toScalar(values.at(2))); + setRight(Op::toScalar(values.at(3))); + } + + scalar SigmoidProduct::membership(scalar x) const { + scalar a = 1.0 / (1 + std::exp(-_rising * (x - _left))); + scalar b = 1.0 / (1 + std::exp(-_falling * (x - _right))); + return a * b; + } + + void SigmoidProduct::setRising(scalar risingSlope) { + this->_rising = risingSlope; + } + + scalar SigmoidProduct::getRising() const { + return this->_rising; + } + + void SigmoidProduct::setLeft(scalar leftInflection) { + this->_left = leftInflection; + } + + scalar SigmoidProduct::getLeft() const { + return this->_left; + } + + void SigmoidProduct::setRight(scalar rightInflection) { + this->_right = rightInflection; + } + + scalar SigmoidProduct::getRight() const { + return this->_right; + } + + void SigmoidProduct::setFalling(scalar fallingSlope) { + this->_falling = fallingSlope; + } + + scalar SigmoidProduct::getFalling() const { + return this->_falling; + } + + SigmoidProduct* SigmoidProduct::copy() const { + return new SigmoidProduct(*this); + } + + Term* SigmoidProduct::constructor() { + return new SigmoidProduct; + } + +} diff --git a/src/term/Term.cpp b/src/term/Term.cpp new file mode 100644 index 0000000..8f6592c --- /dev/null +++ b/src/term/Term.cpp @@ -0,0 +1,47 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: Term.cpp + * Author: jcrada + * + * Created on 18 December 2013, 9:55 AM + */ + +#include "fl/term/Term.h" +#include "fl/imex/FllExporter.h" + +namespace fl { + + Term::Term(const std::string& name) : _name(name) { + + } + + Term::~Term() { + + } + + void Term::setName(const std::string& name) { + this->_name = name; + } + + std::string Term::getName() const { + return this->_name; + } + + std::string Term::toString() const { + return FllExporter("", "; ").toString(this); + } +} \ No newline at end of file diff --git a/src/term/Thresholded.cpp b/src/term/Thresholded.cpp new file mode 100644 index 0000000..8a5caa2 --- /dev/null +++ b/src/term/Thresholded.cpp @@ -0,0 +1,90 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Thresholded.cpp + * + * Created on: 30/11/2012 + * Author: jcrada + */ + +#include "fl/term/Thresholded.h" + +#include "fl/norm/TNorm.h" + +#include "fl/imex/FllExporter.h" + +#include + +namespace fl { + + Thresholded::Thresholded(const Term* term, scalar threshold, const TNorm* activation) + : Term(""), _term(term), _threshold(threshold), _activation(activation) { + if (term) this->_name = term->getName(); + } + + Thresholded::~Thresholded() { + } + + std::string Thresholded::className() const { + return "Thresholded"; + } + + std::string Thresholded::parameters() const { + FllExporter exporter; + std::ostringstream ss; + ss << Op::str(_threshold) << " " << exporter.toString(_activation) << " " + << exporter.toString(_term); + return ss.str(); + } + + void Thresholded::configure(const std::string& parameters) { + (void) parameters; + } + + scalar Thresholded::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + return _activation->compute(this->_term->membership(x), _threshold); + } + + void Thresholded::setTerm(const Term* term) { + this->_term = term; + } + + const Term* Thresholded::getTerm() const { + return this->_term; + } + + void Thresholded::setThreshold(scalar threshold) { + this->_threshold = threshold; + } + + scalar Thresholded::getThreshold() const { + return this->_threshold; + } + + void Thresholded::setActivation(const TNorm* activation) { + this->_activation = activation; + } + + const TNorm* Thresholded::getActivation() const { + return this->_activation; + } + + Thresholded* Thresholded::copy() const { + return new Thresholded(*this); + } + +} diff --git a/src/term/Trapezoid.cpp b/src/term/Trapezoid.cpp new file mode 100644 index 0000000..406acd4 --- /dev/null +++ b/src/term/Trapezoid.cpp @@ -0,0 +1,115 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Trapezoid.cpp + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#include "fl/term/Trapezoid.h" + +#include + +namespace fl { + + Trapezoid::Trapezoid(const std::string& name, scalar a, scalar b, scalar c, + scalar d) + : Term(name), _a(a), _b(b), _c(c), _d(d) { + } + + Trapezoid::~Trapezoid() { + } + + std::string Trapezoid::className() const { + return "Trapezoid"; + } + + std::string Trapezoid::parameters() const { + return Op::join(4, " ", _a, _b, _c, _d); + } + + void Trapezoid::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 4; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setA(Op::toScalar(values.at(0))); + setB(Op::toScalar(values.at(1))); + setC(Op::toScalar(values.at(2))); + setD(Op::toScalar(values.at(3))); + } + + scalar Trapezoid::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + + if (Op::isLE(x, _a) or Op::isGE(x, _d)) + return 0.0; + else if (Op::isLt(x, _b)) + return Op::min(1.0, (x - _a) / (_b - _a)); + else if (Op::isLE(x, _c)) + return 1.0; + else if (Op::isLt(x, _d)) + return (_d - x) / (_d - _c); + return 0.0; + } + + void Trapezoid::setA(scalar a) { + this->_a = a; + } + + scalar Trapezoid::getA() const { + return this->_a; + } + + void Trapezoid::setB(scalar b) { + this->_b = b; + } + + scalar Trapezoid::getB() const { + return this->_b; + } + + void Trapezoid::setC(scalar c) { + this->_c = c; + } + + scalar Trapezoid::getC() const { + return this->_c; + } + + void Trapezoid::setD(scalar d) { + this->_d = d; + } + + scalar Trapezoid::getD() const { + return this->_d; + } + + Trapezoid* Trapezoid::copy() const { + return new Trapezoid(*this); + } + + Term* Trapezoid::constructor() { + return new Trapezoid; + } + +} diff --git a/src/term/Triangle.cpp b/src/term/Triangle.cpp new file mode 100644 index 0000000..28cc8ba --- /dev/null +++ b/src/term/Triangle.cpp @@ -0,0 +1,110 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Triangle.cpp + * + * Created on: 29/11/2012 + * Author: jcrada + */ + +#include "fl/term/Triangle.h" + +#include + +namespace fl { + + Triangle::Triangle(const std::string& name, scalar a, scalar b, scalar c) + : Term(name), _a(a), _b(b), _c(c) { + if (fl::Op::isNan(c)) { + this->_c = b; + this->_b = (a + b) / 2.0; + } + } + + Triangle::~Triangle() { + } + + std::string Triangle::className() const { + return "Triangle"; + } + + std::string Triangle::parameters() const { + return Op::join(3, " ", _a, _b, _c); + } + + void Triangle::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 3; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setA(Op::toScalar(values.at(0))); + setB(Op::toScalar(values.at(1))); + setC(Op::toScalar(values.at(2))); + } + + scalar Triangle::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + + scalar minimum = _a; + scalar maximum = _c; + if (Op::isLE(x, minimum) or Op::isGE(x, maximum)) + return 0.0; + else if (Op::isEq(x, _b)) + return 1.0; + else if (Op::isLt(x, _b)) + return (x - minimum) / (_b - minimum); + else + return (maximum - x) / (maximum - _b); + } + + void Triangle::setA(scalar a) { + this->_a = a; + } + + scalar Triangle::getA() const { + return this->_a; + } + + void Triangle::setB(scalar b) { + this->_b = b; + } + + scalar Triangle::getB() const { + return this->_b; + } + + void Triangle::setC(scalar c) { + this->_c = c; + } + + scalar Triangle::getC() const { + return this->_c; + } + + Triangle* Triangle::copy() const { + return new Triangle(*this); + } + + Term* Triangle::constructor() { + return new Triangle; + } + +} diff --git a/src/term/ZShape.cpp b/src/term/ZShape.cpp new file mode 100644 index 0000000..aebd718 --- /dev/null +++ b/src/term/ZShape.cpp @@ -0,0 +1,98 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * File: ZShape.cpp + * Author: jcrada + * + * Created on 22 December 2012, 5:07 PM + */ + + +#include "fl/term/ZShape.h" + +namespace fl { + + ZShape::ZShape(const std::string& name, scalar start, scalar end) + : Term(name), _start(start), _end(end) { + } + + ZShape::~ZShape() { + } + + std::string ZShape::className() const { + return "ZShape"; + } + + std::string ZShape::parameters() const { + return Op::join(2, " ", _start, _end); + } + + void ZShape::configure(const std::string& parameters) { + if (parameters.empty()) return; + std::vector values = Op::split(parameters, " "); + std::size_t required = 2; + if (values.size() < required) { + std::ostringstream ex; + ex << "[configuration error] term <" << className() << ">" + << " requires <" << required << "> parameters"; + throw fl::Exception(ex.str(), FL_AT); + } + setStart(Op::toScalar(values.at(0))); + setEnd(Op::toScalar(values.at(1))); + } + + scalar ZShape::membership(scalar x) const { + if (fl::Op::isNan(x)) return fl::nan; + //from Octave zmf.m + scalar average = (_start + _end) / 2; + scalar difference = _end - _start; + + if (Op::isLE(x, _start)) return 1.0; + + else if (Op::isLE(x, average)) + return 1.0 - 2.0 * std::pow((x - _start) / difference, 2); + + else if (Op::isLt(x, _end)) + return 2.0 * std::pow((x - _end) / difference, 2); + + return 0.0; + } + + void ZShape::setStart(scalar start) { + this->_start = start; + } + + scalar ZShape::getStart() const { + return this->_start; + } + + void ZShape::setEnd(scalar end) { + this->_end = end; + } + + scalar ZShape::getEnd() const { + return this->_end; + } + + ZShape* ZShape::copy() const { + return new ZShape(*this); + } + + Term* ZShape::constructor() { + return new ZShape; + } + +} \ No newline at end of file diff --git a/src/variable/InputVariable.cpp b/src/variable/InputVariable.cpp new file mode 100644 index 0000000..8e13fa1 --- /dev/null +++ b/src/variable/InputVariable.cpp @@ -0,0 +1,49 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * InputVariable.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/variable/InputVariable.h" +#include "fl/imex/FllExporter.h" + +#include + +namespace fl { + + InputVariable::InputVariable(const std::string& name, scalar minimum, scalar maximum) + : Variable(name, minimum, maximum), _inputValue(fl::nan) { + } + + InputVariable::~InputVariable() { + } + + void InputVariable::setInputValue(scalar inputValue) { + this->_inputValue = inputValue; + } + + scalar InputVariable::getInputValue() const { + return this->_inputValue; + } + + std::string InputVariable::toString() const{ + return FllExporter("", "; ").toString(this); + } + +} diff --git a/src/variable/OutputVariable.cpp b/src/variable/OutputVariable.cpp new file mode 100644 index 0000000..046d9fb --- /dev/null +++ b/src/variable/OutputVariable.cpp @@ -0,0 +1,141 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * OutputVariable.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/variable/OutputVariable.h" + +#include "fl/term/Accumulated.h" +#include "fl/defuzzifier/Defuzzifier.h" +#include "fl/imex/FllExporter.h" + +#include + +namespace fl { + + OutputVariable::OutputVariable(const std::string& name, + scalar minimum, scalar maximum) + : Variable(name, minimum, maximum), + _fuzzyOutput(new Accumulated("fuzzyOutput", minimum, maximum)), + _defuzzifier(NULL), _defaultValue(fl::nan), + _lastValidOutput(fl::nan), + _lockOutputRange(false), + _lockValidOutput(false) { + } + + OutputVariable::~OutputVariable() { + delete _fuzzyOutput; + } + + Accumulated* OutputVariable::fuzzyOutput() const { + return this->_fuzzyOutput; + } + + void OutputVariable::setMinimum(scalar minimum) { + Variable::setMinimum(minimum); + this->_fuzzyOutput->setMinimum(minimum); + } + + void OutputVariable::setMaximum(scalar maximum) { + Variable::setMaximum(maximum); + this->_fuzzyOutput->setMaximum(maximum); + } + + void OutputVariable::setDefuzzifier(Defuzzifier* defuzzifier) { + if (this->_defuzzifier) delete this->_defuzzifier; + this->_defuzzifier = defuzzifier; + } + + Defuzzifier* OutputVariable::getDefuzzifier() const { + return this->_defuzzifier; + } + + void OutputVariable::setDefaultValue(scalar defaultValue) { + this->_defaultValue = defaultValue; + } + + scalar OutputVariable::getDefaultValue() const { + return this->_defaultValue; + } + + void OutputVariable::setLastValidOutput(scalar lastValidOutput) { + this->_lastValidOutput = lastValidOutput; + } + + scalar OutputVariable::getLastValidOutput() const { + return this->_lastValidOutput; + } + + void OutputVariable::setLockOutputRange(bool lock) { + this->_lockOutputRange = lock; + } + + bool OutputVariable::isLockingOutputRange() const { + return this->_lockOutputRange; + } + + void OutputVariable::setLockValidOutput(bool lock) { + this->_lockValidOutput = lock; + } + + bool OutputVariable::isLockingValidOutput() const { + return this->_lockValidOutput; + } + + scalar OutputVariable::defuzzify() { + scalar result = fl::nan; + bool isValid = this->_enabled and not this->_fuzzyOutput->isEmpty(); + if (isValid) { + result = this->_defuzzifier->defuzzify(this->_fuzzyOutput, _minimum, _maximum); + } else { + //if a previous defuzzification was successfully performed and + //and the output is supposed to not change when the output is empty + if (_lockValidOutput and not Op::isNan(_lastValidOutput)) { + result = _lastValidOutput; + } else { + result = _defaultValue; + } + } + + if (_lockOutputRange) { + if (Op::isLt(result, _minimum)) result = _minimum; + if (Op::isGt(result, _maximum)) result = _maximum; + } + + if (_lockValidOutput and isValid) _lastValidOutput = result; + return result; + } + + scalar OutputVariable::defuzzifyNoLocks() const { + scalar result = fl::nan; + bool isValid = this->_enabled and not this->_fuzzyOutput->isEmpty(); + if (isValid) { + result = this->_defuzzifier->defuzzify(_fuzzyOutput, _minimum, _maximum); + } else { + result = _defaultValue; + } + return result; + } + + std::string OutputVariable::toString() const { + return FllExporter("", "; ").toString(this); + } + +} diff --git a/src/variable/Variable.cpp b/src/variable/Variable.cpp new file mode 100644 index 0000000..6fd66ae --- /dev/null +++ b/src/variable/Variable.cpp @@ -0,0 +1,189 @@ +/* Copyright 2013 Juan Rada-Vilela + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ + +/* + * Variable.cpp + * + * Created on: 2/12/2012 + * Author: jcrada + */ + +#include "fl/variable/Variable.h" + +#include "fl/term/Term.h" + +#include "fl/norm/Norm.h" + +#include "fl/imex/FllExporter.h" + +#include +#include + +namespace fl { + + Variable::Variable(const std::string& name, scalar minimum, scalar maximum) + : _name(name), _minimum(minimum), _maximum(maximum), _enabled(true) { + } + + Variable::Variable(const Variable& copy) { + this->_name = copy._name; + this->_minimum = copy._minimum; + this->_maximum = copy._maximum; + this->_enabled = copy._enabled; + for (int i = 0; i < copy.numberOfTerms(); ++i) { + addTerm(copy.getTerm(i)->copy()); + } + } + + Variable::~Variable() { + for (std::size_t i = 0; i < _terms.size(); ++i) { + delete _terms.at(i); + } + } + + void Variable::setName(const std::string& name) { + this->_name = name; + } + + std::string Variable::getName() const { + return this->_name; + } + + void Variable::setRange(scalar minimum, scalar maximum) { + setMinimum(minimum); + setMaximum(maximum); + } + + scalar Variable::range() const { + return this->_maximum - this->_minimum; + } + + void Variable::setMinimum(scalar minimum) { + this->_minimum = minimum; + } + + scalar Variable::getMinimum() const { + return this->_minimum; + } + + void Variable::setMaximum(scalar maximum) { + this->_maximum = maximum; + } + + scalar Variable::getMaximum() const { + return this->_maximum; + } + + void Variable::setEnabled(bool enabled) { + this->_enabled = enabled; + } + + bool Variable::isEnabled() const { + return this->_enabled; + } + + std::string Variable::fuzzify(scalar x) const { + std::ostringstream ss; + for (std::size_t i = 0; i < _terms.size(); ++i) { + scalar fx = _terms.at(i)->membership(x); + if (i == 0) { + ss << fl::Op::str(fx); + } else { + if (fl::Op::isNan(fx) or fl::Op::isGE(fx, 0.0)) + ss << " + " << fl::Op::str(fx); + else + ss << " - " << fl::Op::str(std::fabs(fx)); + } + ss << "/" << _terms.at(i)->getName(); + } + return ss.str(); + } + + Term* Variable::highestMembership(scalar x, scalar* yhighest) const { + Term* result = NULL; + scalar ymax = -fl::inf; + for (std::size_t i = 0; i < _terms.size(); ++i) { + scalar y = _terms.at(i)->membership(x); + if (fl::Op::isGt(y, ymax)) { + ymax = y; + result = _terms.at(i); + } + } + if (yhighest) *yhighest = ymax; + return result; + } + + std::string Variable::toString() const { + return FllExporter("", "; ").toString(this); + } + + /** + * Operations for datatype _terms + */ + + void Variable::sort() { + std::map centroids; + Centroid defuzzifier; + for (std::size_t i = 0; i < _terms.size(); ++i) { + Term* term = _terms.at(i); + centroids[term] = defuzzifier.defuzzify(term, _minimum, _maximum); + } + SortByCoG criterion; + criterion.centroids = centroids; + std::sort(_terms.begin(), _terms.end(), criterion); + } + + void Variable::addTerm(Term* term) { + this->_terms.push_back(term); + } + + void Variable::insertTerm(Term* term, int index) { + this->_terms.insert(this->_terms.begin() + index, term); + } + + Term* Variable::getTerm(int index) const { + return this->_terms.at(index); + } + + Term* Variable::getTerm(const std::string& name) const { + for (std::size_t i = 0; i < _terms.size(); ++i) { + if (_terms.at(i)->getName() == name) { + return _terms.at(i); + } + } + throw fl::Exception("[variable error] term <" + name + "> " + "not found in variable <" + this->_name + ">", FL_AT); + } + + bool Variable::hasTerm(const std::string& name) const { + return getTerm(name) != NULL; + } + + Term* Variable::removeTerm(int index) { + Term* result = this->_terms.at(index); + this->_terms.erase(this->_terms.begin() + index); + return result; + } + + int Variable::numberOfTerms() const { + return this->_terms.size(); + } + + const std::vector& Variable::terms() const { + return this->_terms; + } + +} +