SigMF.h

Go to the documentation of this file.
00001 
00022 #ifndef         SIGMF_H_
00023 # define        SIGMF_H_
00024 
00025 #include "MembershipFn.h"   // for MembershipFn
00026 
00027 namespace IRIS {
00028 
00029   using namespace std;
00030 
00031   namespace Fuzzy {
00032 
00034     class SigMF : public MembershipFn
00035     {
00036 
00037       public:
00038 
00040         static const unsigned NUM_PARMS = 2;
00041 
00042     //  CONSTRUCTORS  /////////////////////////////////////////////////////
00043 
00047         SigMF( double a=0 , double b=0 );
00056         SigMF( const string& name , 
00057                double   a=0 , double   b=0 ,
00058                double min=0 , double max=0                );
00061         SigMF( const MembershipFn::parm_list& parm );
00062 
00063     //  DESTRUCTORS  //////////////////////////////////////////////////////
00064 
00066         ~SigMF( );
00067 
00068     //  SET MEMBER FUNCTIONS (MUTATORS)  //////////////////////////////////
00069 
00073         void set ( double a=0 , double b=0 );
00074 
00075         // implemented virtual functions from IRIS::Fuzzy::Numeric
00076         virtual void discretize( unsigned degree );
00077 
00078     //  GET MEMBER FUNCTIONS (ACCESSORS)  /////////////////////////////////
00079 
00083         void get ( double &a , double &b );
00084 
00085         // implemented virtual functions from IRIS::Fuzzy::Numeric
00086         virtual double eval( double x ) const;
00087         virtual double operator() ( double val ) const;
00088 
00089         // implemented virtual functions from IRIS::Fuzzy::Set
00090         virtual void draw() const;
00091 
00092     }; // end of SigMF class
00093 
00094   } // end of Fuzzy namespace
00095 
00096 } // end of IRIS namespace
00097 
00098 #endif      /* !SIGMF_H_ */

Generated on Tue Dec 12 13:41:39 2006 for IRIS Intelligent Systems Tools by  doxygen 1.4.6