Statistics
| Branch: | Revision:

grapes / doc / grapes.doxy @ a31e4a4b

History | View | Annotate | Download (1.45 KB)

1
/** @mainpage
2

    
3
   @section intro Introduction
4

    
5
   GRAPES (Generic Resource-Aware P2P Environment for Streaming) is a
6
   set of libraries containing some ``building blocks'' for P2P
7
   streaming applications. Each application is decomposed in a set of
8
   <i>modules</i> (or <i>\em components</i>), and the libraries contain
9
   various alternative implementations of the modules.
10

    
11
   Ideally, a P2P streaming application can be built by linking such
12
   libraries with a minimum amount of code (in the best of the possible
13
   worlds, we would have some kind of GUI - like a graph editor - allowing
14
   to combine the various modules in different ways and to automatically
15
   generate the glue code for building the P2P program).
16

    
17
   @section structure GRAPES Structure
18

    
19
   The following Components/Modules can be idenfiied:
20
	- ml - <b>Messaging Layer</b> - ml.h
21
	- mon - <b>Monitoring Layer</b> - mon.h
22
	- rep - <b>Repository</b> - repoclient.h
23
	- som - <b>Scheduler and Overlay Manager</b> -
24
	- ul - <b>User</b> (interface) <b>Layer</b> - ul.h
25

    
26
   Each module can be composed by some submodules; for example, the som is
27
   composed by:
28
	- a chunk transport layer (send \& receive chunks)
29
	- a Scheduler
30
	- a Chunks Buffer
31
	- a @link topmanager.h Topology Manager @endlink
32
	- a Signalling Module
33

    
34
   Each module is separated into a sub-directory within the source tree,
35
   and the public Application Programming Interfaces (APIs) are located
36
   in the <i>include/</i> sub-directory.
37
*/