PetaVision  Alpha
PoolingIndexLayer.hpp
1 /*
2  * PoolingIndexLayer.cpp
3  *
4  * Created on: Dec 21, 2010
5  * Author: pschultz
6  */
7 
8 #ifndef POOLINGINDEXLAYER_HPP_
9 #define POOLINGINDEXLAYER_HPP_
10 
11 #include "HyPerLayer.hpp"
12 
13 namespace PV {
14 
15 class PoolingIndexLayer : public HyPerLayer {
16  public:
17  PoolingIndexLayer(const char *name, HyPerCol *hc);
18  virtual ~PoolingIndexLayer();
19  bool activityIsSpiking() override { return false; }
20  virtual int requireChannel(int channelNeeded, int *numChannelsResult) override;
21 
22  protected:
24  int initialize(const char *name, HyPerCol *hc);
25  virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override;
26  virtual void ioParam_dataType(enum ParamsIOFlag ioFlag) override;
27  virtual int resetGSynBuffers(double timef, double dt) override;
28 
29  private:
30  int initialize_base();
31 }; // end of class PoolingIndexLayer
32 
33 } // end namespace PV
34 
35 #endif /* ANNLAYER_HPP_ */
virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override