1 /* -*- Mode: C; c-basic-offset:4 ; -*- */
2 /*
3 * Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
4 * $COPYRIGHT$
5 *
6 * Additional copyrights may follow
7 *
8 * $HEADER$
9 */
10 #ifndef OMPI_REQUEST_DBG_H
11 #define OMPI_REQUEST_DBG_H
12
13 /*
14 * This file contains definitions used by both OMPI and debugger plugins.
15 * For more information on why we do this see the Notice to developers
16 * comment at the top of the ompi_msgq_dll.c file.
17 */
18
19 /**
20 * Enum inidicating the type of the request
21 */
22 typedef enum {
23 OMPI_REQUEST_PML, /**< MPI point-to-point request */
24 OMPI_REQUEST_IO, /**< MPI-2 IO request */
25 OMPI_REQUEST_GEN, /**< MPI-2 generalized request */
26 OMPI_REQUEST_WIN, /**< MPI-2 one-sided request */
27 OMPI_REQUEST_COLL, /**< MPI-3 non-blocking collectives request */
28 OMPI_REQUEST_NULL, /**< NULL request */
29 OMPI_REQUEST_NOOP, /**< A request that does nothing (e.g., to PROC_NULL) */
30 OMPI_REQUEST_COMM, /**< MPI-3 non-blocking communicator duplication */
31 OMPI_REQUEST_MAX /**< Maximum request type */
32 } ompi_request_type_t;
33
34 /**
35 * Enum indicating the state of the request
36 */
37 typedef enum {
38 /** Indicates that the request should not be progressed */
39 OMPI_REQUEST_INVALID,
40 /** A defined, but inactive request (i.e., it's valid, but should
41 not be progressed) */
42 OMPI_REQUEST_INACTIVE,
43 /** A valid and progressing request */
44 OMPI_REQUEST_ACTIVE,
45 /** The request has been cancelled */
46 OMPI_REQUEST_CANCELLED
47 } ompi_request_state_t;
48
49 #endif