34 #define __SOT_GAIN_HYPERBOLIC_INIT                                             \    35   Entity(name), coeff_a(0), coeff_b(0), coeff_c(0), coeff_d(0),                \    36       errorSIN(NULL, "sotGainHyperbolic(" + name + ")::input(vector)::error"), \    37       gainSOUT(boost::bind(&GainHyperbolic::computeGain, this, _1, _2),        \    39                "sotGainHyperbolic(" + name + ")::output(double)::gain")    43   sotDEBUG(15) << 
"New gain <" << name << 
">" << std::endl;
    55                                const double &valueAtInfty, 
const double &tanAt0,
    58   init(valueAt0, valueAtInfty, tanAt0, decal0);
    63                           const double &tanAt0, 
const double &decal0) {
    64   coeff_a = valueAt0 - valueAtInfty;
    83   os << 
"Gain Hyperbolic " << 
getName();
    99   const double norm = error.norm();
 virtual void display(std::ostream &os) const
void signalRegistration(const SignalArray< int > &signals)
#define sotDEBUGOUT(level)
GainHyperbolic(const std::string &name)
static const double ZERO_DEFAULT
static const double TAN_DEFAULT
DYNAMICGRAPH_FACTORY_ENTITY_PLUGIN(FeaturePosture, "FeaturePosture")
#define sotDEBUGIN(level)
dynamicgraph::SignalTimeDependent< double, int > gainSOUT
Hyperbolic gain. It follows the law  The default coefficients are: 
#define __SOT_GAIN_HYPERBOLIC_INIT
static const double INFTY_DEFAULT
const std::string & getName() const
double & computeGain(double &res, int t)
virtual const T & accessCopy() const
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > errorSIN