⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 grequest.h

📁 MPI stands for the Message Passing Interface. Written by the MPI Forum (a large committee comprising
💻 H
字号:
/* * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana *                         University Research and Technology *                         Corporation.  All rights reserved. * Copyright (c) 2004-2005 The University of Tennessee and The University *                         of Tennessee Research Foundation.  All rights *                         reserved. * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,  *                         University of Stuttgart.  All rights reserved. * Copyright (c) 2004-2005 The Regents of the University of California. *                         All rights reserved. * Copyright (c) 2006      Cisco Systems, Inc.  All rights reserved. * $COPYRIGHT$ *  * Additional copyrights may follow *  * $HEADER$ */#ifndef OMPI_GEN_REQUEST_H#define OMPI_GEN_REQUEST_H#include "ompi_config.h"#include "ompi/request/request.h"#if defined(c_plusplus) || defined(__cplusplus)extern "C" {#endifOMPI_DECLSPEC OBJ_CLASS_DECLARATION(ompi_grequest_t);/** * Fortran type for generalized request query function */typedef void (MPI_F_Grequest_query_function)(MPI_Aint *extra_state,                                              MPI_Fint *status,                                              MPI_Fint *ierr);/** * Fortran type for generalized request free function */typedef void (MPI_F_Grequest_free_function)(MPI_Aint *extra_state,                                             MPI_Fint *ierr);/** * Fortran type for generalized request cancel function */typedef void (MPI_F_Grequest_cancel_function)(MPI_Aint *extra_state,                                               MPI_Flogical *complete,                                               MPI_Fint *ierr);/** * Union for query function for use in ompi_grequest_t */typedef union {    MPI_Grequest_query_function*   c_query;    MPI_F_Grequest_query_function* f_query;} MPI_Grequest_query_fct_t;/** * Union for free function for use in ompi_grequest_t */typedef union {    MPI_Grequest_free_function*   c_free;    MPI_F_Grequest_free_function* f_free;} MPI_Grequest_free_fct_t;/** * Union for cancel function for use in ompi_grequest_t */typedef union {    MPI_Grequest_cancel_function*   c_cancel;    MPI_F_Grequest_cancel_function* f_cancel;} MPI_Grequest_cancel_fct_t;/** * Main structure for MPI generalized requests */struct ompi_grequest_t {    ompi_request_t greq_base;    MPI_Grequest_query_fct_t greq_query;    MPI_Grequest_free_fct_t greq_free;    MPI_Grequest_cancel_fct_t greq_cancel;    void *greq_state;    bool greq_funcs_are_c;};/** * Convenience typedef */typedef struct ompi_grequest_t ompi_grequest_t;/** * Start a generalized request (back end for MPI_GREQUEST_START) */OMPI_DECLSPEC int ompi_grequest_start(    MPI_Grequest_query_function *gquery,    MPI_Grequest_free_function *gfree,    MPI_Grequest_cancel_function *gcancel,    void* gstate,    ompi_request_t** request);/** * Complete a generalized request (back end for MPI_GREQUEST_COMPLETE) */OMPI_DECLSPEC int ompi_grequest_complete(ompi_request_t *req);/** * Invoke the query function on a generalized request */OMPI_DECLSPEC int ompi_grequest_invoke_query(ompi_request_t *request,                                             ompi_status_public_t *status);#if defined(c_plusplus) || defined(__cplusplus)}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -