8 #ifndef INITGAUSS2DWEIGHTS_HPP_ 9 #define INITGAUSS2DWEIGHTS_HPP_ 11 #include "InitWeights.hpp" 22 virtual void ioParam_aspect(
enum ParamsIOFlag ioFlag);
23 virtual void ioParam_sigma(
enum ParamsIOFlag ioFlag);
24 virtual void ioParam_rMax(
enum ParamsIOFlag ioFlag);
25 virtual void ioParam_rMin(
enum ParamsIOFlag ioFlag);
40 virtual void ioParam_deltaThetaMax(
enum ParamsIOFlag ioFlag);
41 virtual void ioParam_thetaMax(
enum ParamsIOFlag ioFlag);
42 virtual void ioParam_numFlanks(
enum ParamsIOFlag ioFlag);
43 virtual void ioParam_flankShift(
enum ParamsIOFlag ioFlag);
44 virtual void ioParam_rotate(
enum ParamsIOFlag ioFlag);
45 virtual void ioParam_bowtieFlag(
enum ParamsIOFlag ioFlag);
46 virtual void ioParam_bowtieAngle(
enum ParamsIOFlag ioFlag);
57 int initialize(
char const *name,
HyPerCol *hc);
59 virtual Response::Status
60 communicateInitInfo(std::shared_ptr<CommunicateInitInfoMessage const> message)
override;
62 void calcOtherParams(
int patchIndex);
66 virtual void calcWeights(
int dataPatchIndex,
int arborId)
override;
68 void calculateThetas(
int kfPre_tmp,
int patchIndex);
69 float calcThPost(
int fPost);
70 bool checkThetaDiff(
float thPost);
71 bool checkColorDiff(
int fPost);
72 bool isSameLocAndSelf(
float xDelta,
float yDelta,
int fPost);
73 bool checkBowtieAngle(
float xp,
float yp);
76 void gauss2DCalcWeights(
float *dataStart);
84 float mStrength = 1.0f;
85 int mNumOrientationsPost = 1;
86 int mNumOrientationsPre = 1;
87 float mDeltaThetaMax = 2.0f * PI;
88 float mThetaMax = 1.0f;
90 float mFlankShift = 0.0f;
92 bool mBowtieFlag =
false;
93 float mBowtieAngle = 2.0f * PI;
98 float mDeltaThetaPost;
virtual void calcWeights() override
virtual void ioParam_numOrientationsPost(enum ParamsIOFlag ioFlag)
virtual void ioParam_numOrientationsPre(enum ParamsIOFlag ioFlag)
virtual int ioParamsFillGroup(enum ParamsIOFlag ioFlag) override