1 /* -*- Mode: C; c-basic-offset:4 ; -*- */
2 /*
3 * Copyright (c) 2013 Mellanox Technologies, Inc.
4 * All rights reserved.
5 * $COPYRIGHT$
6 *
7 * Additional copyrights may follow
8 *
9 * $HEADER$
10 */
11 #ifndef OSHMEM_REQUEST_DBG_H
12 #define OSHMEM_REQUEST_DBG_H
13
14 /*
15 * This file contains definitions used by both OSHMEM and debugger plugins.
16 * For more information on why we do this see the Notice to developers
17 * comment at the top of the ompi_msgq_dll.c file.
18 */
19
20 /**
21 * Enum inidicating the type of the request
22 */
23 typedef enum {
24 OSHMEM_REQUEST_SPML, /**< MPI point-to-point request */
25 OSHMEM_REQUEST_IO, /**< MPI-2 IO request */
26 OSHMEM_REQUEST_GEN, /**< MPI-2 generalized request */
27 OSHMEM_REQUEST_WIN, /**< MPI-2 one-sided request */
28 OSHMEM_REQUEST_COLL, /**< MPI-3 non-blocking collectives request */
29 OSHMEM_REQUEST_NULL, /**< NULL request */
30 OSHMEM_REQUEST_NOOP, /**< A request that does nothing (e.g., to PROC_NULL) */
31 OSHMEM_REQUEST_MAX /**< Maximum request type */
32 } oshmem_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 OSHMEM_REQUEST_INVALID,
40 /** A defined, but inactive request (i.e., it's valid, but should
41 not be progressed) */
42 OSHMEM_REQUEST_INACTIVE,
43 /** A valid and progressing request */
44 OSHMEM_REQUEST_ACTIVE,
45 /** The request has been cancelled */
46 OSHMEM_REQUEST_CANCELLED /* TODO: Not required */
47 } oshmem_request_state_t;
48
49 #endif