diff --git a/ChangeLog b/ChangeLog
index ba0df92..8eb7f8e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,7 @@
 	neurons, in the output layer.
 	Oh, and I've fixed too that nasty bug that made training from sets
 	containing more than a single training set.
+	Added examples in the Doxygen documentation.
 	* neuron.cpp: Fixing propagate() function
 
 2009-08-15 BlackLight <blacklight@autistici.org>
diff --git a/Makefile b/Makefile
index 4986ed1..b46b6ee 100644
--- a/Makefile
+++ b/Makefile
@@ -30,7 +30,6 @@ install:
 	install -m 0644 lib${LIB}.a ${PREFIX}/lib/lib${LIB}.a
 	install -m 0644 ${INCLUDEDIR}/${LIB}.hpp ${PREFIX}/${INCLUDEDIR}
 	install -m 0644 ${INCLUDEDIR}/${LIB}_exception.hpp ${PREFIX}/${INCLUDEDIR}
-	install -m 0644 ${PREFIX}/share/${LIB}/README
 	ln -sf ${PREFIX}/lib/lib${LIB}.so.0.0.0 ${PREFIX}/lib/lib${LIB}.so.0
 
 uninstall:
diff --git a/README b/README
index a44c0d8..e496bbc 100644
--- a/README
+++ b/README
@@ -1,17 +1,28 @@
+=======================================================
+  _ _ _     _   _                      _ 
+ | (_) |__ | \ | | ___ _   _ _ __ __ _| |   _      _
+ | | | '_ \|  \| |/ _ \ | | | '__/ _` | | _| |_  _| |_
+ | | | |_) | |\  |  __/ |_| | | | (_| | ||_   _||_   _|
+ |_|_|_.__/|_| \_|\___|\__,_|_|  \__,_|_|  |_|    |_|
+=======================================================
+                                           
+
 C++ class for managing neural networks, by BlackLight < blacklight@autistici.org >
 Released under GNU GPL licence v.3, copyright 2008-2009
 
 > To install:
-	$ make
-	# make install
+	-> goto INSTALL
 
 > To link programs with it:
 	g++ <options and files> -lneural++
 
 > HOWTO:
-	# Take a look to the example in "example" directory to view it pratically.
+	# Take a look to the example in "examples" directory in the source package, in
+	  $PREFIX/share/neural++ or at http://0x00.ath.cx/prog/neuralpp/examples .
 	
-	# Take a look to documentation in "doc" directory to see how to use it. You can
-	  also generate documentation on your own, moving to `include` directory and typing
-	  `doxygen`
+	# Take a look to the example in "doc" directory in the source package, in
+	  $PREFIX/share/neural++ or at http://0x00.ath.cx/prog/neuralpp/doc/index.html.
+	  You can also generate the documentation on your own moving to include/
+	  directory in the source package and typing `doxygen`, if you've got doxygen
+	  installed.
 
diff --git a/doc/html/Markup_8h-source.html b/doc/html/Markup_8h-source.html
index 88c2695..5e18d2a 100644
--- a/doc/html/Markup_8h-source.html
+++ b/doc/html/Markup_8h-source.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 <h1>Markup.h</h1><a href="Markup_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Markup.h: interface for the CMarkup class.</span>
@@ -660,7 +661,7 @@
 <a name="l00644"></a>00644 
 <a name="l00645"></a>00645 <span class="preprocessor">#endif // !defined(_MARKUP_H_INCLUDED_)</span>
 </pre></div></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/Markup_8h.html b/doc/html/Markup_8h.html
index 12dfc5f..a3fa01e 100644
--- a/doc/html/Markup_8h.html
+++ b/doc/html/Markup_8h.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 </div>
@@ -1031,7 +1032,7 @@
 </div>
 </div><p>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/_2examples_2learnAdd_8cpp-example.html b/doc/html/_2examples_2learnAdd_8cpp-example.html
new file mode 100644
index 0000000..46034d9
--- /dev/null
+++ b/doc/html/_2examples_2learnAdd_8cpp-example.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: /examples/learnAdd.cpp</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>/examples/learnAdd.cpp</h1><div class="fragment"><pre class="fragment"></pre></div> </div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:30:49 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/annotated.html b/doc/html/annotated.html
index 6de75b8..b388204 100644
--- a/doc/html/annotated.html
+++ b/doc/html/annotated.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -34,9 +35,14 @@
   <tr><td class="indexkey"><a class="el" href="structCMarkup_1_1SavedPosMap.html">CMarkup::SavedPosMap</a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structCMarkup_1_1SavedPosMapArray.html">CMarkup::SavedPosMapArray</a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structCMarkup_1_1TokenPos.html">CMarkup::TokenPos</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">neuralpp::InvalidSynapticalWeightException</a></td><td class="indexvalue">Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value |w| &gt; 1 </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1InvalidXMLException.html">neuralpp::InvalidXMLException</a></td><td class="indexvalue">Exception thrown when trying parsing an invalid XML </td></tr>
   <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td class="indexvalue">Class for managing layers of neurons </td></tr>
   <tr><td class="indexkey"><a class="el" href="structMCD__CSTR.html">MCD_CSTR</a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structneuralpp_1_1netrecord.html">neuralpp::netrecord</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">neuralpp::NetworkFileNotFoundException</a></td><td class="indexvalue">Exception thrown when doing an attempt to load a network from an invalid file </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">neuralpp::NetworkFileWriteException</a></td><td class="indexvalue">Exception thrown when trying to write the network's information to a file that cannot be written </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">neuralpp::NetworkIndexOutOfBoundsException</a></td><td class="indexvalue">Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network </td></tr>
   <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td class="indexvalue">Main project's class </td></tr>
   <tr><td class="indexkey"><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td class="indexvalue">Class for managing neurons </td></tr>
   <tr><td class="indexkey"><a class="el" href="structneuralpp_1_1neuronrecord.html">neuralpp::neuronrecord</a></td><td class="indexvalue"></td></tr>
@@ -44,7 +50,7 @@
   <tr><td class="indexkey"><a class="el" href="structneuralpp_1_1synrecord.html">neuralpp::synrecord</a></td><td class="indexvalue"></td></tr>
 </table>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classCMarkup-members.html b/doc/html/classCMarkup-members.html
index 70ba437..0d4ea15 100644
--- a/doc/html/classCMarkup-members.html
+++ b/doc/html/classCMarkup-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -212,7 +213,7 @@
   <tr class="memlist"><td><a class="el" href="classCMarkup.html#f3b30bc5314bbc8d157dca6d924f4852">x_WriteText</a>(const MCD_STR &amp;strDoc, FilePos &amp;file)</td><td><a class="el" href="classCMarkup.html">CMarkup</a></td><td><code> [protected, static]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classCMarkup.html#8aa2cd9b38b3e173d2149914c59eb2b7">~CMarkup</a>()</td><td><a class="el" href="classCMarkup.html">CMarkup</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classCMarkup.html b/doc/html/classCMarkup.html
index 38258f7..e7cb7b4 100644
--- a/doc/html/classCMarkup.html
+++ b/doc/html/classCMarkup.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -4478,7 +4479,7 @@
 <hr>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1InvalidSynapticalWeightException-members.html b/doc/html/classneuralpp_1_1InvalidSynapticalWeightException-members.html
new file mode 100644
index 0000000..13391d5
--- /dev/null
+++ b/doc/html/classneuralpp_1_1InvalidSynapticalWeightException-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::InvalidSynapticalWeightException Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">neuralpp::InvalidSynapticalWeightException</a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">InvalidSynapticalWeightException</a>()</td><td><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">neuralpp::InvalidSynapticalWeightException</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">what</a>() const </td><td><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">neuralpp::InvalidSynapticalWeightException</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1InvalidSynapticalWeightException.html b/doc/html/classneuralpp_1_1InvalidSynapticalWeightException.html
new file mode 100644
index 0000000..403293b
--- /dev/null
+++ b/doc/html/classneuralpp_1_1InvalidSynapticalWeightException.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: neuralpp::InvalidSynapticalWeightException Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceneuralpp.html">neuralpp</a>::<a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">InvalidSynapticalWeightException</a>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::InvalidSynapticalWeightException Class Reference</h1><!-- doxytag: class="neuralpp::InvalidSynapticalWeightException" -->Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value |w| &gt; 1.  
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a>&gt;</code>
+<p>
+
+<p>
+<a href="classneuralpp_1_1InvalidSynapticalWeightException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">InvalidSynapticalWeightException</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">what</a> () const   throw ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value |w| &gt; 1. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="42e54de0ef9d9f711a483287f4f95916"></a><!-- doxytag: member="neuralpp::InvalidSynapticalWeightException::InvalidSynapticalWeightException" ref="42e54de0ef9d9f711a483287f4f95916" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">neuralpp::InvalidSynapticalWeightException::InvalidSynapticalWeightException           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="8d374dd7e8363b2551ae6e306b11473a"></a><!-- doxytag: member="neuralpp::InvalidSynapticalWeightException::what" ref="8d374dd7e8363b2551ae6e306b11473a" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* neuralpp::InvalidSynapticalWeightException::what           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const  throw ()<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1InvalidXMLException-members.html b/doc/html/classneuralpp_1_1InvalidXMLException-members.html
new file mode 100644
index 0000000..bc02a4f
--- /dev/null
+++ b/doc/html/classneuralpp_1_1InvalidXMLException-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::InvalidXMLException Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1InvalidXMLException.html">neuralpp::InvalidXMLException</a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">InvalidXMLException</a>()</td><td><a class="el" href="classneuralpp_1_1InvalidXMLException.html">neuralpp::InvalidXMLException</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">what</a>() const </td><td><a class="el" href="classneuralpp_1_1InvalidXMLException.html">neuralpp::InvalidXMLException</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1InvalidXMLException.html b/doc/html/classneuralpp_1_1InvalidXMLException.html
new file mode 100644
index 0000000..dd32eb0
--- /dev/null
+++ b/doc/html/classneuralpp_1_1InvalidXMLException.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: neuralpp::InvalidXMLException Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceneuralpp.html">neuralpp</a>::<a class="el" href="classneuralpp_1_1InvalidXMLException.html">InvalidXMLException</a>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::InvalidXMLException Class Reference</h1><!-- doxytag: class="neuralpp::InvalidXMLException" -->Exception thrown when trying parsing an invalid XML.  
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a>&gt;</code>
+<p>
+
+<p>
+<a href="classneuralpp_1_1InvalidXMLException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">InvalidXMLException</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">what</a> () const   throw ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Exception thrown when trying parsing an invalid XML. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="10279e6f42a1ccb934afcfef2770c537"></a><!-- doxytag: member="neuralpp::InvalidXMLException::InvalidXMLException" ref="10279e6f42a1ccb934afcfef2770c537" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">neuralpp::InvalidXMLException::InvalidXMLException           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="4a8b81678ed0c319e1715ab5ef9112da"></a><!-- doxytag: member="neuralpp::InvalidXMLException::what" ref="4a8b81678ed0c319e1715ab5ef9112da" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* neuralpp::InvalidXMLException::what           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const  throw ()<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1Layer-members.html b/doc/html/classneuralpp_1_1Layer-members.html
index e5a5529..8f7142b 100644
--- a/doc/html/classneuralpp_1_1Layer-members.html
+++ b/doc/html/classneuralpp_1_1Layer-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -24,18 +25,18 @@
 <div class="contents">
 <h1>neuralpp::Layer Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a>, including all inherited members.<p><table>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#824367da29f92253a027a7c5b4a4405e">actv_f</a></td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">elements</a></td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#fb08bddd85d36570dabfe915461f07c5">Layer</a>(size_t sz, double(*a)(double))</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#609ed16b8d79dc384b01ba7d16b72bd1">Layer</a>(vector&lt; Neuron &gt; &amp;neurons, double(*a)(double))</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">elements</a></td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#a235767701b5e9dcf28c5e9e0d04cb0b">Layer</a>(size_t sz, double(*a)(double), double th=0.0)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#d79f684523f8a6e086b962c8eef37623">Layer</a>(std::vector&lt; Neuron &gt; &amp;neurons, double(*a)(double), double th=0.0)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#ac33444fde14633fa1ad4acb024ad150">link</a>(Layer &amp;l)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#45ff7554830558155c6fbce3b6827122">operator[]</a>(size_t i)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1">propagate</a>()</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#98f79281b680b1d18fd91fa5794c0899">setActv</a>(vector&lt; double &gt; &amp;v)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#dbad95f635343a2998794113d7762cf7">setProp</a>(vector&lt; double &gt; &amp;v)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#88ceffc23f02a9dc24d4355767b7cca7">setInput</a>(std::vector&lt; double &gt; v)</td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#7ca71ed62fbe9c1e9c0fb6a8dcaf76f0">size</a>() const </td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">threshold</a></td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Layer.html#c023a15a16353d0b4f44060a159f550f">update_weights</a></td><td><a class="el" href="classneuralpp_1_1Layer.html">neuralpp::Layer</a></td><td><code> [private]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1Layer.html b/doc/html/classneuralpp_1_1Layer.html
index 36687c6..05e2f25 100644
--- a/doc/html/classneuralpp_1_1Layer.html
+++ b/doc/html/classneuralpp_1_1Layer.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -34,31 +35,30 @@
 <a href="classneuralpp_1_1Layer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#fb08bddd85d36570dabfe915461f07c5">Layer</a> (size_t sz, double(*a)(double))</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#a235767701b5e9dcf28c5e9e0d04cb0b">Layer</a> (size_t sz, double(*a)(double), double th=0.0)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#fb08bddd85d36570dabfe915461f07c5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#609ed16b8d79dc384b01ba7d16b72bd1">Layer</a> (vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt; &amp;neurons, double(*a)(double))</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#a235767701b5e9dcf28c5e9e0d04cb0b"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#d79f684523f8a6e086b962c8eef37623">Layer</a> (std::vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt; &amp;neurons, double(*a)(double), double th=0.0)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Alternative constructor.  <a href="#609ed16b8d79dc384b01ba7d16b72bd1"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Alternative constructor.  <a href="#d79f684523f8a6e086b962c8eef37623"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#45ff7554830558155c6fbce3b6827122">operator[]</a> (size_t i)  throw (NetworkIndexOutOfBoundsException)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Redefinition for operator [].  <a href="#45ff7554830558155c6fbce3b6827122"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#ac33444fde14633fa1ad4acb024ad150">link</a> (<a class="el" href="classneuralpp_1_1Layer.html">Layer</a> &amp;l)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It links a layer to another.  <a href="#ac33444fde14633fa1ad4acb024ad150"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#dbad95f635343a2998794113d7762cf7">setProp</a> (vector&lt; double &gt; &amp;v)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#88ceffc23f02a9dc24d4355767b7cca7">setInput</a> (std::vector&lt; double &gt; v)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets a vector of propagation values to all its neurons.  <a href="#dbad95f635343a2998794113d7762cf7"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#98f79281b680b1d18fd91fa5794c0899">setActv</a> (vector&lt; double &gt; &amp;v)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets a vector of activation values to all its neurons.  <a href="#98f79281b680b1d18fd91fa5794c0899"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the input values for the neurons of the layer (just use it for the input layer).  <a href="#88ceffc23f02a9dc24d4355767b7cca7"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1">propagate</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It propagates its activation values to the output layers.  <a href="#fcfd306039dbaf91c9e2dcc8fc1f1ce1"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#7ca71ed62fbe9c1e9c0fb6a8dcaf76f0">size</a> () const </td></tr>
 
 <tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">elements</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">elements</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">threshold</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Layer.html#c023a15a16353d0b4f44060a159f550f">update_weights</a> )()</td></tr>
 
@@ -69,7 +69,7 @@
 Class for managing layers of neurons. 
 <p>
 Don't use this class directly unless you know what you're doing, use <a class="el" href="classneuralpp_1_1NeuralNet.html" title="Main project&#39;s class.">NeuralNet</a> instead <hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="fb08bddd85d36570dabfe915461f07c5"></a><!-- doxytag: member="neuralpp::Layer::Layer" ref="fb08bddd85d36570dabfe915461f07c5" args="(size_t sz, double(*a)(double))" -->
+<a class="anchor" name="a235767701b5e9dcf28c5e9e0d04cb0b"></a><!-- doxytag: member="neuralpp::Layer::Layer" ref="a235767701b5e9dcf28c5e9e0d04cb0b" args="(size_t sz, double(*a)(double), double th=0.0)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -83,7 +83,13 @@ Don't use this class directly unless you know what you're doing, use <a class="e
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">double(*)(double)&nbsp;</td>
-          <td class="paramname"> <em>a</em></td><td>&nbsp;</td>
+          <td class="paramname"> <em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>th</em> = <code>0.0</code></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -101,26 +107,33 @@ Constructor.
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>sz</em>&nbsp;</td><td>Size of the layer </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>Activation function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>th</em>&nbsp;</td><td>Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values </td></tr>
   </table>
 </dl>
 
 </div>
 </div><p>
-<a class="anchor" name="609ed16b8d79dc384b01ba7d16b72bd1"></a><!-- doxytag: member="neuralpp::Layer::Layer" ref="609ed16b8d79dc384b01ba7d16b72bd1" args="(vector&lt; Neuron &gt; &amp;neurons, double(*a)(double))" -->
+<a class="anchor" name="d79f684523f8a6e086b962c8eef37623"></a><!-- doxytag: member="neuralpp::Layer::Layer" ref="d79f684523f8a6e086b962c8eef37623" args="(std::vector&lt; Neuron &gt; &amp;neurons, double(*a)(double), double th=0.0)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">neuralpp::Layer::Layer           </td>
           <td>(</td>
-          <td class="paramtype">vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt; &amp;&nbsp;</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> &gt; &amp;&nbsp;</td>
           <td class="paramname"> <em>neurons</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">double(*)(double)&nbsp;</td>
-          <td class="paramname"> <em>a</em></td><td>&nbsp;</td>
+          <td class="paramname"> <em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>th</em> = <code>0.0</code></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -138,6 +151,7 @@ It directly gets a vector of neurons to build the layer <dl compact><dt><b>Param
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>neurons</em>&nbsp;</td><td>Vector of neurons to be included in the layer </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>Activation function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>th</em>&nbsp;</td><td>Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values </td></tr>
   </table>
 </dl>
 
@@ -154,7 +168,7 @@ It directly gets a vector of neurons to build the layer <dl compact><dt><b>Param
           <td class="paramtype">size_t&nbsp;</td>
           <td class="paramname"> <em>i</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td>  throw (NetworkIndexOutOfBoundsException)</td>
+          <td>  throw (<a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">NetworkIndexOutOfBoundsException</a>)</td>
         </tr>
       </table>
 </div>
@@ -199,14 +213,14 @@ It links a layer to another.
 
 </div>
 </div><p>
-<a class="anchor" name="dbad95f635343a2998794113d7762cf7"></a><!-- doxytag: member="neuralpp::Layer::setProp" ref="dbad95f635343a2998794113d7762cf7" args="(vector&lt; double &gt; &amp;v)" -->
+<a class="anchor" name="88ceffc23f02a9dc24d4355767b7cca7"></a><!-- doxytag: member="neuralpp::Layer::setInput" ref="88ceffc23f02a9dc24d4355767b7cca7" args="(std::vector&lt; double &gt; v)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void neuralpp::Layer::setProp           </td>
+          <td class="memname">void neuralpp::Layer::setInput           </td>
           <td>(</td>
-          <td class="paramtype">vector&lt; double &gt; &amp;&nbsp;</td>
+          <td class="paramtype">std::vector&lt; double &gt;&nbsp;</td>
           <td class="paramname"> <em>v</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td></td>
@@ -216,38 +230,11 @@ It links a layer to another.
 <div class="memdoc">
 
 <p>
-It sets a vector of propagation values to all its neurons. 
+Set the input values for the neurons of the layer (just use it for the input layer). 
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Vector of values to write as propagation values </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="98f79281b680b1d18fd91fa5794c0899"></a><!-- doxytag: member="neuralpp::Layer::setActv" ref="98f79281b680b1d18fd91fa5794c0899" args="(vector&lt; double &gt; &amp;v)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void neuralpp::Layer::setActv           </td>
-          <td>(</td>
-          <td class="paramtype">vector&lt; double &gt; &amp;&nbsp;</td>
-          <td class="paramname"> <em>v</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-It sets a vector of activation values to all its neurons. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Vector of values to write as activation values </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Vector containing the input values </td></tr>
   </table>
 </dl>
 
@@ -295,12 +282,27 @@ It propagates its activation values to the output layers.
 </div>
 </div><p>
 <hr><h2>Member Data Documentation</h2>
-<a class="anchor" name="855685c9da56b06b629e13a2f8c719ce"></a><!-- doxytag: member="neuralpp::Layer::elements" ref="855685c9da56b06b629e13a2f8c719ce" args="" -->
+<a class="anchor" name="8188cb5c264e6021cee9979b968a0305"></a><!-- doxytag: member="neuralpp::Layer::elements" ref="8188cb5c264e6021cee9979b968a0305" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">vector&lt;<a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a>&gt; <a class="el" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">neuralpp::Layer::elements</a><code> [private]</code>          </td>
+          <td class="memname">std::vector&lt;<a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a>&gt; <a class="el" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">neuralpp::Layer::elements</a><code> [private]</code>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="02cf4efe1da02a7404d25375c85ed71f"></a><!-- doxytag: member="neuralpp::Layer::threshold" ref="02cf4efe1da02a7404d25375c85ed71f" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double <a class="el" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">neuralpp::Layer::threshold</a><code> [private]</code>          </td>
         </tr>
       </table>
 </div>
@@ -343,7 +345,7 @@ It propagates its activation values to the output layers.
 <hr>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1NetworkFileNotFoundException-members.html b/doc/html/classneuralpp_1_1NetworkFileNotFoundException-members.html
new file mode 100644
index 0000000..263f3c3
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkFileNotFoundException-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkFileNotFoundException Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">neuralpp::NetworkFileNotFoundException</a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">NetworkFileNotFoundException</a>()</td><td><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">neuralpp::NetworkFileNotFoundException</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">what</a>() const </td><td><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">neuralpp::NetworkFileNotFoundException</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NetworkFileNotFoundException.html b/doc/html/classneuralpp_1_1NetworkFileNotFoundException.html
new file mode 100644
index 0000000..e9598a5
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkFileNotFoundException.html
@@ -0,0 +1,95 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: neuralpp::NetworkFileNotFoundException Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceneuralpp.html">neuralpp</a>::<a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">NetworkFileNotFoundException</a>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkFileNotFoundException Class Reference</h1><!-- doxytag: class="neuralpp::NetworkFileNotFoundException" -->Exception thrown when doing an attempt to load a network from an invalid file.  
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a>&gt;</code>
+<p>
+
+<p>
+<a href="classneuralpp_1_1NetworkFileNotFoundException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">NetworkFileNotFoundException</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">what</a> () const   throw ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Exception thrown when doing an attempt to load a network from an invalid file. <dl compact><dt><b>Examples: </b></dt><dd>
+
+<p>
+<a class="el" href="examples_2doAdd_8cpp-example.html#_a1">examples/doAdd.cpp</a>.</dl><hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="9603eebdb841f06c9b1007e65cba60f6"></a><!-- doxytag: member="neuralpp::NetworkFileNotFoundException::NetworkFileNotFoundException" ref="9603eebdb841f06c9b1007e65cba60f6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">neuralpp::NetworkFileNotFoundException::NetworkFileNotFoundException           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="24cde7729ab22d343f36e638cfc40702"></a><!-- doxytag: member="neuralpp::NetworkFileNotFoundException::what" ref="24cde7729ab22d343f36e638cfc40702" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* neuralpp::NetworkFileNotFoundException::what           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const  throw ()<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2doAdd_8cpp-example.html#a2">examples/doAdd.cpp</a>.</dl>
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NetworkFileWriteException-members.html b/doc/html/classneuralpp_1_1NetworkFileWriteException-members.html
new file mode 100644
index 0000000..5041be2
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkFileWriteException-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkFileWriteException Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">neuralpp::NetworkFileWriteException</a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">NetworkFileWriteException</a>()</td><td><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">neuralpp::NetworkFileWriteException</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">what</a>() const </td><td><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">neuralpp::NetworkFileWriteException</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NetworkFileWriteException.html b/doc/html/classneuralpp_1_1NetworkFileWriteException.html
new file mode 100644
index 0000000..83044d6
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkFileWriteException.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: neuralpp::NetworkFileWriteException Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceneuralpp.html">neuralpp</a>::<a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">NetworkFileWriteException</a>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkFileWriteException Class Reference</h1><!-- doxytag: class="neuralpp::NetworkFileWriteException" -->Exception thrown when trying to write the network's information to a file that cannot be written.  
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a>&gt;</code>
+<p>
+
+<p>
+<a href="classneuralpp_1_1NetworkFileWriteException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">NetworkFileWriteException</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">what</a> () const   throw ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Exception thrown when trying to write the network's information to a file that cannot be written. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="83bc897b0ea11a384e0839a39e9fdb48"></a><!-- doxytag: member="neuralpp::NetworkFileWriteException::NetworkFileWriteException" ref="83bc897b0ea11a384e0839a39e9fdb48" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">neuralpp::NetworkFileWriteException::NetworkFileWriteException           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="c8802852cb38d5edf6f490ff3acb6078"></a><!-- doxytag: member="neuralpp::NetworkFileWriteException::what" ref="c8802852cb38d5edf6f490ff3acb6078" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* neuralpp::NetworkFileWriteException::what           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const  throw ()<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException-members.html b/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException-members.html
new file mode 100644
index 0000000..9f56122
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkIndexOutOfBoundsException Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">neuralpp::NetworkIndexOutOfBoundsException</a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">NetworkIndexOutOfBoundsException</a>()</td><td><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">neuralpp::NetworkIndexOutOfBoundsException</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">what</a>() const </td><td><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">neuralpp::NetworkIndexOutOfBoundsException</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException.html b/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException.html
new file mode 100644
index 0000000..617e786
--- /dev/null
+++ b/doc/html/classneuralpp_1_1NetworkIndexOutOfBoundsException.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: neuralpp::NetworkIndexOutOfBoundsException Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceneuralpp.html">neuralpp</a>::<a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">NetworkIndexOutOfBoundsException</a>
+  </div>
+</div>
+<div class="contents">
+<h1>neuralpp::NetworkIndexOutOfBoundsException Class Reference</h1><!-- doxytag: class="neuralpp::NetworkIndexOutOfBoundsException" -->Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network.  
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a>&gt;</code>
+<p>
+
+<p>
+<a href="classneuralpp_1_1NetworkIndexOutOfBoundsException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">NetworkIndexOutOfBoundsException</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">what</a> () const   throw ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="07141d2225ea9f2d486e755a3660d594"></a><!-- doxytag: member="neuralpp::NetworkIndexOutOfBoundsException::NetworkIndexOutOfBoundsException" ref="07141d2225ea9f2d486e755a3660d594" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">neuralpp::NetworkIndexOutOfBoundsException::NetworkIndexOutOfBoundsException           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="8b65d77cb375a0aa40d5a9ea692bd5c3"></a><!-- doxytag: member="neuralpp::NetworkIndexOutOfBoundsException::what" ref="8b65d77cb375a0aa40d5a9ea692bd5c3" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* neuralpp::NetworkIndexOutOfBoundsException::what           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const  throw ()<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="neural_09_09__exception_8hpp-source.html">neural++_exception.hpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/classneuralpp_1_1NeuralNet-members.html b/doc/html/classneuralpp_1_1NeuralNet-members.html
index 9b22c03..2c506ff 100644
--- a/doc/html/classneuralpp_1_1NeuralNet-members.html
+++ b/doc/html/classneuralpp_1_1NeuralNet-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -24,39 +25,42 @@
 <div class="contents">
 <h1>neuralpp::NeuralNet Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a>, including all inherited members.<p><table>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#c1469e6afd87d85b82f14bc246f82457">actv_f</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#28b9966c5f197b8e86d57dd104aa32a6">closeXML</a>(string &amp;xml)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#62695a82dfb1df758a44150921aec8e0">commitChanges</a>(Layer *l)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e17732ed578bc4bd6032bfae58a5cf51">closeXML</a>(std::string &amp;xml)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#f697a8d9967ad8f03e5a16a42cd110c5">commitChanges</a>(Layer &amp;l)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">epochs</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#0616c51404efaca2714e37dd7478997e">error</a>(double ex) const </td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#8a140d28e6dd4097470c7c138801ad01">error</a>(double ex)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">expect</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa">expected</a>() const </td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f5ec2727c0756ddb097b53efe49b81afb">file</a> enum value</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#51a1851ed07b85bec091c9053ae99cf7">getExpected</a>() const </td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810">getOutput</a>() const </td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#a6b8bf3800b43b58843c65fc431207ae">getOutputs</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c">getOutputs</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e08cdcf4b70f987700e553d9914f6179">getThreshold</a>() const </td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#bbdaa1b6c0a1a95d2b18cd25fda2a266">hidden</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#45c7645d4affe65752d37cd230afba24">initXML</a>(string &amp;xml)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#96da6712a72051cf34ad961761ef6e08">initXML</a>(std::string &amp;xml)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">input</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">l_rate</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#46f23f462318a4ffc037a4e806364c3f">link</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2">NeuralNet</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [inline]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#c79534c7c0dfb20d1d03be2ad7569b78">NeuralNet</a>(size_t in_size, size_t hidden_size, size_t out_size, double l, int e)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#7fc7fc3e3220c138ffa5356fef6b9757">NeuralNet</a>(const string file)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#0c16df2e0701503052c63749930b238e">NeuralNet</a>(size_t in_size, size_t hidden_size, size_t out_size, double(*actv)(double), double l, int e)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#3d602f3988a9a3e2c77dc6955674f412">NeuralNet</a>(size_t in_size, size_t hidden_size, size_t out_size, double l, int e, double th=0.0, double(*a)(double)=__actv)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#b4bfa407d28bb17abf7f735a049987d9">NeuralNet</a>(const std::string file)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">output</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890">propagate</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#4f88106c9e542c39eac43b4ca1974a2a">ref_epochs</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407">save</a>(const char *fname)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236">setExpected</a>(double ex)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#0de170e8ab561ad63d0739b4c4b74f68">setInput</a>(vector&lt; double &gt; &amp;v)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e649edc3d86bec7c0e178d5c892b4fd7">setExpected</a>(std::vector&lt; double &gt; ex)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17">setInput</a>(std::vector&lt; double &gt; v)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f">source</a> enum name</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#e07af23ceb8666518da0c035bf1e0376">split</a>(char delim, string str)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#83c6555520856d5867752904349ab6ca">split</a>(char delim, std::string str)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">str</a> enum value</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#ead4bdef0602a5cadbe3beb685e01f5f">train</a>(string xml, source src)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">threshold</a></td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd">train</a>(std::string xml, source src)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#b0bd1daadb06980dff1f50d33a7c098e">update</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108">updateWeights</a>()</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#4be31ecb0b543a192997bd83c6995ccb">XMLFromSet</a>(int id, string set)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1NeuralNet.html#0a2733037af912b3e6a10146e7b7172f">XMLFromSet</a>(int &amp;id, std::string set)</td><td><a class="el" href="classneuralpp_1_1NeuralNet.html">neuralpp::NeuralNet</a></td><td><code> [static]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1NeuralNet.html b/doc/html/classneuralpp_1_1NeuralNet.html
index 19474f0..b2b2f79 100644
--- a/doc/html/classneuralpp_1_1NeuralNet.html
+++ b/doc/html/classneuralpp_1_1NeuralNet.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -43,58 +44,64 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2">NeuralNet</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Empty constructor for the class - it just makes nothing.  <a href="#92b145f2f6f00bf1ba645ce2235882c2"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#c79534c7c0dfb20d1d03be2ad7569b78">NeuralNet</a> (size_t in_size, size_t hidden_size, size_t out_size, double l, int e)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#3d602f3988a9a3e2c77dc6955674f412">NeuralNet</a> (size_t in_size, size_t hidden_size, size_t out_size, double l, int e, double th=0.0, double(*a)(double)=__actv)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#c79534c7c0dfb20d1d03be2ad7569b78"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#7fc7fc3e3220c138ffa5356fef6b9757">NeuralNet</a> (const string file)  throw (NetworkFileNotFoundException)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#3d602f3988a9a3e2c77dc6955674f412"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#b4bfa407d28bb17abf7f735a049987d9">NeuralNet</a> (const std::string file)  throw (NetworkFileNotFoundException)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#7fc7fc3e3220c138ffa5356fef6b9757"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#0c16df2e0701503052c63749930b238e">NeuralNet</a> (size_t in_size, size_t hidden_size, size_t out_size, double(*actv)(double), double l, int e)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#0c16df2e0701503052c63749930b238e"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#b4bfa407d28bb17abf7f735a049987d9"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810">getOutput</a> () const </td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It gets the output of the network (note: the layer output should contain an only neuron).  <a href="#961dce8913264bf64c899dce4e25f810"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#a6b8bf3800b43b58843c65fc431207ae">getOutputs</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e08cdcf4b70f987700e553d9914f6179">getThreshold</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It gets the output of the network in case the output layer contains more neurons.  <a href="#a6b8bf3800b43b58843c65fc431207ae"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the threshold of the neurons in the network.  <a href="#e08cdcf4b70f987700e553d9914f6179"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c">getOutputs</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It gets the output of the network in case the output layer contains more neurons.  <a href="#e6d2215ecc8b560db2f6797db642191c"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa">expected</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It gets the value expected.  <a href="#562dfe9fb8d73bf25a23ce608451d3aa"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236">setExpected</a> (double <a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a>)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the expected value (in case you have an only neuron in output layer).  <a href="#562dfe9fb8d73bf25a23ce608451d3aa"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#51a1851ed07b85bec091c9053ae99cf7">getExpected</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets the value you expect from your network.  <a href="#b6475762b7e9eab086befdc511f7c236"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the expected value (in case you have an only neuron in output layer).  <a href="#51a1851ed07b85bec091c9053ae99cf7"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236">setExpected</a> (double ex)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets the value you expect from your network (in case the network has an only neuron in its output layer).  <a href="#b6475762b7e9eab086befdc511f7c236"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e649edc3d86bec7c0e178d5c892b4fd7">setExpected</a> (std::vector&lt; double &gt; ex)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the values you expect from your network.  <a href="#e649edc3d86bec7c0e178d5c892b4fd7"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#b0bd1daadb06980dff1f50d33a7c098e">update</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It updates through back-propagation the weights of the synapsis and computes again the output value for <em>epochs</em> times, calling back updateWeights and commitChanges functions.  <a href="#b0bd1daadb06980dff1f50d33a7c098e"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890">propagate</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It propagates values through the network.  <a href="#c129c180647362da963758bfd1ba6890"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#0de170e8ab561ad63d0739b4c4b74f68">setInput</a> (vector&lt; double &gt; &amp;v)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17">setInput</a> (std::vector&lt; double &gt; v)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets the input for the network.  <a href="#0de170e8ab561ad63d0739b4c4b74f68"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets the input for the network.  <a href="#405b32d2928344314ecf0469070b0f17"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#46f23f462318a4ffc037a4e806364c3f">link</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It links the layers of the network (input, hidden, output).  <a href="#46f23f462318a4ffc037a4e806364c3f"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407">save</a> (const char *fname)  throw (NetworkFileWriteException)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Save a trained neural network to a binary file.  <a href="#fdf94c276720c25e565cac834fe8a407"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#ead4bdef0602a5cadbe3beb685e01f5f">train</a> (string xml, <a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f">source</a> src)  throw (InvalidXMLException)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd">train</a> (std::string xml, <a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f">source</a> src)  throw (InvalidXMLException)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Train a network using a training set loaded from an XML file.  <a href="#ead4bdef0602a5cadbe3beb685e01f5f"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Train a network using a training set loaded from an XML file.  <a href="#1c9e17437d41a7048611e21a3cc1c7dd"></a><br></td></tr>
 <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#45c7645d4affe65752d37cd230afba24">initXML</a> (string &amp;xml)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#96da6712a72051cf34ad961761ef6e08">initXML</a> (std::string &amp;xml)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the training XML for the neural network.  <a href="#45c7645d4affe65752d37cd230afba24"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e07af23ceb8666518da0c035bf1e0376">split</a> (char delim, string str)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the training XML for the neural network.  <a href="#96da6712a72051cf34ad961761ef6e08"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static std::vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#83c6555520856d5867752904349ab6ca">split</a> (char delim, std::string str)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Splits a string into a vector of doubles, given a delimitator.  <a href="#e07af23ceb8666518da0c035bf1e0376"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#4be31ecb0b543a192997bd83c6995ccb">XMLFromSet</a> (int id, string set)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Splits a string into a vector of doubles, given a delimitator.  <a href="#83c6555520856d5867752904349ab6ca"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#0a2733037af912b3e6a10146e7b7172f">XMLFromSet</a> (int &amp;id, std::string set)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a training set from a string and copies it to an XML For example, these strings could be training sets for making sums: "2,3;5" - "5,6;11" - "2,2;4" - "4,5:9" This method called on the first string will return an XML such this: '&lt;training id="0"&gt;&lt;input id="0"&gt;2&lt;/input&gt;&lt;input id="1"&gt;3&lt;/input&gt;&lt;output id="0"&gt;5&lt;/output&gt; &amp;lt/training&gt;'.  <a href="#4be31ecb0b543a192997bd83c6995ccb"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#28b9966c5f197b8e86d57dd104aa32a6">closeXML</a> (string &amp;xml)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a training set from a string and copies it to an XML For example, these strings could be training sets for making sums: "2,3;5" - "5,6;11" - "2,2;4" - "4,5:9" This method called on the first string will return an XML such this: '&lt;training id="0"&gt;&lt;input id="0"&gt;2&lt;/input&gt;&lt;input id="1"&gt;3&lt;/input&gt;&lt;output id="0"&gt;5&lt;/output&gt; &amp;lt/training&gt;'.  <a href="#0a2733037af912b3e6a10146e7b7172f"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e17732ed578bc4bd6032bfae58a5cf51">closeXML</a> (std::string &amp;xml)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closes an open XML document generated by "initXML" and "XMLFromSet".  <a href="#28b9966c5f197b8e86d57dd104aa32a6"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closes an open XML document generated by "initXML" and "XMLFromSet".  <a href="#e17732ed578bc4bd6032bfae58a5cf51"></a><br></td></tr>
 <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Layer.html">Layer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">input</a></td></tr>
 
@@ -106,12 +113,12 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108">updateWeights</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It updates the weights of the net's synapsis through back-propagation.  <a href="#94169c89a7cd47122ab5dbf1d5c5e108"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#62695a82dfb1df758a44150921aec8e0">commitChanges</a> (<a class="el" href="classneuralpp_1_1Layer.html">Layer</a> *l)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#f697a8d9967ad8f03e5a16a42cd110c5">commitChanges</a> (<a class="el" href="classneuralpp_1_1Layer.html">Layer</a> &amp;l)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It commits the changes made by <a class="el" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108" title="It updates the weights of the net&#39;s synapsis through back-propagation.">updateWeights()</a> to the layer l.  <a href="#62695a82dfb1df758a44150921aec8e0"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#0616c51404efaca2714e37dd7478997e">error</a> (double <a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a>) const </td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It commits the changes made by <a class="el" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108" title="It updates the weights of the net&#39;s synapsis through back-propagation.">updateWeights()</a> to the layer l.  <a href="#f697a8d9967ad8f03e5a16a42cd110c5"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#8a140d28e6dd4097470c7c138801ad01">error</a> (double ex)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the error made on the expected result as |v-v'|/v.  <a href="#0616c51404efaca2714e37dd7478997e"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the error made on the expected result as squared deviance.  <a href="#8a140d28e6dd4097470c7c138801ad01"></a><br></td></tr>
 <tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">epochs</a></td></tr>
 
@@ -119,7 +126,9 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">l_rate</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">threshold</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">expect</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NeuralNet.html#c1469e6afd87d85b82f14bc246f82457">actv_f</a> )(double)</td></tr>
 
@@ -128,7 +137,10 @@
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 Main project's class. 
 <p>
-Use *ONLY* this class, unless you know what you're doing <hr><h2>Member Enumeration Documentation</h2>
+Use *ONLY* this class, unless you know what you're doing <dl compact><dt><b>Examples: </b></dt><dd>
+
+<p>
+<a class="el" href="examples_2adderFromScratch_8cpp-example.html#_a0">examples/adderFromScratch.cpp</a>, <a class="el" href="examples_2doAdd_8cpp-example.html#_a0">examples/doAdd.cpp</a>, and <a class="el" href="examples_2learnAdd_8cpp-example.html#_a0">examples/learnAdd.cpp</a>.</dl><hr><h2>Member Enumeration Documentation</h2>
 <a class="anchor" name="94c36c94060e785ea67a0014c4182f8f"></a><!-- doxytag: member="neuralpp::NeuralNet::source" ref="94c36c94060e785ea67a0014c4182f8f" args="" -->
 <div class="memitem">
 <div class="memproto">
@@ -176,7 +188,7 @@ Empty constructor for the class - it just makes nothing.
 
 </div>
 </div><p>
-<a class="anchor" name="c79534c7c0dfb20d1d03be2ad7569b78"></a><!-- doxytag: member="neuralpp::NeuralNet::NeuralNet" ref="c79534c7c0dfb20d1d03be2ad7569b78" args="(size_t in_size, size_t hidden_size, size_t out_size, double l, int e)" -->
+<a class="anchor" name="3d602f3988a9a3e2c77dc6955674f412"></a><!-- doxytag: member="neuralpp::NeuralNet::NeuralNet" ref="3d602f3988a9a3e2c77dc6955674f412" args="(size_t in_size, size_t hidden_size, size_t out_size, double l, int e, double th=0.0, double(*a)(double)=__actv)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -208,7 +220,19 @@ Empty constructor for the class - it just makes nothing.
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">int&nbsp;</td>
-          <td class="paramname"> <em>e</em></td><td>&nbsp;</td>
+          <td class="paramname"> <em>e</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>th</em> = <code>0.0</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double(*)(double)&nbsp;</td>
+          <td class="paramname"> <em>a</em> = <code>__actv</code></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -229,22 +253,24 @@ Constructor.
     <tr><td valign="top"></td><td valign="top"><em>out_size</em>&nbsp;</td><td>Size of the output layer </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>learn rate (get it after doing some experiments, but generally try to keep its value quite low to be more accurate) </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>Epochs (cycles) to execute (the most you execute, the most the network can be accurate for its purpose) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>th</em>&nbsp;</td><td>Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>Activation function to use (default: f(x)=x) </td></tr>
   </table>
 </dl>
 
 </div>
 </div><p>
-<a class="anchor" name="7fc7fc3e3220c138ffa5356fef6b9757"></a><!-- doxytag: member="neuralpp::NeuralNet::NeuralNet" ref="7fc7fc3e3220c138ffa5356fef6b9757" args="(const string file)" -->
+<a class="anchor" name="b4bfa407d28bb17abf7f735a049987d9"></a><!-- doxytag: member="neuralpp::NeuralNet::NeuralNet" ref="b4bfa407d28bb17abf7f735a049987d9" args="(const std::string file)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">neuralpp::NeuralNet::NeuralNet           </td>
           <td>(</td>
-          <td class="paramtype">const string&nbsp;</td>
+          <td class="paramtype">const std::string&nbsp;</td>
           <td class="paramname"> <em>file</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td>  throw (NetworkFileNotFoundException)</td>
+          <td>  throw (<a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">NetworkFileNotFoundException</a>)</td>
         </tr>
       </table>
 </div>
@@ -260,72 +286,7 @@ Constructor.
 </dl>
 <dl compact><dt><b>Exceptions:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>NetworkFileNotFoundException</em>&nbsp;</td><td></td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="0c16df2e0701503052c63749930b238e"></a><!-- doxytag: member="neuralpp::NeuralNet::NeuralNet" ref="0c16df2e0701503052c63749930b238e" args="(size_t in_size, size_t hidden_size, size_t out_size, double(*actv)(double), double l, int e)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">neuralpp::NeuralNet::NeuralNet           </td>
-          <td>(</td>
-          <td class="paramtype">size_t&nbsp;</td>
-          <td class="paramname"> <em>in_size</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">size_t&nbsp;</td>
-          <td class="paramname"> <em>hidden_size</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">size_t&nbsp;</td>
-          <td class="paramname"> <em>out_size</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">double(*)(double)&nbsp;</td>
-          <td class="paramname"> <em>actv</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">double&nbsp;</td>
-          <td class="paramname"> <em>l</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">int&nbsp;</td>
-          <td class="paramname"> <em>e</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Constructor. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_size</em>&nbsp;</td><td>Size of the input layer </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>hidden_size</em>&nbsp;</td><td>Size of the hidden layer </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_size</em>&nbsp;</td><td>Size of the output layer </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>actv</em>&nbsp;</td><td>Activation function to use (default: f(x)=x) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>learn rate (get it after doing some experiments, but generally try to keep its value quite low to be more accurate) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>Epochs (cycles) to execute (the most you execute, the most the network can be accurate for its purpose) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html" title="Exception thrown when doing an attempt to load a network from an invalid file.">NetworkFileNotFoundException</a></em>&nbsp;</td><td></td></tr>
   </table>
 </dl>
 
@@ -353,14 +314,14 @@ It updates the weights of the net's synapsis through back-propagation.
 In-class use only 
 </div>
 </div><p>
-<a class="anchor" name="62695a82dfb1df758a44150921aec8e0"></a><!-- doxytag: member="neuralpp::NeuralNet::commitChanges" ref="62695a82dfb1df758a44150921aec8e0" args="(Layer *l)" -->
+<a class="anchor" name="f697a8d9967ad8f03e5a16a42cd110c5"></a><!-- doxytag: member="neuralpp::NeuralNet::commitChanges" ref="f697a8d9967ad8f03e5a16a42cd110c5" args="(Layer &amp;l)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void neuralpp::NeuralNet::commitChanges           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="classneuralpp_1_1Layer.html">Layer</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="classneuralpp_1_1Layer.html">Layer</a> &amp;&nbsp;</td>
           <td class="paramname"> <em>l</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td><code> [private]</code></td>
@@ -380,7 +341,7 @@ In-class use only <dl compact><dt><b>Parameters:</b></dt><dd>
 
 </div>
 </div><p>
-<a class="anchor" name="0616c51404efaca2714e37dd7478997e"></a><!-- doxytag: member="neuralpp::NeuralNet::error" ref="0616c51404efaca2714e37dd7478997e" args="(double ex) const " -->
+<a class="anchor" name="8a140d28e6dd4097470c7c138801ad01"></a><!-- doxytag: member="neuralpp::NeuralNet::error" ref="8a140d28e6dd4097470c7c138801ad01" args="(double ex)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -390,14 +351,14 @@ In-class use only <dl compact><dt><b>Parameters:</b></dt><dd>
           <td class="paramtype">double&nbsp;</td>
           <td class="paramname"> <em>ex</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td> const<code> [private]</code></td>
+          <td><code> [private]</code></td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-Get the error made on the expected result as |v-v'|/v. 
+Get the error made on the expected result as squared deviance. 
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
@@ -427,15 +388,38 @@ Get the error made on the expected result as |v-v'|/v.
 It gets the output of the network (note: the layer output should contain an only neuron). 
 <p>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>The output value of the network </dd></dl>
-
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2doAdd_8cpp-example.html#a5">examples/doAdd.cpp</a>.</dl>
 </div>
 </div><p>
-<a class="anchor" name="a6b8bf3800b43b58843c65fc431207ae"></a><!-- doxytag: member="neuralpp::NeuralNet::getOutputs" ref="a6b8bf3800b43b58843c65fc431207ae" args="()" -->
+<a class="anchor" name="e08cdcf4b70f987700e553d9914f6179"></a><!-- doxytag: member="neuralpp::NeuralNet::getThreshold" ref="e08cdcf4b70f987700e553d9914f6179" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">vector&lt;double&gt; neuralpp::NeuralNet::getOutputs           </td>
+          <td class="memname">double neuralpp::NeuralNet::getThreshold           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get the threshold of the neurons in the network. 
+<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>The threshold of the neurons </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e6d2215ecc8b560db2f6797db642191c"></a><!-- doxytag: member="neuralpp::NeuralNet::getOutputs" ref="e6d2215ecc8b560db2f6797db642191c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;double&gt; neuralpp::NeuralNet::getOutputs           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
@@ -449,7 +433,8 @@ It gets the output of the network (note: the layer output should contain an only
 It gets the output of the network in case the output layer contains more neurons. 
 <p>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>A vector containing the output values of the network </dd></dl>
-
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2adderFromScratch_8cpp-example.html#a4">examples/adderFromScratch.cpp</a>.</dl>
 </div>
 </div><p>
 <a class="anchor" name="562dfe9fb8d73bf25a23ce608451d3aa"></a><!-- doxytag: member="neuralpp::NeuralNet::expected" ref="562dfe9fb8d73bf25a23ce608451d3aa" args="() const " -->
@@ -468,7 +453,29 @@ It gets the output of the network in case the output layer contains more neurons
 <div class="memdoc">
 
 <p>
-It gets the value expected. 
+Get the expected value (in case you have an only neuron in output layer). 
+<p>
+Of course you should specify this when you build your network by using setExpected. <dl class="return" compact><dt><b>Returns:</b></dt><dd>The expected output value for a certain training phase </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="51a1851ed07b85bec091c9053ae99cf7"></a><!-- doxytag: member="neuralpp::NeuralNet::getExpected" ref="51a1851ed07b85bec091c9053ae99cf7" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;double&gt; neuralpp::NeuralNet::getExpected           </td>
+          <td>(</td>
+          <td class="paramname">          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get the expected value (in case you have an only neuron in output layer). 
 <p>
 Of course you should specify this when you build your network by using setExpected. <dl class="return" compact><dt><b>Returns:</b></dt><dd>The expected output value for a certain training phase </dd></dl>
 
@@ -491,7 +498,7 @@ Of course you should specify this when you build your network by using setExpect
 <div class="memdoc">
 
 <p>
-It sets the value you expect from your network. 
+It sets the value you expect from your network (in case the network has an only neuron in its output layer). 
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
@@ -499,6 +506,33 @@ It sets the value you expect from your network.
   </table>
 </dl>
 
+</div>
+</div><p>
+<a class="anchor" name="e649edc3d86bec7c0e178d5c892b4fd7"></a><!-- doxytag: member="neuralpp::NeuralNet::setExpected" ref="e649edc3d86bec7c0e178d5c892b4fd7" args="(std::vector&lt; double &gt; ex)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void neuralpp::NeuralNet::setExpected           </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; double &gt;&nbsp;</td>
+          <td class="paramname"> <em>ex</em>          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Set the values you expect from your network. 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>ex</em>&nbsp;</td><td>Expected output values </td></tr>
+  </table>
+</dl>
+
 </div>
 </div><p>
 <a class="anchor" name="b0bd1daadb06980dff1f50d33a7c098e"></a><!-- doxytag: member="neuralpp::NeuralNet::update" ref="b0bd1daadb06980dff1f50d33a7c098e" args="()" -->
@@ -540,17 +574,18 @@ It updates through back-propagation the weights of the synapsis and computes aga
 <p>
 It propagates values through the network. 
 <p>
-Use this when you want to give an already trained network some new values the get to the output 
+Use this when you want to give an already trained network some new values the get to the output <dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2adderFromScratch_8cpp-example.html#a3">examples/adderFromScratch.cpp</a>, and <a class="el" href="examples_2doAdd_8cpp-example.html#a4">examples/doAdd.cpp</a>.</dl>
 </div>
 </div><p>
-<a class="anchor" name="0de170e8ab561ad63d0739b4c4b74f68"></a><!-- doxytag: member="neuralpp::NeuralNet::setInput" ref="0de170e8ab561ad63d0739b4c4b74f68" args="(vector&lt; double &gt; &amp;v)" -->
+<a class="anchor" name="405b32d2928344314ecf0469070b0f17"></a><!-- doxytag: member="neuralpp::NeuralNet::setInput" ref="405b32d2928344314ecf0469070b0f17" args="(std::vector&lt; double &gt; v)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void neuralpp::NeuralNet::setInput           </td>
           <td>(</td>
-          <td class="paramtype">vector&lt; double &gt; &amp;&nbsp;</td>
+          <td class="paramtype">std::vector&lt; double &gt;&nbsp;</td>
           <td class="paramname"> <em>v</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td></td>
@@ -567,7 +602,8 @@ It sets the input for the network.
     <tr><td valign="top"></td><td valign="top"><em>v</em>&nbsp;</td><td>Vector of doubles, containing the values to give to your network </td></tr>
   </table>
 </dl>
-
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2adderFromScratch_8cpp-example.html#a2">examples/adderFromScratch.cpp</a>, and <a class="el" href="examples_2doAdd_8cpp-example.html#a3">examples/doAdd.cpp</a>.</dl>
 </div>
 </div><p>
 <a class="anchor" name="46f23f462318a4ffc037a4e806364c3f"></a><!-- doxytag: member="neuralpp::NeuralNet::link" ref="46f23f462318a4ffc037a4e806364c3f" args="()" -->
@@ -601,7 +637,7 @@ Don't use unless you exactly know what you're doing, it is already called by the
           <td class="paramtype">const char *&nbsp;</td>
           <td class="paramname"> <em>fname</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td>  throw (NetworkFileWriteException)</td>
+          <td>  throw (<a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">NetworkFileWriteException</a>)</td>
         </tr>
       </table>
 </div>
@@ -617,20 +653,21 @@ Save a trained neural network to a binary file.
 </dl>
 <dl compact><dt><b>Exceptions:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>NetworkFileWriteException</em>&nbsp;</td><td>When you get an error writing the network's information to a file </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html" title="Exception thrown when trying to write the network&#39;s information to a file that...">NetworkFileWriteException</a></em>&nbsp;</td><td>When you get an error writing the network's information to a file </td></tr>
   </table>
 </dl>
-
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2learnAdd_8cpp-example.html#a2">examples/learnAdd.cpp</a>.</dl>
 </div>
 </div><p>
-<a class="anchor" name="ead4bdef0602a5cadbe3beb685e01f5f"></a><!-- doxytag: member="neuralpp::NeuralNet::train" ref="ead4bdef0602a5cadbe3beb685e01f5f" args="(string xml, source src)" -->
+<a class="anchor" name="1c9e17437d41a7048611e21a3cc1c7dd"></a><!-- doxytag: member="neuralpp::NeuralNet::train" ref="1c9e17437d41a7048611e21a3cc1c7dd" args="(std::string xml, source src)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void neuralpp::NeuralNet::train           </td>
           <td>(</td>
-          <td class="paramtype">string&nbsp;</td>
+          <td class="paramtype">std::string&nbsp;</td>
           <td class="paramname"> <em>xml</em>, </td>
         </tr>
         <tr>
@@ -642,7 +679,7 @@ Save a trained neural network to a binary file.
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td>  throw (InvalidXMLException)</td>
+          <td></td><td></td><td>  throw (<a class="el" href="classneuralpp_1_1InvalidXMLException.html">InvalidXMLException</a>)</td>
         </tr>
       </table>
 </div>
@@ -659,20 +696,21 @@ A sample XML file is available in examples/adder.xml <dl compact><dt><b>Paramete
 </dl>
 <dl compact><dt><b>Exceptions:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>InvalidXMLException</em>&nbsp;</td><td></td></tr>
+    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classneuralpp_1_1InvalidXMLException.html" title="Exception thrown when trying parsing an invalid XML.">InvalidXMLException</a></em>&nbsp;</td><td></td></tr>
   </table>
 </dl>
-
+<dl compact><dt><b>Examples: </b></dt><dd>
+<a class="el" href="examples_2adderFromScratch_8cpp-example.html#a1">examples/adderFromScratch.cpp</a>, and <a class="el" href="examples_2learnAdd_8cpp-example.html#a1">examples/learnAdd.cpp</a>.</dl>
 </div>
 </div><p>
-<a class="anchor" name="45c7645d4affe65752d37cd230afba24"></a><!-- doxytag: member="neuralpp::NeuralNet::initXML" ref="45c7645d4affe65752d37cd230afba24" args="(string &amp;xml)" -->
+<a class="anchor" name="96da6712a72051cf34ad961761ef6e08"></a><!-- doxytag: member="neuralpp::NeuralNet::initXML" ref="96da6712a72051cf34ad961761ef6e08" args="(std::string &amp;xml)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">static void neuralpp::NeuralNet::initXML           </td>
           <td>(</td>
-          <td class="paramtype">string &amp;&nbsp;</td>
+          <td class="paramtype">std::string &amp;&nbsp;</td>
           <td class="paramname"> <em>xml</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td><code> [static]</code></td>
@@ -692,12 +730,12 @@ Initialize the training XML for the neural network.
 
 </div>
 </div><p>
-<a class="anchor" name="e07af23ceb8666518da0c035bf1e0376"></a><!-- doxytag: member="neuralpp::NeuralNet::split" ref="e07af23ceb8666518da0c035bf1e0376" args="(char delim, string str)" -->
+<a class="anchor" name="83c6555520856d5867752904349ab6ca"></a><!-- doxytag: member="neuralpp::NeuralNet::split" ref="83c6555520856d5867752904349ab6ca" args="(char delim, std::string str)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">static vector&lt;double&gt; neuralpp::NeuralNet::split           </td>
+          <td class="memname">static std::vector&lt;double&gt; neuralpp::NeuralNet::split           </td>
           <td>(</td>
           <td class="paramtype">char&nbsp;</td>
           <td class="paramname"> <em>delim</em>, </td>
@@ -705,7 +743,7 @@ Initialize the training XML for the neural network.
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">string&nbsp;</td>
+          <td class="paramtype">std::string&nbsp;</td>
           <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -730,20 +768,20 @@ Splits a string into a vector of doubles, given a delimitator.
 
 </div>
 </div><p>
-<a class="anchor" name="4be31ecb0b543a192997bd83c6995ccb"></a><!-- doxytag: member="neuralpp::NeuralNet::XMLFromSet" ref="4be31ecb0b543a192997bd83c6995ccb" args="(int id, string set)" -->
+<a class="anchor" name="0a2733037af912b3e6a10146e7b7172f"></a><!-- doxytag: member="neuralpp::NeuralNet::XMLFromSet" ref="0a2733037af912b3e6a10146e7b7172f" args="(int &amp;id, std::string set)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">static string neuralpp::NeuralNet::XMLFromSet           </td>
+          <td class="memname">static std::string neuralpp::NeuralNet::XMLFromSet           </td>
           <td>(</td>
-          <td class="paramtype">int&nbsp;</td>
+          <td class="paramtype">int &amp;&nbsp;</td>
           <td class="paramname"> <em>id</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">string&nbsp;</td>
+          <td class="paramtype">std::string&nbsp;</td>
           <td class="paramname"> <em>set</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -768,14 +806,14 @@ Get a training set from a string and copies it to an XML For example, these stri
 
 </div>
 </div><p>
-<a class="anchor" name="28b9966c5f197b8e86d57dd104aa32a6"></a><!-- doxytag: member="neuralpp::NeuralNet::closeXML" ref="28b9966c5f197b8e86d57dd104aa32a6" args="(string &amp;xml)" -->
+<a class="anchor" name="e17732ed578bc4bd6032bfae58a5cf51"></a><!-- doxytag: member="neuralpp::NeuralNet::closeXML" ref="e17732ed578bc4bd6032bfae58a5cf51" args="(std::string &amp;xml)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">static void neuralpp::NeuralNet::closeXML           </td>
           <td>(</td>
-          <td class="paramtype">string &amp;&nbsp;</td>
+          <td class="paramtype">std::string &amp;&nbsp;</td>
           <td class="paramname"> <em>xml</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td><code> [static]</code></td>
@@ -841,12 +879,27 @@ Closes an open XML document generated by "initXML" and "XMLFromSet".
 
 </div>
 </div><p>
-<a class="anchor" name="261f5f68fcc5be54250cfa03945266dd"></a><!-- doxytag: member="neuralpp::NeuralNet::ex" ref="261f5f68fcc5be54250cfa03945266dd" args="" -->
+<a class="anchor" name="327dbfdd72b0a74293f8f29630525aa3"></a><!-- doxytag: member="neuralpp::NeuralNet::threshold" ref="327dbfdd72b0a74293f8f29630525aa3" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double <a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">neuralpp::NeuralNet::ex</a><code> [private]</code>          </td>
+          <td class="memname">double <a class="el" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">neuralpp::NeuralNet::threshold</a><code> [private]</code>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="a9e4ff43427f56663739c4c7450de8ee"></a><!-- doxytag: member="neuralpp::NeuralNet::expect" ref="a9e4ff43427f56663739c4c7450de8ee" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;double&gt; <a class="el" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">neuralpp::NeuralNet::expect</a><code> [private]</code>          </td>
         </tr>
       </table>
 </div>
@@ -921,7 +974,7 @@ Private pointer to function, containing the function to be used as activation fu
 <hr>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1Neuron-members.html b/doc/html/classneuralpp_1_1Neuron-members.html
index 9cf0b19..87dfe46 100644
--- a/doc/html/classneuralpp_1_1Neuron-members.html
+++ b/doc/html/classneuralpp_1_1Neuron-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -27,23 +28,24 @@
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#eec680c47272b2465e8d8a998c359853">actv_val</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#55993867179f0ac7d1e0e2c460ceb611">getActv</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9">getProp</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">in</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#9863a08b73bc97c8b514aca6c580ff7b">Neuron</a>(double(*a)(double))</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#f1bf19ec93174f60b368ee4a91b03f46">Neuron</a>(vector&lt; Synapsis &gt; in, vector&lt; Synapsis &gt; out, double(*a)(double))</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">in</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#c9bd4f5f618fcf1adcebf1ab63ee0960">Neuron</a>(double(*a)(double), double th=0.0)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#d15e96b0316d880953288cc6e2550bec">Neuron</a>(std::vector&lt; Synapsis &gt; in, std::vector&lt; Synapsis &gt; out, double(*a)(double), double th=0.0)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#ad97f1a082d5f969eb4c69ab454ecfbb">nIn</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#fe458021e3b20d58dc608fb94ae2135b">nOut</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">out</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">out</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">prop_val</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#8b0ca61cd0e047c8691ab39aae56dbda">propagate</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#583ada6e1dd3f2e113415b4d89196e62">push_in</a>(Synapsis &amp;s)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#bca65db84f56f9d40694bfbcd25812cb">push_out</a>(Synapsis &amp;s)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#928d9bf5aed600119c640779e4034f30">propagate</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#4d252151c35839975838539d846d70be">push_in</a>(Synapsis s)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#2c0acb0e6d413c4e0fc9e7939da1a684">push_out</a>(Synapsis s)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd">setActv</a>(double a)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#aa6e58f073a76b3481fea9115a4e6ea6">setProp</a>(double p)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#2e2ccb69277fc3d992a3a3f2360ed154">synClear</a>()</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#29f2d9dcc4ca34f224d4dc39bb2f180a">synIn</a>(size_t i)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe">synOut</a>(size_t i)</td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">threshold</a></td><td><a class="el" href="classneuralpp_1_1Neuron.html">neuralpp::Neuron</a></td><td><code> [private]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1Neuron.html b/doc/html/classneuralpp_1_1Neuron.html
index 7876daf..f7d733f 100644
--- a/doc/html/classneuralpp_1_1Neuron.html
+++ b/doc/html/classneuralpp_1_1Neuron.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -34,24 +35,24 @@
 <a href="classneuralpp_1_1Neuron-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#9863a08b73bc97c8b514aca6c580ff7b">Neuron</a> (double(*a)(double))</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#c9bd4f5f618fcf1adcebf1ab63ee0960">Neuron</a> (double(*a)(double), double th=0.0)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#9863a08b73bc97c8b514aca6c580ff7b"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#f1bf19ec93174f60b368ee4a91b03f46">Neuron</a> (vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">in</a>, vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">out</a>, double(*a)(double))</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#c9bd4f5f618fcf1adcebf1ab63ee0960"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#d15e96b0316d880953288cc6e2550bec">Neuron</a> (std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">in</a>, std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">out</a>, double(*a)(double), double th=0.0)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Alternative constructor, that gets also the synapsis linked to the neuron.  <a href="#f1bf19ec93174f60b368ee4a91b03f46"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Alternative constructor, that gets also the synapsis linked to the neuron.  <a href="#d15e96b0316d880953288cc6e2550bec"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#29f2d9dcc4ca34f224d4dc39bb2f180a">synIn</a> (size_t i)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the i-th synapsis connected on the input of the neuron.  <a href="#29f2d9dcc4ca34f224d4dc39bb2f180a"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe">synOut</a> (size_t i)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the i-th synapsis connected on the output of the neuron.  <a href="#655f1637e1b754461413ac7fc2ffeebe"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#583ada6e1dd3f2e113415b4d89196e62">push_in</a> (<a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;s)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#4d252151c35839975838539d846d70be">push_in</a> (<a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> s)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It pushes a new input synapsis.  <a href="#583ada6e1dd3f2e113415b4d89196e62"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#bca65db84f56f9d40694bfbcd25812cb">push_out</a> (<a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It pushes a new input synapsis.  <a href="#4d252151c35839975838539d846d70be"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#2c0acb0e6d413c4e0fc9e7939da1a684">push_out</a> (<a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> s)</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It pushes a new output synapsis.  <a href="#bca65db84f56f9d40694bfbcd25812cb"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It pushes a new output synapsis.  <a href="#2c0acb0e6d413c4e0fc9e7939da1a684"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd">setActv</a> (double a)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change the activation value of the neuron.  <a href="#ddf00ffef030b27ed11901aad08822bd"></a><br></td></tr>
@@ -64,9 +65,9 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9">getProp</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the propagation value of the neuron.  <a href="#57c022f82213f662e2a263fc134a3fc9"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#8b0ca61cd0e047c8691ab39aae56dbda">propagate</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#928d9bf5aed600119c640779e4034f30">propagate</a> ()</td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It propagates its activation value to the connected neurons.  <a href="#8b0ca61cd0e047c8691ab39aae56dbda"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute the propagation value of the neuron and set it.  <a href="#928d9bf5aed600119c640779e4034f30"></a><br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#ad97f1a082d5f969eb4c69ab454ecfbb">nIn</a> ()</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of input synapsis for the neuron.  <a href="#ad97f1a082d5f969eb4c69ab454ecfbb"></a><br></td></tr>
@@ -81,9 +82,11 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">prop_val</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">in</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">threshold</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">out</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">in</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">out</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Neuron.html#198ddd0d11a26d0052d52b787d6a0df0">actv_f</a> )(double)</td></tr>
 
@@ -92,7 +95,7 @@
 Class for managing neurons. 
 <p>
 Don't use this class directly unless you know what you're doing, use <a class="el" href="classneuralpp_1_1NeuralNet.html" title="Main project&#39;s class.">NeuralNet</a> instead <hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a class="anchor" name="9863a08b73bc97c8b514aca6c580ff7b"></a><!-- doxytag: member="neuralpp::Neuron::Neuron" ref="9863a08b73bc97c8b514aca6c580ff7b" args="(double(*a)(double))" -->
+<a class="anchor" name="c9bd4f5f618fcf1adcebf1ab63ee0960"></a><!-- doxytag: member="neuralpp::Neuron::Neuron" ref="c9bd4f5f618fcf1adcebf1ab63ee0960" args="(double(*a)(double), double th=0.0)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -100,9 +103,18 @@ Don't use this class directly unless you know what you're doing, use <a class="e
           <td class="memname">neuralpp::Neuron::Neuron           </td>
           <td>(</td>
           <td class="paramtype">double(*)(double)&nbsp;</td>
-          <td class="paramname"> <em>a</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
+          <td class="paramname"> <em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
           <td></td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>th</em> = <code>0.0</code></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
         </tr>
       </table>
 </div>
@@ -114,32 +126,39 @@ Constructor.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>Activation function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>th</em>&nbsp;</td><td>Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values </td></tr>
   </table>
 </dl>
 
 </div>
 </div><p>
-<a class="anchor" name="f1bf19ec93174f60b368ee4a91b03f46"></a><!-- doxytag: member="neuralpp::Neuron::Neuron" ref="f1bf19ec93174f60b368ee4a91b03f46" args="(vector&lt; Synapsis &gt; in, vector&lt; Synapsis &gt; out, double(*a)(double))" -->
+<a class="anchor" name="d15e96b0316d880953288cc6e2550bec"></a><!-- doxytag: member="neuralpp::Neuron::Neuron" ref="d15e96b0316d880953288cc6e2550bec" args="(std::vector&lt; Synapsis &gt; in, std::vector&lt; Synapsis &gt; out, double(*a)(double), double th=0.0)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">neuralpp::Neuron::Neuron           </td>
           <td>(</td>
-          <td class="paramtype">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td>
           <td class="paramname"> <em>in</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt;&nbsp;</td>
           <td class="paramname"> <em>out</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
           <td class="paramtype">double(*)(double)&nbsp;</td>
-          <td class="paramname"> <em>a</em></td><td>&nbsp;</td>
+          <td class="paramname"> <em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>th</em> = <code>0.0</code></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -158,6 +177,7 @@ Alternative constructor, that gets also the synapsis linked to the neuron.
     <tr><td valign="top"></td><td valign="top"><em>in</em>&nbsp;</td><td>Input synapses </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>Output synapses </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>Activation function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>th</em>&nbsp;</td><td>Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values </td></tr>
   </table>
 </dl>
 
@@ -220,14 +240,14 @@ Get the i-th synapsis connected on the output of the neuron.
 
 </div>
 </div><p>
-<a class="anchor" name="583ada6e1dd3f2e113415b4d89196e62"></a><!-- doxytag: member="neuralpp::Neuron::push_in" ref="583ada6e1dd3f2e113415b4d89196e62" args="(Synapsis &amp;s)" -->
+<a class="anchor" name="4d252151c35839975838539d846d70be"></a><!-- doxytag: member="neuralpp::Neuron::push_in" ref="4d252151c35839975838539d846d70be" args="(Synapsis s)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void neuralpp::Neuron::push_in           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;&nbsp;</td>
+          <td class="paramtype"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a>&nbsp;</td>
           <td class="paramname"> <em>s</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td></td>
@@ -247,14 +267,14 @@ It pushes a new input synapsis.
 
 </div>
 </div><p>
-<a class="anchor" name="bca65db84f56f9d40694bfbcd25812cb"></a><!-- doxytag: member="neuralpp::Neuron::push_out" ref="bca65db84f56f9d40694bfbcd25812cb" args="(Synapsis &amp;s)" -->
+<a class="anchor" name="2c0acb0e6d413c4e0fc9e7939da1a684"></a><!-- doxytag: member="neuralpp::Neuron::push_out" ref="2c0acb0e6d413c4e0fc9e7939da1a684" args="(Synapsis s)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void neuralpp::Neuron::push_out           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &amp;&nbsp;</td>
+          <td class="paramtype"><a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a>&nbsp;</td>
           <td class="paramname"> <em>s</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td></td>
@@ -372,12 +392,12 @@ Get the propagation value of the neuron.
 
 </div>
 </div><p>
-<a class="anchor" name="8b0ca61cd0e047c8691ab39aae56dbda"></a><!-- doxytag: member="neuralpp::Neuron::propagate" ref="8b0ca61cd0e047c8691ab39aae56dbda" args="()" -->
+<a class="anchor" name="928d9bf5aed600119c640779e4034f30"></a><!-- doxytag: member="neuralpp::Neuron::propagate" ref="928d9bf5aed600119c640779e4034f30" args="()" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double neuralpp::Neuron::propagate           </td>
+          <td class="memname">void neuralpp::Neuron::propagate           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
@@ -388,7 +408,7 @@ Get the propagation value of the neuron.
 <div class="memdoc">
 
 <p>
-It propagates its activation value to the connected neurons. 
+Compute the propagation value of the neuron and set it. 
 <p>
 
 </div>
@@ -489,12 +509,12 @@ Remove input and output synapsis from a neuron.
 
 </div>
 </div><p>
-<a class="anchor" name="ead827210fa18c2baae03927b2c798ff"></a><!-- doxytag: member="neuralpp::Neuron::in" ref="ead827210fa18c2baae03927b2c798ff" args="" -->
+<a class="anchor" name="7b16632868821d73dedcb8edaf6dbbef"></a><!-- doxytag: member="neuralpp::Neuron::threshold" ref="7b16632868821d73dedcb8edaf6dbbef" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">neuralpp::Neuron::in</a><code> [private]</code>          </td>
+          <td class="memname">double <a class="el" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">neuralpp::Neuron::threshold</a><code> [private]</code>          </td>
         </tr>
       </table>
 </div>
@@ -504,12 +524,27 @@ Remove input and output synapsis from a neuron.
 
 </div>
 </div><p>
-<a class="anchor" name="82a4297f84d6403e52a8386d26117b4f"></a><!-- doxytag: member="neuralpp::Neuron::out" ref="82a4297f84d6403e52a8386d26117b4f" args="" -->
+<a class="anchor" name="bd07357465bb7b29bb344400e9e08710"></a><!-- doxytag: member="neuralpp::Neuron::in" ref="bd07357465bb7b29bb344400e9e08710" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">neuralpp::Neuron::out</a><code> [private]</code>          </td>
+          <td class="memname">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">neuralpp::Neuron::in</a><code> [private]</code>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="982aceef324b7764e778d5949720bc55"></a><!-- doxytag: member="neuralpp::Neuron::out" ref="982aceef324b7764e778d5949720bc55" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; <a class="el" href="classneuralpp_1_1Synapsis.html">Synapsis</a> &gt; <a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">neuralpp::Neuron::out</a><code> [private]</code>          </td>
         </tr>
       </table>
 </div>
@@ -537,7 +572,7 @@ Remove input and output synapsis from a neuron.
 <hr>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1Synapsis-members.html b/doc/html/classneuralpp_1_1Synapsis-members.html
index 8ac38b0..95d5289 100644
--- a/doc/html/classneuralpp_1_1Synapsis-members.html
+++ b/doc/html/classneuralpp_1_1Synapsis-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -25,13 +26,13 @@
 <h1>neuralpp::Synapsis Member List</h1>This is the complete list of members for <a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a>, including all inherited members.<p><table>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#2539b9eef2ff0f3522aea8d89e394f02">actv_f</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">delta</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#18f15b920609be8b818d43a0227aada5">getDelta</a>()</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#5ba8a93a5741f4855390eb8a46e99435">getIn</a>()</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#61c9a04e03291a01f44520cef143cbdd">getOut</a>()</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#2fe3e9ec97542f1476d8b9306aa09756">getPrevDelta</a>()</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#aa79c16ec6b59949e5d2f75a3f10d530">getWeight</a>()</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#00c8e9c0804662f2b3247d6dddb4ca6c">getDelta</a>() const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#298fd3c7483ad572899fecec01ac8fdf">getIn</a>() const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#b46d876761a73a24db87f5a144a0e899">getOut</a>() const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#0148b9c8db870c928711168702ae51c5">getPrevDelta</a>() const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#bcbf7228632ff4d6bbb67703323d2db0">getWeight</a>() const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">in</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#ecdb17182de791f7fdd417232e184350">momentum</a>(int N, int x)</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#cff10a022d4c021688e4df944c05d8bd">momentum</a>(int N, int x) const </td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">out</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#65471cd6c9ef87609dfa4b0e5fafa708">prev_delta</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1">setDelta</a>(double d)</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
@@ -41,7 +42,7 @@
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#af6b80ab3203bccd2ee4a36f06537517">Synapsis</a>(Neuron *i, Neuron *o, double w, double(*a)(double))</td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">weight</a></td><td><a class="el" href="classneuralpp_1_1Synapsis.html">neuralpp::Synapsis</a></td><td><code> [private]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/classneuralpp_1_1Synapsis.html b/doc/html/classneuralpp_1_1Synapsis.html
index 699c724..98cb71e 100644
--- a/doc/html/classneuralpp_1_1Synapsis.html
+++ b/doc/html/classneuralpp_1_1Synapsis.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -43,9 +44,9 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#af6b80ab3203bccd2ee4a36f06537517">Synapsis</a> (<a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *i, <a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *o, double w, double(*a)(double))</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#af6b80ab3203bccd2ee4a36f06537517"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#5ba8a93a5741f4855390eb8a46e99435">getIn</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#298fd3c7483ad572899fecec01ac8fdf">getIn</a> () const </td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#61c9a04e03291a01f44520cef143cbdd">getOut</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classneuralpp_1_1Neuron.html">Neuron</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#b46d876761a73a24db87f5a144a0e899">getOut</a> () const </td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#acee77d0fdf9889464ab5ed27beae0ff">setWeight</a> (double w)  throw (InvalidSynapticalWeightException)</td></tr>
 
@@ -53,18 +54,18 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1">setDelta</a> (double d)  throw (InvalidSynapticalWeightException)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">It sets the delta (how much to change the weight after an update) of the synapsis.  <a href="#429ad5b25930faf436a9d725582802e1"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#aa79c16ec6b59949e5d2f75a3f10d530">getWeight</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#bcbf7228632ff4d6bbb67703323d2db0">getWeight</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the weight of the synapsis.  <a href="#aa79c16ec6b59949e5d2f75a3f10d530"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#18f15b920609be8b818d43a0227aada5">getDelta</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the weight of the synapsis.  <a href="#bcbf7228632ff4d6bbb67703323d2db0"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#00c8e9c0804662f2b3247d6dddb4ca6c">getDelta</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the delta of the synapsis.  <a href="#18f15b920609be8b818d43a0227aada5"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#2fe3e9ec97542f1476d8b9306aa09756">getPrevDelta</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the delta of the synapsis.  <a href="#00c8e9c0804662f2b3247d6dddb4ca6c"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#0148b9c8db870c928711168702ae51c5">getPrevDelta</a> () const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the delta of the synapsis at the previous iteration.  <a href="#2fe3e9ec97542f1476d8b9306aa09756"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#ecdb17182de791f7fdd417232e184350">momentum</a> (int N, int x)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the delta of the synapsis at the previous iteration.  <a href="#0148b9c8db870c928711168702ae51c5"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#cff10a022d4c021688e4df944c05d8bd">momentum</a> (int N, int x) const </td></tr>
 
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the inertial momentum of a synapsis.  <a href="#ecdb17182de791f7fdd417232e184350"></a><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the inertial momentum of a synapsis.  <a href="#cff10a022d4c021688e4df944c05d8bd"></a><br></td></tr>
 <tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">delta</a></td></tr>
 
@@ -230,7 +231,7 @@ Constructor.
 </div>
 </div><p>
 <hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="5ba8a93a5741f4855390eb8a46e99435"></a><!-- doxytag: member="neuralpp::Synapsis::getIn" ref="5ba8a93a5741f4855390eb8a46e99435" args="()" -->
+<a class="anchor" name="298fd3c7483ad572899fecec01ac8fdf"></a><!-- doxytag: member="neuralpp::Synapsis::getIn" ref="298fd3c7483ad572899fecec01ac8fdf" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -239,7 +240,7 @@ Constructor.
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td></td>
+          <td> const</td>
         </tr>
       </table>
 </div>
@@ -250,7 +251,7 @@ Constructor.
 
 </div>
 </div><p>
-<a class="anchor" name="61c9a04e03291a01f44520cef143cbdd"></a><!-- doxytag: member="neuralpp::Synapsis::getOut" ref="61c9a04e03291a01f44520cef143cbdd" args="()" -->
+<a class="anchor" name="b46d876761a73a24db87f5a144a0e899"></a><!-- doxytag: member="neuralpp::Synapsis::getOut" ref="b46d876761a73a24db87f5a144a0e899" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -259,7 +260,7 @@ Constructor.
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td></td>
+          <td> const</td>
         </tr>
       </table>
 </div>
@@ -280,7 +281,7 @@ Constructor.
           <td class="paramtype">double&nbsp;</td>
           <td class="paramname"> <em>w</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td>  throw (InvalidSynapticalWeightException)</td>
+          <td>  throw (<a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">InvalidSynapticalWeightException</a>)</td>
         </tr>
       </table>
 </div>
@@ -307,7 +308,7 @@ Set the weight of the synapsis.
           <td class="paramtype">double&nbsp;</td>
           <td class="paramname"> <em>d</em>          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td>  throw (InvalidSynapticalWeightException)</td>
+          <td>  throw (<a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">InvalidSynapticalWeightException</a>)</td>
         </tr>
       </table>
 </div>
@@ -324,7 +325,7 @@ It sets the delta (how much to change the weight after an update) of the synapsi
 
 </div>
 </div><p>
-<a class="anchor" name="aa79c16ec6b59949e5d2f75a3f10d530"></a><!-- doxytag: member="neuralpp::Synapsis::getWeight" ref="aa79c16ec6b59949e5d2f75a3f10d530" args="()" -->
+<a class="anchor" name="bcbf7228632ff4d6bbb67703323d2db0"></a><!-- doxytag: member="neuralpp::Synapsis::getWeight" ref="bcbf7228632ff4d6bbb67703323d2db0" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -333,7 +334,7 @@ It sets the delta (how much to change the weight after an update) of the synapsi
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td></td>
+          <td> const</td>
         </tr>
       </table>
 </div>
@@ -346,7 +347,7 @@ Return the weight of the synapsis.
 
 </div>
 </div><p>
-<a class="anchor" name="18f15b920609be8b818d43a0227aada5"></a><!-- doxytag: member="neuralpp::Synapsis::getDelta" ref="18f15b920609be8b818d43a0227aada5" args="()" -->
+<a class="anchor" name="00c8e9c0804662f2b3247d6dddb4ca6c"></a><!-- doxytag: member="neuralpp::Synapsis::getDelta" ref="00c8e9c0804662f2b3247d6dddb4ca6c" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -355,7 +356,7 @@ Return the weight of the synapsis.
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td></td>
+          <td> const</td>
         </tr>
       </table>
 </div>
@@ -368,7 +369,7 @@ Return the delta of the synapsis.
 
 </div>
 </div><p>
-<a class="anchor" name="2fe3e9ec97542f1476d8b9306aa09756"></a><!-- doxytag: member="neuralpp::Synapsis::getPrevDelta" ref="2fe3e9ec97542f1476d8b9306aa09756" args="()" -->
+<a class="anchor" name="0148b9c8db870c928711168702ae51c5"></a><!-- doxytag: member="neuralpp::Synapsis::getPrevDelta" ref="0148b9c8db870c928711168702ae51c5" args="() const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -377,7 +378,7 @@ Return the delta of the synapsis.
           <td>(</td>
           <td class="paramname">          </td>
           <td>&nbsp;)&nbsp;</td>
-          <td></td>
+          <td> const</td>
         </tr>
       </table>
 </div>
@@ -390,7 +391,7 @@ Get the delta of the synapsis at the previous iteration.
 
 </div>
 </div><p>
-<a class="anchor" name="ecdb17182de791f7fdd417232e184350"></a><!-- doxytag: member="neuralpp::Synapsis::momentum" ref="ecdb17182de791f7fdd417232e184350" args="(int N, int x)" -->
+<a class="anchor" name="cff10a022d4c021688e4df944c05d8bd"></a><!-- doxytag: member="neuralpp::Synapsis::momentum" ref="cff10a022d4c021688e4df944c05d8bd" args="(int N, int x) const " -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -409,7 +410,7 @@ Get the delta of the synapsis at the previous iteration.
         <tr>
           <td></td>
           <td>)</td>
-          <td></td><td></td><td></td>
+          <td></td><td></td><td> const</td>
         </tr>
       </table>
 </div>
@@ -522,7 +523,7 @@ This value is inversely proportional to the number of steps done in the learning
 <hr>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/examples.html b/doc/html/examples.html
new file mode 100644
index 0000000..f8793be
--- /dev/null
+++ b/doc/html/examples.html
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: Examples</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li class="current"><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>Examples</h1>Here is a list of all examples:<ul>
+<li><a class="el" href="examples_2adderFromScratch_8cpp-example.html">examples/adderFromScratch.cpp</a>
+<li><a class="el" href="examples_2doAdd_8cpp-example.html">examples/doAdd.cpp</a>
+<li><a class="el" href="examples_2learnAdd_8cpp-example.html">examples/learnAdd.cpp</a>
+</ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/examples_2adderFromScratch_8cpp-example.html b/doc/html/examples_2adderFromScratch_8cpp-example.html
new file mode 100644
index 0000000..50ee45a
--- /dev/null
+++ b/doc/html/examples_2adderFromScratch_8cpp-example.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: examples/adderFromScratch.cpp</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>examples/adderFromScratch.cpp</h1>Similar to learnAdd.cpp, but this time the training XML is generated as a string and not saved to a file, and parsed by the program itself to build the network. Then, the program asks two real numbers, and performs both the sum and the difference between them, putting the sum's output on the first output neuron and the difference's on the second output neuron. Anyway, using more than one neuron in the output layer is strongly discouraged, as the network usually won't set correctly the synaptical weights to give satisfying and accurate answers for all of the operations.<p>
+<div class="fragment"><pre class="fragment">
+<span class="preprocessor">#include &lt;iostream&gt;</span>
+<span class="preprocessor">#include &lt;<a class="code" href="neural_09_09_8hpp.html">neural++.hpp</a>&gt;</span>
+
+<span class="keyword">using namespace </span>std;
+<span class="keyword">using namespace </span>neuralpp;
+
+<span class="keywordtype">int</span> main()  {
+        <a name="_a0"></a><a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a> net(2, 2, 2, 0.005, 100);
+        <span class="keywordtype">string</span> xml;
+        <span class="keywordtype">double</span> tmp;
+        <span class="keywordtype">int</span> <span class="keywordtype">id</span> = 0;
+
+        <span class="comment">// XML initialization. Then, I say XML that 2+3=5, 3+3=6, 5+4=9</span>
+        <span class="comment">// Strings' format is "input1,input2,...,inputn;output1,output2,...,outputm</span>
+        NeuralNet::initXML(xml);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"3,2;5,1"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"4,2;6,2"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"6,3;9,3"</span>);
+        NeuralNet::closeXML(xml);
+        cout &lt;&lt; xml &lt;&lt; endl;
+        
+        net.<a name="a1"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd" title="Train a network using a training set loaded from an XML file.">train</a>(xml, NeuralNet::str);
+        vector&lt;double&gt; v;
+        cout &lt;&lt; <span class="stringliteral">"Network status: trained\n\n"</span>;
+
+        cout &lt;&lt; <span class="stringliteral">"First number to add: "</span>;
+        cin &gt;&gt; tmp;
+        v.push_back(tmp);
+
+        cout &lt;&lt; <span class="stringliteral">"Second number to add: "</span>;
+        cin &gt;&gt; tmp;
+        v.push_back(tmp);
+
+        net.<a name="a2"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17" title="It sets the input for the network.">setInput</a>(v);
+        net.<a name="a3"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890" title="It propagates values through the network.">propagate</a>();
+        cout &lt;&lt; <span class="stringliteral">"Output: "</span> &lt;&lt; net.<a name="a4"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c" title="It gets the output of the network in case the output layer contains more neurons...">getOutputs</a>()[0] &lt;&lt; <span class="stringliteral">"; "</span> &lt;&lt; net.<a class="code" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c" title="It gets the output of the network in case the output layer contains more neurons...">getOutputs</a>()[1] &lt;&lt; endl;
+        <span class="keywordflow">return</span> 0;
+}
+
+</pre></div> </div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/examples_2doAdd_8cpp-example.html b/doc/html/examples_2doAdd_8cpp-example.html
new file mode 100644
index 0000000..4bd7c74
--- /dev/null
+++ b/doc/html/examples_2doAdd_8cpp-example.html
@@ -0,0 +1,68 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: examples/doAdd.cpp</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>examples/doAdd.cpp</h1>Show how to use a network already trained and saved to a binary file. In this case, a network trained to simply perform sums between two real numbers, that should have already been created using learnAdd.<p>
+<div class="fragment"><pre class="fragment">
+<span class="preprocessor">#include &lt;iostream&gt;</span>
+<span class="preprocessor">#include &lt;<a class="code" href="neural_09_09_8hpp.html">neural++.hpp</a>&gt;</span>
+
+<span class="keyword">using namespace </span>std;
+<span class="keyword">using namespace </span>neuralpp;
+
+<span class="preprocessor">#define NETFILE "adder.net"</span>
+<span class="preprocessor"></span>
+<span class="keywordtype">int</span> main()  {
+        <span class="keywordtype">double</span> a,b;
+        <a name="_a0"></a><a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a> net;
+
+        <span class="comment">// Load the pre-trained network from "adder.net" file</span>
+        <span class="keywordflow">try</span>  {
+                net = <a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a>(NETFILE);
+        }
+
+        <span class="keywordflow">catch</span> (<a name="_a1"></a><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html" title="Exception thrown when doing an attempt to load a network from an invalid file.">NetworkFileNotFoundException</a> e)  {
+                cerr &lt;&lt; <span class="stringliteral">"Fatal error while opening "</span> &lt;&lt; NETFILE &lt;&lt; <span class="stringliteral">": "</span> &lt;&lt; e.<a name="a2"></a><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">what</a>();
+                <span class="keywordflow">return</span> 1;
+        }
+
+        cout &lt;&lt; <span class="stringliteral">"First number to add: "</span>;
+        cin &gt;&gt; a;
+
+        cout &lt;&lt; <span class="stringliteral">"Second number to add: "</span>;
+        cin &gt;&gt; b;
+
+        vector&lt;double&gt; v;
+        v.push_back(a);
+        v.push_back(b);
+
+        <span class="comment">// Set the numbers just read as input values, propagate those values, and get</span>
+        <span class="comment">// the output</span>
+        net.<a name="a3"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17" title="It sets the input for the network.">setInput</a>(v);
+        net.<a name="a4"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890" title="It propagates values through the network.">propagate</a>();
+        cout &lt;&lt; <span class="stringliteral">"Neural net output: "</span> &lt;&lt; net.<a name="a5"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810" title="It gets the output of the network (note: the layer output should contain an only...">getOutput</a>() &lt;&lt; endl;
+
+        <span class="keywordflow">return</span> 0;
+}
+
+</pre></div> </div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/examples_2learnAdd_8cpp-example.html b/doc/html/examples_2learnAdd_8cpp-example.html
new file mode 100644
index 0000000..42a06c9
--- /dev/null
+++ b/doc/html/examples_2learnAdd_8cpp-example.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>Neural++: examples/learnAdd.cpp</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.6 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>examples/learnAdd.cpp</h1>Show how to train a network that performs sums between two real numbers. The training XML is built from scratch, then saved to a file, then the network is initialized using that XML file, trained, and the resulting trained network is saved to adder.net. Then, you should take a look at doAdd.cpp to see how to use that file to use the network.<p>
+<div class="fragment"><pre class="fragment">
+<span class="preprocessor">#include &lt;iostream&gt;</span>
+<span class="preprocessor">#include &lt;fstream&gt;</span>
+<span class="preprocessor">#include &lt;ctime&gt;</span>
+<span class="preprocessor">#include &lt;<a class="code" href="neural_09_09_8hpp.html">neural++.hpp</a>&gt;</span>
+
+<span class="keyword">using namespace </span>std;
+<span class="keyword">using namespace </span>neuralpp;
+
+<span class="keywordtype">int</span> main()  {
+        <span class="keywordtype">int</span> <span class="keywordtype">id</span> = 0;
+        <span class="keywordtype">string</span> xml;
+        time_t t1, t2;
+
+        <span class="comment">// Create the neural network. The network is going to have</span>
+        <span class="comment">// =&gt; 2 neurons for the input layer</span>
+        <span class="comment">// =&gt; 2 neurons for the hidden layer</span>
+        <span class="comment">// =&gt; 1 neuron  for the output layer</span>
+        <span class="comment">// =&gt; a learning rate == 0.005 (just get it doing some tests until satisfied)</span>
+        <span class="comment">// =&gt; 1000 learning steps (i.e. the network will be ready after 1000 training steps to adjust the synaptical weights</span>
+        <span class="comment">// =&gt; 0.1 as neural threshold (the threshold above which a neuron activates)</span>
+        <a name="_a0"></a><a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a> net(2, 2, 1, 0.005, 1000, 0.1);
+
+        <span class="comment">// Initialize a training XML as a string in 'xml'</span>
+        NeuralNet::initXML(xml);
+
+        <span class="comment">// Build some training sets for the XML. The format is:</span>
+        <span class="comment">// "input1,input2,...,inputn;output1,output2,...,outputn</span>
+        <span class="comment">// The 'id' variable is passed as reference, starting from 0,</span>
+        <span class="comment">// and it's used to enumerate the sets in the XML file.</span>
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"2,3;5"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"3,2;5"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"6,2;8"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"2,2;4"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"1,2;3"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"-1,-2;-3"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"8,9;17"</span>);
+        xml += NeuralNet::XMLFromSet(<span class="keywordtype">id</span>, <span class="stringliteral">"10,10;20"</span>);
+        NeuralNet::closeXML(xml);
+
+        <span class="comment">// Save the XML string just created to a file</span>
+        ofstream out(<span class="stringliteral">"adder.xml"</span>);
+        out &lt;&lt; xml;
+        out.close();
+        cout &lt;&lt; <span class="stringliteral">"Training file adder.xml has been written\n"</span>;
+
+        <span class="comment">// Start the training from the XML file</span>
+        t1 = time(NULL);
+        cout &lt;&lt; <span class="stringliteral">"Training in progress - This may take a while...\n"</span>;
+        net.<a name="a1"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd" title="Train a network using a training set loaded from an XML file.">train</a>(<span class="stringliteral">"adder.xml"</span>, NeuralNet::file);
+        t2 = time(NULL);
+
+        <span class="comment">// Save the trained network to a binary file, that can be reloaded from any</span>
+        <span class="comment">// application that is going to use that network</span>
+        net.<a name="a2"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407" title="Save a trained neural network to a binary file.">save</a>(<span class="stringliteral">"adder.net"</span>);
+        cout &lt;&lt; <span class="stringliteral">"Network trained in "</span> &lt;&lt; (t2-t1) &lt;&lt; <span class="stringliteral">" seconds. You can use adder.net file now to load this network\n"</span>;
+        <span class="keywordflow">return</span> 0;
+}
+
+</pre></div> </div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
+</body>
+</html>
diff --git a/doc/html/files.html b/doc/html/files.html
index c4ab411..47d4825 100644
--- a/doc/html/files.html
+++ b/doc/html/files.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -28,7 +29,7 @@
   <tr><td class="indexkey"><a class="el" href="neural_09_09__exception_8hpp.html">neural++_exception.hpp</a> <a href="neural_09_09__exception_8hpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
 </table>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions.html b/doc/html/functions.html
index 9227a96..560d017 100644
--- a/doc/html/functions.html
+++ b/doc/html/functions.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -93,7 +94,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#3257cd5f249587254e816d12bd3b0e0d">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x63.html b/doc/html/functions_0x63.html
index 1888fac..97f2db7 100644
--- a/doc/html/functions_0x63.html
+++ b/doc/html/functions_0x63.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -64,11 +65,11 @@ Here is a list of all class members with links to the classes they belong to:
 <li>ClearVirtualParent()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#b70cf4ad47e44a2d4c7f6c06a2ff0659">CMarkup::ElemPos</a>
 <li>closeXML()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#28b9966c5f197b8e86d57dd104aa32a6">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e17732ed578bc4bd6032bfae58a5cf51">neuralpp::NeuralNet</a>
 <li>CMarkup()
 : <a class="el" href="classCMarkup.html#e4dc90b99846d35849bc323064fbafcf">CMarkup</a>
 <li>commitChanges()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#62695a82dfb1df758a44150921aec8e0">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#f697a8d9967ad8f03e5a16a42cd110c5">neuralpp::NeuralNet</a>
 <li>ContentLen()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#9099635ab9239103aa930b2f1a456d2d">CMarkup::ElemPos</a>
 <li>ConvertEncoding()
@@ -77,7 +78,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1NodeStack.html#499a05e053b785df518fb0b6124fd0ee">CMarkup::NodeStack</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x64.html b/doc/html/functions_0x64.html
index c45f500..bd78e0a 100644
--- a/doc/html/functions_0x64.html
+++ b/doc/html/functions_0x64.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -70,7 +71,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#f91e20dfe9e95194e3ca8143eeb889c2">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x65.html b/doc/html/functions_0x65.html
index 7d6dd04..f733c8f 100644
--- a/doc/html/functions_0x65.html
+++ b/doc/html/functions_0x65.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -59,7 +60,7 @@ Here is a list of all class members with links to the classes they belong to:
 <p>
 <h3><a class="anchor" name="index_e">- e -</a></h3><ul>
 <li>elements
-: <a class="el" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">neuralpp::Layer</a>
+: <a class="el" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">neuralpp::Layer</a>
 <li>ElemPos()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#7ba7e4930d77275e80e38ea151b2807b">CMarkup::ElemPos</a>
 <li>EncodeCharUTF16()
@@ -72,17 +73,18 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">neuralpp::netrecord</a>
 , <a class="el" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">neuralpp::NeuralNet</a>
 <li>error()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#0616c51404efaca2714e37dd7478997e">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#8a140d28e6dd4097470c7c138801ad01">neuralpp::NeuralNet</a>
 <li>EscapeText()
 : <a class="el" href="classCMarkup.html#ba91db9799ea46f2594a85f7026b6034">CMarkup</a>
 <li>ex
 : <a class="el" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">neuralpp::netrecord</a>
-, <a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">neuralpp::NeuralNet</a>
+<li>expect
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">neuralpp::NeuralNet</a>
 <li>expected()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x66.html b/doc/html/functions_0x66.html
index 2695797..c8f46db 100644
--- a/doc/html/functions_0x66.html
+++ b/doc/html/functions_0x66.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -72,7 +73,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1FilePos.html#d5d7584cf09fa60ef62f5c764e1ee158">CMarkup::FilePos</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x67.html b/doc/html/functions_0x67.html
index 3d6fb23..f915335 100644
--- a/doc/html/functions_0x67.html
+++ b/doc/html/functions_0x67.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -77,7 +78,7 @@ Here is a list of all class members with links to the classes they belong to:
 <li>GetDeclaredEncoding()
 : <a class="el" href="classCMarkup.html#1f2b3c176609588986004058a77afe27">CMarkup</a>
 <li>getDelta()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#18f15b920609be8b818d43a0227aada5">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#00c8e9c0804662f2b3247d6dddb4ca6c">neuralpp::Synapsis</a>
 <li>GetDoc()
 : <a class="el" href="classCMarkup.html#04364a3697a67d5652b2259bd8b17889">CMarkup</a>
 <li>GetDocFlags()
@@ -86,18 +87,20 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#9dfbb66afa75291b5ed19b51e0f6357b">CMarkup</a>
 <li>GetError()
 : <a class="el" href="classCMarkup.html#15f1042ff13167216b741f360e88f649">CMarkup</a>
+<li>getExpected()
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#51a1851ed07b85bec091c9053ae99cf7">neuralpp::NeuralNet</a>
 <li>getIn()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#5ba8a93a5741f4855390eb8a46e99435">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#298fd3c7483ad572899fecec01ac8fdf">neuralpp::Synapsis</a>
 <li>GetNodeType()
 : <a class="el" href="classCMarkup.html#86a5f997b734d560b3b21c8ef89d3a57">CMarkup</a>
 <li>getOut()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#61c9a04e03291a01f44520cef143cbdd">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#b46d876761a73a24db87f5a144a0e899">neuralpp::Synapsis</a>
 <li>getOutput()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810">neuralpp::NeuralNet</a>
 <li>getOutputs()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#a6b8bf3800b43b58843c65fc431207ae">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c">neuralpp::NeuralNet</a>
 <li>getPrevDelta()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#2fe3e9ec97542f1476d8b9306aa09756">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#0148b9c8db870c928711168702ae51c5">neuralpp::Synapsis</a>
 <li>getProp()
 : <a class="el" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9">neuralpp::Neuron</a>
 <li>GetSize()
@@ -106,11 +109,13 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#9d963c7234a4cecc16d9bd46c32ff87a">CMarkup</a>
 <li>GetTagName()
 : <a class="el" href="classCMarkup.html#0fcd179bb0ba35d6a262d571c1ef1004">CMarkup</a>
+<li>getThreshold()
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e08cdcf4b70f987700e553d9914f6179">neuralpp::NeuralNet</a>
 <li>getWeight()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#aa79c16ec6b59949e5d2f75a3f10d530">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#bcbf7228632ff4d6bbb67703323d2db0">neuralpp::Synapsis</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x68.html b/doc/html/functions_0x68.html
index befbb28..b90465b 100644
--- a/doc/html/functions_0x68.html
+++ b/doc/html/functions_0x68.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -64,7 +65,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structneuralpp_1_1netrecord.html#3c1728ac66c37f6ac85c404d4f55552e">neuralpp::netrecord</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x69.html b/doc/html/functions_0x69.html
index 17e83c2..dcfc975 100644
--- a/doc/html/functions_0x69.html
+++ b/doc/html/functions_0x69.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -68,11 +69,11 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1ElemPos.html#45534bddcab1f12a8452a070368488ca">CMarkup::ElemPos</a>
 <li>in
 : <a class="el" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">neuralpp::Synapsis</a>
-, <a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">neuralpp::Neuron</a>
 <li>InitDocFlags()
 : <a class="el" href="classCMarkup.html#6ce98f8685f47a0d5457ade12a9b500f">CMarkup</a>
 <li>initXML()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#45c7645d4affe65752d37cd230afba24">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#96da6712a72051cf34ad961761ef6e08">neuralpp::NeuralNet</a>
 <li>input
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">neuralpp::NeuralNet</a>
 <li>input_size
@@ -89,6 +90,10 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#8f2a8484e2d4f8a27032f14818d96a66">CMarkup</a>
 <li>IntoElem()
 : <a class="el" href="classCMarkup.html#e6136fa65e4f1927fe763d011d3eb9a3">CMarkup</a>
+<li>InvalidSynapticalWeightException()
+: <a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">neuralpp::InvalidSynapticalWeightException</a>
+<li>InvalidXMLException()
+: <a class="el" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">neuralpp::InvalidXMLException</a>
 <li>iPos
 : <a class="el" href="structCMarkup_1_1SavedPos.html#649563d0d7c11bf2fdebbc0dbe396321">CMarkup::SavedPos</a>
 <li>IsEmptyElement()
@@ -97,7 +102,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#f3a54e13b8565c2789c2c80aa2c9a563">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x6c.html b/doc/html/functions_0x6c.html
index 7503cb1..186aac3 100644
--- a/doc/html/functions_0x6c.html
+++ b/doc/html/functions_0x6c.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -62,7 +63,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">neuralpp::NeuralNet</a>
 , <a class="el" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">neuralpp::netrecord</a>
 <li>Layer()
-: <a class="el" href="classneuralpp_1_1Layer.html#609ed16b8d79dc384b01ba7d16b72bd1">neuralpp::Layer</a>
+: <a class="el" href="classneuralpp_1_1Layer.html#d79f684523f8a6e086b962c8eef37623">neuralpp::Layer</a>
 <li>Length()
 : <a class="el" href="structCMarkup_1_1TokenPos.html#b033dc8e88a8f83748ff6c44df05bb04">CMarkup::TokenPos</a>
 <li>Level()
@@ -74,7 +75,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#c7604e24564eac2dce702f7fbaf430a6">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x6d.html b/doc/html/functions_0x6d.html
index c8d4e38..901ed6a 100644
--- a/doc/html/functions_0x6d.html
+++ b/doc/html/functions_0x6d.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -167,10 +168,10 @@ Here is a list of all class members with links to the classes they belong to:
 <li>MNT_WHITESPACE
 : <a class="el" href="classCMarkup.html#a7f0377cbea81f5b932347af5fafab68840c4d18280cdc454e51b86168ed8c11">CMarkup</a>
 <li>momentum()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#ecdb17182de791f7fdd417232e184350">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#cff10a022d4c021688e4df944c05d8bd">neuralpp::Synapsis</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x6e.html b/doc/html/functions_0x6e.html
index 08f395e..4db9890 100644
--- a/doc/html/functions_0x6e.html
+++ b/doc/html/functions_0x6e.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -62,10 +63,16 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1FilePos.html#f3c61a69075b838325939fd0e4955751">CMarkup::FilePos</a>
 <li>nEndTagLen
 : <a class="el" href="structCMarkup_1_1ElemPos.html#a53ebdfa2aecc621f9cdde9c247d3357">CMarkup::ElemPos</a>
+<li>NetworkFileNotFoundException()
+: <a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">neuralpp::NetworkFileNotFoundException</a>
+<li>NetworkFileWriteException()
+: <a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">neuralpp::NetworkFileWriteException</a>
+<li>NetworkIndexOutOfBoundsException()
+: <a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">neuralpp::NetworkIndexOutOfBoundsException</a>
 <li>NeuralNet()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#c79534c7c0dfb20d1d03be2ad7569b78">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#b4bfa407d28bb17abf7f735a049987d9">neuralpp::NeuralNet</a>
 <li>Neuron()
-: <a class="el" href="classneuralpp_1_1Neuron.html#f1bf19ec93174f60b368ee4a91b03f46">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#c9bd4f5f618fcf1adcebf1ab63ee0960">neuralpp::Neuron</a>
 <li>nFailedChars
 : <a class="el" href="structCMarkup_1_1ConvertEncoding.html#bfd8cc96d41531109b9301b4d28a695f">CMarkup::ConvertEncoding</a>
 <li>nFileByteLen
@@ -112,8 +119,8 @@ Here is a list of all class members with links to the classes they belong to:
 <li>nSegs
 : <a class="el" href="structCMarkup_1_1PosArray.html#0994a05167565499a77d9d9d09711029">CMarkup::PosArray</a>
 <li>nSize
-: <a class="el" href="structCMarkup_1_1PosArray.html#f7a261e70c4060b8ef5070c0a5e12092">CMarkup::PosArray</a>
-, <a class="el" href="structCMarkup_1_1NodeStack.html#7031af9e6f3ceca049b5467b1fd7e478">CMarkup::NodeStack</a>
+: <a class="el" href="structCMarkup_1_1NodeStack.html#7031af9e6f3ceca049b5467b1fd7e478">CMarkup::NodeStack</a>
+, <a class="el" href="structCMarkup_1_1PosArray.html#f7a261e70c4060b8ef5070c0a5e12092">CMarkup::PosArray</a>
 <li>nStart
 : <a class="el" href="structCMarkup_1_1NodePos.html#c1939dd0ed1d2ecb35eb35bd2e88f69c">CMarkup::NodePos</a>
 , <a class="el" href="structCMarkup_1_1ElemPos.html#37cbff8b4e0d5b086970efb1bc9b70fe">CMarkup::ElemPos</a>
@@ -127,7 +134,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1NodeStack.html#f3e08fa5dce853a6267da9f77ef3f986">CMarkup::NodeStack</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x6f.html b/doc/html/functions_0x6f.html
index 905845c..1c8a17b 100644
--- a/doc/html/functions_0x6f.html
+++ b/doc/html/functions_0x6f.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -67,7 +68,7 @@ Here is a list of all class members with links to the classes they belong to:
 , <a class="el" href="structCMarkup_1_1PosArray.html#6317965f42dadc70f55c99b547e5d83d">CMarkup::PosArray</a>
 <li>out
 : <a class="el" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">neuralpp::Synapsis</a>
-, <a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">neuralpp::Neuron</a>
 <li>OutOfElem()
 : <a class="el" href="classCMarkup.html#012bca9ceaf157033a5697fa6ea92e45">CMarkup</a>
 <li>output
@@ -76,7 +77,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">neuralpp::netrecord</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x70.html b/doc/html/functions_0x70.html
index d173003..84a5d96 100644
--- a/doc/html/functions_0x70.html
+++ b/doc/html/functions_0x70.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -81,7 +82,7 @@ Here is a list of all class members with links to the classes they belong to:
 <li>prop_val
 : <a class="el" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">neuralpp::Neuron</a>
 <li>propagate()
-: <a class="el" href="classneuralpp_1_1Neuron.html#8b0ca61cd0e047c8691ab39aae56dbda">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#928d9bf5aed600119c640779e4034f30">neuralpp::Neuron</a>
 , <a class="el" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1">neuralpp::Layer</a>
 , <a class="el" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890">neuralpp::NeuralNet</a>
 <li>pSegs
@@ -89,12 +90,12 @@ Here is a list of all class members with links to the classes they belong to:
 <li>pTable
 : <a class="el" href="structCMarkup_1_1SavedPosMap.html#8ebb44e96f6781e5d1d044a18a3d989d">CMarkup::SavedPosMap</a>
 <li>push_in()
-: <a class="el" href="classneuralpp_1_1Neuron.html#583ada6e1dd3f2e113415b4d89196e62">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#4d252151c35839975838539d846d70be">neuralpp::Neuron</a>
 <li>push_out()
-: <a class="el" href="classneuralpp_1_1Neuron.html#bca65db84f56f9d40694bfbcd25812cb">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#2c0acb0e6d413c4e0fc9e7939da1a684">neuralpp::Neuron</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x72.html b/doc/html/functions_0x72.html
index bd2f8c0..839fd40 100644
--- a/doc/html/functions_0x72.html
+++ b/doc/html/functions_0x72.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -85,7 +86,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#dbab6d52d320eac695850f0b47e5b5ce">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x73.html b/doc/html/functions_0x73.html
index d37dc35..d9d49c6 100644
--- a/doc/html/functions_0x73.html
+++ b/doc/html/functions_0x73.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -58,10 +59,10 @@
 Here is a list of all class members with links to the classes they belong to:
 <p>
 <h3><a class="anchor" name="index_s">- s -</a></h3><ul>
-<li>Save()
-: <a class="el" href="classCMarkup.html#61b774f533449eeda7f3d78d8d69e4fb">CMarkup</a>
 <li>save()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407">neuralpp::NeuralNet</a>
+<li>Save()
+: <a class="el" href="classCMarkup.html#61b774f533449eeda7f3d78d8d69e4fb">CMarkup</a>
 <li>SavedPos()
 : <a class="el" href="structCMarkup_1_1SavedPos.html#203b3a22eb86b1131985a6631e3d3c47">CMarkup::SavedPos</a>
 <li>SavedPosMap()
@@ -74,7 +75,6 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1PosArray.html#0310976aa8e777cb84ab02ddbae8864c">CMarkup::PosArray</a>
 <li>setActv()
 : <a class="el" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd">neuralpp::Neuron</a>
-, <a class="el" href="classneuralpp_1_1Layer.html#98f79281b680b1d18fd91fa5794c0899">neuralpp::Layer</a>
 <li>SetAttrib()
 : <a class="el" href="classCMarkup.html#e358f67c104c9b02e93a8a33cd81093f">CMarkup</a>
 <li>SetChildAttrib()
@@ -82,7 +82,7 @@ Here is a list of all class members with links to the classes they belong to:
 <li>SetChildData()
 : <a class="el" href="classCMarkup.html#b2db581de961cbdf0004e9377029a8c7">CMarkup</a>
 <li>SetData()
-: <a class="el" href="classCMarkup.html#65f994e7c180c9e02cb8a3deb9cc1a32">CMarkup</a>
+: <a class="el" href="classCMarkup.html#ce922c959d826b28f4ad2b279697238b">CMarkup</a>
 <li>setDelta()
 : <a class="el" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1">neuralpp::Synapsis</a>
 <li>SetDoc()
@@ -96,14 +96,14 @@ Here is a list of all class members with links to the classes they belong to:
 <li>setExpected()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236">neuralpp::NeuralNet</a>
 <li>setInput()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#0de170e8ab561ad63d0739b4c4b74f68">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17">neuralpp::NeuralNet</a>
+, <a class="el" href="classneuralpp_1_1Layer.html#88ceffc23f02a9dc24d4355767b7cca7">neuralpp::Layer</a>
 <li>SetLevel()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#625d84902ebb86bda4d5c5720f00e885">CMarkup::ElemPos</a>
 <li>SetMapSize()
 : <a class="el" href="classCMarkup.html#834d5e280500d0f62cd6fdb53b834ebb">CMarkup</a>
 <li>setProp()
 : <a class="el" href="classneuralpp_1_1Neuron.html#aa6e58f073a76b3481fea9115a4e6ea6">neuralpp::Neuron</a>
-, <a class="el" href="classneuralpp_1_1Layer.html#dbad95f635343a2998794113d7762cf7">neuralpp::Layer</a>
 <li>SetStartTagLen()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#6f366b2f636e221db004bf44fd952912">CMarkup::ElemPos</a>
 <li>setWeight()
@@ -113,7 +113,7 @@ Here is a list of all class members with links to the classes they belong to:
 <li>source
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f">neuralpp::NeuralNet</a>
 <li>split()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#e07af23ceb8666518da0c035bf1e0376">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#83c6555520856d5867752904349ab6ca">neuralpp::NeuralNet</a>
 <li>SPM_CHILD
 : <a class="el" href="structCMarkup_1_1SavedPos.html#28ed16429117003133c33fa8fcaa792437b333ca861ee132a96570e3261ed48f">CMarkup::SavedPos</a>
 <li>SPM_LAST
@@ -145,7 +145,7 @@ Here is a list of all class members with links to the classes they belong to:
 <li>strToEncoding
 : <a class="el" href="structCMarkup_1_1ConvertEncoding.html#cc2420305e7cfa6c9d18f7ce9daa4313">CMarkup::ConvertEncoding</a>
 <li>Synapsis()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#b767332fdce81af25486b8969e5d2fb3">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8">neuralpp::Synapsis</a>
 <li>synClear()
 : <a class="el" href="classneuralpp_1_1Neuron.html#2e2ccb69277fc3d992a3a3f2360ed154">neuralpp::Neuron</a>
 <li>synIn()
@@ -154,7 +154,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe">neuralpp::Neuron</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x74.html b/doc/html/functions_0x74.html
index a3b2fd4..7ee0df2 100644
--- a/doc/html/functions_0x74.html
+++ b/doc/html/functions_0x74.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -58,6 +59,10 @@
 Here is a list of all class members with links to the classes they belong to:
 <p>
 <h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>threshold
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">neuralpp::NeuralNet</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">neuralpp::Layer</a>
 <li>TokenPos()
 : <a class="el" href="structCMarkup_1_1TokenPos.html#797a3f5d9664c52971cf210166c3636a">CMarkup::TokenPos</a>
 <li>Top()
@@ -65,10 +70,10 @@ Here is a list of all class members with links to the classes they belong to:
 <li>TopIndex()
 : <a class="el" href="structCMarkup_1_1NodeStack.html#4e9aad88e12b7bbabdbb3fd65fc51585">CMarkup::NodeStack</a>
 <li>train()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#ead4bdef0602a5cadbe3beb685e01f5f">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x75.html b/doc/html/functions_0x75.html
index b054513..2cdfba0 100644
--- a/doc/html/functions_0x75.html
+++ b/doc/html/functions_0x75.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -74,7 +75,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="classCMarkup.html#8e6cb088e69b6078f5923b0940fd647c">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x77.html b/doc/html/functions_0x77.html
index e5741db..359d56f 100644
--- a/doc/html/functions_0x77.html
+++ b/doc/html/functions_0x77.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -62,11 +63,17 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structneuralpp_1_1synrecord.html#81a7dbc97eecbf5bc85cac46373a78d2">neuralpp::synrecord</a>
 <li>weight
 : <a class="el" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">neuralpp::Synapsis</a>
+<li>what()
+: <a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">neuralpp::InvalidSynapticalWeightException</a>
+, <a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">neuralpp::NetworkIndexOutOfBoundsException</a>
+, <a class="el" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">neuralpp::InvalidXMLException</a>
+, <a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">neuralpp::NetworkFileWriteException</a>
+, <a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">neuralpp::NetworkFileNotFoundException</a>
 <li>WriteTextFile()
 : <a class="el" href="classCMarkup.html#983286cbcb7c4f9aa1f462ffb5dc641f">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x78.html b/doc/html/functions_0x78.html
index 1bca7ae..1f2beee 100644
--- a/doc/html/functions_0x78.html
+++ b/doc/html/functions_0x78.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -161,10 +162,10 @@ Here is a list of all class members with links to the classes they belong to:
 <li>x_WriteText()
 : <a class="el" href="classCMarkup.html#f3b30bc5314bbc8d157dca6d924f4852">CMarkup</a>
 <li>XMLFromSet()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#4be31ecb0b543a192997bd83c6995ccb">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#0a2733037af912b3e6a10146e7b7172f">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_0x7e.html b/doc/html/functions_0x7e.html
index c88e001..4f6c270 100644
--- a/doc/html/functions_0x7e.html
+++ b/doc/html/functions_0x7e.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -70,7 +71,7 @@ Here is a list of all class members with links to the classes they belong to:
 : <a class="el" href="structCMarkup_1_1SavedPosMapArray.html#6be57f9ebe160aebb464957caa30ddd6">CMarkup::SavedPosMapArray</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_enum.html b/doc/html/functions_enum.html
index 8af47f7..a0d861e 100644
--- a/doc/html/functions_enum.html
+++ b/doc/html/functions_enum.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -46,7 +47,7 @@
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_eval.html b/doc/html/functions_eval.html
index ac681b4..cb3e3af 100644
--- a/doc/html/functions_eval.html
+++ b/doc/html/functions_eval.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -136,7 +137,7 @@
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html
index dfc1784..d48e878 100644
--- a/doc/html/functions_func.html
+++ b/doc/html/functions_func.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -83,7 +84,7 @@
 : <a class="el" href="classCMarkup.html#3257cd5f249587254e816d12bd3b0e0d">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x63.html b/doc/html/functions_func_0x63.html
index 92c9702..96f411e 100644
--- a/doc/html/functions_func_0x63.html
+++ b/doc/html/functions_func_0x63.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -63,11 +64,11 @@
 <li>ClearVirtualParent()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#b70cf4ad47e44a2d4c7f6c06a2ff0659">CMarkup::ElemPos</a>
 <li>closeXML()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#28b9966c5f197b8e86d57dd104aa32a6">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e17732ed578bc4bd6032bfae58a5cf51">neuralpp::NeuralNet</a>
 <li>CMarkup()
 : <a class="el" href="classCMarkup.html#e4dc90b99846d35849bc323064fbafcf">CMarkup</a>
 <li>commitChanges()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#62695a82dfb1df758a44150921aec8e0">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#f697a8d9967ad8f03e5a16a42cd110c5">neuralpp::NeuralNet</a>
 <li>ContentLen()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#9099635ab9239103aa930b2f1a456d2d">CMarkup::ElemPos</a>
 <li>ConvertEncoding()
@@ -76,7 +77,7 @@
 : <a class="el" href="structCMarkup_1_1NodeStack.html#499a05e053b785df518fb0b6124fd0ee">CMarkup::NodeStack</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x64.html b/doc/html/functions_func_0x64.html
index 5c1e1d5..22d262d 100644
--- a/doc/html/functions_func_0x64.html
+++ b/doc/html/functions_func_0x64.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -65,7 +66,7 @@
 : <a class="el" href="classCMarkup.html#f91e20dfe9e95194e3ca8143eeb889c2">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x65.html b/doc/html/functions_func_0x65.html
index c85e630..c12f282 100644
--- a/doc/html/functions_func_0x65.html
+++ b/doc/html/functions_func_0x65.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -66,14 +67,14 @@
 <li>EndTagLen()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#d9d0ad0c48a129555d1052e98e4f71bd">CMarkup::ElemPos</a>
 <li>error()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#0616c51404efaca2714e37dd7478997e">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#8a140d28e6dd4097470c7c138801ad01">neuralpp::NeuralNet</a>
 <li>EscapeText()
 : <a class="el" href="classCMarkup.html#ba91db9799ea46f2594a85f7026b6034">CMarkup</a>
 <li>expected()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x66.html b/doc/html/functions_func_0x66.html
index 9b049d2..4ee0407 100644
--- a/doc/html/functions_func_0x66.html
+++ b/doc/html/functions_func_0x66.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -67,7 +68,7 @@
 : <a class="el" href="classCMarkup.html#e29573627f9b0cdc0d7152ff749ba407">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x67.html b/doc/html/functions_func_0x67.html
index 15bf42a..2fc538c 100644
--- a/doc/html/functions_func_0x67.html
+++ b/doc/html/functions_func_0x67.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -76,7 +77,7 @@
 <li>GetDeclaredEncoding()
 : <a class="el" href="classCMarkup.html#1f2b3c176609588986004058a77afe27">CMarkup</a>
 <li>getDelta()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#18f15b920609be8b818d43a0227aada5">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#00c8e9c0804662f2b3247d6dddb4ca6c">neuralpp::Synapsis</a>
 <li>GetDoc()
 : <a class="el" href="classCMarkup.html#04364a3697a67d5652b2259bd8b17889">CMarkup</a>
 <li>GetDocFlags()
@@ -85,18 +86,20 @@
 : <a class="el" href="classCMarkup.html#9dfbb66afa75291b5ed19b51e0f6357b">CMarkup</a>
 <li>GetError()
 : <a class="el" href="classCMarkup.html#15f1042ff13167216b741f360e88f649">CMarkup</a>
+<li>getExpected()
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#51a1851ed07b85bec091c9053ae99cf7">neuralpp::NeuralNet</a>
 <li>getIn()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#5ba8a93a5741f4855390eb8a46e99435">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#298fd3c7483ad572899fecec01ac8fdf">neuralpp::Synapsis</a>
 <li>GetNodeType()
 : <a class="el" href="classCMarkup.html#86a5f997b734d560b3b21c8ef89d3a57">CMarkup</a>
 <li>getOut()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#61c9a04e03291a01f44520cef143cbdd">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#b46d876761a73a24db87f5a144a0e899">neuralpp::Synapsis</a>
 <li>getOutput()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810">neuralpp::NeuralNet</a>
 <li>getOutputs()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#a6b8bf3800b43b58843c65fc431207ae">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c">neuralpp::NeuralNet</a>
 <li>getPrevDelta()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#2fe3e9ec97542f1476d8b9306aa09756">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#0148b9c8db870c928711168702ae51c5">neuralpp::Synapsis</a>
 <li>getProp()
 : <a class="el" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9">neuralpp::Neuron</a>
 <li>GetSize()
@@ -105,11 +108,13 @@
 : <a class="el" href="classCMarkup.html#9d963c7234a4cecc16d9bd46c32ff87a">CMarkup</a>
 <li>GetTagName()
 : <a class="el" href="classCMarkup.html#0fcd179bb0ba35d6a262d571c1ef1004">CMarkup</a>
+<li>getThreshold()
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#e08cdcf4b70f987700e553d9914f6179">neuralpp::NeuralNet</a>
 <li>getWeight()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#aa79c16ec6b59949e5d2f75a3f10d530">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#bcbf7228632ff4d6bbb67703323d2db0">neuralpp::Synapsis</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x69.html b/doc/html/functions_func_0x69.html
index cd11add..5c00476 100644
--- a/doc/html/functions_func_0x69.html
+++ b/doc/html/functions_func_0x69.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -60,7 +61,7 @@
 <li>InitDocFlags()
 : <a class="el" href="classCMarkup.html#6ce98f8685f47a0d5457ade12a9b500f">CMarkup</a>
 <li>initXML()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#45c7645d4affe65752d37cd230afba24">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#96da6712a72051cf34ad961761ef6e08">neuralpp::NeuralNet</a>
 <li>InsertChildElem()
 : <a class="el" href="classCMarkup.html#91c3a9a4a47a3c8c9e184d9a6ee7f97a">CMarkup</a>
 <li>InsertChildSubDoc()
@@ -73,13 +74,17 @@
 : <a class="el" href="classCMarkup.html#8f2a8484e2d4f8a27032f14818d96a66">CMarkup</a>
 <li>IntoElem()
 : <a class="el" href="classCMarkup.html#e6136fa65e4f1927fe763d011d3eb9a3">CMarkup</a>
+<li>InvalidSynapticalWeightException()
+: <a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">neuralpp::InvalidSynapticalWeightException</a>
+<li>InvalidXMLException()
+: <a class="el" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">neuralpp::InvalidXMLException</a>
 <li>IsEmptyElement()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#97093aa0ddbd691dd00c91c945a3e98a">CMarkup::ElemPos</a>
 <li>IsWellFormed()
 : <a class="el" href="classCMarkup.html#f3a54e13b8565c2789c2c80aa2c9a563">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x6c.html b/doc/html/functions_func_0x6c.html
index 50c4e98..7190d8a 100644
--- a/doc/html/functions_func_0x6c.html
+++ b/doc/html/functions_func_0x6c.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -58,7 +59,7 @@
 <p>
 <h3><a class="anchor" name="index_l">- l -</a></h3><ul>
 <li>Layer()
-: <a class="el" href="classneuralpp_1_1Layer.html#fb08bddd85d36570dabfe915461f07c5">neuralpp::Layer</a>
+: <a class="el" href="classneuralpp_1_1Layer.html#a235767701b5e9dcf28c5e9e0d04cb0b">neuralpp::Layer</a>
 <li>Length()
 : <a class="el" href="structCMarkup_1_1TokenPos.html#b033dc8e88a8f83748ff6c44df05bb04">CMarkup::TokenPos</a>
 <li>Level()
@@ -70,7 +71,7 @@
 : <a class="el" href="classCMarkup.html#c7604e24564eac2dce702f7fbaf430a6">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x6d.html b/doc/html/functions_func_0x6d.html
index 8c69c88..8691ead 100644
--- a/doc/html/functions_func_0x6d.html
+++ b/doc/html/functions_func_0x6d.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -62,10 +63,10 @@
 <li>MCD_CSTR()
 : <a class="el" href="structMCD__CSTR.html#527942329419b01535431646e136eaa1">MCD_CSTR</a>
 <li>momentum()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#ecdb17182de791f7fdd417232e184350">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#cff10a022d4c021688e4df944c05d8bd">neuralpp::Synapsis</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x6e.html b/doc/html/functions_func_0x6e.html
index 8b34015..cb10d03 100644
--- a/doc/html/functions_func_0x6e.html
+++ b/doc/html/functions_func_0x6e.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -57,21 +58,27 @@
 &nbsp;
 <p>
 <h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>NetworkFileNotFoundException()
+: <a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">neuralpp::NetworkFileNotFoundException</a>
+<li>NetworkFileWriteException()
+: <a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">neuralpp::NetworkFileWriteException</a>
+<li>NetworkIndexOutOfBoundsException()
+: <a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">neuralpp::NetworkIndexOutOfBoundsException</a>
 <li>NeuralNet()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2">neuralpp::NeuralNet</a>
 <li>Neuron()
-: <a class="el" href="classneuralpp_1_1Neuron.html#9863a08b73bc97c8b514aca6c580ff7b">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#d15e96b0316d880953288cc6e2550bec">neuralpp::Neuron</a>
 <li>nIn()
 : <a class="el" href="classneuralpp_1_1Neuron.html#ad97f1a082d5f969eb4c69ab454ecfbb">neuralpp::Neuron</a>
 <li>NodePos()
-: <a class="el" href="structCMarkup_1_1NodePos.html#81589c934561c891174be880864053b6">CMarkup::NodePos</a>
+: <a class="el" href="structCMarkup_1_1NodePos.html#aaecb8354ffd5605e80432377fa2ac4c">CMarkup::NodePos</a>
 <li>NodeStack()
 : <a class="el" href="structCMarkup_1_1NodeStack.html#de0c540ed4a133345e7c8ec6e05b0b11">CMarkup::NodeStack</a>
 <li>nOut()
 : <a class="el" href="classneuralpp_1_1Neuron.html#fe458021e3b20d58dc608fb94ae2135b">neuralpp::Neuron</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x6f.html b/doc/html/functions_func_0x6f.html
index b366bff..2c7ef99 100644
--- a/doc/html/functions_func_0x6f.html
+++ b/doc/html/functions_func_0x6f.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -68,7 +69,7 @@
 : <a class="el" href="classCMarkup.html#012bca9ceaf157033a5697fa6ea92e45">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x70.html b/doc/html/functions_func_0x70.html
index f9dc823..55da19b 100644
--- a/doc/html/functions_func_0x70.html
+++ b/doc/html/functions_func_0x70.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -62,14 +63,14 @@
 <li>propagate()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890">neuralpp::NeuralNet</a>
 , <a class="el" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1">neuralpp::Layer</a>
-, <a class="el" href="classneuralpp_1_1Neuron.html#8b0ca61cd0e047c8691ab39aae56dbda">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#928d9bf5aed600119c640779e4034f30">neuralpp::Neuron</a>
 <li>push_in()
-: <a class="el" href="classneuralpp_1_1Neuron.html#583ada6e1dd3f2e113415b4d89196e62">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#4d252151c35839975838539d846d70be">neuralpp::Neuron</a>
 <li>push_out()
-: <a class="el" href="classneuralpp_1_1Neuron.html#bca65db84f56f9d40694bfbcd25812cb">neuralpp::Neuron</a>
+: <a class="el" href="classneuralpp_1_1Neuron.html#2c0acb0e6d413c4e0fc9e7939da1a684">neuralpp::Neuron</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x72.html b/doc/html/functions_func_0x72.html
index 999fdfc..c68c290 100644
--- a/doc/html/functions_func_0x72.html
+++ b/doc/html/functions_func_0x72.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -82,7 +83,7 @@
 : <a class="el" href="classCMarkup.html#dbab6d52d320eac695850f0b47e5b5ce">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x73.html b/doc/html/functions_func_0x73.html
index 45bf1f0..c270c56 100644
--- a/doc/html/functions_func_0x73.html
+++ b/doc/html/functions_func_0x73.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -57,10 +58,10 @@
 &nbsp;
 <p>
 <h3><a class="anchor" name="index_s">- s -</a></h3><ul>
-<li>Save()
-: <a class="el" href="classCMarkup.html#61b774f533449eeda7f3d78d8d69e4fb">CMarkup</a>
 <li>save()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407">neuralpp::NeuralNet</a>
+<li>Save()
+: <a class="el" href="classCMarkup.html#61b774f533449eeda7f3d78d8d69e4fb">CMarkup</a>
 <li>SavedPos()
 : <a class="el" href="structCMarkup_1_1SavedPos.html#203b3a22eb86b1131985a6631e3d3c47">CMarkup::SavedPos</a>
 <li>SavedPosMap()
@@ -73,7 +74,6 @@
 : <a class="el" href="structCMarkup_1_1PosArray.html#0310976aa8e777cb84ab02ddbae8864c">CMarkup::PosArray</a>
 <li>setActv()
 : <a class="el" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd">neuralpp::Neuron</a>
-, <a class="el" href="classneuralpp_1_1Layer.html#98f79281b680b1d18fd91fa5794c0899">neuralpp::Layer</a>
 <li>SetAttrib()
 : <a class="el" href="classCMarkup.html#e358f67c104c9b02e93a8a33cd81093f">CMarkup</a>
 <li>SetChildAttrib()
@@ -81,7 +81,7 @@
 <li>SetChildData()
 : <a class="el" href="classCMarkup.html#b2db581de961cbdf0004e9377029a8c7">CMarkup</a>
 <li>SetData()
-: <a class="el" href="classCMarkup.html#65f994e7c180c9e02cb8a3deb9cc1a32">CMarkup</a>
+: <a class="el" href="classCMarkup.html#ce922c959d826b28f4ad2b279697238b">CMarkup</a>
 <li>setDelta()
 : <a class="el" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1">neuralpp::Synapsis</a>
 <li>SetDoc()
@@ -95,14 +95,14 @@
 <li>setExpected()
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236">neuralpp::NeuralNet</a>
 <li>setInput()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#0de170e8ab561ad63d0739b4c4b74f68">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17">neuralpp::NeuralNet</a>
+, <a class="el" href="classneuralpp_1_1Layer.html#88ceffc23f02a9dc24d4355767b7cca7">neuralpp::Layer</a>
 <li>SetLevel()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#625d84902ebb86bda4d5c5720f00e885">CMarkup::ElemPos</a>
 <li>SetMapSize()
 : <a class="el" href="classCMarkup.html#834d5e280500d0f62cd6fdb53b834ebb">CMarkup</a>
 <li>setProp()
 : <a class="el" href="classneuralpp_1_1Neuron.html#aa6e58f073a76b3481fea9115a4e6ea6">neuralpp::Neuron</a>
-, <a class="el" href="classneuralpp_1_1Layer.html#dbad95f635343a2998794113d7762cf7">neuralpp::Layer</a>
 <li>SetStartTagLen()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#6f366b2f636e221db004bf44fd952912">CMarkup::ElemPos</a>
 <li>setWeight()
@@ -110,7 +110,7 @@
 <li>size()
 : <a class="el" href="classneuralpp_1_1Layer.html#7ca71ed62fbe9c1e9c0fb6a8dcaf76f0">neuralpp::Layer</a>
 <li>split()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#e07af23ceb8666518da0c035bf1e0376">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#83c6555520856d5867752904349ab6ca">neuralpp::NeuralNet</a>
 <li>StartAfter()
 : <a class="el" href="structCMarkup_1_1ElemPos.html#e1e21b6e27db22eda6178898d2aa42d3">CMarkup::ElemPos</a>
 <li>StartContent()
@@ -120,7 +120,7 @@
 <li>StrNIACmp()
 : <a class="el" href="structCMarkup_1_1TokenPos.html#c3a37f7294cd763aed0f37749095d3db">CMarkup::TokenPos</a>
 <li>Synapsis()
-: <a class="el" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8">neuralpp::Synapsis</a>
+: <a class="el" href="classneuralpp_1_1Synapsis.html#b767332fdce81af25486b8969e5d2fb3">neuralpp::Synapsis</a>
 <li>synClear()
 : <a class="el" href="classneuralpp_1_1Neuron.html#2e2ccb69277fc3d992a3a3f2360ed154">neuralpp::Neuron</a>
 <li>synIn()
@@ -129,7 +129,7 @@
 : <a class="el" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe">neuralpp::Neuron</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x74.html b/doc/html/functions_func_0x74.html
index 7b2b557..39bfda9 100644
--- a/doc/html/functions_func_0x74.html
+++ b/doc/html/functions_func_0x74.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -64,10 +65,10 @@
 <li>TopIndex()
 : <a class="el" href="structCMarkup_1_1NodeStack.html#4e9aad88e12b7bbabdbb3fd65fc51585">CMarkup::NodeStack</a>
 <li>train()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#ead4bdef0602a5cadbe3beb685e01f5f">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x75.html b/doc/html/functions_func_0x75.html
index 3073477..81e36b4 100644
--- a/doc/html/functions_func_0x75.html
+++ b/doc/html/functions_func_0x75.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -71,7 +72,7 @@
 : <a class="el" href="classCMarkup.html#8e6cb088e69b6078f5923b0940fd647c">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x77.html b/doc/html/functions_func_0x77.html
index 1606d66..1dfeb64 100644
--- a/doc/html/functions_func_0x77.html
+++ b/doc/html/functions_func_0x77.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -57,11 +58,17 @@
 &nbsp;
 <p>
 <h3><a class="anchor" name="index_w">- w -</a></h3><ul>
+<li>what()
+: <a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">neuralpp::NetworkFileNotFoundException</a>
+, <a class="el" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">neuralpp::NetworkFileWriteException</a>
+, <a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">neuralpp::InvalidSynapticalWeightException</a>
+, <a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">neuralpp::NetworkIndexOutOfBoundsException</a>
+, <a class="el" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">neuralpp::InvalidXMLException</a>
 <li>WriteTextFile()
 : <a class="el" href="classCMarkup.html#983286cbcb7c4f9aa1f462ffb5dc641f">CMarkup</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x78.html b/doc/html/functions_func_0x78.html
index 6812e18..70093ab 100644
--- a/doc/html/functions_func_0x78.html
+++ b/doc/html/functions_func_0x78.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -160,10 +161,10 @@
 <li>x_WriteText()
 : <a class="el" href="classCMarkup.html#f3b30bc5314bbc8d157dca6d924f4852">CMarkup</a>
 <li>XMLFromSet()
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#4be31ecb0b543a192997bd83c6995ccb">neuralpp::NeuralNet</a>
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#0a2733037af912b3e6a10146e7b7172f">neuralpp::NeuralNet</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_func_0x7e.html b/doc/html/functions_func_0x7e.html
index 6d80d8e..8c9c166 100644
--- a/doc/html/functions_func_0x7e.html
+++ b/doc/html/functions_func_0x7e.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -69,7 +70,7 @@
 : <a class="el" href="structCMarkup_1_1SavedPosMapArray.html#6be57f9ebe160aebb464957caa30ddd6">CMarkup::SavedPosMapArray</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html
index 50f9515..0f04d28 100644
--- a/doc/html/functions_vars.html
+++ b/doc/html/functions_vars.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -44,6 +45,7 @@
       <li><a href="#index_p"><span>p</span></a></li>
       <li><a href="#index_r"><span>r</span></a></li>
       <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_t"><span>t</span></a></li>
       <li><a href="#index_u"><span>u</span></a></li>
       <li><a href="#index_w"><span>w</span></a></li>
     </ul>
@@ -71,13 +73,14 @@
 </ul>
 <h3><a class="anchor" name="index_e">- e -</a></h3><ul>
 <li>elements
-: <a class="el" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">neuralpp::Layer</a>
+: <a class="el" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">neuralpp::Layer</a>
 <li>epochs
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">neuralpp::NeuralNet</a>
 , <a class="el" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">neuralpp::netrecord</a>
 <li>ex
-: <a class="el" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">neuralpp::NeuralNet</a>
-, <a class="el" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">neuralpp::netrecord</a>
+: <a class="el" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">neuralpp::netrecord</a>
+<li>expect
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">neuralpp::NeuralNet</a>
 </ul>
 <h3><a class="anchor" name="index_f">- f -</a></h3><ul>
 <li>fp
@@ -100,7 +103,7 @@
 : <a class="el" href="structCMarkup_1_1ElemPos.html#45534bddcab1f12a8452a070368488ca">CMarkup::ElemPos</a>
 <li>in
 : <a class="el" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">neuralpp::Synapsis</a>
-, <a class="el" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">neuralpp::Neuron</a>
 <li>input
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">neuralpp::NeuralNet</a>
 <li>input_size
@@ -201,7 +204,7 @@
 <h3><a class="anchor" name="index_o">- o -</a></h3><ul>
 <li>out
 : <a class="el" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">neuralpp::Synapsis</a>
-, <a class="el" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">neuralpp::Neuron</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">neuralpp::Neuron</a>
 <li>output
 : <a class="el" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">neuralpp::NeuralNet</a>
 <li>output_size
@@ -247,6 +250,12 @@
 <li>strToEncoding
 : <a class="el" href="structCMarkup_1_1ConvertEncoding.html#cc2420305e7cfa6c9d18f7ce9daa4313">CMarkup::ConvertEncoding</a>
 </ul>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>threshold
+: <a class="el" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">neuralpp::NeuralNet</a>
+, <a class="el" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">neuralpp::Layer</a>
+, <a class="el" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">neuralpp::Neuron</a>
+</ul>
 <h3><a class="anchor" name="index_u">- u -</a></h3><ul>
 <li>update_weights
 : <a class="el" href="classneuralpp_1_1Layer.html#c023a15a16353d0b4f44060a159f550f">neuralpp::Layer</a>
@@ -258,7 +267,7 @@
 : <a class="el" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">neuralpp::Synapsis</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/globals.html b/doc/html/globals.html
index e18a74b..9ab8579 100644
--- a/doc/html/globals.html
+++ b/doc/html/globals.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -145,7 +146,7 @@ Here is a list of all file members with links to the files they belong to:
 : <a class="el" href="neural_09_09_8hpp.html#839a9222721835f53c5b248241f535f4">neural++.hpp</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html
index 2dfe2ba..4d82616 100644
--- a/doc/html/globals_defs.html
+++ b/doc/html/globals_defs.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -145,7 +146,7 @@
 : <a class="el" href="neural_09_09_8hpp.html#839a9222721835f53c5b248241f535f4">neural++.hpp</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/index.html b/doc/html/index.html
index 4a42ce6..7a4de1e 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -12,14 +12,15 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 </div>
 <div class="contents">
 <h1>Neural++ Documentation</h1>
 <p>
-<h3 align="center">0.3 </h3></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<h3 align="center">0.4 </h3></div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/namespacemembers.html b/doc/html/namespacemembers.html
index 6b935e3..79480c6 100644
--- a/doc/html/namespacemembers.html
+++ b/doc/html/namespacemembers.html
@@ -12,6 +12,7 @@
       <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -31,11 +32,13 @@
 Here is a list of all namespace members with links to the namespace documentation for each member:
 <p>
 <ul>
+<li>__actv()
+: <a class="el" href="namespaceneuralpp.html#7df3a0de999c7a635f2289749ed4f194">neuralpp</a>
 <li>df()
 : <a class="el" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">neuralpp</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/namespacemembers_func.html b/doc/html/namespacemembers_func.html
index 1d5ce33..d4e9d6a 100644
--- a/doc/html/namespacemembers_func.html
+++ b/doc/html/namespacemembers_func.html
@@ -12,6 +12,7 @@
       <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -31,11 +32,13 @@
 &nbsp;
 <p>
 <ul>
+<li>__actv()
+: <a class="el" href="namespaceneuralpp.html#7df3a0de999c7a635f2289749ed4f194">neuralpp</a>
 <li>df()
 : <a class="el" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">neuralpp</a>
 </ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/namespaceneuralpp.html b/doc/html/namespaceneuralpp.html
index a3bc563..1af6f2e 100644
--- a/doc/html/namespaceneuralpp.html
+++ b/doc/html/namespaceneuralpp.html
@@ -12,6 +12,7 @@
       <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -46,12 +47,49 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structneuralpp_1_1synrecord.html">synrecord</a></td></tr>
 
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">NetworkFileNotFoundException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when doing an attempt to load a network from an invalid file.  <a href="classneuralpp_1_1NetworkFileNotFoundException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">NetworkFileWriteException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when trying to write the network's information to a file that cannot be written.  <a href="classneuralpp_1_1NetworkFileWriteException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidXMLException.html">InvalidXMLException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when trying parsing an invalid XML.  <a href="classneuralpp_1_1InvalidXMLException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">NetworkIndexOutOfBoundsException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network.  <a href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">InvalidSynapticalWeightException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value |w| &gt; 1.  <a href="classneuralpp_1_1InvalidSynapticalWeightException.html#_details">More...</a><br></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">df</a> (double(*f)(double), double x)</td></tr>
 
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceneuralpp.html#7df3a0de999c7a635f2289749ed4f194">__actv</a> (double prop)</td></tr>
+
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 Main namespace for the library. <hr><h2>Function Documentation</h2>
+<a class="anchor" name="7df3a0de999c7a635f2289749ed4f194"></a><!-- doxytag: member="neuralpp::__actv" ref="7df3a0de999c7a635f2289749ed4f194" args="(double prop)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double neuralpp::__actv           </td>
+          <td>(</td>
+          <td class="paramtype">double&nbsp;</td>
+          <td class="paramname"> <em>prop</em>          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
 <a class="anchor" name="43c8197cc83f65fa9676386579671aec"></a><!-- doxytag: member="neuralpp::df" ref="43c8197cc83f65fa9676386579671aec" args="(double(*f)(double), double x)" -->
 <div class="memitem">
 <div class="memproto">
@@ -82,7 +120,7 @@ Main namespace for the library. <hr><h2>Function Documentation</h2>
 </div>
 </div><p>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html
index 72c7d9c..380d4cd 100644
--- a/doc/html/namespaces.html
+++ b/doc/html/namespaces.html
@@ -12,6 +12,7 @@
       <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -26,7 +27,7 @@
   <tr><td class="indexkey"><a class="el" href="namespaceneuralpp.html">neuralpp</a></td><td class="indexvalue">Main namespace for the library </td></tr>
 </table>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/neural_09_09_8hpp-source.html b/doc/html/neural_09_09_8hpp-source.html
index a3e4922..e657264 100644
--- a/doc/html/neural_09_09_8hpp-source.html
+++ b/doc/html/neural_09_09_8hpp-source.html
@@ -12,10 +12,11 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 <h1>neural++.hpp</h1><a href="neural_09_09_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/**************************************************************************************************</span>
-<a name="l00002"></a>00002 <span class="comment"> * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *</span>
+<a name="l00002"></a>00002 <span class="comment"> * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *</span>
 <a name="l00003"></a>00003 <span class="comment"> * Copyright (C) 2009, BlackLight                                                                 *</span>
 <a name="l00004"></a>00004 <span class="comment"> *                                                                                                *</span>
 <a name="l00005"></a>00005 <span class="comment"> * This program is free software: you can redistribute it and/or modify it under the terms of the *</span>
@@ -27,217 +28,216 @@
 <a name="l00011"></a>00011 <span class="comment"> * this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.                                      *</span>
 <a name="l00012"></a>00012 <span class="comment"> **************************************************************************************************/</span>
 <a name="l00013"></a>00013 
-<a name="l00014"></a>00014 <span class="comment">//#ifndef __cplusplus</span>
-<a name="l00015"></a>00015 <span class="comment">//#error "This is a C++ library, you know, so you'd better use a C++ compiler to compile it"</span>
-<a name="l00016"></a>00016 <span class="comment">//#else</span>
-<a name="l00017"></a>00017 
-<a name="l00018"></a>00018 <span class="preprocessor">#ifndef __NEURALPP</span>
-<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define __NEURALPP</span>
-<a name="l00020"></a>00020 <span class="preprocessor"></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;vector&gt;</span>
-<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;string&gt;</span>
-<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;cmath&gt;</span>
-<a name="l00024"></a>00024 
-<a name="l00025"></a>00025 <span class="preprocessor">#include "<a class="code" href="neural_09_09__exception_8hpp.html">neural++_exception.hpp</a>"</span>
-<a name="l00026"></a>00026 <span class="keyword">using namespace </span>std;
-<a name="l00027"></a>00027 
-<a name="l00029"></a><a class="code" href="neural_09_09_8hpp.html#839a9222721835f53c5b248241f535f4">00029</a> <span class="preprocessor">#define         RAND    (double) ( (rand() / (RAND_MAX/2)) - 1)</span>
-<a name="l00030"></a>00030 <span class="preprocessor"></span>
-<a name="l00032"></a><a class="code" href="neural_09_09_8hpp.html#05e2bb5b9fc32f0b6b4d84fe43177d72">00032</a> <span class="preprocessor">#define         BETA0   0.8</span>
-<a name="l00033"></a>00033 <span class="preprocessor"></span>
-<a name="l00038"></a>00038 <span class="keyword">namespace </span>neuralpp  {
-<a name="l00039"></a>00039         <span class="keyword">class </span>Synapsis;
-<a name="l00040"></a>00040         <span class="keyword">class </span>Neuron;
-<a name="l00041"></a>00041         <span class="keyword">class </span>Layer;
-<a name="l00042"></a>00042         <span class="keyword">class </span>NeuralNet;
-<a name="l00043"></a>00043 
-<a name="l00044"></a>00044         <span class="keywordtype">double</span> <a class="code" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">df</a> (<span class="keywordtype">double</span> (*f)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> x);
-<a name="l00045"></a>00045 
-<a name="l00050"></a><a class="code" href="classneuralpp_1_1NeuralNet.html">00050</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a>  {
-<a name="l00051"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">00051</a>                 <span class="keywordtype">int</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">epochs</a>;
-<a name="l00052"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#4f88106c9e542c39eac43b4ca1974a2a">00052</a>                 <span class="keywordtype">int</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#4f88106c9e542c39eac43b4ca1974a2a">ref_epochs</a>;
-<a name="l00053"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">00053</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">l_rate</a>;
-<a name="l00054"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">00054</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a>;
-<a name="l00055"></a>00055 
-<a name="l00060"></a>00060                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108" title="It updates the weights of the net&amp;#39;s synapsis through back-propagation.">updateWeights</a>();
-<a name="l00061"></a>00061 
-<a name="l00067"></a>00067                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#62695a82dfb1df758a44150921aec8e0" title="It commits the changes made by updateWeights() to the layer l.">commitChanges</a> (<a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a> *l);
-<a name="l00068"></a>00068 
-<a name="l00074"></a>00074                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#0616c51404efaca2714e37dd7478997e" title="Get the error made on the expected result as |v-v&amp;#39;|/v.">error</a>(<span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a>) <span class="keyword">const</span>;
-<a name="l00075"></a>00075                 
-<a name="l00080"></a>00080                 double (*<a class="code" href="classneuralpp_1_1NeuralNet.html#c1469e6afd87d85b82f14bc246f82457" title="Private pointer to function, containing the function to be used as activation function...">actv_f</a>)(double);
-<a name="l00081"></a>00081 
-<a name="l00082"></a>00082         <span class="keyword">public</span>:
-<a name="l00083"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">00083</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">input</a>;
-<a name="l00084"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#bbdaa1b6c0a1a95d2b18cd25fda2a266">00084</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#bbdaa1b6c0a1a95d2b18cd25fda2a266">hidden</a>;
-<a name="l00085"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">00085</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">output</a>;
-<a name="l00086"></a>00086 
-<a name="l00090"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">00090</a>                 <span class="keyword">typedef</span> <span class="keyword">enum</span>  { <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f5ec2727c0756ddb097b53efe49b81afb">file</a>, <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">str</a> } <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f" title="Enum to choose the eventual training source for our network (XML from a file or from...">source</a>;
-<a name="l00091"></a>00091 
-<a name="l00095"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2">00095</a>                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a>()  {}
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef __NEURALPP</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define __NEURALPP</span>
+<a name="l00016"></a>00016 <span class="preprocessor"></span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;cmath&gt;</span>
+<a name="l00020"></a>00020 
+<a name="l00021"></a>00021 <span class="preprocessor">#include "<a class="code" href="neural_09_09__exception_8hpp.html">neural++_exception.hpp</a>"</span>
+<a name="l00022"></a>00022 
+<a name="l00024"></a><a class="code" href="neural_09_09_8hpp.html#839a9222721835f53c5b248241f535f4">00024</a> <span class="preprocessor">#define         RAND    (double) ( (rand() / (RAND_MAX/2)) - 1)</span>
+<a name="l00025"></a>00025 <span class="preprocessor"></span>
+<a name="l00027"></a><a class="code" href="neural_09_09_8hpp.html#05e2bb5b9fc32f0b6b4d84fe43177d72">00027</a> <span class="preprocessor">#define         BETA0   1.0</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span>
+<a name="l00033"></a>00033 <span class="keyword">namespace </span>neuralpp  {
+<a name="l00034"></a>00034         <span class="keyword">class </span>Synapsis;
+<a name="l00035"></a>00035         <span class="keyword">class </span>Neuron;
+<a name="l00036"></a>00036         <span class="keyword">class </span>Layer;
+<a name="l00037"></a>00037         <span class="keyword">class </span>NeuralNet;
+<a name="l00038"></a>00038 
+<a name="l00039"></a>00039         <span class="keywordtype">double</span> <a class="code" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">df</a> (<span class="keywordtype">double</span> (*f)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> x);
+<a name="l00040"></a>00040         <span class="keywordtype">double</span> <a class="code" href="namespaceneuralpp.html#7df3a0de999c7a635f2289749ed4f194">__actv</a>(<span class="keywordtype">double</span> prop);
+<a name="l00041"></a>00041 
+<a name="l00064"></a><a class="code" href="classneuralpp_1_1NeuralNet.html">00064</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1NeuralNet.html" title="Main project&amp;#39;s class.">NeuralNet</a>  {
+<a name="l00065"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">00065</a>                 <span class="keywordtype">int</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#4cb52dae7b43d03fac73afca7b9f3a51">epochs</a>;
+<a name="l00066"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#4f88106c9e542c39eac43b4ca1974a2a">00066</a>                 <span class="keywordtype">int</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#4f88106c9e542c39eac43b4ca1974a2a">ref_epochs</a>;
+<a name="l00067"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">00067</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#6bd7be443e46b2fdbf1da2edb8e611ab">l_rate</a>;
+<a name="l00068"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">00068</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#327dbfdd72b0a74293f8f29630525aa3">threshold</a>;
+<a name="l00069"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">00069</a>                 std::vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#a9e4ff43427f56663739c4c7450de8ee">expect</a>;
+<a name="l00070"></a>00070 
+<a name="l00075"></a>00075                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#94169c89a7cd47122ab5dbf1d5c5e108" title="It updates the weights of the net&amp;#39;s synapsis through back-propagation.">updateWeights</a>();
+<a name="l00076"></a>00076 
+<a name="l00082"></a>00082                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#f697a8d9967ad8f03e5a16a42cd110c5" title="It commits the changes made by updateWeights() to the layer l.">commitChanges</a> (<a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>&amp; l);
+<a name="l00083"></a>00083 
+<a name="l00089"></a>00089                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#8a140d28e6dd4097470c7c138801ad01" title="Get the error made on the expected result as squared deviance.">error</a> (<span class="keywordtype">double</span> ex);
+<a name="l00090"></a>00090                 
+<a name="l00095"></a>00095                 double (*<a class="code" href="classneuralpp_1_1NeuralNet.html#c1469e6afd87d85b82f14bc246f82457" title="Private pointer to function, containing the function to be used as activation function...">actv_f</a>)(double);
 <a name="l00096"></a>00096 
-<a name="l00107"></a>00107                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a> (<span class="keywordtype">size_t</span> in_size, <span class="keywordtype">size_t</span> hidden_size, <span class="keywordtype">size_t</span> out_size, <span class="keywordtype">double</span> l, <span class="keywordtype">int</span> e);
-<a name="l00108"></a>00108 
-<a name="l00114"></a>00114                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a> (<span class="keyword">const</span> <span class="keywordtype">string</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f5ec2727c0756ddb097b53efe49b81afb">file</a>) <span class="keywordflow">throw</span>(NetworkFileNotFoundException);
-<a name="l00115"></a>00115                 
-<a name="l00116"></a>00116                 
-<a name="l00128"></a>00128                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a> (<span class="keywordtype">size_t</span> in_size, <span class="keywordtype">size_t</span> hidden_size, <span class="keywordtype">size_t</span> out_size,
-<a name="l00129"></a>00129                                 <span class="keywordtype">double</span>(*actv)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> l, <span class="keywordtype">int</span> e);
-<a name="l00130"></a>00130 
-<a name="l00136"></a>00136                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810" title="It gets the output of the network (note: the layer output should contain an only...">getOutput</a>() <span class="keyword">const</span>;
-<a name="l00137"></a>00137 
-<a name="l00142"></a>00142                 vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#a6b8bf3800b43b58843c65fc431207ae" title="It gets the output of the network in case the output layer contains more neurons...">getOutputs</a>();
-<a name="l00143"></a>00143 
-<a name="l00149"></a>00149                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa" title="It gets the value expected.">expected</a>() <span class="keyword">const</span>;
-<a name="l00150"></a>00150 
-<a name="l00155"></a>00155                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236" title="It sets the value you expect from your network.">setExpected</a>(<span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#261f5f68fcc5be54250cfa03945266dd">ex</a>);
-<a name="l00156"></a>00156 
-<a name="l00162"></a>00162                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#b0bd1daadb06980dff1f50d33a7c098e" title="It updates through back-propagation the weights of the synapsis and computes again...">update</a>();
-<a name="l00163"></a>00163 
-<a name="l00168"></a>00168                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890" title="It propagates values through the network.">propagate</a>();
-<a name="l00169"></a>00169 
-<a name="l00174"></a>00174                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#0de170e8ab561ad63d0739b4c4b74f68" title="It sets the input for the network.">setInput</a> (vector&lt;double&gt;&amp; v);
-<a name="l00175"></a>00175 
-<a name="l00180"></a>00180                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#46f23f462318a4ffc037a4e806364c3f" title="It links the layers of the network (input, hidden, output).">link</a>();
-<a name="l00181"></a>00181 
-<a name="l00188"></a>00188                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407" title="Save a trained neural network to a binary file.">save</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname) <span class="keywordflow">throw</span>(NetworkFileWriteException);
-<a name="l00189"></a>00189 
-<a name="l00197"></a>00197                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#ead4bdef0602a5cadbe3beb685e01f5f" title="Train a network using a training set loaded from an XML file.">train</a> (<span class="keywordtype">string</span> xml, <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f" title="Enum to choose the eventual training source for our network (XML from a file or from...">source</a> src) <span class="keywordflow">throw</span>(InvalidXMLException);
+<a name="l00097"></a>00097         <span class="keyword">public</span>:
+<a name="l00098"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">00098</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#e2b4e8405f9d25edab395d61502bdba9">input</a>;
+<a name="l00099"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#bbdaa1b6c0a1a95d2b18cd25fda2a266">00099</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#bbdaa1b6c0a1a95d2b18cd25fda2a266">hidden</a>;
+<a name="l00100"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">00100</a>                 <a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>* <a class="code" href="classneuralpp_1_1NeuralNet.html#fa9b2dbcbb39d0fc70f790ac24069a74">output</a>;
+<a name="l00101"></a>00101 
+<a name="l00105"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">00105</a>                 <span class="keyword">typedef</span> <span class="keyword">enum</span>  { <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f5ec2727c0756ddb097b53efe49b81afb">file</a>, <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">str</a> } <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f" title="Enum to choose the eventual training source for our network (XML from a file or from...">source</a>;
+<a name="l00106"></a>00106 
+<a name="l00110"></a><a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2">00110</a>                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a>()  {}
+<a name="l00111"></a>00111 
+<a name="l00125"></a>00125                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a> (<span class="keywordtype">size_t</span> in_size, <span class="keywordtype">size_t</span> hidden_size, <span class="keywordtype">size_t</span> out_size, <span class="keywordtype">double</span> l,
+<a name="l00126"></a>00126                                 <span class="keywordtype">int</span> e, <span class="keywordtype">double</span> th = 0.0, <span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>) = __actv);
+<a name="l00127"></a>00127 
+<a name="l00133"></a>00133                 <a class="code" href="classneuralpp_1_1NeuralNet.html#92b145f2f6f00bf1ba645ce2235882c2" title="Empty constructor for the class - it just makes nothing.">NeuralNet</a> (<span class="keyword">const</span> std::string <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f5ec2727c0756ddb097b53efe49b81afb">file</a>) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html" title="Exception thrown when doing an attempt to load a network from an invalid file.">NetworkFileNotFoundException</a>);
+<a name="l00134"></a>00134                 
+<a name="l00140"></a>00140                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#961dce8913264bf64c899dce4e25f810" title="It gets the output of the network (note: the layer output should contain an only...">getOutput</a>() <span class="keyword">const</span>;
+<a name="l00141"></a>00141 
+<a name="l00146"></a>00146                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#e08cdcf4b70f987700e553d9914f6179" title="Get the threshold of the neurons in the network.">getThreshold</a>() <span class="keyword">const</span>;
+<a name="l00147"></a>00147 
+<a name="l00152"></a>00152                 std::vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#e6d2215ecc8b560db2f6797db642191c" title="It gets the output of the network in case the output layer contains more neurons...">getOutputs</a>();
+<a name="l00153"></a>00153 
+<a name="l00159"></a>00159                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#562dfe9fb8d73bf25a23ce608451d3aa" title="Get the expected value (in case you have an only neuron in output layer).">expected</a>() <span class="keyword">const</span>;
+<a name="l00160"></a>00160 
+<a name="l00166"></a>00166                 std::vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#51a1851ed07b85bec091c9053ae99cf7" title="Get the expected value (in case you have an only neuron in output layer).">getExpected</a>() <span class="keyword">const</span>;
+<a name="l00167"></a>00167 
+<a name="l00172"></a>00172                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236" title="It sets the value you expect from your network (in case the network has an only neuron...">setExpected</a>(<span class="keywordtype">double</span> ex);
+<a name="l00173"></a>00173 
+<a name="l00178"></a>00178                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#b6475762b7e9eab086befdc511f7c236" title="It sets the value you expect from your network (in case the network has an only neuron...">setExpected</a>(std::vector&lt;double&gt; ex);
+<a name="l00179"></a>00179 
+<a name="l00185"></a>00185                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#b0bd1daadb06980dff1f50d33a7c098e" title="It updates through back-propagation the weights of the synapsis and computes again...">update</a>();
+<a name="l00186"></a>00186 
+<a name="l00191"></a>00191                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#c129c180647362da963758bfd1ba6890" title="It propagates values through the network.">propagate</a>();
+<a name="l00192"></a>00192 
+<a name="l00197"></a>00197                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#405b32d2928344314ecf0469070b0f17" title="It sets the input for the network.">setInput</a> (std::vector&lt;double&gt; v);
 <a name="l00198"></a>00198 
-<a name="l00203"></a>00203                 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#45c7645d4affe65752d37cd230afba24" title="Initialize the training XML for the neural network.">initXML</a> (<span class="keywordtype">string</span>&amp; xml);
+<a name="l00203"></a>00203                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#46f23f462318a4ffc037a4e806364c3f" title="It links the layers of the network (input, hidden, output).">link</a>();
 <a name="l00204"></a>00204 
-<a name="l00211"></a>00211                 <span class="keyword">static</span> vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#e07af23ceb8666518da0c035bf1e0376" title="Splits a string into a vector of doubles, given a delimitator.">split</a> (<span class="keywordtype">char</span> delim, <span class="keywordtype">string</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">str</a>);
+<a name="l00211"></a>00211                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#fdf94c276720c25e565cac834fe8a407" title="Save a trained neural network to a binary file.">save</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* fname) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1NetworkFileWriteException.html" title="Exception thrown when trying to write the network&amp;#39;s information to a file that...">NetworkFileWriteException</a>);
 <a name="l00212"></a>00212 
-<a name="l00225"></a>00225                 <span class="keyword">static</span> <span class="keywordtype">string</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#4be31ecb0b543a192997bd83c6995ccb" title="Get a training set from a string and copies it to an XML For example, these strings...">XMLFromSet</a> (<span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">string</span> <span class="keyword">set</span>);
-<a name="l00226"></a>00226 
-<a name="l00231"></a>00231                 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#28b9966c5f197b8e86d57dd104aa32a6" title="Closes an open XML document generated by &amp;quot;initXML&amp;quot; and &amp;quot;XMLFromSet&amp;quot;...">closeXML</a>(<span class="keywordtype">string</span>&amp; xml);
-<a name="l00232"></a>00232         };
-<a name="l00233"></a>00233 
-<a name="l00239"></a><a class="code" href="classneuralpp_1_1Synapsis.html">00239</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>  {
-<a name="l00240"></a><a class="code" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">00240</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">delta</a>;
-<a name="l00241"></a><a class="code" href="classneuralpp_1_1Synapsis.html#65471cd6c9ef87609dfa4b0e5fafa708">00241</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#65471cd6c9ef87609dfa4b0e5fafa708">prev_delta</a>;
-<a name="l00242"></a><a class="code" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">00242</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">weight</a>;
-<a name="l00243"></a>00243 
-<a name="l00244"></a><a class="code" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">00244</a>                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a> *<a class="code" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">in</a>;
-<a name="l00245"></a><a class="code" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">00245</a>                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a> *<a class="code" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">out</a>;
-<a name="l00246"></a>00246                 
-<a name="l00247"></a>00247                 double (*<a class="code" href="classneuralpp_1_1Synapsis.html#2539b9eef2ff0f3522aea8d89e394f02">actv_f</a>)(double);
-<a name="l00248"></a>00248 
-<a name="l00249"></a>00249         <span class="keyword">public</span>:
-<a name="l00257"></a>00257                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a>(<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> d);
-<a name="l00258"></a>00258 
-<a name="l00265"></a>00265                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a> (<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>));
-<a name="l00266"></a>00266                 
-<a name="l00274"></a>00274                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a> (<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o,
-<a name="l00275"></a>00275                                 <span class="keywordtype">double</span> w, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>));
-<a name="l00276"></a>00276         
-<a name="l00280"></a>00280                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* <a class="code" href="classneuralpp_1_1Synapsis.html#5ba8a93a5741f4855390eb8a46e99435">getIn</a>();
-<a name="l00281"></a>00281                 
-<a name="l00285"></a>00285                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* <a class="code" href="classneuralpp_1_1Synapsis.html#61c9a04e03291a01f44520cef143cbdd">getOut</a>();
-<a name="l00286"></a>00286 
-<a name="l00291"></a>00291                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Synapsis.html#acee77d0fdf9889464ab5ed27beae0ff" title="Set the weight of the synapsis.">setWeight</a>(<span class="keywordtype">double</span> w) <span class="keywordflow">throw</span>(InvalidSynapticalWeightException);
-<a name="l00292"></a>00292                 
-<a name="l00298"></a>00298                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1" title="It sets the delta (how much to change the weight after an update) of the synapsis...">setDelta</a>(<span class="keywordtype">double</span> d) <span class="keywordflow">throw</span>(InvalidSynapticalWeightException);
-<a name="l00299"></a>00299 
-<a name="l00304"></a>00304                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#aa79c16ec6b59949e5d2f75a3f10d530" title="Return the weight of the synapsis.">getWeight</a>();
-<a name="l00305"></a>00305                 
-<a name="l00310"></a>00310                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#18f15b920609be8b818d43a0227aada5" title="Return the delta of the synapsis.">getDelta</a>();
-<a name="l00311"></a>00311                 
-<a name="l00316"></a>00316                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#2fe3e9ec97542f1476d8b9306aa09756" title="Get the delta of the synapsis at the previous iteration.">getPrevDelta</a>();
-<a name="l00317"></a>00317 
-<a name="l00328"></a>00328                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#ecdb17182de791f7fdd417232e184350" title="Get the inertial momentum of a synapsis.">momentum</a> (<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> x);
-<a name="l00329"></a>00329         };
-<a name="l00330"></a>00330 
-<a name="l00336"></a><a class="code" href="classneuralpp_1_1Neuron.html">00336</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>  {
-<a name="l00337"></a><a class="code" href="classneuralpp_1_1Neuron.html#eec680c47272b2465e8d8a998c359853">00337</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#eec680c47272b2465e8d8a998c359853">actv_val</a>;
-<a name="l00338"></a><a class="code" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">00338</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">prop_val</a>;
-<a name="l00339"></a>00339 
-<a name="l00340"></a><a class="code" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">00340</a>                 vector&lt; Synapsis &gt; <a class="code" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">in</a>;
-<a name="l00341"></a><a class="code" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">00341</a>                 vector&lt; Synapsis &gt; <a class="code" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">out</a>;
-<a name="l00342"></a>00342 
-<a name="l00343"></a>00343                 double (*<a class="code" href="classneuralpp_1_1Neuron.html#198ddd0d11a26d0052d52b787d6a0df0">actv_f</a>)(double);
-<a name="l00344"></a>00344         
-<a name="l00345"></a>00345         <span class="keyword">public</span>:
-<a name="l00350"></a>00350                 <a class="code" href="classneuralpp_1_1Neuron.html#9863a08b73bc97c8b514aca6c580ff7b" title="Constructor.">Neuron</a> (<span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>));
-<a name="l00351"></a>00351 
-<a name="l00358"></a>00358                 <a class="code" href="classneuralpp_1_1Neuron.html#9863a08b73bc97c8b514aca6c580ff7b" title="Constructor.">Neuron</a> (vector&lt;Synapsis&gt; <a class="code" href="classneuralpp_1_1Neuron.html#ead827210fa18c2baae03927b2c798ff">in</a>, vector&lt;Synapsis&gt; <a class="code" href="classneuralpp_1_1Neuron.html#82a4297f84d6403e52a8386d26117b4f">out</a>,
-<a name="l00359"></a>00359                                 <span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>));
-<a name="l00360"></a>00360 
-<a name="l00366"></a>00366                 <a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; <a class="code" href="classneuralpp_1_1Neuron.html#29f2d9dcc4ca34f224d4dc39bb2f180a" title="Get the i-th synapsis connected on the input of the neuron.">synIn</a> (<span class="keywordtype">size_t</span> i);
-<a name="l00367"></a>00367                 
-<a name="l00373"></a>00373                 <a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; <a class="code" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe" title="Get the i-th synapsis connected on the output of the neuron.">synOut</a> (<span class="keywordtype">size_t</span> i);
-<a name="l00374"></a>00374 
-<a name="l00379"></a>00379                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#583ada6e1dd3f2e113415b4d89196e62" title="It pushes a new input synapsis.">push_in</a> (<a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; s);
-<a name="l00380"></a>00380                 
-<a name="l00385"></a>00385                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#bca65db84f56f9d40694bfbcd25812cb" title="It pushes a new output synapsis.">push_out</a> (<a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; s);
-<a name="l00386"></a>00386 
-<a name="l00391"></a>00391                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd" title="Change the activation value of the neuron.">setActv</a> (<span class="keywordtype">double</span> a);
-<a name="l00392"></a>00392 
-<a name="l00397"></a>00397                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#aa6e58f073a76b3481fea9115a4e6ea6" title="Change the propagation value of the neuron.">setProp</a> (<span class="keywordtype">double</span> p);
-<a name="l00398"></a>00398 
-<a name="l00403"></a>00403                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#55993867179f0ac7d1e0e2c460ceb611" title="Get the activation value of the neuron.">getActv</a>();
-<a name="l00404"></a>00404                 
-<a name="l00409"></a>00409                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9" title="Get the propagation value of the neuron.">getProp</a>();
-<a name="l00410"></a>00410 
-<a name="l00414"></a>00414                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#8b0ca61cd0e047c8691ab39aae56dbda" title="It propagates its activation value to the connected neurons.">propagate</a>();
-<a name="l00415"></a>00415 
-<a name="l00420"></a>00420                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Neuron.html#ad97f1a082d5f969eb4c69ab454ecfbb" title="Get the number of input synapsis for the neuron.">nIn</a>();
-<a name="l00421"></a>00421                 
-<a name="l00426"></a>00426                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Neuron.html#fe458021e3b20d58dc608fb94ae2135b" title="Get the number of output synapsis for the neuron.">nOut</a>();
-<a name="l00427"></a>00427 
-<a name="l00431"></a>00431                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#2e2ccb69277fc3d992a3a3f2360ed154" title="Remove input and output synapsis from a neuron.">synClear</a>();
-<a name="l00432"></a>00432         };
-<a name="l00433"></a>00433 
-<a name="l00439"></a><a class="code" href="classneuralpp_1_1Layer.html">00439</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>  {
-<a name="l00440"></a><a class="code" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">00440</a>                 vector&lt;Neuron&gt; <a class="code" href="classneuralpp_1_1Layer.html#855685c9da56b06b629e13a2f8c719ce">elements</a>;
-<a name="l00441"></a>00441 
-<a name="l00442"></a>00442                 void (*<a class="code" href="classneuralpp_1_1Layer.html#c023a15a16353d0b4f44060a159f550f">update_weights</a>)();
-<a name="l00443"></a>00443                 double (*<a class="code" href="classneuralpp_1_1Layer.html#824367da29f92253a027a7c5b4a4405e">actv_f</a>)(double);
-<a name="l00444"></a>00444 
-<a name="l00445"></a>00445         <span class="keyword">public</span>:
-<a name="l00451"></a>00451                 <a class="code" href="classneuralpp_1_1Layer.html#fb08bddd85d36570dabfe915461f07c5" title="Constructor.">Layer</a> (<span class="keywordtype">size_t</span> sz, <span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>));
-<a name="l00452"></a>00452 
-<a name="l00459"></a>00459                 <a class="code" href="classneuralpp_1_1Layer.html#fb08bddd85d36570dabfe915461f07c5" title="Constructor.">Layer</a> (vector&lt;Neuron&gt;&amp; neurons, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>));
-<a name="l00460"></a>00460 
-<a name="l00466"></a>00466                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>&amp; <a class="code" href="classneuralpp_1_1Layer.html#45ff7554830558155c6fbce3b6827122" title="Redefinition for operator [].">operator[] </a>(<span class="keywordtype">size_t</span> i) <span class="keywordflow">throw</span>(NetworkIndexOutOfBoundsException);
-<a name="l00467"></a>00467 
-<a name="l00472"></a>00472                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#ac33444fde14633fa1ad4acb024ad150" title="It links a layer to another.">link</a> (<a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>&amp; l);
+<a name="l00220"></a>00220                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#1c9e17437d41a7048611e21a3cc1c7dd" title="Train a network using a training set loaded from an XML file.">train</a> (std::string xml, <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f" title="Enum to choose the eventual training source for our network (XML from a file or from...">source</a> src) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1InvalidXMLException.html" title="Exception thrown when trying parsing an invalid XML.">InvalidXMLException</a>);
+<a name="l00221"></a>00221 
+<a name="l00226"></a>00226                 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#96da6712a72051cf34ad961761ef6e08" title="Initialize the training XML for the neural network.">initXML</a> (std::string&amp; xml);
+<a name="l00227"></a>00227 
+<a name="l00234"></a>00234                 <span class="keyword">static</span> std::vector&lt;double&gt; <a class="code" href="classneuralpp_1_1NeuralNet.html#83c6555520856d5867752904349ab6ca" title="Splits a string into a vector of doubles, given a delimitator.">split</a> (<span class="keywordtype">char</span> delim, std::string <a class="code" href="classneuralpp_1_1NeuralNet.html#94c36c94060e785ea67a0014c4182f8f6d06b4fe9414a158c97aee1a3679a904">str</a>);
+<a name="l00235"></a>00235 
+<a name="l00248"></a>00248                 <span class="keyword">static</span> std::string <a class="code" href="classneuralpp_1_1NeuralNet.html#0a2733037af912b3e6a10146e7b7172f" title="Get a training set from a string and copies it to an XML For example, these strings...">XMLFromSet</a> (<span class="keywordtype">int</span>&amp; <span class="keywordtype">id</span>, std::string <span class="keyword">set</span>);
+<a name="l00249"></a>00249 
+<a name="l00254"></a>00254                 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1NeuralNet.html#e17732ed578bc4bd6032bfae58a5cf51" title="Closes an open XML document generated by &amp;quot;initXML&amp;quot; and &amp;quot;XMLFromSet&amp;quot;...">closeXML</a>(std::string&amp; xml);
+<a name="l00255"></a>00255         };
+<a name="l00256"></a>00256 
+<a name="l00262"></a><a class="code" href="classneuralpp_1_1Synapsis.html">00262</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>  {
+<a name="l00263"></a><a class="code" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">00263</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#617fdc4305f8f1850eac267a7ee22660">delta</a>;
+<a name="l00264"></a><a class="code" href="classneuralpp_1_1Synapsis.html#65471cd6c9ef87609dfa4b0e5fafa708">00264</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#65471cd6c9ef87609dfa4b0e5fafa708">prev_delta</a>;
+<a name="l00265"></a><a class="code" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">00265</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#0bc523a8135ebbb5c0da932939d30ed7">weight</a>;
+<a name="l00266"></a>00266 
+<a name="l00267"></a><a class="code" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">00267</a>                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a> *<a class="code" href="classneuralpp_1_1Synapsis.html#83d41c158054b08bd05051736e89a0ad">in</a>;
+<a name="l00268"></a><a class="code" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">00268</a>                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a> *<a class="code" href="classneuralpp_1_1Synapsis.html#fb219e05038fa0da20db1082ab0500be">out</a>;
+<a name="l00269"></a>00269                 
+<a name="l00270"></a>00270                 double (*<a class="code" href="classneuralpp_1_1Synapsis.html#2539b9eef2ff0f3522aea8d89e394f02">actv_f</a>)(double);
+<a name="l00271"></a>00271 
+<a name="l00272"></a>00272         <span class="keyword">public</span>:
+<a name="l00280"></a>00280                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a>(<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> d);
+<a name="l00281"></a>00281 
+<a name="l00288"></a>00288                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a> (<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>));
+<a name="l00289"></a>00289                 
+<a name="l00297"></a>00297                 <a class="code" href="classneuralpp_1_1Synapsis.html#0729de9e737b9967421edcfc4b410bd8" title="Constructor.">Synapsis</a> (<a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* i, <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* o,
+<a name="l00298"></a>00298                                 <span class="keywordtype">double</span> w, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>));
+<a name="l00299"></a>00299         
+<a name="l00303"></a>00303                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* <a class="code" href="classneuralpp_1_1Synapsis.html#298fd3c7483ad572899fecec01ac8fdf">getIn</a>() <span class="keyword">const</span>;
+<a name="l00304"></a>00304                 
+<a name="l00308"></a>00308                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>* <a class="code" href="classneuralpp_1_1Synapsis.html#b46d876761a73a24db87f5a144a0e899">getOut</a>() <span class="keyword">const</span>;
+<a name="l00309"></a>00309 
+<a name="l00314"></a>00314                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Synapsis.html#acee77d0fdf9889464ab5ed27beae0ff" title="Set the weight of the synapsis.">setWeight</a>(<span class="keywordtype">double</span> w) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html" title="Exception raised when, while trying the network or directly, the weight of a synapsis...">InvalidSynapticalWeightException</a>);
+<a name="l00315"></a>00315                 
+<a name="l00321"></a>00321                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Synapsis.html#429ad5b25930faf436a9d725582802e1" title="It sets the delta (how much to change the weight after an update) of the synapsis...">setDelta</a>(<span class="keywordtype">double</span> d) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html" title="Exception raised when, while trying the network or directly, the weight of a synapsis...">InvalidSynapticalWeightException</a>);
+<a name="l00322"></a>00322 
+<a name="l00327"></a>00327                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#bcbf7228632ff4d6bbb67703323d2db0" title="Return the weight of the synapsis.">getWeight</a>() <span class="keyword">const</span>;
+<a name="l00328"></a>00328                 
+<a name="l00333"></a>00333                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#00c8e9c0804662f2b3247d6dddb4ca6c" title="Return the delta of the synapsis.">getDelta</a>() <span class="keyword">const</span>;
+<a name="l00334"></a>00334                 
+<a name="l00339"></a>00339                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#0148b9c8db870c928711168702ae51c5" title="Get the delta of the synapsis at the previous iteration.">getPrevDelta</a>() <span class="keyword">const</span>;
+<a name="l00340"></a>00340 
+<a name="l00351"></a>00351                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Synapsis.html#cff10a022d4c021688e4df944c05d8bd" title="Get the inertial momentum of a synapsis.">momentum</a> (<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> x) <span class="keyword">const</span>;
+<a name="l00352"></a>00352         };
+<a name="l00353"></a>00353 
+<a name="l00359"></a><a class="code" href="classneuralpp_1_1Neuron.html">00359</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>  {
+<a name="l00360"></a><a class="code" href="classneuralpp_1_1Neuron.html#eec680c47272b2465e8d8a998c359853">00360</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#eec680c47272b2465e8d8a998c359853">actv_val</a>;
+<a name="l00361"></a><a class="code" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">00361</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#da75259de98b1a893c736666af6bfdc3">prop_val</a>;
+<a name="l00362"></a><a class="code" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">00362</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#7b16632868821d73dedcb8edaf6dbbef">threshold</a>;
+<a name="l00363"></a>00363 
+<a name="l00364"></a><a class="code" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">00364</a>                 std::vector&lt; Synapsis &gt; <a class="code" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">in</a>;
+<a name="l00365"></a><a class="code" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">00365</a>                 std::vector&lt; Synapsis &gt; <a class="code" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">out</a>;
+<a name="l00366"></a>00366 
+<a name="l00367"></a>00367                 double (*<a class="code" href="classneuralpp_1_1Neuron.html#198ddd0d11a26d0052d52b787d6a0df0">actv_f</a>)(double);
+<a name="l00368"></a>00368         
+<a name="l00369"></a>00369         <span class="keyword">public</span>:
+<a name="l00376"></a>00376                 <a class="code" href="classneuralpp_1_1Neuron.html#c9bd4f5f618fcf1adcebf1ab63ee0960" title="Constructor.">Neuron</a> (<span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> th = 0.0);
+<a name="l00377"></a>00377 
+<a name="l00386"></a>00386                 <a class="code" href="classneuralpp_1_1Neuron.html#c9bd4f5f618fcf1adcebf1ab63ee0960" title="Constructor.">Neuron</a> (std::vector&lt;Synapsis&gt; <a class="code" href="classneuralpp_1_1Neuron.html#bd07357465bb7b29bb344400e9e08710">in</a>, std::vector&lt;Synapsis&gt; <a class="code" href="classneuralpp_1_1Neuron.html#982aceef324b7764e778d5949720bc55">out</a>,
+<a name="l00387"></a>00387                                 <span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> th = 0.0);
+<a name="l00388"></a>00388 
+<a name="l00394"></a>00394                 <a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; <a class="code" href="classneuralpp_1_1Neuron.html#29f2d9dcc4ca34f224d4dc39bb2f180a" title="Get the i-th synapsis connected on the input of the neuron.">synIn</a> (<span class="keywordtype">size_t</span> i);
+<a name="l00395"></a>00395                 
+<a name="l00401"></a>00401                 <a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a>&amp; <a class="code" href="classneuralpp_1_1Neuron.html#655f1637e1b754461413ac7fc2ffeebe" title="Get the i-th synapsis connected on the output of the neuron.">synOut</a> (<span class="keywordtype">size_t</span> i);
+<a name="l00402"></a>00402 
+<a name="l00407"></a>00407                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#4d252151c35839975838539d846d70be" title="It pushes a new input synapsis.">push_in</a> (<a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a> s);
+<a name="l00408"></a>00408                 
+<a name="l00413"></a>00413                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#2c0acb0e6d413c4e0fc9e7939da1a684" title="It pushes a new output synapsis.">push_out</a> (<a class="code" href="classneuralpp_1_1Synapsis.html" title="Class for managing synapsis.">Synapsis</a> s);
+<a name="l00414"></a>00414 
+<a name="l00419"></a>00419                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#ddf00ffef030b27ed11901aad08822bd" title="Change the activation value of the neuron.">setActv</a> (<span class="keywordtype">double</span> a);
+<a name="l00420"></a>00420 
+<a name="l00425"></a>00425                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#aa6e58f073a76b3481fea9115a4e6ea6" title="Change the propagation value of the neuron.">setProp</a> (<span class="keywordtype">double</span> p);
+<a name="l00426"></a>00426 
+<a name="l00431"></a>00431                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#55993867179f0ac7d1e0e2c460ceb611" title="Get the activation value of the neuron.">getActv</a>();
+<a name="l00432"></a>00432                 
+<a name="l00437"></a>00437                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Neuron.html#57c022f82213f662e2a263fc134a3fc9" title="Get the propagation value of the neuron.">getProp</a>();
+<a name="l00438"></a>00438 
+<a name="l00442"></a>00442                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#928d9bf5aed600119c640779e4034f30" title="Compute the propagation value of the neuron and set it.">propagate</a>();
+<a name="l00443"></a>00443 
+<a name="l00448"></a>00448                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Neuron.html#ad97f1a082d5f969eb4c69ab454ecfbb" title="Get the number of input synapsis for the neuron.">nIn</a>();
+<a name="l00449"></a>00449                 
+<a name="l00454"></a>00454                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Neuron.html#fe458021e3b20d58dc608fb94ae2135b" title="Get the number of output synapsis for the neuron.">nOut</a>();
+<a name="l00455"></a>00455 
+<a name="l00459"></a>00459                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Neuron.html#2e2ccb69277fc3d992a3a3f2360ed154" title="Remove input and output synapsis from a neuron.">synClear</a>();
+<a name="l00460"></a>00460         };
+<a name="l00461"></a>00461 
+<a name="l00467"></a><a class="code" href="classneuralpp_1_1Layer.html">00467</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>  {
+<a name="l00468"></a><a class="code" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">00468</a>                 std::vector&lt;Neuron&gt; <a class="code" href="classneuralpp_1_1Layer.html#8188cb5c264e6021cee9979b968a0305">elements</a>;
+<a name="l00469"></a><a class="code" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">00469</a>                 <span class="keywordtype">double</span> <a class="code" href="classneuralpp_1_1Layer.html#02cf4efe1da02a7404d25375c85ed71f">threshold</a>;
+<a name="l00470"></a>00470 
+<a name="l00471"></a>00471                 void (*<a class="code" href="classneuralpp_1_1Layer.html#c023a15a16353d0b4f44060a159f550f">update_weights</a>)();
+<a name="l00472"></a>00472                 double (*<a class="code" href="classneuralpp_1_1Layer.html#824367da29f92253a027a7c5b4a4405e">actv_f</a>)(double);
 <a name="l00473"></a>00473 
-<a name="l00478"></a>00478                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#dbad95f635343a2998794113d7762cf7" title="It sets a vector of propagation values to all its neurons.">setProp</a> (vector&lt;double&gt;&amp; v);
-<a name="l00479"></a>00479                  
-<a name="l00484"></a>00484                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#98f79281b680b1d18fd91fa5794c0899" title="It sets a vector of activation values to all its neurons.">setActv</a> (vector&lt;double&gt;&amp; v);
-<a name="l00485"></a>00485 
-<a name="l00489"></a>00489                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1" title="It propagates its activation values to the output layers.">propagate</a>();
-<a name="l00490"></a>00490 
-<a name="l00494"></a>00494                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Layer.html#7ca71ed62fbe9c1e9c0fb6a8dcaf76f0">size</a>() <span class="keyword">const</span>;
-<a name="l00495"></a>00495         };
-<a name="l00496"></a>00496 
-<a name="l00497"></a><a class="code" href="structneuralpp_1_1netrecord.html">00497</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1netrecord.html">netrecord</a>  {
-<a name="l00498"></a><a class="code" href="structneuralpp_1_1netrecord.html#e1f480bfef05033accef40f77c09fa87">00498</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#e1f480bfef05033accef40f77c09fa87">input_size</a>;
-<a name="l00499"></a><a class="code" href="structneuralpp_1_1netrecord.html#3c1728ac66c37f6ac85c404d4f55552e">00499</a>                 <span class="keywordtype">int</span> hidden_size;
-<a name="l00500"></a><a class="code" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">00500</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">output_size</a>;
-<a name="l00501"></a>00501 
-<a name="l00502"></a><a class="code" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">00502</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">epochs</a>;
-<a name="l00503"></a><a class="code" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">00503</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">l_rate</a>;
-<a name="l00504"></a><a class="code" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">00504</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">ex</a>;
-<a name="l00505"></a>00505         };
+<a name="l00474"></a>00474         <span class="keyword">public</span>:
+<a name="l00482"></a>00482                 <a class="code" href="classneuralpp_1_1Layer.html#a235767701b5e9dcf28c5e9e0d04cb0b" title="Constructor.">Layer</a> (<span class="keywordtype">size_t</span> sz, <span class="keywordtype">double</span> (*a)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> th = 0.0);
+<a name="l00483"></a>00483 
+<a name="l00492"></a>00492                 <a class="code" href="classneuralpp_1_1Layer.html#a235767701b5e9dcf28c5e9e0d04cb0b" title="Constructor.">Layer</a> (std::vector&lt;Neuron&gt;&amp; neurons, <span class="keywordtype">double</span>(*a)(<span class="keywordtype">double</span>), <span class="keywordtype">double</span> th = 0.0);
+<a name="l00493"></a>00493 
+<a name="l00499"></a>00499                 <a class="code" href="classneuralpp_1_1Neuron.html" title="Class for managing neurons.">Neuron</a>&amp; <a class="code" href="classneuralpp_1_1Layer.html#45ff7554830558155c6fbce3b6827122" title="Redefinition for operator [].">operator[] </a>(<span class="keywordtype">size_t</span> i) <span class="keywordflow">throw</span>(<a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html" title="Exception raised when trying to access a neuron whose index is larger than the number...">NetworkIndexOutOfBoundsException</a>);
+<a name="l00500"></a>00500 
+<a name="l00505"></a>00505                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#ac33444fde14633fa1ad4acb024ad150" title="It links a layer to another.">link</a> (<a class="code" href="classneuralpp_1_1Layer.html" title="Class for managing layers of neurons.">Layer</a>&amp; l);
 <a name="l00506"></a>00506 
-<a name="l00507"></a><a class="code" href="structneuralpp_1_1neuronrecord.html">00507</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1neuronrecord.html">neuronrecord</a>  {
-<a name="l00508"></a><a class="code" href="structneuralpp_1_1neuronrecord.html#30b298a95939b88b565fefc2dc57e89d">00508</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1neuronrecord.html#30b298a95939b88b565fefc2dc57e89d">prop</a>;
-<a name="l00509"></a><a class="code" href="structneuralpp_1_1neuronrecord.html#15201b190584987255d81d4b7e773375">00509</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1neuronrecord.html#15201b190584987255d81d4b7e773375">actv</a>;
-<a name="l00510"></a>00510         };
-<a name="l00511"></a>00511 
-<a name="l00512"></a><a class="code" href="structneuralpp_1_1synrecord.html">00512</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1synrecord.html">synrecord</a>  {
-<a name="l00513"></a><a class="code" href="structneuralpp_1_1synrecord.html#81a7dbc97eecbf5bc85cac46373a78d2">00513</a>                 <span class="keywordtype">double</span> w;
-<a name="l00514"></a><a class="code" href="structneuralpp_1_1synrecord.html#3a862082dfa0edffce84936818bab374">00514</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1synrecord.html#3a862082dfa0edffce84936818bab374">d</a>;
-<a name="l00515"></a>00515         };
-<a name="l00516"></a>00516 }
+<a name="l00511"></a>00511                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#88ceffc23f02a9dc24d4355767b7cca7" title="Set the input values for the neurons of the layer (just use it for the input layer)...">setInput</a> (std::vector&lt;double&gt; v);
+<a name="l00512"></a>00512 
+<a name="l00516"></a>00516                 <span class="keywordtype">void</span> <a class="code" href="classneuralpp_1_1Layer.html#fcfd306039dbaf91c9e2dcc8fc1f1ce1" title="It propagates its activation values to the output layers.">propagate</a>();
 <a name="l00517"></a>00517 
-<a name="l00518"></a>00518 <span class="comment">//#endif</span>
-<a name="l00519"></a>00519 <span class="preprocessor">#endif</span>
-<a name="l00520"></a>00520 <span class="preprocessor"></span>
+<a name="l00521"></a>00521                 <span class="keywordtype">size_t</span> <a class="code" href="classneuralpp_1_1Layer.html#7ca71ed62fbe9c1e9c0fb6a8dcaf76f0">size</a>() <span class="keyword">const</span>;
+<a name="l00522"></a>00522         };
+<a name="l00523"></a>00523 
+<a name="l00524"></a><a class="code" href="structneuralpp_1_1netrecord.html">00524</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1netrecord.html">netrecord</a>  {
+<a name="l00525"></a><a class="code" href="structneuralpp_1_1netrecord.html#e1f480bfef05033accef40f77c09fa87">00525</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#e1f480bfef05033accef40f77c09fa87">input_size</a>;
+<a name="l00526"></a><a class="code" href="structneuralpp_1_1netrecord.html#3c1728ac66c37f6ac85c404d4f55552e">00526</a>                 <span class="keywordtype">int</span> hidden_size;
+<a name="l00527"></a><a class="code" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">00527</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">output_size</a>;
+<a name="l00528"></a>00528 
+<a name="l00529"></a><a class="code" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">00529</a>                 <span class="keywordtype">int</span> <a class="code" href="structneuralpp_1_1netrecord.html#ab0149ed5ea0694e88213a07cd4427d1">epochs</a>;
+<a name="l00530"></a><a class="code" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">00530</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">l_rate</a>;
+<a name="l00531"></a><a class="code" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">00531</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1netrecord.html#dcc44fde3f67058d26ef2d5cbd0904e6">ex</a>;
+<a name="l00532"></a>00532         };
+<a name="l00533"></a>00533 
+<a name="l00534"></a><a class="code" href="structneuralpp_1_1neuronrecord.html">00534</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1neuronrecord.html">neuronrecord</a>  {
+<a name="l00535"></a><a class="code" href="structneuralpp_1_1neuronrecord.html#30b298a95939b88b565fefc2dc57e89d">00535</a>                 <span class="keywordtype">double</span> prop;
+<a name="l00536"></a><a class="code" href="structneuralpp_1_1neuronrecord.html#15201b190584987255d81d4b7e773375">00536</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1neuronrecord.html#15201b190584987255d81d4b7e773375">actv</a>;
+<a name="l00537"></a>00537         };
+<a name="l00538"></a>00538 
+<a name="l00539"></a><a class="code" href="structneuralpp_1_1synrecord.html">00539</a>         <span class="keyword">struct </span><a class="code" href="structneuralpp_1_1synrecord.html">synrecord</a>  {
+<a name="l00540"></a><a class="code" href="structneuralpp_1_1synrecord.html#81a7dbc97eecbf5bc85cac46373a78d2">00540</a>                 <span class="keywordtype">double</span> w;
+<a name="l00541"></a><a class="code" href="structneuralpp_1_1synrecord.html#3a862082dfa0edffce84936818bab374">00541</a>                 <span class="keywordtype">double</span> <a class="code" href="structneuralpp_1_1synrecord.html#3a862082dfa0edffce84936818bab374">d</a>;
+<a name="l00542"></a>00542         };
+<a name="l00543"></a>00543 }
+<a name="l00544"></a>00544 
+<a name="l00545"></a>00545 <span class="preprocessor">#endif</span>
+<a name="l00546"></a>00546 <span class="preprocessor"></span>
 </pre></div></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/neural_09_09_8hpp.html b/doc/html/neural_09_09_8hpp.html
index 762cba0..2b17f33 100644
--- a/doc/html/neural_09_09_8hpp.html
+++ b/doc/html/neural_09_09_8hpp.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 </div>
@@ -50,12 +51,14 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="neural_09_09_8hpp.html#839a9222721835f53c5b248241f535f4">RAND</a>&nbsp;&nbsp;&nbsp;(double) ( (rand() / (RAND_MAX/2)) - 1)</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default rand value: |sin(rand)|, always &gt;= 0 and &lt;= 1.  <a href="#839a9222721835f53c5b248241f535f4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="neural_09_09_8hpp.html#05e2bb5b9fc32f0b6b4d84fe43177d72">BETA0</a>&nbsp;&nbsp;&nbsp;0.8</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="neural_09_09_8hpp.html#05e2bb5b9fc32f0b6b4d84fe43177d72">BETA0</a>&nbsp;&nbsp;&nbsp;1.0</td></tr>
 
 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initial value for the inertial momentum of the synapses.  <a href="#05e2bb5b9fc32f0b6b4d84fe43177d72"></a><br></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceneuralpp.html#43c8197cc83f65fa9676386579671aec">neuralpp::df</a> (double(*f)(double), double x)</td></tr>
 
+<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceneuralpp.html#7df3a0de999c7a635f2289749ed4f194">neuralpp::__actv</a> (double prop)</td></tr>
+
 </table>
 <hr><h2>Define Documentation</h2>
 <a class="anchor" name="05e2bb5b9fc32f0b6b4d84fe43177d72"></a><!-- doxytag: member="neural++.hpp::BETA0" ref="05e2bb5b9fc32f0b6b4d84fe43177d72" args="" -->
@@ -63,7 +66,7 @@
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define BETA0&nbsp;&nbsp;&nbsp;0.8          </td>
+          <td class="memname">#define BETA0&nbsp;&nbsp;&nbsp;1.0          </td>
         </tr>
       </table>
 </div>
@@ -93,7 +96,7 @@ Default rand value: |sin(rand)|, always &gt;= 0 and &lt;= 1.
 </div>
 </div><p>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/neural_09_09__exception_8hpp-source.html b/doc/html/neural_09_09__exception_8hpp-source.html
index 043f639..3818972 100644
--- a/doc/html/neural_09_09__exception_8hpp-source.html
+++ b/doc/html/neural_09_09__exception_8hpp-source.html
@@ -12,10 +12,11 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 <h1>neural++_exception.hpp</h1><a href="neural_09_09__exception_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/**************************************************************************************************</span>
-<a name="l00002"></a>00002 <span class="comment"> * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *</span>
+<a name="l00002"></a>00002 <span class="comment"> * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *</span>
 <a name="l00003"></a>00003 <span class="comment"> * Copyright (C) 2009, BlackLight                                                                 *</span>
 <a name="l00004"></a>00004 <span class="comment"> *                                                                                                *</span>
 <a name="l00005"></a>00005 <span class="comment"> * This program is free software: you can redistribute it and/or modify it under the terms of the *</span>
@@ -27,52 +28,47 @@
 <a name="l00011"></a>00011 <span class="comment"> * this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.                                      *</span>
 <a name="l00012"></a>00012 <span class="comment"> **************************************************************************************************/</span>
 <a name="l00013"></a>00013 
-<a name="l00014"></a>00014 <span class="preprocessor">#ifndef __cplusplus</span>
-<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#error "This is a C++ library, you know, so you'd better use a C++ compiler to compile it"</span>
-<a name="l00016"></a>00016 <span class="preprocessor"></span><span class="preprocessor">#else</span>
-<a name="l00017"></a>00017 <span class="preprocessor"></span>
-<a name="l00018"></a>00018 <span class="preprocessor">#ifndef __NEURALPP_EXCEPTION</span>
-<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define __NEURALPP_EXCEPTION</span>
-<a name="l00020"></a>00020 <span class="preprocessor"></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;exception&gt;</span>
-<a name="l00022"></a>00022 
-<a name="l00023"></a>00023 <span class="keyword">namespace </span>neuralpp  {
-<a name="l00028"></a>00028         <span class="keyword">class </span>NetworkFileNotFoundException : <span class="keyword">public</span> std::exception  {
-<a name="l00029"></a>00029         <span class="keyword">public</span>:
-<a name="l00030"></a>00030                 NetworkFileNotFoundException()  {}
-<a name="l00031"></a>00031                 <span class="keyword">const</span> <span class="keywordtype">char</span>* what() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to load a neural network from an invalid network file"</span>; }
-<a name="l00032"></a>00032         };
-<a name="l00033"></a>00033 
-<a name="l00039"></a>00039         <span class="keyword">class </span>NetworkFileWriteException : <span class="keyword">public</span> std::exception  {
-<a name="l00040"></a>00040         <span class="keyword">public</span>:
-<a name="l00041"></a>00041                 NetworkFileWriteException()  {}
-<a name="l00042"></a>00042                 <span class="keyword">const</span> <span class="keywordtype">char</span>* what() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"There was an error while writing the network file"</span>; }
-<a name="l00043"></a>00043         };
-<a name="l00044"></a>00044 
-<a name="l00049"></a>00049         <span class="keyword">class </span>InvalidXMLException : <span class="keyword">public</span> std::exception  {
-<a name="l00050"></a>00050         <span class="keyword">public</span>:
-<a name="l00051"></a>00051                 InvalidXMLException()  {}
-<a name="l00052"></a>00052                 <span class="keyword">const</span> <span class="keywordtype">char</span>* what() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to load an invalid XML file"</span>; }
-<a name="l00053"></a>00053         };
-<a name="l00054"></a>00054 
-<a name="l00060"></a>00060         <span class="keyword">class </span>NetworkIndexOutOfBoundsException : <span class="keyword">public</span> std::exception  {
-<a name="l00061"></a>00061         <span class="keyword">public</span>:
-<a name="l00062"></a>00062                 NetworkIndexOutOfBoundsException()  {}
-<a name="l00063"></a>00063                 <span class="keyword">const</span> <span class="keywordtype">char</span>* what() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to access a non-existing neuron"</span>; }
-<a name="l00064"></a>00064         };
-<a name="l00065"></a>00065 
-<a name="l00071"></a>00071         <span class="keyword">class </span>InvalidSynapticalWeightException : <span class="keyword">public</span> std::exception  {
-<a name="l00072"></a>00072         <span class="keyword">public</span>:
-<a name="l00073"></a>00073                 InvalidSynapticalWeightException()  {}
-<a name="l00074"></a>00074                 <span class="keyword">const</span> <span class="keywordtype">char</span>* what() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to set an invalid weight for the synapsis"</span>; }
-<a name="l00075"></a>00075         };
-<a name="l00076"></a>00076 }
-<a name="l00077"></a>00077 
-<a name="l00078"></a>00078 <span class="preprocessor">#endif</span>
-<a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
-<a name="l00080"></a>00080 <span class="preprocessor"></span>
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef __NEURALPP_EXCEPTION</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define __NEURALPP_EXCEPTION</span>
+<a name="l00016"></a>00016 <span class="preprocessor"></span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;exception&gt;</span>
+<a name="l00018"></a>00018 
+<a name="l00019"></a>00019 <span class="keyword">namespace </span>neuralpp  {
+<a name="l00024"></a><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html">00024</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html" title="Exception thrown when doing an attempt to load a network from an invalid file.">NetworkFileNotFoundException</a> : <span class="keyword">public</span> std::exception  {
+<a name="l00025"></a>00025         <span class="keyword">public</span>:
+<a name="l00026"></a><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">00026</a>                 <a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html#9603eebdb841f06c9b1007e65cba60f6">NetworkFileNotFoundException</a>()  {}
+<a name="l00027"></a><a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">00027</a>                 <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classneuralpp_1_1NetworkFileNotFoundException.html#24cde7729ab22d343f36e638cfc40702">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to load a neural network from an invalid network file"</span>; }
+<a name="l00028"></a>00028         };
+<a name="l00029"></a>00029 
+<a name="l00035"></a><a class="code" href="classneuralpp_1_1NetworkFileWriteException.html">00035</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1NetworkFileWriteException.html" title="Exception thrown when trying to write the network&amp;#39;s information to a file that...">NetworkFileWriteException</a> : <span class="keyword">public</span> std::exception  {
+<a name="l00036"></a>00036         <span class="keyword">public</span>:
+<a name="l00037"></a><a class="code" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">00037</a>                 <a class="code" href="classneuralpp_1_1NetworkFileWriteException.html#83bc897b0ea11a384e0839a39e9fdb48">NetworkFileWriteException</a>()  {}
+<a name="l00038"></a><a class="code" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">00038</a>                 <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classneuralpp_1_1NetworkFileWriteException.html#c8802852cb38d5edf6f490ff3acb6078">what</a>() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"There was an error while writing the network file"</span>; }
+<a name="l00039"></a>00039         };
+<a name="l00040"></a>00040 
+<a name="l00045"></a><a class="code" href="classneuralpp_1_1InvalidXMLException.html">00045</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1InvalidXMLException.html" title="Exception thrown when trying parsing an invalid XML.">InvalidXMLException</a> : <span class="keyword">public</span> std::exception  {
+<a name="l00046"></a>00046         <span class="keyword">public</span>:
+<a name="l00047"></a><a class="code" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">00047</a>                 <a class="code" href="classneuralpp_1_1InvalidXMLException.html#10279e6f42a1ccb934afcfef2770c537">InvalidXMLException</a>()  {}
+<a name="l00048"></a><a class="code" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">00048</a>                 <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classneuralpp_1_1InvalidXMLException.html#4a8b81678ed0c319e1715ab5ef9112da">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to load an invalid XML file"</span>; }
+<a name="l00049"></a>00049         };
+<a name="l00050"></a>00050 
+<a name="l00056"></a><a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">00056</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html" title="Exception raised when trying to access a neuron whose index is larger than the number...">NetworkIndexOutOfBoundsException</a> : <span class="keyword">public</span> std::exception  {
+<a name="l00057"></a>00057         <span class="keyword">public</span>:
+<a name="l00058"></a><a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">00058</a>                 <a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#07141d2225ea9f2d486e755a3660d594">NetworkIndexOutOfBoundsException</a>()  {}
+<a name="l00059"></a><a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">00059</a>                 <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#8b65d77cb375a0aa40d5a9ea692bd5c3">what</a>() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to access a non-existing neuron"</span>; }
+<a name="l00060"></a>00060         };
+<a name="l00061"></a>00061 
+<a name="l00067"></a><a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html">00067</a>         <span class="keyword">class </span><a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html" title="Exception raised when, while trying the network or directly, the weight of a synapsis...">InvalidSynapticalWeightException</a> : <span class="keyword">public</span> std::exception  {
+<a name="l00068"></a>00068         <span class="keyword">public</span>:
+<a name="l00069"></a><a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">00069</a>                 <a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html#42e54de0ef9d9f711a483287f4f95916">InvalidSynapticalWeightException</a>()  {}
+<a name="l00070"></a><a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">00070</a>                 <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classneuralpp_1_1InvalidSynapticalWeightException.html#8d374dd7e8363b2551ae6e306b11473a">what</a>() <span class="keyword">const</span> throw()  { <span class="keywordflow">return</span> <span class="stringliteral">"Attempt to set an invalid weight for the synapsis"</span>; }
+<a name="l00071"></a>00071         };
+<a name="l00072"></a>00072 }
+<a name="l00073"></a>00073 
+<a name="l00074"></a>00074 <span class="preprocessor">#endif</span>
+<a name="l00075"></a>00075 <span class="preprocessor"></span>
 </pre></div></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/neural_09_09__exception_8hpp.html b/doc/html/neural_09_09__exception_8hpp.html
index 8f1cd5a..751129f 100644
--- a/doc/html/neural_09_09__exception_8hpp.html
+++ b/doc/html/neural_09_09__exception_8hpp.html
@@ -12,17 +12,38 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li><a href="annotated.html"><span>Classes</span></a></li>
       <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
 </div>
 <div class="contents">
-<h1>neural++_exception.hpp File Reference</h1>
+<h1>neural++_exception.hpp File Reference</h1><code>#include &lt;exception&gt;</code><br>
+
 <p>
 <a href="neural_09_09__exception_8hpp-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceneuralpp.html">neuralpp</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileNotFoundException.html">neuralpp::NetworkFileNotFoundException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when doing an attempt to load a network from an invalid file.  <a href="classneuralpp_1_1NetworkFileNotFoundException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkFileWriteException.html">neuralpp::NetworkFileWriteException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when trying to write the network's information to a file that cannot be written.  <a href="classneuralpp_1_1NetworkFileWriteException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidXMLException.html">neuralpp::InvalidXMLException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception thrown when trying parsing an invalid XML.  <a href="classneuralpp_1_1InvalidXMLException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html">neuralpp::NetworkIndexOutOfBoundsException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network.  <a href="classneuralpp_1_1NetworkIndexOutOfBoundsException.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classneuralpp_1_1InvalidSynapticalWeightException.html">neuralpp::InvalidSynapticalWeightException</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value |w| &gt; 1.  <a href="classneuralpp_1_1InvalidSynapticalWeightException.html#_details">More...</a><br></td></tr>
 </table>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1ConvertEncoding-members.html b/doc/html/structCMarkup_1_1ConvertEncoding-members.html
index f7dedc1..3a282cb 100644
--- a/doc/html/structCMarkup_1_1ConvertEncoding-members.html
+++ b/doc/html/structCMarkup_1_1ConvertEncoding-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -31,7 +32,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1ConvertEncoding.html#8ab5d602610c46eb26d0fbf8a39b2da8">strFromEncoding</a></td><td><a class="el" href="structCMarkup_1_1ConvertEncoding.html">CMarkup::ConvertEncoding</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1ConvertEncoding.html#cc2420305e7cfa6c9d18f7ce9daa4313">strToEncoding</a></td><td><a class="el" href="structCMarkup_1_1ConvertEncoding.html">CMarkup::ConvertEncoding</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1ConvertEncoding.html b/doc/html/structCMarkup_1_1ConvertEncoding.html
index 01239de..3a21a55 100644
--- a/doc/html/structCMarkup_1_1ConvertEncoding.html
+++ b/doc/html/structCMarkup_1_1ConvertEncoding.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -197,7 +198,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1ElemPos-members.html b/doc/html/structCMarkup_1_1ElemPos-members.html
index d3dc0d5..9974420 100644
--- a/doc/html/structCMarkup_1_1ElemPos-members.html
+++ b/doc/html/structCMarkup_1_1ElemPos-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -47,7 +48,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1ElemPos.html#853d5e4a5c6b03643e7210671385896c">StartContent</a>() const </td><td><a class="el" href="structCMarkup_1_1ElemPos.html">CMarkup::ElemPos</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1ElemPos.html#987926f5677976e6288e5b4c3a224d96">StartTagLen</a>() const </td><td><a class="el" href="structCMarkup_1_1ElemPos.html">CMarkup::ElemPos</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1ElemPos.html b/doc/html/structCMarkup_1_1ElemPos.html
index eb3fcf6..4c72ed7 100644
--- a/doc/html/structCMarkup_1_1ElemPos.html
+++ b/doc/html/structCMarkup_1_1ElemPos.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -527,7 +528,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1FilePos-members.html b/doc/html/structCMarkup_1_1FilePos-members.html
index b95b624..994a117 100644
--- a/doc/html/structCMarkup_1_1FilePos-members.html
+++ b/doc/html/structCMarkup_1_1FilePos-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -33,7 +34,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1FilePos.html#b507cbd49031186d4b3fbf7d2d009c75">strEncoding</a></td><td><a class="el" href="structCMarkup_1_1FilePos.html">CMarkup::FilePos</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1FilePos.html#62db77f82233f3244272eb973a9ecfc8">strIOResult</a></td><td><a class="el" href="structCMarkup_1_1FilePos.html">CMarkup::FilePos</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1FilePos.html b/doc/html/structCMarkup_1_1FilePos.html
index 1c8ab38..7e38b66 100644
--- a/doc/html/structCMarkup_1_1FilePos.html
+++ b/doc/html/structCMarkup_1_1FilePos.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -195,7 +196,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1NodePos-members.html b/doc/html/structCMarkup_1_1NodePos-members.html
index 4c80962..96c128a 100644
--- a/doc/html/structCMarkup_1_1NodePos-members.html
+++ b/doc/html/structCMarkup_1_1NodePos-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -31,7 +32,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1NodePos.html#c1939dd0ed1d2ecb35eb35bd2e88f69c">nStart</a></td><td><a class="el" href="structCMarkup_1_1NodePos.html">CMarkup::NodePos</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1NodePos.html#b9b37d8614b6980a935157199558c261">strMeta</a></td><td><a class="el" href="structCMarkup_1_1NodePos.html">CMarkup::NodePos</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1NodePos.html b/doc/html/structCMarkup_1_1NodePos.html
index 1f691eb..49ac3bc 100644
--- a/doc/html/structCMarkup_1_1NodePos.html
+++ b/doc/html/structCMarkup_1_1NodePos.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -176,7 +177,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1NodeStack-members.html b/doc/html/structCMarkup_1_1NodeStack-members.html
index 1e7c27d..cc770e2 100644
--- a/doc/html/structCMarkup_1_1NodeStack-members.html
+++ b/doc/html/structCMarkup_1_1NodeStack-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -36,7 +37,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1NodeStack.html#4e9aad88e12b7bbabdbb3fd65fc51585">TopIndex</a>()</td><td><a class="el" href="structCMarkup_1_1NodeStack.html">CMarkup::NodeStack</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1NodeStack.html#6bd62bb0b4c4596016a00eade46cd5ca">~NodeStack</a>()</td><td><a class="el" href="structCMarkup_1_1NodeStack.html">CMarkup::NodeStack</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1NodeStack.html b/doc/html/structCMarkup_1_1NodeStack.html
index 9274dea..d3e1bc7 100644
--- a/doc/html/structCMarkup_1_1NodeStack.html
+++ b/doc/html/structCMarkup_1_1NodeStack.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -309,7 +310,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1PosArray-members.html b/doc/html/structCMarkup_1_1PosArray-members.html
index e33c402..aa8c5c5 100644
--- a/doc/html/structCMarkup_1_1PosArray-members.html
+++ b/doc/html/structCMarkup_1_1PosArray-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -37,7 +38,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1PosArray.html#0310976aa8e777cb84ab02ddbae8864c">SegsUsed</a>() const </td><td><a class="el" href="structCMarkup_1_1PosArray.html">CMarkup::PosArray</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1PosArray.html#9f26a70cee21e757fe372201c57fc117">~PosArray</a>()</td><td><a class="el" href="structCMarkup_1_1PosArray.html">CMarkup::PosArray</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1PosArray.html b/doc/html/structCMarkup_1_1PosArray.html
index f955be2..10f1254 100644
--- a/doc/html/structCMarkup_1_1PosArray.html
+++ b/doc/html/structCMarkup_1_1PosArray.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -316,7 +317,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPos-members.html b/doc/html/structCMarkup_1_1SavedPos-members.html
index e8229f4..03405d9 100644
--- a/doc/html/structCMarkup_1_1SavedPos-members.html
+++ b/doc/html/structCMarkup_1_1SavedPos-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -32,7 +33,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPos.html#28ed16429117003133c33fa8fcaa7924bc202c266163ba746501ff656c189bf3">SPM_USED</a> enum value</td><td><a class="el" href="structCMarkup_1_1SavedPos.html">CMarkup::SavedPos</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPos.html#3613f5e8854f961ed02173d22099db4c">strName</a></td><td><a class="el" href="structCMarkup_1_1SavedPos.html">CMarkup::SavedPos</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPos.html b/doc/html/structCMarkup_1_1SavedPos.html
index d5a98a7..d371a5c 100644
--- a/doc/html/structCMarkup_1_1SavedPos.html
+++ b/doc/html/structCMarkup_1_1SavedPos.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -145,7 +146,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPosMap-members.html b/doc/html/structCMarkup_1_1SavedPosMap-members.html
index 1f5b12d..eec355c 100644
--- a/doc/html/structCMarkup_1_1SavedPosMap-members.html
+++ b/doc/html/structCMarkup_1_1SavedPosMap-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -28,7 +29,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPosMap.html#681e409f964bbd86a088358dffaeb808">SavedPosMap</a>(int nSize)</td><td><a class="el" href="structCMarkup_1_1SavedPosMap.html">CMarkup::SavedPosMap</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPosMap.html#b3a7ef305893ba4b6752dea003997c96">~SavedPosMap</a>()</td><td><a class="el" href="structCMarkup_1_1SavedPosMap.html">CMarkup::SavedPosMap</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPosMap.html b/doc/html/structCMarkup_1_1SavedPosMap.html
index a001d66..81cf427 100644
--- a/doc/html/structCMarkup_1_1SavedPosMap.html
+++ b/doc/html/structCMarkup_1_1SavedPosMap.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -123,7 +124,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPosMapArray-members.html b/doc/html/structCMarkup_1_1SavedPosMapArray-members.html
index e56796e..87be25d 100644
--- a/doc/html/structCMarkup_1_1SavedPosMapArray-members.html
+++ b/doc/html/structCMarkup_1_1SavedPosMapArray-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -28,7 +29,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPosMapArray.html#0fca988b3417d41ccf3e2b3e8fef7483">SavedPosMapArray</a>()</td><td><a class="el" href="structCMarkup_1_1SavedPosMapArray.html">CMarkup::SavedPosMapArray</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1SavedPosMapArray.html#6be57f9ebe160aebb464957caa30ddd6">~SavedPosMapArray</a>()</td><td><a class="el" href="structCMarkup_1_1SavedPosMapArray.html">CMarkup::SavedPosMapArray</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1SavedPosMapArray.html b/doc/html/structCMarkup_1_1SavedPosMapArray.html
index 1552b42..8b93392 100644
--- a/doc/html/structCMarkup_1_1SavedPosMapArray.html
+++ b/doc/html/structCMarkup_1_1SavedPosMapArray.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -129,7 +130,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1TokenPos-members.html b/doc/html/structCMarkup_1_1TokenPos-members.html
index b9cf0f0..5b3e30b 100644
--- a/doc/html/structCMarkup_1_1TokenPos-members.html
+++ b/doc/html/structCMarkup_1_1TokenPos-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -36,7 +37,7 @@
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1TokenPos.html#c3a37f7294cd763aed0f37749095d3db">StrNIACmp</a>(MCD_PCSZ p1, MCD_PCSZ p2, int n)</td><td><a class="el" href="structCMarkup_1_1TokenPos.html">CMarkup::TokenPos</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structCMarkup_1_1TokenPos.html#797a3f5d9664c52971cf210166c3636a">TokenPos</a>(MCD_CSTR sz, int n)</td><td><a class="el" href="structCMarkup_1_1TokenPos.html">CMarkup::TokenPos</a></td><td><code> [inline]</code></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structCMarkup_1_1TokenPos.html b/doc/html/structCMarkup_1_1TokenPos.html
index dfc28d1..3c9ed47 100644
--- a/doc/html/structCMarkup_1_1TokenPos.html
+++ b/doc/html/structCMarkup_1_1TokenPos.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -314,7 +315,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structMCD__CSTR-members.html b/doc/html/structMCD__CSTR-members.html
index 09d60a8..b308a85 100644
--- a/doc/html/structMCD__CSTR-members.html
+++ b/doc/html/structMCD__CSTR-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -29,7 +30,7 @@
   <tr class="memlist"><td><a class="el" href="structMCD__CSTR.html#69c3b0c4b7d049b0eaadcc5822f647ac">operator MCD_PCSZ</a>() const </td><td><a class="el" href="structMCD__CSTR.html">MCD_CSTR</a></td><td><code> [inline]</code></td></tr>
   <tr class="memlist"><td><a class="el" href="structMCD__CSTR.html#98868bd66f13bc4be31eab000d45335e">pcsz</a></td><td><a class="el" href="structMCD__CSTR.html">MCD_CSTR</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structMCD__CSTR.html b/doc/html/structMCD__CSTR.html
index c59df78..d794817 100644
--- a/doc/html/structMCD__CSTR.html
+++ b/doc/html/structMCD__CSTR.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -148,7 +149,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="Markup_8h-source.html">Markup.h</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1netrecord-members.html b/doc/html/structneuralpp_1_1netrecord-members.html
index ab530fb..f207ba9 100644
--- a/doc/html/structneuralpp_1_1netrecord-members.html
+++ b/doc/html/structneuralpp_1_1netrecord-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -30,7 +31,7 @@
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1netrecord.html#a4f793a39a40144e811fef4d3d2d2b30">l_rate</a></td><td><a class="el" href="structneuralpp_1_1netrecord.html">neuralpp::netrecord</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1netrecord.html#95f2b0651dd3a0e5e7201ff354e401b4">output_size</a></td><td><a class="el" href="structneuralpp_1_1netrecord.html">neuralpp::netrecord</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1netrecord.html b/doc/html/structneuralpp_1_1netrecord.html
index 7311371..1067452 100644
--- a/doc/html/structneuralpp_1_1netrecord.html
+++ b/doc/html/structneuralpp_1_1netrecord.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -138,7 +139,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1neuronrecord-members.html b/doc/html/structneuralpp_1_1neuronrecord-members.html
index 249d14e..97153a6 100644
--- a/doc/html/structneuralpp_1_1neuronrecord-members.html
+++ b/doc/html/structneuralpp_1_1neuronrecord-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -26,7 +27,7 @@
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1neuronrecord.html#15201b190584987255d81d4b7e773375">actv</a></td><td><a class="el" href="structneuralpp_1_1neuronrecord.html">neuralpp::neuronrecord</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1neuronrecord.html#30b298a95939b88b565fefc2dc57e89d">prop</a></td><td><a class="el" href="structneuralpp_1_1neuronrecord.html">neuralpp::neuronrecord</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1neuronrecord.html b/doc/html/structneuralpp_1_1neuronrecord.html
index dca1bde..ba87269 100644
--- a/doc/html/structneuralpp_1_1neuronrecord.html
+++ b/doc/html/structneuralpp_1_1neuronrecord.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -70,7 +71,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1synrecord-members.html b/doc/html/structneuralpp_1_1synrecord-members.html
index 624237b..e553f48 100644
--- a/doc/html/structneuralpp_1_1synrecord-members.html
+++ b/doc/html/structneuralpp_1_1synrecord-members.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -26,7 +27,7 @@
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1synrecord.html#3a862082dfa0edffce84936818bab374">d</a></td><td><a class="el" href="structneuralpp_1_1synrecord.html">neuralpp::synrecord</a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structneuralpp_1_1synrecord.html#81a7dbc97eecbf5bc85cac46373a78d2">w</a></td><td><a class="el" href="structneuralpp_1_1synrecord.html">neuralpp::synrecord</a></td><td></td></tr>
 </table></div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/html/structneuralpp_1_1synrecord.html b/doc/html/structneuralpp_1_1synrecord.html
index 4999ce1..b19c30e 100644
--- a/doc/html/structneuralpp_1_1synrecord.html
+++ b/doc/html/structneuralpp_1_1synrecord.html
@@ -12,6 +12,7 @@
       <li><a href="namespaces.html"><span>Namespaces</span></a></li>
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
     </ul>
   </div>
   <div class="tabs">
@@ -70,7 +71,7 @@
 <hr>The documentation for this struct was generated from the following file:<ul>
 <li><a class="el" href="neural_09_09_8hpp-source.html">neural++.hpp</a></ul>
 </div>
-<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 15 02:56:02 2009 for Neural++ by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 20:53:42 2009 for Neural++ by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 </body>
diff --git a/doc/latex/_2examples_2learnAdd_8cpp-example.tex b/doc/latex/_2examples_2learnAdd_8cpp-example.tex
new file mode 100644
index 0000000..14180d3
--- /dev/null
+++ b/doc/latex/_2examples_2learnAdd_8cpp-example.tex
@@ -0,0 +1,6 @@
+\section{/examples/learnAdd.cpp}
+
+
+\begin{DocInclude}\begin{verbatim}\end{verbatim}
+\end{DocInclude}
+ 
\ No newline at end of file
diff --git a/doc/latex/annotated.tex b/doc/latex/annotated.tex
index cfd080f..dc989a8 100644
--- a/doc/latex/annotated.tex
+++ b/doc/latex/annotated.tex
@@ -11,9 +11,14 @@ Here are the classes, structs, unions and interfaces with brief descriptions:\be
 \item\contentsline{section}{{\bf CMarkup::SavedPosMap} }{\pageref{structCMarkup_1_1SavedPosMap}}{}
 \item\contentsline{section}{{\bf CMarkup::SavedPosMapArray} }{\pageref{structCMarkup_1_1SavedPosMapArray}}{}
 \item\contentsline{section}{{\bf CMarkup::TokenPos} }{\pageref{structCMarkup_1_1TokenPos}}{}
+\item\contentsline{section}{{\bf neuralpp::InvalidSynapticalWeightException} (Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value $|$w$|$ $>$ 1 )}{\pageref{classneuralpp_1_1InvalidSynapticalWeightException}}{}
+\item\contentsline{section}{{\bf neuralpp::InvalidXMLException} (Exception thrown when trying parsing an invalid XML )}{\pageref{classneuralpp_1_1InvalidXMLException}}{}
 \item\contentsline{section}{{\bf neuralpp::Layer} (Class for managing layers of neurons )}{\pageref{classneuralpp_1_1Layer}}{}
 \item\contentsline{section}{{\bf MCD\_\-CSTR} }{\pageref{structMCD__CSTR}}{}
 \item\contentsline{section}{{\bf neuralpp::netrecord} }{\pageref{structneuralpp_1_1netrecord}}{}
+\item\contentsline{section}{{\bf neuralpp::NetworkFileNotFoundException} (Exception thrown when doing an attempt to load a network from an invalid file )}{\pageref{classneuralpp_1_1NetworkFileNotFoundException}}{}
+\item\contentsline{section}{{\bf neuralpp::NetworkFileWriteException} (Exception thrown when trying to write the network's information to a file that cannot be written )}{\pageref{classneuralpp_1_1NetworkFileWriteException}}{}
+\item\contentsline{section}{{\bf neuralpp::NetworkIndexOutOfBoundsException} (Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network )}{\pageref{classneuralpp_1_1NetworkIndexOutOfBoundsException}}{}
 \item\contentsline{section}{{\bf neuralpp::NeuralNet} (Main project's class )}{\pageref{classneuralpp_1_1NeuralNet}}{}
 \item\contentsline{section}{{\bf neuralpp::Neuron} (Class for managing neurons )}{\pageref{classneuralpp_1_1Neuron}}{}
 \item\contentsline{section}{{\bf neuralpp::neuronrecord} }{\pageref{structneuralpp_1_1neuronrecord}}{}
diff --git a/doc/latex/classneuralpp_1_1InvalidSynapticalWeightException.tex b/doc/latex/classneuralpp_1_1InvalidSynapticalWeightException.tex
new file mode 100644
index 0000000..0030b26
--- /dev/null
+++ b/doc/latex/classneuralpp_1_1InvalidSynapticalWeightException.tex
@@ -0,0 +1,38 @@
+\section{neuralpp::InvalidSynapticalWeightException Class Reference}
+\label{classneuralpp_1_1InvalidSynapticalWeightException}\index{neuralpp::InvalidSynapticalWeightException@{neuralpp::InvalidSynapticalWeightException}}
+Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value $|$w$|$ $>$ 1.  
+
+
+{\tt \#include $<$neural++\_\-exception.hpp$>$}
+
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item 
+{\bf InvalidSynapticalWeightException} ()
+\item 
+const char $\ast$ {\bf what} () const   throw ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value $|$w$|$ $>$ 1. 
+
+\subsection{Constructor \& Destructor Documentation}
+\index{neuralpp::InvalidSynapticalWeightException@{neuralpp::InvalidSynapticalWeightException}!InvalidSynapticalWeightException@{InvalidSynapticalWeightException}}
+\index{InvalidSynapticalWeightException@{InvalidSynapticalWeightException}!neuralpp::InvalidSynapticalWeightException@{neuralpp::InvalidSynapticalWeightException}}
+\subsubsection[InvalidSynapticalWeightException]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::InvalidSynapticalWeightException::InvalidSynapticalWeightException ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1InvalidSynapticalWeightException_42e54de0ef9d9f711a483287f4f95916}
+
+
+
+
+\subsection{Member Function Documentation}
+\index{neuralpp::InvalidSynapticalWeightException@{neuralpp::InvalidSynapticalWeightException}!what@{what}}
+\index{what@{what}!neuralpp::InvalidSynapticalWeightException@{neuralpp::InvalidSynapticalWeightException}}
+\subsubsection[what]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ neuralpp::InvalidSynapticalWeightException::what () const  throw ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1InvalidSynapticalWeightException_8d374dd7e8363b2551ae6e306b11473a}
+
+
+
+
+The documentation for this class was generated from the following file:\begin{CompactItemize}
+\item 
+{\bf neural++\_\-exception.hpp}\end{CompactItemize}
diff --git a/doc/latex/classneuralpp_1_1InvalidXMLException.tex b/doc/latex/classneuralpp_1_1InvalidXMLException.tex
new file mode 100644
index 0000000..9622c60
--- /dev/null
+++ b/doc/latex/classneuralpp_1_1InvalidXMLException.tex
@@ -0,0 +1,38 @@
+\section{neuralpp::InvalidXMLException Class Reference}
+\label{classneuralpp_1_1InvalidXMLException}\index{neuralpp::InvalidXMLException@{neuralpp::InvalidXMLException}}
+Exception thrown when trying parsing an invalid XML.  
+
+
+{\tt \#include $<$neural++\_\-exception.hpp$>$}
+
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item 
+{\bf InvalidXMLException} ()
+\item 
+const char $\ast$ {\bf what} () const   throw ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+Exception thrown when trying parsing an invalid XML. 
+
+\subsection{Constructor \& Destructor Documentation}
+\index{neuralpp::InvalidXMLException@{neuralpp::InvalidXMLException}!InvalidXMLException@{InvalidXMLException}}
+\index{InvalidXMLException@{InvalidXMLException}!neuralpp::InvalidXMLException@{neuralpp::InvalidXMLException}}
+\subsubsection[InvalidXMLException]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::InvalidXMLException::InvalidXMLException ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1InvalidXMLException_10279e6f42a1ccb934afcfef2770c537}
+
+
+
+
+\subsection{Member Function Documentation}
+\index{neuralpp::InvalidXMLException@{neuralpp::InvalidXMLException}!what@{what}}
+\index{what@{what}!neuralpp::InvalidXMLException@{neuralpp::InvalidXMLException}}
+\subsubsection[what]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ neuralpp::InvalidXMLException::what () const  throw ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1InvalidXMLException_4a8b81678ed0c319e1715ab5ef9112da}
+
+
+
+
+The documentation for this class was generated from the following file:\begin{CompactItemize}
+\item 
+{\bf neural++\_\-exception.hpp}\end{CompactItemize}
diff --git a/doc/latex/classneuralpp_1_1Layer.tex b/doc/latex/classneuralpp_1_1Layer.tex
index 22b3e76..fec5a05 100644
--- a/doc/latex/classneuralpp_1_1Layer.tex
+++ b/doc/latex/classneuralpp_1_1Layer.tex
@@ -8,18 +8,16 @@ Class for managing layers of neurons.
 \subsection*{Public Member Functions}
 \begin{CompactItemize}
 \item 
-{\bf Layer} (size\_\-t sz, double($\ast$a)(double))
+{\bf Layer} (size\_\-t sz, double($\ast$a)(double), double th=0.0)
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
-{\bf Layer} (vector$<$ {\bf Neuron} $>$ \&neurons, double($\ast$a)(double))
+{\bf Layer} (std::vector$<$ {\bf Neuron} $>$ \&neurons, double($\ast$a)(double), double th=0.0)
 \begin{CompactList}\small\item\em Alternative constructor. \item\end{CompactList}\item 
 {\bf Neuron} \& {\bf operator[$\,$]} (size\_\-t i)  throw (NetworkIndexOutOfBoundsException)
 \begin{CompactList}\small\item\em Redefinition for operator []. \item\end{CompactList}\item 
 void {\bf link} ({\bf Layer} \&l)
 \begin{CompactList}\small\item\em It links a layer to another. \item\end{CompactList}\item 
-void {\bf setProp} (vector$<$ double $>$ \&v)
-\begin{CompactList}\small\item\em It sets a vector of propagation values to all its neurons. \item\end{CompactList}\item 
-void {\bf setActv} (vector$<$ double $>$ \&v)
-\begin{CompactList}\small\item\em It sets a vector of activation values to all its neurons. \item\end{CompactList}\item 
+void {\bf setInput} (std::vector$<$ double $>$ v)
+\begin{CompactList}\small\item\em Set the input values for the neurons of the layer (just use it for the input layer). \item\end{CompactList}\item 
 void {\bf propagate} ()
 \begin{CompactList}\small\item\em It propagates its activation values to the output layers. \item\end{CompactList}\item 
 size\_\-t {\bf size} () const 
@@ -27,7 +25,9 @@ size\_\-t {\bf size} () const
 \subsection*{Private Attributes}
 \begin{CompactItemize}
 \item 
-vector$<$ {\bf Neuron} $>$ {\bf elements}
+std::vector$<$ {\bf Neuron} $>$ {\bf elements}
+\item 
+double {\bf threshold}
 \item 
 void($\ast$ {\bf update\_\-weights} )()
 \item 
@@ -43,7 +43,7 @@ Don't use this class directly unless you know what you're doing, use \doxyref{Ne
 \subsection{Constructor \& Destructor Documentation}
 \index{neuralpp::Layer@{neuralpp::Layer}!Layer@{Layer}}
 \index{Layer@{Layer}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[Layer]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Layer::Layer (size\_\-t {\em sz}, \/  double($\ast$)(double) {\em a})}\label{classneuralpp_1_1Layer_fb08bddd85d36570dabfe915461f07c5}
+\subsubsection[Layer]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Layer::Layer (size\_\-t {\em sz}, \/  double($\ast$)(double) {\em a}, \/  double {\em th} = {\tt 0.0})}\label{classneuralpp_1_1Layer_a235767701b5e9dcf28c5e9e0d04cb0b}
 
 
 Constructor. 
@@ -51,11 +51,11 @@ Constructor.
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em sz}]Size of the layer \item[{\em a}]Activation function \end{description}
+\item[{\em sz}]Size of the layer \item[{\em a}]Activation function \item[{\em th}]Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values \end{description}
 \end{Desc}
 \index{neuralpp::Layer@{neuralpp::Layer}!Layer@{Layer}}
 \index{Layer@{Layer}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[Layer]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Layer::Layer (vector$<$ {\bf Neuron} $>$ \& {\em neurons}, \/  double($\ast$)(double) {\em a})}\label{classneuralpp_1_1Layer_609ed16b8d79dc384b01ba7d16b72bd1}
+\subsubsection[Layer]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Layer::Layer (std::vector$<$ {\bf Neuron} $>$ \& {\em neurons}, \/  double($\ast$)(double) {\em a}, \/  double {\em th} = {\tt 0.0})}\label{classneuralpp_1_1Layer_d79f684523f8a6e086b962c8eef37623}
 
 
 Alternative constructor. 
@@ -63,14 +63,14 @@ Alternative constructor.
 It directly gets a vector of neurons to build the layer \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em neurons}]Vector of neurons to be included in the layer \item[{\em a}]Activation function \end{description}
+\item[{\em neurons}]Vector of neurons to be included in the layer \item[{\em a}]Activation function \item[{\em th}]Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values \end{description}
 \end{Desc}
 
 
 \subsection{Member Function Documentation}
 \index{neuralpp::Layer@{neuralpp::Layer}!operator[]@{operator[]}}
 \index{operator[]@{operator[]}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[operator[]]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}\& neuralpp::Layer::operator[$\,$] (size\_\-t {\em i})  throw (NetworkIndexOutOfBoundsException)}\label{classneuralpp_1_1Layer_45ff7554830558155c6fbce3b6827122}
+\subsubsection[operator[]]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}\& neuralpp::Layer::operator[$\,$] (size\_\-t {\em i})  throw ({\bf NetworkIndexOutOfBoundsException})}\label{classneuralpp_1_1Layer_45ff7554830558155c6fbce3b6827122}
 
 
 Redefinition for operator []. 
@@ -94,29 +94,17 @@ It links a layer to another.
 \begin{description}
 \item[{\em l}]\doxyref{Layer}{p.}{classneuralpp_1_1Layer} to connect to the current as input layer \end{description}
 \end{Desc}
-\index{neuralpp::Layer@{neuralpp::Layer}!setProp@{setProp}}
-\index{setProp@{setProp}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[setProp]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Layer::setProp (vector$<$ double $>$ \& {\em v})}\label{classneuralpp_1_1Layer_dbad95f635343a2998794113d7762cf7}
+\index{neuralpp::Layer@{neuralpp::Layer}!setInput@{setInput}}
+\index{setInput@{setInput}!neuralpp::Layer@{neuralpp::Layer}}
+\subsubsection[setInput]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Layer::setInput (std::vector$<$ double $>$ {\em v})}\label{classneuralpp_1_1Layer_88ceffc23f02a9dc24d4355767b7cca7}
 
 
-It sets a vector of propagation values to all its neurons. 
+Set the input values for the neurons of the layer (just use it for the input layer). 
 
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em v}]Vector of values to write as propagation values \end{description}
-\end{Desc}
-\index{neuralpp::Layer@{neuralpp::Layer}!setActv@{setActv}}
-\index{setActv@{setActv}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[setActv]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Layer::setActv (vector$<$ double $>$ \& {\em v})}\label{classneuralpp_1_1Layer_98f79281b680b1d18fd91fa5794c0899}
-
-
-It sets a vector of activation values to all its neurons. 
-
-\begin{Desc}
-\item[Parameters:]
-\begin{description}
-\item[{\em v}]Vector of values to write as activation values \end{description}
+\item[{\em v}]Vector containing the input values \end{description}
 \end{Desc}
 \index{neuralpp::Layer@{neuralpp::Layer}!propagate@{propagate}}
 \index{propagate@{propagate}!neuralpp::Layer@{neuralpp::Layer}}
@@ -137,7 +125,12 @@ It propagates its activation values to the output layers.
 \subsection{Member Data Documentation}
 \index{neuralpp::Layer@{neuralpp::Layer}!elements@{elements}}
 \index{elements@{elements}!neuralpp::Layer@{neuralpp::Layer}}
-\subsubsection[elements]{\setlength{\rightskip}{0pt plus 5cm}vector$<${\bf Neuron}$>$ {\bf neuralpp::Layer::elements}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Layer_855685c9da56b06b629e13a2f8c719ce}
+\subsubsection[elements]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<${\bf Neuron}$>$ {\bf neuralpp::Layer::elements}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Layer_8188cb5c264e6021cee9979b968a0305}
+
+
+\index{neuralpp::Layer@{neuralpp::Layer}!threshold@{threshold}}
+\index{threshold@{threshold}!neuralpp::Layer@{neuralpp::Layer}}
+\subsubsection[threshold]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::Layer::threshold}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Layer_02cf4efe1da02a7404d25375c85ed71f}
 
 
 \index{neuralpp::Layer@{neuralpp::Layer}!update\_\-weights@{update\_\-weights}}
diff --git a/doc/latex/classneuralpp_1_1NetworkFileNotFoundException.tex b/doc/latex/classneuralpp_1_1NetworkFileNotFoundException.tex
new file mode 100644
index 0000000..4349976
--- /dev/null
+++ b/doc/latex/classneuralpp_1_1NetworkFileNotFoundException.tex
@@ -0,0 +1,46 @@
+\section{neuralpp::NetworkFileNotFoundException Class Reference}
+\label{classneuralpp_1_1NetworkFileNotFoundException}\index{neuralpp::NetworkFileNotFoundException@{neuralpp::NetworkFileNotFoundException}}
+Exception thrown when doing an attempt to load a network from an invalid file.  
+
+
+{\tt \#include $<$neural++\_\-exception.hpp$>$}
+
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item 
+{\bf NetworkFileNotFoundException} ()
+\item 
+const char $\ast$ {\bf what} () const   throw ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+Exception thrown when doing an attempt to load a network from an invalid file. \begin{Desc}
+\item[Examples: ]\par
+
+
+{\bf examples/doAdd.cpp}.\end{Desc}
+
+
+\subsection{Constructor \& Destructor Documentation}
+\index{neuralpp::NetworkFileNotFoundException@{neuralpp::NetworkFileNotFoundException}!NetworkFileNotFoundException@{NetworkFileNotFoundException}}
+\index{NetworkFileNotFoundException@{NetworkFileNotFoundException}!neuralpp::NetworkFileNotFoundException@{neuralpp::NetworkFileNotFoundException}}
+\subsubsection[NetworkFileNotFoundException]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NetworkFileNotFoundException::NetworkFileNotFoundException ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkFileNotFoundException_9603eebdb841f06c9b1007e65cba60f6}
+
+
+
+
+\subsection{Member Function Documentation}
+\index{neuralpp::NetworkFileNotFoundException@{neuralpp::NetworkFileNotFoundException}!what@{what}}
+\index{what@{what}!neuralpp::NetworkFileNotFoundException@{neuralpp::NetworkFileNotFoundException}}
+\subsubsection[what]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ neuralpp::NetworkFileNotFoundException::what () const  throw ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkFileNotFoundException_24cde7729ab22d343f36e638cfc40702}
+
+
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/doAdd.cpp}.\end{Desc}
+
+
+The documentation for this class was generated from the following file:\begin{CompactItemize}
+\item 
+{\bf neural++\_\-exception.hpp}\end{CompactItemize}
diff --git a/doc/latex/classneuralpp_1_1NetworkFileWriteException.tex b/doc/latex/classneuralpp_1_1NetworkFileWriteException.tex
new file mode 100644
index 0000000..d2f7a9b
--- /dev/null
+++ b/doc/latex/classneuralpp_1_1NetworkFileWriteException.tex
@@ -0,0 +1,38 @@
+\section{neuralpp::NetworkFileWriteException Class Reference}
+\label{classneuralpp_1_1NetworkFileWriteException}\index{neuralpp::NetworkFileWriteException@{neuralpp::NetworkFileWriteException}}
+Exception thrown when trying to write the network's information to a file that cannot be written.  
+
+
+{\tt \#include $<$neural++\_\-exception.hpp$>$}
+
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item 
+{\bf NetworkFileWriteException} ()
+\item 
+const char $\ast$ {\bf what} () const   throw ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+Exception thrown when trying to write the network's information to a file that cannot be written. 
+
+\subsection{Constructor \& Destructor Documentation}
+\index{neuralpp::NetworkFileWriteException@{neuralpp::NetworkFileWriteException}!NetworkFileWriteException@{NetworkFileWriteException}}
+\index{NetworkFileWriteException@{NetworkFileWriteException}!neuralpp::NetworkFileWriteException@{neuralpp::NetworkFileWriteException}}
+\subsubsection[NetworkFileWriteException]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NetworkFileWriteException::NetworkFileWriteException ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkFileWriteException_83bc897b0ea11a384e0839a39e9fdb48}
+
+
+
+
+\subsection{Member Function Documentation}
+\index{neuralpp::NetworkFileWriteException@{neuralpp::NetworkFileWriteException}!what@{what}}
+\index{what@{what}!neuralpp::NetworkFileWriteException@{neuralpp::NetworkFileWriteException}}
+\subsubsection[what]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ neuralpp::NetworkFileWriteException::what () const  throw ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkFileWriteException_c8802852cb38d5edf6f490ff3acb6078}
+
+
+
+
+The documentation for this class was generated from the following file:\begin{CompactItemize}
+\item 
+{\bf neural++\_\-exception.hpp}\end{CompactItemize}
diff --git a/doc/latex/classneuralpp_1_1NetworkIndexOutOfBoundsException.tex b/doc/latex/classneuralpp_1_1NetworkIndexOutOfBoundsException.tex
new file mode 100644
index 0000000..41eee3e
--- /dev/null
+++ b/doc/latex/classneuralpp_1_1NetworkIndexOutOfBoundsException.tex
@@ -0,0 +1,38 @@
+\section{neuralpp::NetworkIndexOutOfBoundsException Class Reference}
+\label{classneuralpp_1_1NetworkIndexOutOfBoundsException}\index{neuralpp::NetworkIndexOutOfBoundsException@{neuralpp::NetworkIndexOutOfBoundsException}}
+Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network.  
+
+
+{\tt \#include $<$neural++\_\-exception.hpp$>$}
+
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item 
+{\bf NetworkIndexOutOfBoundsException} ()
+\item 
+const char $\ast$ {\bf what} () const   throw ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network. 
+
+\subsection{Constructor \& Destructor Documentation}
+\index{neuralpp::NetworkIndexOutOfBoundsException@{neuralpp::NetworkIndexOutOfBoundsException}!NetworkIndexOutOfBoundsException@{NetworkIndexOutOfBoundsException}}
+\index{NetworkIndexOutOfBoundsException@{NetworkIndexOutOfBoundsException}!neuralpp::NetworkIndexOutOfBoundsException@{neuralpp::NetworkIndexOutOfBoundsException}}
+\subsubsection[NetworkIndexOutOfBoundsException]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NetworkIndexOutOfBoundsException::NetworkIndexOutOfBoundsException ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkIndexOutOfBoundsException_07141d2225ea9f2d486e755a3660d594}
+
+
+
+
+\subsection{Member Function Documentation}
+\index{neuralpp::NetworkIndexOutOfBoundsException@{neuralpp::NetworkIndexOutOfBoundsException}!what@{what}}
+\index{what@{what}!neuralpp::NetworkIndexOutOfBoundsException@{neuralpp::NetworkIndexOutOfBoundsException}}
+\subsubsection[what]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ neuralpp::NetworkIndexOutOfBoundsException::what () const  throw ()\hspace{0.3cm}{\tt  [inline]}}\label{classneuralpp_1_1NetworkIndexOutOfBoundsException_8b65d77cb375a0aa40d5a9ea692bd5c3}
+
+
+
+
+The documentation for this class was generated from the following file:\begin{CompactItemize}
+\item 
+{\bf neural++\_\-exception.hpp}\end{CompactItemize}
diff --git a/doc/latex/classneuralpp_1_1NeuralNet.tex b/doc/latex/classneuralpp_1_1NeuralNet.tex
index 9db1493..512fcdc 100644
--- a/doc/latex/classneuralpp_1_1NeuralNet.tex
+++ b/doc/latex/classneuralpp_1_1NeuralNet.tex
@@ -17,42 +17,46 @@ enum {\bf source} \{ {\bf file},
 \item 
 {\bf NeuralNet} ()
 \begin{CompactList}\small\item\em Empty constructor for the class - it just makes nothing. \item\end{CompactList}\item 
-{\bf NeuralNet} (size\_\-t in\_\-size, size\_\-t hidden\_\-size, size\_\-t out\_\-size, double l, int e)
+{\bf NeuralNet} (size\_\-t in\_\-size, size\_\-t hidden\_\-size, size\_\-t out\_\-size, double l, int e, double th=0.0, double($\ast$a)(double)=\_\-\_\-actv)
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
-{\bf NeuralNet} (const string file)  throw (NetworkFileNotFoundException)
-\begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
-{\bf NeuralNet} (size\_\-t in\_\-size, size\_\-t hidden\_\-size, size\_\-t out\_\-size, double($\ast$actv)(double), double l, int e)
+{\bf NeuralNet} (const std::string file)  throw (NetworkFileNotFoundException)
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
 double {\bf getOutput} () const 
 \begin{CompactList}\small\item\em It gets the output of the network (note: the layer output should contain an only neuron). \item\end{CompactList}\item 
-vector$<$ double $>$ {\bf getOutputs} ()
+double {\bf getThreshold} () const 
+\begin{CompactList}\small\item\em Get the threshold of the neurons in the network. \item\end{CompactList}\item 
+std::vector$<$ double $>$ {\bf getOutputs} ()
 \begin{CompactList}\small\item\em It gets the output of the network in case the output layer contains more neurons. \item\end{CompactList}\item 
 double {\bf expected} () const 
-\begin{CompactList}\small\item\em It gets the value expected. \item\end{CompactList}\item 
-void {\bf setExpected} (double {\bf ex})
-\begin{CompactList}\small\item\em It sets the value you expect from your network. \item\end{CompactList}\item 
+\begin{CompactList}\small\item\em Get the expected value (in case you have an only neuron in output layer). \item\end{CompactList}\item 
+std::vector$<$ double $>$ {\bf getExpected} () const 
+\begin{CompactList}\small\item\em Get the expected value (in case you have an only neuron in output layer). \item\end{CompactList}\item 
+void {\bf setExpected} (double ex)
+\begin{CompactList}\small\item\em It sets the value you expect from your network (in case the network has an only neuron in its output layer). \item\end{CompactList}\item 
+void {\bf setExpected} (std::vector$<$ double $>$ ex)
+\begin{CompactList}\small\item\em Set the values you expect from your network. \item\end{CompactList}\item 
 void {\bf update} ()
 \begin{CompactList}\small\item\em It updates through back-propagation the weights of the synapsis and computes again the output value for {\em epochs\/} times, calling back updateWeights and commitChanges functions. \item\end{CompactList}\item 
 void {\bf propagate} ()
 \begin{CompactList}\small\item\em It propagates values through the network. \item\end{CompactList}\item 
-void {\bf setInput} (vector$<$ double $>$ \&v)
+void {\bf setInput} (std::vector$<$ double $>$ v)
 \begin{CompactList}\small\item\em It sets the input for the network. \item\end{CompactList}\item 
 void {\bf link} ()
 \begin{CompactList}\small\item\em It links the layers of the network (input, hidden, output). \item\end{CompactList}\item 
 void {\bf save} (const char $\ast$fname)  throw (NetworkFileWriteException)
 \begin{CompactList}\small\item\em Save a trained neural network to a binary file. \item\end{CompactList}\item 
-void {\bf train} (string xml, {\bf source} src)  throw (InvalidXMLException)
+void {\bf train} (std::string xml, {\bf source} src)  throw (InvalidXMLException)
 \begin{CompactList}\small\item\em Train a network using a training set loaded from an XML file. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Static Public Member Functions}
 \begin{CompactItemize}
 \item 
-static void {\bf initXML} (string \&xml)
+static void {\bf initXML} (std::string \&xml)
 \begin{CompactList}\small\item\em Initialize the training XML for the neural network. \item\end{CompactList}\item 
-static vector$<$ double $>$ {\bf split} (char delim, string str)
+static std::vector$<$ double $>$ {\bf split} (char delim, std::string str)
 \begin{CompactList}\small\item\em Splits a string into a vector of doubles, given a delimitator. \item\end{CompactList}\item 
-static string {\bf XMLFromSet} (int id, string set)
+static std::string {\bf XMLFromSet} (int \&id, std::string set)
 \begin{CompactList}\small\item\em Get a training set from a string and copies it to an XML For example, these strings could be training sets for making sums: \char`\"{}2,3;5\char`\"{} - \char`\"{}5,6;11\char`\"{} - \char`\"{}2,2;4\char`\"{} - \char`\"{}4,5:9\char`\"{} This method called on the first string will return an XML such this: '$<$training id=\char`\"{}0\char`\"{}$>$$<$input id=\char`\"{}0\char`\"{}$>$2$<$/input$>$$<$input id=\char`\"{}1\char`\"{}$>$3$<$/input$>$$<$output id=\char`\"{}0\char`\"{}$>$5$<$/output$>$ \&lt/training$>$'. \item\end{CompactList}\item 
-static void {\bf closeXML} (string \&xml)
+static void {\bf closeXML} (std::string \&xml)
 \begin{CompactList}\small\item\em Closes an open XML document generated by \char`\"{}initXML\char`\"{} and \char`\"{}XMLFromSet\char`\"{}. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Public Attributes}
 \begin{CompactItemize}
@@ -68,10 +72,10 @@ static void {\bf closeXML} (string \&xml)
 \item 
 void {\bf updateWeights} ()
 \begin{CompactList}\small\item\em It updates the weights of the net's synapsis through back-propagation. \item\end{CompactList}\item 
-void {\bf commitChanges} ({\bf Layer} $\ast$l)
+void {\bf commitChanges} ({\bf Layer} \&l)
 \begin{CompactList}\small\item\em It commits the changes made by \doxyref{updateWeights()}{p.}{classneuralpp_1_1NeuralNet_94169c89a7cd47122ab5dbf1d5c5e108} to the layer l. \item\end{CompactList}\item 
-double {\bf error} (double {\bf ex}) const 
-\begin{CompactList}\small\item\em Get the error made on the expected result as $|$v-v'$|$/v. \item\end{CompactList}\end{CompactItemize}
+double {\bf error} (double ex)
+\begin{CompactList}\small\item\em Get the error made on the expected result as squared deviance. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Private Attributes}
 \begin{CompactItemize}
 \item 
@@ -81,7 +85,9 @@ int {\bf ref\_\-epochs}
 \item 
 double {\bf l\_\-rate}
 \item 
-double {\bf ex}
+double {\bf threshold}
+\item 
+std::vector$<$ double $>$ {\bf expect}
 \item 
 double($\ast$ {\bf actv\_\-f} )(double)
 \begin{CompactList}\small\item\em Private pointer to function, containing the function to be used as activation function. \item\end{CompactList}\end{CompactItemize}
@@ -90,7 +96,12 @@ double($\ast$ {\bf actv\_\-f} )(double)
 \subsection{Detailed Description}
 Main project's class. 
 
-Use $\ast$ONLY$\ast$ this class, unless you know what you're doing 
+Use $\ast$ONLY$\ast$ this class, unless you know what you're doing \begin{Desc}
+\item[Examples: ]\par
+
+
+{\bf examples/adderFromScratch.cpp}, {\bf examples/doAdd.cpp}, and {\bf examples/learnAdd.cpp}.\end{Desc}
+
 
 \subsection{Member Enumeration Documentation}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!source@{source}}
@@ -122,7 +133,7 @@ Empty constructor for the class - it just makes nothing.
 
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!NeuralNet@{NeuralNet}}
 \index{NeuralNet@{NeuralNet}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[NeuralNet]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NeuralNet::NeuralNet (size\_\-t {\em in\_\-size}, \/  size\_\-t {\em hidden\_\-size}, \/  size\_\-t {\em out\_\-size}, \/  double {\em l}, \/  int {\em e})}\label{classneuralpp_1_1NeuralNet_c79534c7c0dfb20d1d03be2ad7569b78}
+\subsubsection[NeuralNet]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NeuralNet::NeuralNet (size\_\-t {\em in\_\-size}, \/  size\_\-t {\em hidden\_\-size}, \/  size\_\-t {\em out\_\-size}, \/  double {\em l}, \/  int {\em e}, \/  double {\em th} = {\tt 0.0}, \/  double($\ast$)(double) {\em a} = {\tt \_\-\_\-actv})}\label{classneuralpp_1_1NeuralNet_3d602f3988a9a3e2c77dc6955674f412}
 
 
 Constructor. 
@@ -130,11 +141,11 @@ Constructor.
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em in\_\-size}]Size of the input layer \item[{\em hidden\_\-size}]Size of the hidden layer \item[{\em out\_\-size}]Size of the output layer \item[{\em l}]learn rate (get it after doing some experiments, but generally try to keep its value quite low to be more accurate) \item[{\em e}]Epochs (cycles) to execute (the most you execute, the most the network can be accurate for its purpose) \end{description}
+\item[{\em in\_\-size}]Size of the input layer \item[{\em hidden\_\-size}]Size of the hidden layer \item[{\em out\_\-size}]Size of the output layer \item[{\em l}]learn rate (get it after doing some experiments, but generally try to keep its value quite low to be more accurate) \item[{\em e}]Epochs (cycles) to execute (the most you execute, the most the network can be accurate for its purpose) \item[{\em th}]Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values \item[{\em a}]Activation function to use (default: f(x)=x) \end{description}
 \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!NeuralNet@{NeuralNet}}
 \index{NeuralNet@{NeuralNet}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[NeuralNet]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NeuralNet::NeuralNet (const string {\em file})  throw (NetworkFileNotFoundException)}\label{classneuralpp_1_1NeuralNet_7fc7fc3e3220c138ffa5356fef6b9757}
+\subsubsection[NeuralNet]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NeuralNet::NeuralNet (const std::string {\em file})  throw ({\bf NetworkFileNotFoundException})}\label{classneuralpp_1_1NeuralNet_b4bfa407d28bb17abf7f735a049987d9}
 
 
 Constructor. 
@@ -147,19 +158,7 @@ Constructor.
 \begin{Desc}
 \item[Exceptions:]
 \begin{description}
-\item[{\em NetworkFileNotFoundException}]\end{description}
-\end{Desc}
-\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!NeuralNet@{NeuralNet}}
-\index{NeuralNet@{NeuralNet}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[NeuralNet]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::NeuralNet::NeuralNet (size\_\-t {\em in\_\-size}, \/  size\_\-t {\em hidden\_\-size}, \/  size\_\-t {\em out\_\-size}, \/  double($\ast$)(double) {\em actv}, \/  double {\em l}, \/  int {\em e})}\label{classneuralpp_1_1NeuralNet_0c16df2e0701503052c63749930b238e}
-
-
-Constructor. 
-
-\begin{Desc}
-\item[Parameters:]
-\begin{description}
-\item[{\em in\_\-size}]Size of the input layer \item[{\em hidden\_\-size}]Size of the hidden layer \item[{\em out\_\-size}]Size of the output layer \item[{\em actv}]Activation function to use (default: f(x)=x) \item[{\em l}]learn rate (get it after doing some experiments, but generally try to keep its value quite low to be more accurate) \item[{\em e}]Epochs (cycles) to execute (the most you execute, the most the network can be accurate for its purpose) \end{description}
+\item[{\em \doxyref{NetworkFileNotFoundException}{p.}{classneuralpp_1_1NetworkFileNotFoundException}}]\end{description}
 \end{Desc}
 
 
@@ -173,7 +172,7 @@ It updates the weights of the net's synapsis through back-propagation.
 
 In-class use only \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!commitChanges@{commitChanges}}
 \index{commitChanges@{commitChanges}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[commitChanges]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::commitChanges ({\bf Layer} $\ast$ {\em l})\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_62695a82dfb1df758a44150921aec8e0}
+\subsubsection[commitChanges]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::commitChanges ({\bf Layer} \& {\em l})\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_f697a8d9967ad8f03e5a16a42cd110c5}
 
 
 It commits the changes made by \doxyref{updateWeights()}{p.}{classneuralpp_1_1NeuralNet_94169c89a7cd47122ab5dbf1d5c5e108} to the layer l. 
@@ -185,10 +184,10 @@ In-class use only \begin{Desc}
 \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!error@{error}}
 \index{error@{error}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[error]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::NeuralNet::error (double {\em ex}) const\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_0616c51404efaca2714e37dd7478997e}
+\subsubsection[error]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::NeuralNet::error (double {\em ex})\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_8a140d28e6dd4097470c7c138801ad01}
 
 
-Get the error made on the expected result as $|$v-v'$|$/v. 
+Get the error made on the expected result as squared deviance. 
 
 \begin{Desc}
 \item[Parameters:]
@@ -206,21 +205,45 @@ It gets the output of the network (note: the layer output should contain an only
 
 \begin{Desc}
 \item[Returns:]The output value of the network \end{Desc}
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/doAdd.cpp}.\end{Desc}
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!getThreshold@{getThreshold}}
+\index{getThreshold@{getThreshold}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
+\subsubsection[getThreshold]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::NeuralNet::getThreshold () const}\label{classneuralpp_1_1NeuralNet_e08cdcf4b70f987700e553d9914f6179}
+
+
+Get the threshold of the neurons in the network. 
+
+\begin{Desc}
+\item[Returns:]The threshold of the neurons \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!getOutputs@{getOutputs}}
 \index{getOutputs@{getOutputs}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[getOutputs]{\setlength{\rightskip}{0pt plus 5cm}vector$<$double$>$ neuralpp::NeuralNet::getOutputs ()}\label{classneuralpp_1_1NeuralNet_a6b8bf3800b43b58843c65fc431207ae}
+\subsubsection[getOutputs]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$double$>$ neuralpp::NeuralNet::getOutputs ()}\label{classneuralpp_1_1NeuralNet_e6d2215ecc8b560db2f6797db642191c}
 
 
 It gets the output of the network in case the output layer contains more neurons. 
 
 \begin{Desc}
 \item[Returns:]A vector containing the output values of the network \end{Desc}
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/adderFromScratch.cpp}.\end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!expected@{expected}}
 \index{expected@{expected}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
 \subsubsection[expected]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::NeuralNet::expected () const}\label{classneuralpp_1_1NeuralNet_562dfe9fb8d73bf25a23ce608451d3aa}
 
 
-It gets the value expected. 
+Get the expected value (in case you have an only neuron in output layer). 
+
+Of course you should specify this when you build your network by using setExpected. \begin{Desc}
+\item[Returns:]The expected output value for a certain training phase \end{Desc}
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!getExpected@{getExpected}}
+\index{getExpected@{getExpected}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
+\subsubsection[getExpected]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$double$>$ neuralpp::NeuralNet::getExpected () const}\label{classneuralpp_1_1NeuralNet_51a1851ed07b85bec091c9053ae99cf7}
+
+
+Get the expected value (in case you have an only neuron in output layer). 
 
 Of course you should specify this when you build your network by using setExpected. \begin{Desc}
 \item[Returns:]The expected output value for a certain training phase \end{Desc}
@@ -229,13 +252,25 @@ Of course you should specify this when you build your network by using setExpect
 \subsubsection[setExpected]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::setExpected (double {\em ex})}\label{classneuralpp_1_1NeuralNet_b6475762b7e9eab086befdc511f7c236}
 
 
-It sets the value you expect from your network. 
+It sets the value you expect from your network (in case the network has an only neuron in its output layer). 
 
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
 \item[{\em ex}]Expected output value \end{description}
 \end{Desc}
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!setExpected@{setExpected}}
+\index{setExpected@{setExpected}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
+\subsubsection[setExpected]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::setExpected (std::vector$<$ double $>$ {\em ex})}\label{classneuralpp_1_1NeuralNet_e649edc3d86bec7c0e178d5c892b4fd7}
+
+
+Set the values you expect from your network. 
+
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em ex}]Expected output values \end{description}
+\end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!update@{update}}
 \index{update@{update}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
 \subsubsection[update]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::update ()}\label{classneuralpp_1_1NeuralNet_b0bd1daadb06980dff1f50d33a7c098e}
@@ -250,9 +285,12 @@ It updates through back-propagation the weights of the synapsis and computes aga
 
 It propagates values through the network. 
 
-Use this when you want to give an already trained network some new values the get to the output \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!setInput@{setInput}}
+Use this when you want to give an already trained network some new values the get to the output \begin{Desc}
+\item[Examples: ]\par
+{\bf examples/adderFromScratch.cpp}, and {\bf examples/doAdd.cpp}.\end{Desc}
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!setInput@{setInput}}
 \index{setInput@{setInput}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[setInput]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::setInput (vector$<$ double $>$ \& {\em v})}\label{classneuralpp_1_1NeuralNet_0de170e8ab561ad63d0739b4c4b74f68}
+\subsubsection[setInput]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::setInput (std::vector$<$ double $>$ {\em v})}\label{classneuralpp_1_1NeuralNet_405b32d2928344314ecf0469070b0f17}
 
 
 It sets the input for the network. 
@@ -262,6 +300,9 @@ It sets the input for the network.
 \begin{description}
 \item[{\em v}]Vector of doubles, containing the values to give to your network \end{description}
 \end{Desc}
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/adderFromScratch.cpp}, and {\bf examples/doAdd.cpp}.\end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!link@{link}}
 \index{link@{link}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
 \subsubsection[link]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::link ()}\label{classneuralpp_1_1NeuralNet_46f23f462318a4ffc037a4e806364c3f}
@@ -271,7 +312,7 @@ It links the layers of the network (input, hidden, output).
 
 Don't use unless you exactly know what you're doing, it is already called by the constructor \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!save@{save}}
 \index{save@{save}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[save]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::save (const char $\ast$ {\em fname})  throw (NetworkFileWriteException)}\label{classneuralpp_1_1NeuralNet_fdf94c276720c25e565cac834fe8a407}
+\subsubsection[save]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::save (const char $\ast$ {\em fname})  throw ({\bf NetworkFileWriteException})}\label{classneuralpp_1_1NeuralNet_fdf94c276720c25e565cac834fe8a407}
 
 
 Save a trained neural network to a binary file. 
@@ -284,11 +325,14 @@ Save a trained neural network to a binary file.
 \begin{Desc}
 \item[Exceptions:]
 \begin{description}
-\item[{\em NetworkFileWriteException}]When you get an error writing the network's information to a file \end{description}
+\item[{\em \doxyref{NetworkFileWriteException}{p.}{classneuralpp_1_1NetworkFileWriteException}}]When you get an error writing the network's information to a file \end{description}
 \end{Desc}
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/learnAdd.cpp}.\end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!train@{train}}
 \index{train@{train}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[train]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::train (string {\em xml}, \/  {\bf source} {\em src})  throw (InvalidXMLException)}\label{classneuralpp_1_1NeuralNet_ead4bdef0602a5cadbe3beb685e01f5f}
+\subsubsection[train]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::NeuralNet::train (std::string {\em xml}, \/  {\bf source} {\em src})  throw ({\bf InvalidXMLException})}\label{classneuralpp_1_1NeuralNet_1c9e17437d41a7048611e21a3cc1c7dd}
 
 
 Train a network using a training set loaded from an XML file. 
@@ -301,11 +345,14 @@ A sample XML file is available in examples/adder.xml \begin{Desc}
 \begin{Desc}
 \item[Exceptions:]
 \begin{description}
-\item[{\em InvalidXMLException}]\end{description}
+\item[{\em \doxyref{InvalidXMLException}{p.}{classneuralpp_1_1InvalidXMLException}}]\end{description}
 \end{Desc}
+\begin{Desc}
+\item[Examples: ]\par
+{\bf examples/adderFromScratch.cpp}, and {\bf examples/learnAdd.cpp}.\end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!initXML@{initXML}}
 \index{initXML@{initXML}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[initXML]{\setlength{\rightskip}{0pt plus 5cm}static void neuralpp::NeuralNet::initXML (string \& {\em xml})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_45c7645d4affe65752d37cd230afba24}
+\subsubsection[initXML]{\setlength{\rightskip}{0pt plus 5cm}static void neuralpp::NeuralNet::initXML (std::string \& {\em xml})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_96da6712a72051cf34ad961761ef6e08}
 
 
 Initialize the training XML for the neural network. 
@@ -317,7 +364,7 @@ Initialize the training XML for the neural network.
 \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!split@{split}}
 \index{split@{split}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[split]{\setlength{\rightskip}{0pt plus 5cm}static vector$<$double$>$ neuralpp::NeuralNet::split (char {\em delim}, \/  string {\em str})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_e07af23ceb8666518da0c035bf1e0376}
+\subsubsection[split]{\setlength{\rightskip}{0pt plus 5cm}static std::vector$<$double$>$ neuralpp::NeuralNet::split (char {\em delim}, \/  std::string {\em str})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_83c6555520856d5867752904349ab6ca}
 
 
 Splits a string into a vector of doubles, given a delimitator. 
@@ -331,7 +378,7 @@ Splits a string into a vector of doubles, given a delimitator.
 \item[Returns:]Vector of doubles containing splitted values \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!XMLFromSet@{XMLFromSet}}
 \index{XMLFromSet@{XMLFromSet}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[XMLFromSet]{\setlength{\rightskip}{0pt plus 5cm}static string neuralpp::NeuralNet::XMLFromSet (int {\em id}, \/  string {\em set})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_4be31ecb0b543a192997bd83c6995ccb}
+\subsubsection[XMLFromSet]{\setlength{\rightskip}{0pt plus 5cm}static std::string neuralpp::NeuralNet::XMLFromSet (int \& {\em id}, \/  std::string {\em set})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_0a2733037af912b3e6a10146e7b7172f}
 
 
 Get a training set from a string and copies it to an XML For example, these strings could be training sets for making sums: \char`\"{}2,3;5\char`\"{} - \char`\"{}5,6;11\char`\"{} - \char`\"{}2,2;4\char`\"{} - \char`\"{}4,5:9\char`\"{} This method called on the first string will return an XML such this: '$<$training id=\char`\"{}0\char`\"{}$>$$<$input id=\char`\"{}0\char`\"{}$>$2$<$/input$>$$<$input id=\char`\"{}1\char`\"{}$>$3$<$/input$>$$<$output id=\char`\"{}0\char`\"{}$>$5$<$/output$>$ \&lt/training$>$'. 
@@ -345,7 +392,7 @@ Get a training set from a string and copies it to an XML For example, these stri
 \item[Returns:]XML string \end{Desc}
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!closeXML@{closeXML}}
 \index{closeXML@{closeXML}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[closeXML]{\setlength{\rightskip}{0pt plus 5cm}static void neuralpp::NeuralNet::closeXML (string \& {\em xml})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_28b9966c5f197b8e86d57dd104aa32a6}
+\subsubsection[closeXML]{\setlength{\rightskip}{0pt plus 5cm}static void neuralpp::NeuralNet::closeXML (std::string \& {\em xml})\hspace{0.3cm}{\tt  [static]}}\label{classneuralpp_1_1NeuralNet_e17732ed578bc4bd6032bfae58a5cf51}
 
 
 Closes an open XML document generated by \char`\"{}initXML\char`\"{} and \char`\"{}XMLFromSet\char`\"{}. 
@@ -373,9 +420,14 @@ Closes an open XML document generated by \char`\"{}initXML\char`\"{} and \char`\
 \subsubsection[l\_\-rate]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::NeuralNet::l\_\-rate}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_6bd7be443e46b2fdbf1da2edb8e611ab}
 
 
-\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!ex@{ex}}
-\index{ex@{ex}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
-\subsubsection[ex]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::NeuralNet::ex}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_261f5f68fcc5be54250cfa03945266dd}
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!threshold@{threshold}}
+\index{threshold@{threshold}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
+\subsubsection[threshold]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::NeuralNet::threshold}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_327dbfdd72b0a74293f8f29630525aa3}
+
+
+\index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!expect@{expect}}
+\index{expect@{expect}!neuralpp::NeuralNet@{neuralpp::NeuralNet}}
+\subsubsection[expect]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$double$>$ {\bf neuralpp::NeuralNet::expect}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1NeuralNet_a9e4ff43427f56663739c4c7450de8ee}
 
 
 \index{neuralpp::NeuralNet@{neuralpp::NeuralNet}!actv\_\-f@{actv\_\-f}}
diff --git a/doc/latex/classneuralpp_1_1Neuron.tex b/doc/latex/classneuralpp_1_1Neuron.tex
index adcafd5..c6f0ba2 100644
--- a/doc/latex/classneuralpp_1_1Neuron.tex
+++ b/doc/latex/classneuralpp_1_1Neuron.tex
@@ -8,17 +8,17 @@ Class for managing neurons.
 \subsection*{Public Member Functions}
 \begin{CompactItemize}
 \item 
-{\bf Neuron} (double($\ast$a)(double))
+{\bf Neuron} (double($\ast$a)(double), double th=0.0)
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
-{\bf Neuron} (vector$<$ {\bf Synapsis} $>$ {\bf in}, vector$<$ {\bf Synapsis} $>$ {\bf out}, double($\ast$a)(double))
+{\bf Neuron} (std::vector$<$ {\bf Synapsis} $>$ {\bf in}, std::vector$<$ {\bf Synapsis} $>$ {\bf out}, double($\ast$a)(double), double th=0.0)
 \begin{CompactList}\small\item\em Alternative constructor, that gets also the synapsis linked to the neuron. \item\end{CompactList}\item 
 {\bf Synapsis} \& {\bf synIn} (size\_\-t i)
 \begin{CompactList}\small\item\em Get the i-th synapsis connected on the input of the neuron. \item\end{CompactList}\item 
 {\bf Synapsis} \& {\bf synOut} (size\_\-t i)
 \begin{CompactList}\small\item\em Get the i-th synapsis connected on the output of the neuron. \item\end{CompactList}\item 
-void {\bf push\_\-in} ({\bf Synapsis} \&s)
+void {\bf push\_\-in} ({\bf Synapsis} s)
 \begin{CompactList}\small\item\em It pushes a new input synapsis. \item\end{CompactList}\item 
-void {\bf push\_\-out} ({\bf Synapsis} \&s)
+void {\bf push\_\-out} ({\bf Synapsis} s)
 \begin{CompactList}\small\item\em It pushes a new output synapsis. \item\end{CompactList}\item 
 void {\bf setActv} (double a)
 \begin{CompactList}\small\item\em Change the activation value of the neuron. \item\end{CompactList}\item 
@@ -28,8 +28,8 @@ double {\bf getActv} ()
 \begin{CompactList}\small\item\em Get the activation value of the neuron. \item\end{CompactList}\item 
 double {\bf getProp} ()
 \begin{CompactList}\small\item\em Get the propagation value of the neuron. \item\end{CompactList}\item 
-double {\bf propagate} ()
-\begin{CompactList}\small\item\em It propagates its activation value to the connected neurons. \item\end{CompactList}\item 
+void {\bf propagate} ()
+\begin{CompactList}\small\item\em Compute the propagation value of the neuron and set it. \item\end{CompactList}\item 
 size\_\-t {\bf nIn} ()
 \begin{CompactList}\small\item\em Get the number of input synapsis for the neuron. \item\end{CompactList}\item 
 size\_\-t {\bf nOut} ()
@@ -43,9 +43,11 @@ double {\bf actv\_\-val}
 \item 
 double {\bf prop\_\-val}
 \item 
-vector$<$ {\bf Synapsis} $>$ {\bf in}
+double {\bf threshold}
 \item 
-vector$<$ {\bf Synapsis} $>$ {\bf out}
+std::vector$<$ {\bf Synapsis} $>$ {\bf in}
+\item 
+std::vector$<$ {\bf Synapsis} $>$ {\bf out}
 \item 
 double($\ast$ {\bf actv\_\-f} )(double)
 \end{CompactItemize}
@@ -59,7 +61,7 @@ Don't use this class directly unless you know what you're doing, use \doxyref{Ne
 \subsection{Constructor \& Destructor Documentation}
 \index{neuralpp::Neuron@{neuralpp::Neuron}!Neuron@{Neuron}}
 \index{Neuron@{Neuron}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[Neuron]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Neuron::Neuron (double($\ast$)(double) {\em a})}\label{classneuralpp_1_1Neuron_9863a08b73bc97c8b514aca6c580ff7b}
+\subsubsection[Neuron]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Neuron::Neuron (double($\ast$)(double) {\em a}, \/  double {\em th} = {\tt 0.0})}\label{classneuralpp_1_1Neuron_c9bd4f5f618fcf1adcebf1ab63ee0960}
 
 
 Constructor. 
@@ -67,11 +69,11 @@ Constructor.
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em a}]Activation function \end{description}
+\item[{\em a}]Activation function \item[{\em th}]Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values \end{description}
 \end{Desc}
 \index{neuralpp::Neuron@{neuralpp::Neuron}!Neuron@{Neuron}}
 \index{Neuron@{Neuron}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[Neuron]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Neuron::Neuron (vector$<$ {\bf Synapsis} $>$ {\em in}, \/  vector$<$ {\bf Synapsis} $>$ {\em out}, \/  double($\ast$)(double) {\em a})}\label{classneuralpp_1_1Neuron_f1bf19ec93174f60b368ee4a91b03f46}
+\subsubsection[Neuron]{\setlength{\rightskip}{0pt plus 5cm}neuralpp::Neuron::Neuron (std::vector$<$ {\bf Synapsis} $>$ {\em in}, \/  std::vector$<$ {\bf Synapsis} $>$ {\em out}, \/  double($\ast$)(double) {\em a}, \/  double {\em th} = {\tt 0.0})}\label{classneuralpp_1_1Neuron_d15e96b0316d880953288cc6e2550bec}
 
 
 Alternative constructor, that gets also the synapsis linked to the neuron. 
@@ -79,7 +81,7 @@ Alternative constructor, that gets also the synapsis linked to the neuron.
 \begin{Desc}
 \item[Parameters:]
 \begin{description}
-\item[{\em in}]Input synapses \item[{\em out}]Output synapses \item[{\em a}]Activation function \end{description}
+\item[{\em in}]Input synapses \item[{\em out}]Output synapses \item[{\em a}]Activation function \item[{\em th}]Threshold, value in [0,1] that establishes how much a neuron must be 'sensitive' on variations of the input values \end{description}
 \end{Desc}
 
 
@@ -114,7 +116,7 @@ Get the i-th synapsis connected on the output of the neuron.
 \item[Returns:]Reference to the i-th synapsis \end{Desc}
 \index{neuralpp::Neuron@{neuralpp::Neuron}!push\_\-in@{push\_\-in}}
 \index{push\_\-in@{push\_\-in}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[push\_\-in]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Neuron::push\_\-in ({\bf Synapsis} \& {\em s})}\label{classneuralpp_1_1Neuron_583ada6e1dd3f2e113415b4d89196e62}
+\subsubsection[push\_\-in]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Neuron::push\_\-in ({\bf Synapsis} {\em s})}\label{classneuralpp_1_1Neuron_4d252151c35839975838539d846d70be}
 
 
 It pushes a new input synapsis. 
@@ -126,7 +128,7 @@ It pushes a new input synapsis.
 \end{Desc}
 \index{neuralpp::Neuron@{neuralpp::Neuron}!push\_\-out@{push\_\-out}}
 \index{push\_\-out@{push\_\-out}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[push\_\-out]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Neuron::push\_\-out ({\bf Synapsis} \& {\em s})}\label{classneuralpp_1_1Neuron_bca65db84f56f9d40694bfbcd25812cb}
+\subsubsection[push\_\-out]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Neuron::push\_\-out ({\bf Synapsis} {\em s})}\label{classneuralpp_1_1Neuron_2c0acb0e6d413c4e0fc9e7939da1a684}
 
 
 It pushes a new output synapsis. 
@@ -180,10 +182,10 @@ Get the propagation value of the neuron.
 \item[Returns:]Propagation value for the neuron \end{Desc}
 \index{neuralpp::Neuron@{neuralpp::Neuron}!propagate@{propagate}}
 \index{propagate@{propagate}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[propagate]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Neuron::propagate ()}\label{classneuralpp_1_1Neuron_8b0ca61cd0e047c8691ab39aae56dbda}
+\subsubsection[propagate]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Neuron::propagate ()}\label{classneuralpp_1_1Neuron_928d9bf5aed600119c640779e4034f30}
 
 
-It propagates its activation value to the connected neurons. 
+Compute the propagation value of the neuron and set it. 
 
 \index{neuralpp::Neuron@{neuralpp::Neuron}!nIn@{nIn}}
 \index{nIn@{nIn}!neuralpp::Neuron@{neuralpp::Neuron}}
@@ -223,14 +225,19 @@ Remove input and output synapsis from a neuron.
 \subsubsection[prop\_\-val]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::Neuron::prop\_\-val}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_da75259de98b1a893c736666af6bfdc3}
 
 
+\index{neuralpp::Neuron@{neuralpp::Neuron}!threshold@{threshold}}
+\index{threshold@{threshold}!neuralpp::Neuron@{neuralpp::Neuron}}
+\subsubsection[threshold]{\setlength{\rightskip}{0pt plus 5cm}double {\bf neuralpp::Neuron::threshold}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_7b16632868821d73dedcb8edaf6dbbef}
+
+
 \index{neuralpp::Neuron@{neuralpp::Neuron}!in@{in}}
 \index{in@{in}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[in]{\setlength{\rightskip}{0pt plus 5cm}vector$<$ {\bf Synapsis} $>$ {\bf neuralpp::Neuron::in}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_ead827210fa18c2baae03927b2c798ff}
+\subsubsection[in]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$ {\bf Synapsis} $>$ {\bf neuralpp::Neuron::in}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_bd07357465bb7b29bb344400e9e08710}
 
 
 \index{neuralpp::Neuron@{neuralpp::Neuron}!out@{out}}
 \index{out@{out}!neuralpp::Neuron@{neuralpp::Neuron}}
-\subsubsection[out]{\setlength{\rightskip}{0pt plus 5cm}vector$<$ {\bf Synapsis} $>$ {\bf neuralpp::Neuron::out}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_82a4297f84d6403e52a8386d26117b4f}
+\subsubsection[out]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$ {\bf Synapsis} $>$ {\bf neuralpp::Neuron::out}\hspace{0.3cm}{\tt  [private]}}\label{classneuralpp_1_1Neuron_982aceef324b7764e778d5949720bc55}
 
 
 \index{neuralpp::Neuron@{neuralpp::Neuron}!actv\_\-f@{actv\_\-f}}
diff --git a/doc/latex/classneuralpp_1_1Synapsis.tex b/doc/latex/classneuralpp_1_1Synapsis.tex
index 58272de..db47e64 100644
--- a/doc/latex/classneuralpp_1_1Synapsis.tex
+++ b/doc/latex/classneuralpp_1_1Synapsis.tex
@@ -14,21 +14,21 @@ Class for managing synapsis.
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
 {\bf Synapsis} ({\bf Neuron} $\ast$i, {\bf Neuron} $\ast$o, double w, double($\ast$a)(double))
 \begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
-{\bf Neuron} $\ast$ {\bf getIn} ()
+{\bf Neuron} $\ast$ {\bf getIn} () const 
 \item 
-{\bf Neuron} $\ast$ {\bf getOut} ()
+{\bf Neuron} $\ast$ {\bf getOut} () const 
 \item 
 void {\bf setWeight} (double w)  throw (InvalidSynapticalWeightException)
 \begin{CompactList}\small\item\em Set the weight of the synapsis. \item\end{CompactList}\item 
 void {\bf setDelta} (double d)  throw (InvalidSynapticalWeightException)
 \begin{CompactList}\small\item\em It sets the delta (how much to change the weight after an update) of the synapsis. \item\end{CompactList}\item 
-double {\bf getWeight} ()
+double {\bf getWeight} () const 
 \begin{CompactList}\small\item\em Return the weight of the synapsis. \item\end{CompactList}\item 
-double {\bf getDelta} ()
+double {\bf getDelta} () const 
 \begin{CompactList}\small\item\em Return the delta of the synapsis. \item\end{CompactList}\item 
-double {\bf getPrevDelta} ()
+double {\bf getPrevDelta} () const 
 \begin{CompactList}\small\item\em Get the delta of the synapsis at the previous iteration. \item\end{CompactList}\item 
-double {\bf momentum} (int N, int x)
+double {\bf momentum} (int N, int x) const 
 \begin{CompactList}\small\item\em Get the inertial momentum of a synapsis. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Private Attributes}
 \begin{CompactItemize}
@@ -94,21 +94,21 @@ Constructor.
 \subsection{Member Function Documentation}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!getIn@{getIn}}
 \index{getIn@{getIn}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[getIn]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}$\ast$ neuralpp::Synapsis::getIn ()}\label{classneuralpp_1_1Synapsis_5ba8a93a5741f4855390eb8a46e99435}
+\subsubsection[getIn]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}$\ast$ neuralpp::Synapsis::getIn () const}\label{classneuralpp_1_1Synapsis_298fd3c7483ad572899fecec01ac8fdf}
 
 
 \begin{Desc}
 \item[Returns:]Reference to input neuron of the synapsis \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!getOut@{getOut}}
 \index{getOut@{getOut}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[getOut]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}$\ast$ neuralpp::Synapsis::getOut ()}\label{classneuralpp_1_1Synapsis_61c9a04e03291a01f44520cef143cbdd}
+\subsubsection[getOut]{\setlength{\rightskip}{0pt plus 5cm}{\bf Neuron}$\ast$ neuralpp::Synapsis::getOut () const}\label{classneuralpp_1_1Synapsis_b46d876761a73a24db87f5a144a0e899}
 
 
 \begin{Desc}
 \item[Returns:]Reference to output neuron of the synapsis \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!setWeight@{setWeight}}
 \index{setWeight@{setWeight}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[setWeight]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Synapsis::setWeight (double {\em w})  throw (InvalidSynapticalWeightException)}\label{classneuralpp_1_1Synapsis_acee77d0fdf9889464ab5ed27beae0ff}
+\subsubsection[setWeight]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Synapsis::setWeight (double {\em w})  throw ({\bf InvalidSynapticalWeightException})}\label{classneuralpp_1_1Synapsis_acee77d0fdf9889464ab5ed27beae0ff}
 
 
 Set the weight of the synapsis. 
@@ -120,7 +120,7 @@ Set the weight of the synapsis.
 \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!setDelta@{setDelta}}
 \index{setDelta@{setDelta}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[setDelta]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Synapsis::setDelta (double {\em d})  throw (InvalidSynapticalWeightException)}\label{classneuralpp_1_1Synapsis_429ad5b25930faf436a9d725582802e1}
+\subsubsection[setDelta]{\setlength{\rightskip}{0pt plus 5cm}void neuralpp::Synapsis::setDelta (double {\em d})  throw ({\bf InvalidSynapticalWeightException})}\label{classneuralpp_1_1Synapsis_429ad5b25930faf436a9d725582802e1}
 
 
 It sets the delta (how much to change the weight after an update) of the synapsis. 
@@ -132,7 +132,7 @@ It sets the delta (how much to change the weight after an update) of the synapsi
 \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!getWeight@{getWeight}}
 \index{getWeight@{getWeight}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[getWeight]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getWeight ()}\label{classneuralpp_1_1Synapsis_aa79c16ec6b59949e5d2f75a3f10d530}
+\subsubsection[getWeight]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getWeight () const}\label{classneuralpp_1_1Synapsis_bcbf7228632ff4d6bbb67703323d2db0}
 
 
 Return the weight of the synapsis. 
@@ -141,7 +141,7 @@ Return the weight of the synapsis.
 \item[Returns:]Weight of the synapsis \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!getDelta@{getDelta}}
 \index{getDelta@{getDelta}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[getDelta]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getDelta ()}\label{classneuralpp_1_1Synapsis_18f15b920609be8b818d43a0227aada5}
+\subsubsection[getDelta]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getDelta () const}\label{classneuralpp_1_1Synapsis_00c8e9c0804662f2b3247d6dddb4ca6c}
 
 
 Return the delta of the synapsis. 
@@ -150,7 +150,7 @@ Return the delta of the synapsis.
 \item[Returns:]Delta of the synapsis \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!getPrevDelta@{getPrevDelta}}
 \index{getPrevDelta@{getPrevDelta}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[getPrevDelta]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getPrevDelta ()}\label{classneuralpp_1_1Synapsis_2fe3e9ec97542f1476d8b9306aa09756}
+\subsubsection[getPrevDelta]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::getPrevDelta () const}\label{classneuralpp_1_1Synapsis_0148b9c8db870c928711168702ae51c5}
 
 
 Get the delta of the synapsis at the previous iteration. 
@@ -159,7 +159,7 @@ Get the delta of the synapsis at the previous iteration.
 \item[Returns:]The previous delta \end{Desc}
 \index{neuralpp::Synapsis@{neuralpp::Synapsis}!momentum@{momentum}}
 \index{momentum@{momentum}!neuralpp::Synapsis@{neuralpp::Synapsis}}
-\subsubsection[momentum]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::momentum (int {\em N}, \/  int {\em x})}\label{classneuralpp_1_1Synapsis_ecdb17182de791f7fdd417232e184350}
+\subsubsection[momentum]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::Synapsis::momentum (int {\em N}, \/  int {\em x}) const}\label{classneuralpp_1_1Synapsis_cff10a022d4c021688e4df944c05d8bd}
 
 
 Get the inertial momentum of a synapsis. 
diff --git a/doc/latex/doxygen.sty b/doc/latex/doxygen.sty
index cdfa104..6fde198 100644
--- a/doc/latex/doxygen.sty
+++ b/doc/latex/doxygen.sty
@@ -10,8 +10,8 @@
         {\fancyplain{}{\bfseries\rightmark}}
 \rhead[\fancyplain{}{\bfseries\leftmark}]
         {\fancyplain{}{\bfseries\thepage}}
-\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Sat Aug 15 02:56:02 2009 for Neural++ by Doxygen }]{}
-\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Sat Aug 15 02:56:02 2009 for Neural++ by Doxygen }}
+\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Sun Aug 16 20:53:42 2009 for Neural++ by Doxygen }]{}
+\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Sun Aug 16 20:53:42 2009 for Neural++ by Doxygen }}
 \cfoot{}
 \newenvironment{Code}
 {\footnotesize}
diff --git a/doc/latex/examples.tex b/doc/latex/examples.tex
new file mode 100644
index 0000000..da45cf7
--- /dev/null
+++ b/doc/latex/examples.tex
@@ -0,0 +1,9 @@
+\section{Examples}
+Here is a list of all examples:\begin{CompactItemize}
+\item 
+{\bf examples/adderFromScratch.cpp}
+\item 
+{\bf examples/doAdd.cpp}
+\item 
+{\bf examples/learnAdd.cpp}
+\end{CompactItemize}
diff --git a/doc/latex/examples_2adderFromScratch_8cpp-example.tex b/doc/latex/examples_2adderFromScratch_8cpp-example.tex
new file mode 100644
index 0000000..f17c501
--- /dev/null
+++ b/doc/latex/examples_2adderFromScratch_8cpp-example.tex
@@ -0,0 +1,48 @@
+\section{examples/adderFromScratch.cpp}
+Similar to learnAdd.cpp, but this time the training XML is generated as a string and not saved to a file, and parsed by the program itself to build the network. Then, the program asks two real numbers, and performs both the sum and the difference between them, putting the sum's output on the first output neuron and the difference's on the second output neuron. Anyway, using more than one neuron in the output layer is strongly discouraged, as the network usually won't set correctly the synaptical weights to give satisfying and accurate answers for all of the operations.
+
+
+
+\begin{DocInclude}\begin{verbatim}
+#include <iostream>
+#include <neural++.hpp>
+
+using namespace std;
+using namespace neuralpp;
+
+int main()  {
+        NeuralNet net(2, 2, 2, 0.005, 100);
+        string xml;
+        double tmp;
+        int id = 0;
+
+        // XML initialization. Then, I say XML that 2+3=5, 3+3=6, 5+4=9
+        // Strings' format is "input1,input2,...,inputn;output1,output2,...,outputm
+        NeuralNet::initXML(xml);
+        xml += NeuralNet::XMLFromSet(id, "3,2;5,1");
+        xml += NeuralNet::XMLFromSet(id, "4,2;6,2");
+        xml += NeuralNet::XMLFromSet(id, "6,3;9,3");
+        NeuralNet::closeXML(xml);
+        cout << xml << endl;
+        
+        net.train(xml, NeuralNet::str);
+        vector<double> v;
+        cout << "Network status: trained\n\n";
+
+        cout << "First number to add: ";
+        cin >> tmp;
+        v.push_back(tmp);
+
+        cout << "Second number to add: ";
+        cin >> tmp;
+        v.push_back(tmp);
+
+        net.setInput(v);
+        net.propagate();
+        cout << "Output: " << net.getOutputs()[0] << "; " << net.getOutputs()[1] << endl;
+        return 0;
+}
+
+\end{verbatim}
+\end{DocInclude}
+ 
\ No newline at end of file
diff --git a/doc/latex/examples_2doAdd_8cpp-example.tex b/doc/latex/examples_2doAdd_8cpp-example.tex
new file mode 100644
index 0000000..42aee3e
--- /dev/null
+++ b/doc/latex/examples_2doAdd_8cpp-example.tex
@@ -0,0 +1,50 @@
+\section{examples/doAdd.cpp}
+Show how to use a network already trained and saved to a binary file. In this case, a network trained to simply perform sums between two real numbers, that should have already been created using learnAdd.
+
+
+
+\begin{DocInclude}\begin{verbatim}
+#include <iostream>
+#include <neural++.hpp>
+
+using namespace std;
+using namespace neuralpp;
+
+#define NETFILE "adder.net"
+
+int main()  {
+        double a,b;
+        NeuralNet net;
+
+        // Load the pre-trained network from "adder.net" file
+        try  {
+                net = NeuralNet(NETFILE);
+        }
+
+        catch (NetworkFileNotFoundException e)  {
+                cerr << "Fatal error while opening " << NETFILE << ": " << e.what();
+                return 1;
+        }
+
+        cout << "First number to add: ";
+        cin >> a;
+
+        cout << "Second number to add: ";
+        cin >> b;
+
+        vector<double> v;
+        v.push_back(a);
+        v.push_back(b);
+
+        // Set the numbers just read as input values, propagate those values, and get
+        // the output
+        net.setInput(v);
+        net.propagate();
+        cout << "Neural net output: " << net.getOutput() << endl;
+
+        return 0;
+}
+
+\end{verbatim}
+\end{DocInclude}
+ 
\ No newline at end of file
diff --git a/doc/latex/examples_2learnAdd_8cpp-example.tex b/doc/latex/examples_2learnAdd_8cpp-example.tex
new file mode 100644
index 0000000..9c4de9c
--- /dev/null
+++ b/doc/latex/examples_2learnAdd_8cpp-example.tex
@@ -0,0 +1,67 @@
+\section{examples/learnAdd.cpp}
+Show how to train a network that performs sums between two real numbers. The training XML is built from scratch, then saved to a file, then the network is initialized using that XML file, trained, and the resulting trained network is saved to adder.net. Then, you should take a look at doAdd.cpp to see how to use that file to use the network.
+
+
+
+\begin{DocInclude}\begin{verbatim}
+#include <iostream>
+#include <fstream>
+#include <ctime>
+#include <neural++.hpp>
+
+using namespace std;
+using namespace neuralpp;
+
+int main()  {
+        int id = 0;
+        string xml;
+        time_t t1, t2;
+
+        // Create the neural network. The network is going to have
+        // => 2 neurons for the input layer
+        // => 2 neurons for the hidden layer
+        // => 1 neuron  for the output layer
+        // => a learning rate == 0.005 (just get it doing some tests until satisfied)
+        // => 1000 learning steps (i.e. the network will be ready after 1000 training steps to adjust the synaptical weights
+        // => 0.1 as neural threshold (the threshold above which a neuron activates)
+        NeuralNet net(2, 2, 1, 0.005, 1000, 0.1);
+
+        // Initialize a training XML as a string in 'xml'
+        NeuralNet::initXML(xml);
+
+        // Build some training sets for the XML. The format is:
+        // "input1,input2,...,inputn;output1,output2,...,outputn
+        // The 'id' variable is passed as reference, starting from 0,
+        // and it's used to enumerate the sets in the XML file.
+        xml += NeuralNet::XMLFromSet(id, "2,3;5");
+        xml += NeuralNet::XMLFromSet(id, "3,2;5");
+        xml += NeuralNet::XMLFromSet(id, "6,2;8");
+        xml += NeuralNet::XMLFromSet(id, "2,2;4");
+        xml += NeuralNet::XMLFromSet(id, "1,2;3");
+        xml += NeuralNet::XMLFromSet(id, "-1,-2;-3");
+        xml += NeuralNet::XMLFromSet(id, "8,9;17");
+        xml += NeuralNet::XMLFromSet(id, "10,10;20");
+        NeuralNet::closeXML(xml);
+
+        // Save the XML string just created to a file
+        ofstream out("adder.xml");
+        out << xml;
+        out.close();
+        cout << "Training file adder.xml has been written\n";
+
+        // Start the training from the XML file
+        t1 = time(NULL);
+        cout << "Training in progress - This may take a while...\n";
+        net.train("adder.xml", NeuralNet::file);
+        t2 = time(NULL);
+
+        // Save the trained network to a binary file, that can be reloaded from any
+        // application that is going to use that network
+        net.save("adder.net");
+        cout << "Network trained in " << (t2-t1) << " seconds. You can use adder.net file now to load this network\n";
+        return 0;
+}
+
+\end{verbatim}
+\end{DocInclude}
+ 
\ No newline at end of file
diff --git a/doc/latex/namespaceneuralpp.tex b/doc/latex/namespaceneuralpp.tex
index 70bc48b..d088738 100644
--- a/doc/latex/namespaceneuralpp.tex
+++ b/doc/latex/namespaceneuralpp.tex
@@ -19,11 +19,23 @@ struct {\bf netrecord}
 struct {\bf neuronrecord}
 \item 
 struct {\bf synrecord}
-\end{CompactItemize}
+\item 
+class {\bf NetworkFileNotFoundException}
+\begin{CompactList}\small\item\em Exception thrown when doing an attempt to load a network from an invalid file. \item\end{CompactList}\item 
+class {\bf NetworkFileWriteException}
+\begin{CompactList}\small\item\em Exception thrown when trying to write the network's information to a file that cannot be written. \item\end{CompactList}\item 
+class {\bf InvalidXMLException}
+\begin{CompactList}\small\item\em Exception thrown when trying parsing an invalid XML. \item\end{CompactList}\item 
+class {\bf NetworkIndexOutOfBoundsException}
+\begin{CompactList}\small\item\em Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network. \item\end{CompactList}\item 
+class {\bf InvalidSynapticalWeightException}
+\begin{CompactList}\small\item\em Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value $|$w$|$ $>$ 1. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Functions}
 \begin{CompactItemize}
 \item 
 double {\bf df} (double($\ast$f)(double), double x)
+\item 
+double {\bf \_\-\_\-actv} (double prop)
 \end{CompactItemize}
 
 
@@ -31,6 +43,11 @@ double {\bf df} (double($\ast$f)(double), double x)
 Main namespace for the library. 
 
 \subsection{Function Documentation}
+\index{neuralpp@{neuralpp}!\_\-\_\-actv@{\_\-\_\-actv}}
+\index{\_\-\_\-actv@{\_\-\_\-actv}!neuralpp@{neuralpp}}
+\subsubsection[\_\-\_\-actv]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::\_\-\_\-actv (double {\em prop})}\label{namespaceneuralpp_7df3a0de999c7a635f2289749ed4f194}
+
+
 \index{neuralpp@{neuralpp}!df@{df}}
 \index{df@{df}!neuralpp@{neuralpp}}
 \subsubsection[df]{\setlength{\rightskip}{0pt plus 5cm}double neuralpp::df (double($\ast$)(double) {\em f}, \/  double {\em x})}\label{namespaceneuralpp_43c8197cc83f65fa9676386579671aec}
diff --git a/doc/latex/neural_09_09_8hpp.tex b/doc/latex/neural_09_09_8hpp.tex
index a03cccc..d7fe7ba 100644
--- a/doc/latex/neural_09_09_8hpp.tex
+++ b/doc/latex/neural_09_09_8hpp.tex
@@ -31,19 +31,21 @@ struct {\bf neuralpp::synrecord}
 \item 
 \#define {\bf RAND}~(double) ( (rand() / (RAND\_\-MAX/2)) - 1)
 \begin{CompactList}\small\item\em Default rand value: $|$sin(rand)$|$, always $>$= 0 and $<$= 1. \item\end{CompactList}\item 
-\#define {\bf BETA0}~0.8
+\#define {\bf BETA0}~1.0
 \begin{CompactList}\small\item\em Initial value for the inertial momentum of the synapses. \item\end{CompactList}\end{CompactItemize}
 \subsection*{Functions}
 \begin{CompactItemize}
 \item 
 double {\bf neuralpp::df} (double($\ast$f)(double), double x)
+\item 
+double {\bf neuralpp::\_\-\_\-actv} (double prop)
 \end{CompactItemize}
 
 
 \subsection{Define Documentation}
 \index{neural++.hpp@{neural++.hpp}!BETA0@{BETA0}}
 \index{BETA0@{BETA0}!neural++.hpp@{neural++.hpp}}
-\subsubsection[BETA0]{\setlength{\rightskip}{0pt plus 5cm}\#define BETA0~0.8}\label{neural_09_09_8hpp_05e2bb5b9fc32f0b6b4d84fe43177d72}
+\subsubsection[BETA0]{\setlength{\rightskip}{0pt plus 5cm}\#define BETA0~1.0}\label{neural_09_09_8hpp_05e2bb5b9fc32f0b6b4d84fe43177d72}
 
 
 Initial value for the inertial momentum of the synapses. 
diff --git a/doc/latex/neural_09_09__exception_8hpp.tex b/doc/latex/neural_09_09__exception_8hpp.tex
index f138de5..ca36c7c 100644
--- a/doc/latex/neural_09_09__exception_8hpp.tex
+++ b/doc/latex/neural_09_09__exception_8hpp.tex
@@ -1,2 +1,21 @@
 \section{neural++\_\-exception.hpp File Reference}
 \label{neural_09_09__exception_8hpp}\index{neural++\_\-exception.hpp@{neural++\_\-exception.hpp}}
+{\tt \#include $<$exception$>$}\par
+\subsection*{Namespaces}
+\begin{CompactItemize}
+\item 
+namespace {\bf neuralpp}
+\end{CompactItemize}
+\subsection*{Classes}
+\begin{CompactItemize}
+\item 
+class {\bf neuralpp::NetworkFileNotFoundException}
+\begin{CompactList}\small\item\em Exception thrown when doing an attempt to load a network from an invalid file. \item\end{CompactList}\item 
+class {\bf neuralpp::NetworkFileWriteException}
+\begin{CompactList}\small\item\em Exception thrown when trying to write the network's information to a file that cannot be written. \item\end{CompactList}\item 
+class {\bf neuralpp::InvalidXMLException}
+\begin{CompactList}\small\item\em Exception thrown when trying parsing an invalid XML. \item\end{CompactList}\item 
+class {\bf neuralpp::NetworkIndexOutOfBoundsException}
+\begin{CompactList}\small\item\em Exception raised when trying to access a neuron whose index is larger than the number of neurons in the network. \item\end{CompactList}\item 
+class {\bf neuralpp::InvalidSynapticalWeightException}
+\begin{CompactList}\small\item\em Exception raised when, while trying the network or directly, the weight of a synapsis is set to a value $|$w$|$ $>$ 1. \item\end{CompactList}\end{CompactItemize}
diff --git a/doc/latex/refman.tex b/doc/latex/refman.tex
index 638b894..43ad1c9 100644
--- a/doc/latex/refman.tex
+++ b/doc/latex/refman.tex
@@ -16,11 +16,11 @@
 \begin{titlepage}
 \vspace*{7cm}
 \begin{center}
-{\Large Neural++ \\[1ex]\large 0.3 }\\
+{\Large Neural++ \\[1ex]\large 0.4 }\\
 \vspace*{1cm}
 {\large Generated by Doxygen 1.5.6}\\
 \vspace*{0.5cm}
-{\small Sat Aug 15 02:56:02 2009}\\
+{\small Sun Aug 16 20:53:42 2009}\\
 \end{center}
 \end{titlepage}
 \clearemptydoublepage
@@ -48,9 +48,14 @@
 \include{structCMarkup_1_1SavedPosMap}
 \include{structCMarkup_1_1SavedPosMapArray}
 \include{structCMarkup_1_1TokenPos}
+\include{classneuralpp_1_1InvalidSynapticalWeightException}
+\include{classneuralpp_1_1InvalidXMLException}
 \include{classneuralpp_1_1Layer}
 \include{structMCD__CSTR}
 \include{structneuralpp_1_1netrecord}
+\include{classneuralpp_1_1NetworkFileNotFoundException}
+\include{classneuralpp_1_1NetworkFileWriteException}
+\include{classneuralpp_1_1NetworkIndexOutOfBoundsException}
 \include{classneuralpp_1_1NeuralNet}
 \include{classneuralpp_1_1Neuron}
 \include{structneuralpp_1_1neuronrecord}
@@ -60,5 +65,9 @@
 \input{Markup_8h}
 \include{neural_09_09_8hpp}
 \include{neural_09_09__exception_8hpp}
+\chapter{Example Documentation}
+\input{examples_2adderFromScratch_8cpp-example}
+\include{examples_2doAdd_8cpp-example}
+\include{examples_2learnAdd_8cpp-example}
 \printindex
 \end{document}
diff --git a/examples/README b/examples/README
index d4846c2..74a07a1 100644
--- a/examples/README
+++ b/examples/README
@@ -1,10 +1,19 @@
-This directory contains some sources to illustrate LibNeural++ usage.
-learnAdd is a source training a neural network to do simple sums
-between two integer positive numbers. The network is then saved to a
-binary file called "adder.net". This file can then be used by "doAdd".
-In this program you're asked input numbers to the network, and then
-the output is given. If executable files would not be present, type
-`make` to create them.
+* @example examples/learnAdd.cpp Show how to train a network that performs sums between
+* two real numbers. The training XML is built from scratch, then saved to a file, then
+* the network is initialized using that XML file, trained, and the resulting trained
+* network is saved to adder.net. Then, you should take a look at doAdd.cpp to see how
+* to use that file to use the network.
 
-Of course, you must have Neural++ already installed before typing `make`
+* @example examples/doAdd.cpp Show how to use a network already trained and saved to a
+* binary file. In this case, a network trained to simply perform sums between two real
+* numbers, that should have already been created using learnAdd.
+
+* @example examples/adderFromScratch.cpp Similar to learnAdd.cpp, but this time the
+* training XML is generated as a string and not saved to a file, and parsed by the
+* program itself to build the network. Then, the program asks two real numbers, and
+* performs both the sum and the difference between them, putting the sum's output on
+* the first output neuron and the difference's on the second output neuron. Anyway,
+* using more than one neuron in the output layer is strongly discouraged, as the network
+* usually won't set correctly the synaptical weights to give satisfying and accurate
+* answers for all of the operations.
 
diff --git a/examples/adderFromScratch.cpp b/examples/adderFromScratch.cpp
index b800853..648cfe3 100644
--- a/examples/adderFromScratch.cpp
+++ b/examples/adderFromScratch.cpp
@@ -1,6 +1,12 @@
 /**
- * This source creates a new neural network able to sum two integer numbers,
- * creating the XML containing the training input set on the fly.
+ * Similar to learnAdd.cpp, but this time the
+ * training XML is generated as a string and not saved to a file, and parsed by the
+ * program itself to build the network. Then, the program asks two real numbers, and
+ * performs both the sum and the difference between them, putting the sum's output on
+ * the first output neuron and the difference's on the second output neuron. Anyway,
+ * using more than one neuron in the output layer is strongly discouraged, as the network
+ * usually won't set correctly the synaptical weights to give satisfying and accurate
+ * answers for all of the operations.
  *
  * by BlackLight, 2009
  */
diff --git a/examples/doAdd.cpp b/examples/doAdd.cpp
index f94bdf2..f61f2fe 100644
--- a/examples/doAdd.cpp
+++ b/examples/doAdd.cpp
@@ -1,6 +1,7 @@
 /**
- * This source makes sums between two numbers using pre-trained neural network
- * saved on "adder.net"
+ * Show how to use a network already trained and saved to a
+ * binary file. In this case, a network trained to simply perform sums between two real
+ * numbers, that should have already been created using learnAdd.
  *
  * by BlackLight, 2009
  */
@@ -17,6 +18,7 @@ int main()  {
 	double a,b;
 	NeuralNet net;
 
+	// Load the pre-trained network from "adder.net" file
 	try  {
 		net = NeuralNet(NETFILE);
 	}
@@ -36,6 +38,8 @@ int main()  {
 	v.push_back(a);
 	v.push_back(b);
 
+	// Set the numbers just read as input values, propagate those values, and get
+	// the output
 	net.setInput(v);
 	net.propagate();
 	cout << "Neural net output: " << net.getOutput() << endl;
diff --git a/examples/learnAdd.cpp b/examples/learnAdd.cpp
index 9cfd4ad..0fd0936 100644
--- a/examples/learnAdd.cpp
+++ b/examples/learnAdd.cpp
@@ -1,7 +1,9 @@
 /**
- * This source creates a new neural network able to sum two integer numbers,
- * using the training input set saved on "adder.xml" and saving output network
- * on "adder.net"
+ * Show how to train a network that performs sums between
+ * two real numbers. The training XML is built from scratch, then saved to a file, then
+ * the network is initialized using that XML file, trained, and the resulting trained
+ * network is saved to adder.net. Then, you should take a look at doAdd.cpp to see how
+ * to use that file to use the network.
  *
  * by BlackLight, 2009
  */
@@ -14,17 +16,27 @@
 using namespace std;
 using namespace neuralpp;
 
-double f (double x)  {
-	return (x <= 0) ? 1 : 0;
-}
-
 int main()  {
 	int id = 0;
 	string xml;
 	time_t t1, t2;
-	NeuralNet net(2, 2, 1, 0.005, 1000, 0.1, f);
 
+	// Create the neural network. The network is going to have
+	// => 2 neurons for the input layer
+	// => 2 neurons for the hidden layer
+	// => 1 neuron  for the output layer
+	// => a learning rate == 0.005 (just get it doing some tests until satisfied)
+	// => 1000 learning steps (i.e. the network will be ready after 1000 training steps to adjust the synaptical weights
+	// => 0.1 as neural threshold (the threshold above which a neuron activates)
+	NeuralNet net(2, 2, 1, 0.005, 1000, 0.1);
+
+	// Initialize a training XML as a string in 'xml'
 	NeuralNet::initXML(xml);
+
+	// Build some training sets for the XML. The format is:
+	// "input1,input2,...,inputn;output1,output2,...,outputn
+	// The 'id' variable is passed as reference, starting from 0,
+	// and it's used to enumerate the sets in the XML file.
 	xml += NeuralNet::XMLFromSet(id, "2,3;5");
 	xml += NeuralNet::XMLFromSet(id, "3,2;5");
 	xml += NeuralNet::XMLFromSet(id, "6,2;8");
@@ -35,16 +47,20 @@ int main()  {
 	xml += NeuralNet::XMLFromSet(id, "10,10;20");
 	NeuralNet::closeXML(xml);
 
+	// Save the XML string just created to a file
 	ofstream out("adder.xml");
 	out << xml;
 	out.close();
 	cout << "Training file adder.xml has been written\n";
 
+	// Start the training from the XML file
 	t1 = time(NULL);
 	cout << "Training in progress - This may take a while...\n";
 	net.train("adder.xml", NeuralNet::file);
 	t2 = time(NULL);
 
+	// Save the trained network to a binary file, that can be reloaded from any
+	// application that is going to use that network
 	net.save("adder.net");
 	cout << "Network trained in " << (t2-t1) << " seconds. You can use adder.net file now to load this network\n";
 	return 0;
diff --git a/include/Doxyfile b/include/Doxyfile
index 0509aa7..09b9353 100644
--- a/include/Doxyfile
+++ b/include/Doxyfile
@@ -23,7 +23,7 @@ PROJECT_NAME           = Neural++
 # This could be handy for archiving the generated documentation or 
 # if some version control system is used.
 
-PROJECT_NUMBER         = 0.3
+PROJECT_NUMBER         = 0.4
 
 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
 # base path where the generated documentation will be put. 
@@ -500,7 +500,7 @@ EXCLUDE_PATTERNS       =
 # directories that contain example code fragments that are included (see 
 # the \include command).
 
-EXAMPLE_PATH           = 
+EXAMPLE_PATH           = ../examples
 
 # If the value of the EXAMPLE_PATH tag contains directories, you can use the 
 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
diff --git a/include/neural++.hpp b/include/neural++.hpp
index e6ab4a6..2db4837 100644
--- a/include/neural++.hpp
+++ b/include/neural++.hpp
@@ -11,10 +11,6 @@
  * this program. If not, see <http://www.gnu.org/licenses/>.                                      *
  **************************************************************************************************/
 
-#ifndef __cplusplus
-#error "This is a C++ library, you know, so you'd better use a C++ compiler to compile it"
-#else
-
 #ifndef __NEURALPP
 #define __NEURALPP
 
@@ -46,6 +42,24 @@ namespace neuralpp  {
 	/**
 	 * @class NeuralNet
 	 * @brief Main project's class. Use *ONLY* this class, unless you know what you're doing
+	 * @example examples/learnAdd.cpp Show how to train a network that performs sums between
+	 * two real numbers. The training XML is built from scratch, then saved to a file, then
+	 * the network is initialized using that XML file, trained, and the resulting trained
+	 * network is saved to adder.net. Then, you should take a look at doAdd.cpp to see how
+	 * to use that file to use the network.
+	 *
+	 * @example examples/doAdd.cpp Show how to use a network already trained and saved to a
+	 * binary file. In this case, a network trained to simply perform sums between two real
+	 * numbers, that should have already been created using learnAdd.
+	 *
+	 * @example examples/adderFromScratch.cpp Similar to learnAdd.cpp, but this time the
+	 * training XML is generated as a string and not saved to a file, and parsed by the
+	 * program itself to build the network. Then, the program asks two real numbers, and
+	 * performs both the sum and the difference between them, putting the sum's output on
+	 * the first output neuron and the difference's on the second output neuron. Anyway,
+	 * using more than one neuron in the output layer is strongly discouraged, as the network
+	 * usually won't set correctly the synaptical weights to give satisfying and accurate
+	 * answers for all of the operations.
 	 */
 	class NeuralNet  {
 		int epochs;
@@ -529,5 +543,4 @@ namespace neuralpp  {
 }
 
 #endif
-#endif
 
diff --git a/include/neural++_exception.hpp b/include/neural++_exception.hpp
index 2bf1b6a..65f5834 100644
--- a/include/neural++_exception.hpp
+++ b/include/neural++_exception.hpp
@@ -1,5 +1,5 @@
 /**************************************************************************************************
- * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *
+ * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *
  * Copyright (C) 2009, BlackLight                                                                 *
  *                                                                                                *
  * This program is free software: you can redistribute it and/or modify it under the terms of the *
@@ -11,10 +11,6 @@
  * this program. If not, see <http://www.gnu.org/licenses/>.                                      *
  **************************************************************************************************/
 
-#ifndef __cplusplus
-#error "This is a C++ library, you know, so you'd better use a C++ compiler to compile it"
-#else
-
 #ifndef __NEURALPP_EXCEPTION
 #define __NEURALPP_EXCEPTION
 
@@ -76,5 +72,4 @@ namespace neuralpp  {
 }
 
 #endif
-#endif
 
diff --git a/src/layer.cpp b/src/layer.cpp
index 1ae4ed8..5c75130 100644
--- a/src/layer.cpp
+++ b/src/layer.cpp
@@ -1,5 +1,5 @@
 /**************************************************************************************************
- * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *
+ * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *
  * Copyright (C) 2009, BlackLight                                                                 *
  *                                                                                                *
  * This program is free software: you can redistribute it and/or modify it under the terms of the *
diff --git a/src/neuralnet.cpp b/src/neuralnet.cpp
index 2cd70e4..79cebd0 100644
--- a/src/neuralnet.cpp
+++ b/src/neuralnet.cpp
@@ -1,5 +1,5 @@
 /**************************************************************************************************
- * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *
+ * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *
  * Copyright (C) 2009, BlackLight                                                                 *
  *                                                                                                *
  * This program is free software: you can redistribute it and/or modify it under the terms of the *
diff --git a/src/neuron.cpp b/src/neuron.cpp
index c25e01d..2424380 100644
--- a/src/neuron.cpp
+++ b/src/neuron.cpp
@@ -1,5 +1,5 @@
 /**************************************************************************************************
- * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *
+ * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *
  * Copyright (C) 2009, BlackLight                                                                 *
  *                                                                                                *
  * This program is free software: you can redistribute it and/or modify it under the terms of the *
diff --git a/src/synapsis.cpp b/src/synapsis.cpp
index f309b5a..d77a5f0 100644
--- a/src/synapsis.cpp
+++ b/src/synapsis.cpp
@@ -1,5 +1,5 @@
 /**************************************************************************************************
- * LibNeural++ v.0.2 - All-purpose library for managing neural networks                           *
+ * LibNeural++ v.0.4 - All-purpose library for managing neural networks                           *
  * Copyright (C) 2009, BlackLight                                                                 *
  *                                                                                                *
  * This program is free software: you can redistribute it and/or modify it under the terms of the *