PotentialFunction.hpp
Go to the documentation of this file.
00001 /*
00002  * PotentialFunction.hpp
00003  *
00004  *  Created on: Sep 8, 2012
00005  *      Author: mriedel
00006  */
00007 
00008 #ifndef POTENTIALFUNCTION_HPP_
00009 #define POTENTIALFUNCTION_HPP_
00010 
00011 #include <telekyb_defines/telekyb_defines.hpp>
00012 #include <telekyb_calculus/Potentials/PotentialFunctionOptions.hpp>
00013 
00014 
00015 namespace TELEKYB_NAMESPACE {
00016 
00017 class PotentialFunction : OptionListener<double> {
00018 private:
00019         void registerOptionListeners();
00020 
00021 protected:
00022         PotentialFunctionOptions options;
00023         //_PotentialImpl potentialImpl;
00024         PotentialFunctionType type;
00025 
00026         void updateBoundsValues();
00027 
00028 public:
00029         PotentialFunction(const std::string& potentialFunctionName_, PotentialFunctionType type_);
00030         PotentialFunction(const std::string& potentialFunctionName_, PotentialFunctionType type_,
00031                         double tPotFuncZeroD_, double tPotFuncInfD_, double tPotFuncSatValue_, double tPotFuncGain_);
00032         virtual ~PotentialFunction();
00033 
00034 
00035         // get Type
00036         PotentialFunctionType getType() const;
00037         PotentialFunctionOptions& getOptions();
00038 
00039         virtual void optionDidChange(const Option<double>* option_);
00040 
00041         double getPotential(double d) const;
00042         // Pure virtual, overwrite
00043         virtual double getPotentialImpl(double d) const = 0;
00044 };
00045 
00046 } /* namespace telekyb */
00047 #endif /* POTENTIALFUNCTION_HPP_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Defines


telekyb_calculus
Author(s): Martin Riedel
autogenerated on Mon Nov 11 2013 11:13:18