Index: /branches/network/src/lib/collision_detection/lin_alg.h
===================================================================
--- /branches/network/src/lib/collision_detection/lin_alg.h	(revision 5646)
+++ /branches/network/src/lib/collision_detection/lin_alg.h	(revision 5647)
@@ -5,4 +5,25 @@
     compute the eigenpairs (eigenvalues and eigenvectors) of a real symmetric matrix "A" by the Jacobi method
  */
+
+
+/**
+ *  function that calculates the eigenvectors from a given symmertical 3x3 Matrix
+ * @arg A: Matrix
+ * @arg D: Eigenvectors
+ */
+void eigenVectors(float** matrix, float **vectors)
+{
+  /* map variables to other names, so they can be processed more easely */
+  float a = matrix[0][0];
+  float b = matrix[0][1];
+  float c = matrix[0][2];
+  float d = matrix[1][1];
+  float e = matrix[1][2];
+  float f = matrix[2][2];
+  
+  /* first eigenvector */
+  vectors[0][0] = -1/c * (f - /*Root*/ (c*c*d - 2*b*c + a*e*e + b*b*f - a*d*f - 
+                  b*b - c*c + a*d - e*e + a*f ));
+}
 
 
Index: /branches/network/src/lib/network/network_manager.cc
===================================================================
--- /branches/network/src/lib/network/network_manager.cc	(revision 5646)
+++ /branches/network/src/lib/network/network_manager.cc	(revision 5647)
@@ -31,6 +31,4 @@
 #include "network_manager.h"
 
-/* include this file, it contains some default definitions */
-#include "netdefs.h"
 
 /* using namespace std is default, this needs to be here */
@@ -116,12 +114,21 @@
 /**
  *  creates a connection from one object to a host
+ * @param hostName: the name of the destination host
+ * @param synchronizeable: reference to the sync object
+ */
+NetworkStream& establishConnection(const char& hostName, const Synchronizeable& sync)
+{}
+
+
+/**
+ *  creates a connection from one object to a host
  * @param address: the address of the destination host
  * @param synchronizeable: reference to the sync object
  */
-NetworkStream& NetworkManager::establishConnection(/* address, port, object reference*/)
+NetworkStream& NetworkManager::establishConnection(const IPaddress& address, const Synchronizeable& sync)
 {
   PRINTF(0)("Establish connection...\n");
   /* creating a new network stream, it will register itself automaticaly to the class list */
-  NetworkStream* netStream = new NetworkStream();
+//  NetworkStream* netStream = new NetworkStream();
 }
 
Index: /branches/network/src/lib/network/network_manager.h
===================================================================
--- /branches/network/src/lib/network/network_manager.h	(revision 5646)
+++ /branches/network/src/lib/network/network_manager.h	(revision 5647)
@@ -9,7 +9,10 @@
 #define _NETWORK_MANAGER
 
+/* include this file, it contains some default definitions */
+#include "netdefs.h"
 
 /* include base_object.h since all classes are derived from this one */
 #include "base_object.h"
+
 
 /* forward declarations for the header file (include the header via #include "bla.h" in the source file) */
@@ -30,5 +33,6 @@
   void shutdown();
   
-  NetworkStream& establishConnection(/* address, port, object reference*/);
+  NetworkStream& establishConnection(const IPaddress& address, const Synchronizeable& sync);
+  NetworkStream& establishConnection(const char& hostName, const Synchronizeable& sync);
   void shutdownConnection();
   
Index: /branches/network/src/lib/network/network_stream.cc
===================================================================
--- /branches/network/src/lib/network/network_stream.cc	(revision 5646)
+++ /branches/network/src/lib/network/network_stream.cc	(revision 5647)
@@ -21,4 +21,12 @@
 
 
+#include "base_object.h"
+//#include "network_protocol.h"
+#include "network_socket.h"
+#include "connection_monitor.h"
+#include "synchronizeable.h"
+#include "list.h"
+
+
 /* include your own header */
 #include "network_stream.h"
@@ -28,17 +36,44 @@
 
 
+NetworkStream::NetworkStream(DataStream& inStream, DataStream& outStream) 
+  : DataStream(inStream, outStream)
+{
+  this->init();
+}
+
+NetworkStream::NetworkStream(Synchronizeable& sync, NetworkSocket& socket) 
+  : DataStream(sync, socket)
+{
+  this->init();
+}
+
+NetworkStream::NetworkStream(DataStream& inStream, NetworkSocket& socket) 
+  : DataStream(inStream, socket)
+{
+  this->init();
+}
+
+NetworkStream::NetworkStream(Synchronizeable& sync, DataStream& outStream) 
+  : DataStream(sync, outStream)
+{
+  this->init();
+}
+
 NetworkStream::NetworkStream()
+{
+  this->init();
+  /* initialize the references */
+  this->networkSocket = new NetworkSocket();
+  this->synchronizeables = new Synchronizeable();
+  this->connectionMonitor = new ConnectionMonitor();
+}
+
+
+void NetworkStream::init()
 {
   /* set the class id for the base object */
   this->setClassID(CL_NETWORK_STREAM, "NetworkStream");
+}
 
-  /* initialize the references */
-  this->networkSockets = new NetworkSocket();
-  this->synchronizeables = new Synchronizeable();
-  this->connectionMonitor = new ConnectionMonitor();
-
- 
-
-}
 
 NetworkStream::~NetworkStream()
Index: /branches/network/src/lib/network/network_stream.h
===================================================================
--- /branches/network/src/lib/network/network_stream.h	(revision 5646)
+++ /branches/network/src/lib/network/network_stream.h	(revision 5647)
@@ -7,12 +7,9 @@
 #define _NETWORK_STREAM
 
-#include "base_object.h"
 #include "data_stream.h"
-//#include "network_protocol.h"
-#include "network_socket.h"
-#include "connection_monitor.h"
-#include "synchronizeable.h"
-#include "list.h"
 
+class Synchronizeable;
+class NetworkSocket;
+class ConnectionMonitor;
 
 class NetworkStream : public virtual DataStream
@@ -21,6 +18,14 @@
 public:
   NetworkStream();
+  NetworkStream(DataStream& inStream, DataStream& outStream);
+  NetworkStream(Synchronizeable& sync, NetworkSocket& socket);
+  NetworkStream(DataStream& inStream, NetworkSocket& socket);
+  NetworkStream(Synchronizeable& sync, DataStream& outStream);
+  
   ~NetworkStream();
-   virtual void processData();
+   
+  void init();
+  
+  virtual void processData();
 
 private:
Index: /branches/network/src/subprojects/network/network_unit_test.cc
===================================================================
--- /branches/network/src/subprojects/network/network_unit_test.cc	(revision 5646)
+++ /branches/network/src/subprojects/network/network_unit_test.cc	(revision 5647)
@@ -8,8 +8,10 @@
 #include "network_manager.h"
 #include "network_socket.h"
+#include "synchronizeable.h"
 
 int verbose = 4;
 
 
+/* outputs the help */
 int startHelp(int argc, char** argv)
 {
@@ -17,7 +19,10 @@
   printf(" --help:           this output\n");
   printf(" --sockettest      test network_socket\n");
+  printf(" --frameworktest   test the network module\n");
   printf("\n");
 }
 
+
+/* test SDL network socket */
 int testSocket(int argc, char** argv)
 {
@@ -107,4 +112,32 @@
 }
 
+
+int testFramework(int argc, char** argv)
+{
+  printf("=================\n");
+  printf("TestFramework\n");
+  printf("=================\n");
+  
+  IPaddress ip;
+  //SDLNet_ResolveHost(&ip, "127.0.0.1", 9999);
+  SDLNet_ResolveHost(&ip, "localhost", 9999);
+  Synchronizeable sync;
+  
+  /* create the network manager */
+  NetworkManager* nm = new NetworkManager();
+
+  /* initialize the network manager */
+  nm->initialize();
+
+  /* esatblish a connection */
+  nm->establishConnection(ip, sync);
+  
+  /* delete the network manager again */
+  delete nm;
+  
+  return 0;
+}
+
+
 /**
  *
@@ -119,20 +152,11 @@
   for(i = 1; i < argc; ++i)
   {
-    if(! strcmp( "--help", argv[i]) || !strcmp("-h", argv[i])) return startHelp(argc, argv);
     //else if(!strcmp( "--gui", argv[i]) || !strcmp("-g", argv[i])) showGui = true;
-    else if (! strcmp( "--sockettest", argv[i]) || !strcmp("-s", argv[i])) return testSocket(argc, argv);
+    if (! strcmp( "--sockettest", argv[i]) || !strcmp("-s", argv[i])) return testSocket(argc, argv);
+    else if (! strcmp( "--frameworktest", argv[i]) || !strcmp("-s", argv[i])) return testFramework(argc, argv);
   }
 
-  /* create the network manager */
-  NetworkManager* nm = new NetworkManager();
-
-  /* initialize the network manager */
-  nm->initialize();
-
-  /* esatblish a connection */
-  nm->establishConnection();
-
-  //ClassList::debug(3, 0);
-
+  startHelp(argc, argv);
+  
   return 0;
 }
