int InitIdentWeights::calcWeights(pvdata_t * dataStart, int patchIndex, int arborId) {

   InitIdentWeightsParams *weightParamPtr = dynamic_cast<InitIdentWeightsParams*>(weightParams);


   if(weightParamPtr==NULL) {
      fprintf(stderr, "Failed to recast pointer to weightsParam!  Exiting...");
      exit(PV_FAILURE);
   }


   weightParamPtr->calcOtherParams(patchIndex);


   return createOneToOneConnection(dataStart, patchIndex, 1, weightParamPtr);
}
int InitOneToOneWeights::calcWeights(pvdata_t * dataStart, int patchIndex, int arborId) {

   InitOneToOneWeightsParams *weightParamPtr = dynamic_cast<InitOneToOneWeightsParams*>(weightParams);


   if(weightParamPtr==NULL) {
      pvError().printf("Failed to recast pointer to weightsParam!  Exiting...");
   }


   weightParamPtr->calcOtherParams(patchIndex);

   const float iWeight = weightParamPtr->getInitWeight();

   return createOneToOneConnection(dataStart, patchIndex, iWeight, weightParamPtr);
}