PetaVision  Alpha
FirmThresholdCostFnProbe.hpp
1 /*
2  * FirmThresholdCostFnProbe.hpp
3  *
4  * Created on: Aug 14, 2015
5  * Author: pschultz
6  */
7 
8 #ifndef FIRMTHRESHOLDCOSTFNPROBE_HPP_
9 #define FIRMTHRESHOLDCOSTFNPROBE_HPP_
10 
11 #include "AbstractNormProbe.hpp"
12 
13 namespace PV {
14 
34  public:
35  FirmThresholdCostFnProbe(const char *name, HyPerCol *hc);
36  virtual ~FirmThresholdCostFnProbe();
37 
38  virtual Response::Status
39  communicateInitInfo(std::shared_ptr<CommunicateInitInfoMessage const> message) override;
40 
41  protected:
43  int initialize(const char *name, HyPerCol *hc);
44  virtual double getValueInternal(double timevalue, int index) override;
45  virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override;
46 
59  virtual void ioParam_VThresh(enum ParamsIOFlag ioFlag);
60 
67  virtual void ioParam_VWidth(enum ParamsIOFlag ioFlag);
75  virtual int setNormDescription() override;
76 
77  private:
78  int initialize_base();
79 
80  // Member variables
81  protected:
82  float VThresh;
83  float VWidth;
84 }; // end class FirmThresholdCostFnProbe
85 
86 } // end namespace PV
87 
88 #endif /* FIRMTHRESHOLDCOSTFNPROBE_HPP_ */
virtual int setNormDescription() override
virtual void ioParam_VThresh(enum ParamsIOFlag ioFlag)
VThresh: The threshold where the transfer function returns 0 if |V|<VThresh. If the target layer is a...
virtual void ioParam_VWidth(enum ParamsIOFlag ioFlag)
VWidth: The width of the interval over which the transfer function changes from hard to soft threshol...
virtual double getValueInternal(double timevalue, int index) override
virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override
virtual Response::Status communicateInitInfo(std::shared_ptr< CommunicateInitInfoMessage const > message) override