OpenMPI  0.1.1
vprotocol_pessimist_request.h
1 /*
2  * Copyright (c) 2004-2007 The Trustees of the University of Tennessee.
3  * All rights reserved.
4  * $COPYRIGHT$
5  *
6  * Additional copyrights may follow
7  *
8  * $HEADER$
9  */
10 
11 #ifndef __INCLUDE_VPROTOCOL_PESSIMIST_REQUEST_H_
12 #define __INCLUDE_VPROTOCOL_PESSIMIST_REQUEST_H_
13 
14 #include "ompi_config.h"
15 #include "ompi/request/request.h"
16 #include "../base/vprotocol_base_request.h"
17 #include "vprotocol_pessimist_event.h"
18 #include "vprotocol_pessimist_sender_based_types.h"
19 
20 BEGIN_C_DECLS
21 
23  opal_list_item_t list_item; /* must always be first field */
24  ompi_request_free_fn_t pml_req_free;
25  vprotocol_pessimist_clock_t reqid;
29 
32 
35 
36 #define VPESSIMIST_FTREQ(req) \
37  ((mca_vprotocol_pessimist_request_t *) VPROTOCOL_FTREQ(req))
38 
39 #define VPESSIMIST_RECV_FTREQ(req) \
40  ((mca_vprotocol_pessimist_recv_request_t *) VPROTOCOL_RECV_FTREQ(req))
41 
42 #define VPESSIMIST_SEND_FTREQ(req) \
43  ((mca_vprotocol_pessimist_send_request_t *) VPROTOCOL_SEND_FTREQ(req))
44 
45 #define VPESSIMIST_FTREQ_INIT(req) do { \
46  VPESSIMIST_FTREQ(req)->reqid = mca_vprotocol_pessimist.clock++; \
47 } while(0)
48 
49 int mca_vprotocol_pessimist_request_free(ompi_request_t **req);
50 
51 END_C_DECLS
52 
53 #endif /* __INCLUDE_VPROTOCOL_PESSIMIST_REQUEST_H_ */
Structure to represent a single event.
Definition: event_struct.h:87
Definition: vprotocol_pessimist_event.h:45
Definition: vprotocol_pessimist_sender_based_types.h:60
Definition: opal_list.h:98
Top-level description of requests.
Definition: vprotocol_pessimist_request.h:22
Main top-level request struct definition.
Definition: request.h:100
#define OBJ_CLASS_DECLARATION(NAME)
Declaration for class descriptor.
Definition: opal_object.h:236