public void ComputeOutput(sNeuralInput oInput, sNeuralOutput oOutput)
        {
            //clear the output structure
            oOutput.fOutputs.Clear();

            //init network
            InitialiseNetwork();

            //fill input nodes
            for (int lIndex = 0; lIndex < (int)oInput.fInputs.Count && lIndex < (int)InputNodes.Count; lIndex++)
            {
                InputNodes[lIndex].SetValue(oInput.fInputs[lIndex]);
            }

            //compute output nodes
            foreach (Node Node in OutputNodes)
            {
                oOutput.fOutputs.Add(ComputeNode(Node.Id));
            }
        }
 public LearningData()
 {
     oInput  = new sNeuralInput();
     oOutput = new sNeuralOutput();
 }