PetaVision  Alpha
TransposePoolingConn.cpp
1 /* TransposePoolingConn.cpp
2  *
3  * Created on: March 25, 2015
4  * Author: slundquist
5  */
6 
7 #include "TransposePoolingConn.hpp"
8 #include "columns/HyPerCol.hpp"
9 #include "components/ImpliedWeightsPair.hpp"
10 #include "components/TransposePatchSize.hpp"
11 #include "delivery/TransposePoolingDelivery.hpp"
12 
13 namespace PV {
14 
15 TransposePoolingConn::TransposePoolingConn(char const *name, HyPerCol *hc) { initialize(name, hc); }
16 
17 TransposePoolingConn::TransposePoolingConn() {}
18 
19 TransposePoolingConn::~TransposePoolingConn() {}
20 
21 int TransposePoolingConn::initialize(char const *name, HyPerCol *hc) {
22  int status = PoolingConn::initialize(name, hc);
23  return status;
24 }
25 
26 void TransposePoolingConn::defineComponents() {
27  PoolingConn::defineComponents();
28  mOriginalConnNameParam = createOriginalConnNameParam();
29  if (mOriginalConnNameParam) {
30  addObserver(mOriginalConnNameParam);
31  }
32 }
33 
34 BaseDelivery *TransposePoolingConn::createDeliveryObject() {
35  return new TransposePoolingDelivery(name, parent);
36 }
37 
38 PatchSize *TransposePoolingConn::createPatchSize() { return new TransposePatchSize(name, parent); }
39 
40 OriginalConnNameParam *TransposePoolingConn::createOriginalConnNameParam() {
41  return new OriginalConnNameParam(name, parent);
42 }
43 
44 } // namespace PV
virtual void addObserver(Observer *observer) override