PetaVision  Alpha
NormalizeSum.hpp
1 /*
2  * NormalizeSum.hpp
3  *
4  * Created on: Apr 8, 2013
5  * Author: pschultz
6  */
7 
8 #ifndef NORMALIZESUM_HPP_
9 #define NORMALIZESUM_HPP_
10 
11 #include "NormalizeMultiply.hpp"
12 
13 namespace PV {
14 
16  // Member functions
17  public:
18  NormalizeSum(const char *name, HyPerCol *hc);
19  virtual ~NormalizeSum();
20 
21  virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override;
22  virtual int normalizeWeights() override;
23 
24  protected:
25  NormalizeSum();
26  int initialize(const char *name, HyPerCol *hc);
27 
28  virtual void ioParam_minSumTolerated(enum ParamsIOFlag ioFlag);
29 
30  private:
31  int initialize_base();
32 
33  // Member variables
34  protected:
35  float mMinSumTolerated = 0.0f; // Error if any patch has abs(sum(weights)) less than this amount.
36 
37 }; // class NormalizeSum
38 
39 } /* namespace PV */
40 #endif /* NORMALIZESUM_HPP_ */
virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override