/** * Destroys any references this {@code Pool} maintains on behalf * of the specified {@link Synapse} * * @param synapse */ public void destroySynapse(Synapse synapse) { synapseConnections.Remove(synapse.getInputIndex()); synapsesBySourceIndex.Remove(synapse.getInputIndex()); if (synapse.getSegment() is DistalDendrite) { destroy(); } }
/** * Returns the permanence value for the {@link Synapse} specified. * * @param s the Synapse * @return the permanence */ //public double getPermanence(Synapse s) //{ // return synapsesBySourceIndex[s.getInputIndex()].getPermanence(); //} /** * Sets the specified permanence value for the specified {@link Synapse} * @param s * @param permanence */ //public void setPermanence(Connections c, Synapse s, double permanence) //{ // s.setPermanence(c, permanence); //} /** * Updates this {@code Pool}'s store of permanences for the specified {@link Synapse} * @param c the connections memory * @param synapse the synapse who's permanence is recorded * @param permanence the permanence value to record */ public void updatePool(double synPermConnected, Synapse synapse, double permanence) { int inputIndex = synapse.getInputIndex(); if (synapsesBySourceIndex.ContainsKey(inputIndex) == false) { synapsesBySourceIndex.Add(inputIndex, synapse); } if (permanence >= synPermConnected) { synapseConnections.Add(inputIndex); } else { synapseConnections.Remove(inputIndex); } }