OpenMPI  0.1.1
osc_pt2pt_data_move.h
1 /*
2  * Copyright (c) 2004-2005 The Trustees of Indiana University.
3  * All rights reserved.
4  * Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
5  * All rights reserved.
6  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
7  * University of Stuttgart. All rights reserved.
8  * Copyright (c) 2004-2005 The Regents of the University of California.
9  * All rights reserved.
10  * $COPYRIGHT$
11  *
12  * Additional copyrights may follow
13  *
14  * $HEADER$
15  */
16 
17 #ifndef OMPI_MCA_OSC_PT2PT_DATA_MOVE_H
18 #define OMPI_MCA_OSC_PT2PT_DATA_MOVE_H
19 
20 #include "osc_pt2pt_sendreq.h"
21 #include "osc_pt2pt_replyreq.h"
22 
23 /* send a sendreq (the request from the origin for a Put, Get, or
24  Accumulate, including the payload for Put and Accumulate) */
25 int ompi_osc_pt2pt_sendreq_send(ompi_osc_pt2pt_module_t *module,
26  ompi_osc_pt2pt_sendreq_t *sendreq);
27 
28 /* send a replyreq (the request from the target of a Get, with the
29  payload for the origin */
30 int ompi_osc_pt2pt_replyreq_send(ompi_osc_pt2pt_module_t *module,
31  ompi_osc_pt2pt_replyreq_t *replyreq);
32 
33 /* receive the target side of a sendreq for a put, directly into the user's window */
34 int ompi_osc_pt2pt_sendreq_recv_put(ompi_osc_pt2pt_module_t *module,
36  void *payload);
37 
38 /* receive the target side of a sendreq for an accumulate, possibly
39  using a temproart buffer, then calling the reduction functions */
40 int ompi_osc_pt2pt_sendreq_recv_accum(ompi_osc_pt2pt_module_t *module,
42  void *payload);
43 
44 /* receive the origin side of a replyreq (the reply part of an
45  MPI_Get), directly into the user's window */
46 int ompi_osc_pt2pt_replyreq_recv(ompi_osc_pt2pt_module_t *module,
47  ompi_osc_pt2pt_sendreq_t *sendreq,
49  void *payload);
50 
51 int ompi_osc_pt2pt_control_send(ompi_osc_pt2pt_module_t *module,
52  ompi_proc_t *proc,
53  uint8_t type, int32_t value0, int32_t value1);
54 
55 #endif
Definition: osc_pt2pt_header.h:53
Definition: osc_pt2pt_header.h:91
Definition: osc_pt2pt.h:57
Remote Open MPI process structure.
Definition: proc.h:56
Definition: osc_pt2pt_sendreq.h:38
Definition: osc_pt2pt_replyreq.h:33