PetaVision / OpenPV

PetaVision is a C++ library for designing and deploying large-scale neurally-inspired computational models.
http://petavision.github.io
Eclipse Public License 1.0
40 stars 13 forks source link

HyPerCol simplifications #226

Closed peteschultz closed 7 years ago

peteschultz commented 7 years ago

This pull request rewrites all the places where HyPerCol needs to know which objects are layers, which are connections, etc. Instead, all the objects of the hierarchy are in the mObjectHierarchy data member, and HyPerCol only knows them as Observer objects.

HyPerCol::nonblockingLayerUpdate has been greatly simplified; the management of whether a layer receives input or updates V and A on a particular pass has been moved into the HyPerLayer respondLayerRecvSyapticLayer and respondLayerUpdateState methods.