* specification of neuron properties
* @return returns instance of neuron with specified properties
*/
public static Neuron createNeuron(NeuronProperties neuronProperties) {
InputFunction inputFunction = null;
Class inputFunctionClass = neuronProperties.getInputFunction();
if ( inputFunctionClass != null) {
inputFunction = createInputFunction(inputFunctionClass);
} else {
WeightsFunction weightsFunction = createWeightsFunction(neuronProperties.getWeightsFunction());
SummingFunction summingFunction = createSummingFunction(neuronProperties.getSummingFunction());
inputFunction = new InputFunction(weightsFunction, summingFunction);
}
TransferFunction transferFunction = createTransferFunction(neuronProperties.getTransferFunctionProperties());