diff options
author | mike <mike@d8baa203-390c-0410-a584-dba4c0749223> | 2011-07-17 21:57:41 +0000 |
---|---|---|
committer | mike <mike@d8baa203-390c-0410-a584-dba4c0749223> | 2011-07-17 21:57:41 +0000 |
commit | a59a43a3b7f61dcaa4120f8283cb62aef5727b7f (patch) | |
tree | f92a7e66ec0ef990760dd917bea23ba6c32b1619 /src | |
parent | 9a8b77707c12bab9d64e92b19a8256ac5b1e252e (diff) | |
download | libneural-a59a43a3b7f61dcaa4120f8283cb62aef5727b7f.tar.gz libneural-a59a43a3b7f61dcaa4120f8283cb62aef5727b7f.tar.bz2 libneural-a59a43a3b7f61dcaa4120f8283cb62aef5727b7f.tar.xz libneural-a59a43a3b7f61dcaa4120f8283cb62aef5727b7f.zip |
The network class will simply facilitate the input and output buffers, memory
management, and probably contain the parsing code a little later on.
git-svn-id: http://svn.xagasoft.com/misc/libneural/trunk@472 d8baa203-390c-0410-a584-dba4c0749223
Diffstat (limited to '')
-rw-r--r-- | src/column.cpp | 4 | ||||
-rw-r--r-- | src/column.h | 15 | ||||
-rw-r--r-- | src/network.cpp | 1 | ||||
-rw-r--r-- | src/network.h | 29 |
4 files changed, 44 insertions, 5 deletions
diff --git a/src/column.cpp b/src/column.cpp index 10b010b..881284e 100644 --- a/src/column.cpp +++ b/src/column.cpp | |||
@@ -1 +1,5 @@ | |||
1 | #include "neural/column.h" | 1 | #include "neural/column.h" |
2 | |||
3 | template class Neural::Column<float>; | ||
4 | template class Neural::Column<double>; | ||
5 | template class Neural::Column<long double>; | ||
diff --git a/src/column.h b/src/column.h index 17ba899..8c07f62 100644 --- a/src/column.h +++ b/src/column.h | |||
@@ -40,14 +40,19 @@ namespace Neural | |||
40 | 40 | ||
41 | virtual void process( sigtype *aInput, sigtype *aOutput ) | 41 | virtual void process( sigtype *aInput, sigtype *aOutput ) |
42 | { | 42 | { |
43 | 43 | typename BufferList::iterator iBuf = lBuffer.begin(); | |
44 | sigtype *pInput, *pOutput; | 44 | sigtype *pBuffer = aInput; |
45 | int iOutputOffset = 0; | 45 | sigtype *pNextBuffer = *iBuf; |
46 | for( typename Container<sigtype>::NodeList::iterator i = | 46 | for( typename Container<sigtype>::NodeList::iterator i = |
47 | Container<sigtype>::getNodeList().begin(); i; i++ ) | 47 | Container<sigtype>::getNodeList().begin(); i; i++ ) |
48 | { | 48 | { |
49 | (*i)->process( aInput, aOutput+iOutputOffset ); | 49 | (*i)->process( pBuffer, pNextBuffer ); |
50 | iOutputOffset += (*i)->getNumOutputs(); | 50 | pBuffer = pNextBuffer; |
51 | iBuf++; | ||
52 | if( iBuf ) | ||
53 | pNextBuffer = *iBuf; | ||
54 | else | ||
55 | pNextBuffer = aOutput; | ||
51 | } | 56 | } |
52 | } | 57 | } |
53 | 58 | ||
diff --git a/src/network.cpp b/src/network.cpp index e69de29..972c88d 100644 --- a/src/network.cpp +++ b/src/network.cpp | |||
@@ -0,0 +1 @@ | |||
#include "neural/network.h" | |||
diff --git a/src/network.h b/src/network.h index e69de29..85d8407 100644 --- a/src/network.h +++ b/src/network.h | |||
@@ -0,0 +1,29 @@ | |||
1 | #ifndef NEURAL_NETWORK_H | ||
2 | #define NEURAL_NETWORK_H | ||
3 | |||
4 | #include "neural/node.h" | ||
5 | |||
6 | namespace Neural | ||
7 | { | ||
8 | template<typename sigtype> | ||
9 | class Network | ||
10 | { | ||
11 | public: | ||
12 | Network() : | ||
13 | pRoot( 0 ) | ||
14 | { | ||
15 | } | ||
16 | |||
17 | virtual ~Network() | ||
18 | { | ||
19 | delete pRoot; | ||
20 | } | ||
21 | |||
22 | |||
23 | |||
24 | private: | ||
25 | Node<sigtype> *pRoot; | ||
26 | }; | ||
27 | }; | ||
28 | |||
29 | #endif | ||