The Lattice Project



The Lattice Implementation

This implementation is written in C/C++.  The GUI for the program is in httpd.h and httpd.cpp (i.e. its a mini-webserver). It can be accessed when the program is running through a browser at Currently file searching is implemented, but the downloading of files is not.

There is another C++ project in the LatticeVisualiser sub-directory. This is an openGL visualiser for the network.  Start  lattice.exe with the argument "report_on",  and it will send packets to latticevisualiser.exe describing its current state. As more lattice clients start, the visualiser will show a real-time picture of what is going on.

To compile the lattice you need to have the pthread library and winsock2. The Pthread files are in the subdirectory called pthread. To compile the visualiser you will need glut, opengl and winsock. To compile the documentation, you will need doxygen and dot. From the project directory run "doxygen doxygen_config.txt" from DOS.

To run the lattice client you need various files to be in its working directory. copies of these are in the release and debug directories. If you want to start a number of lattice clients simultaneously, you should do the following for each instance you want to start: -create a new directory

  • copy these files in
  • create a shortcut to lattice.exe, with the working directory set to the directory you created.
  • edit conf.ini as you see fit. You really only need to modify the port numbers and the shared directory. (be careful not to have 2 lattice clients trying to share the same port on the same machine).