Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge pull request #1 from mquinson/master
[simgrid.git] / contrib / psg / src / peersim / edsim / EDProtocol.java
1 /*
2  * Copyright (c) 2003-2005 The BISON Project
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
16  *
17  */
18                 
19 package peersim.edsim;
20
21 import peersim.core.*;
22
23 /**
24  * The interface to be implemented by protocols run under the event-driven
25  * model. A single method is provided, to deliver events to the protocol.
26  *
27  * @author Alberto Montresor
28  * @version $Revision: 1.5 $
29  */
30 public interface EDProtocol 
31 extends Protocol 
32 {
33
34         /**
35         * This method is invoked by the scheduler to deliver events to the
36         * protocol. Apart from the event object, information about the node
37         * and the protocol identifier are also provided. Additional information
38         * can be accessed through the {@link CommonState} class.
39         * 
40         * @param node the local node
41         * @param pid the identifier of this protocol
42         * @param event the delivered event
43         */
44         public void processEvent( Node node, int pid, Object event );
45
46 }
47