Back to home page

MITgcm

 
 

    


File indexing completed on 2023-05-28 05:10:53 UTC

view on githubraw file Latest commit b4daa243 on 2023-05-28 03:53:22 UTC
b4daa24319 Shre*0001 /*
                0002 ##########################################################
                0003 # This file is part of the AdjoinableMPI library         #
                0004 # released under the MIT License.                        #
                0005 # The full COPYRIGHT notice can be found in the top      #
                0006 # level directory of the AdjoinableMPI distribution.     #
                0007 ########################################################## 
                0008 */
                0009 #ifndef _AMPI_BOOKKEEPING_SUPPORT_H_
                0010 #define _AMPI_BOOKKEEPING_SUPPORT_H_
                0011 
                0012 #include "ampi/userIF/request.h"
                0013 #include "ampi/userIF/window.h"
                0014 
                0015 /**
                0016  * \file 
                0017  * methods needed for internal request bookkeeping
                0018  */ 
                0019 
                0020 /**
                0021  * \param ampiRequest is added (by deep copy) to the internal bookkeeping using the already set valueu of member plainRequest as key
                0022  */
                0023 void BK_AMPI_put_AMPI_Request(struct AMPI_Request_S  *ampiRequest);
                0024 
                0025 /**
                0026  * \param request is used as key to look up the associated AMPI_Request_S instance which then is deep copied 
                0027  * \param ampiRequest pointer to the structure into which the values are copied 
                0028  * \param traced if non-zero indicates one should match tracedReques instead of plainRequest 
                0029  * the information is removed from the internal bookkeeping data
                0030  */
                0031 void BK_AMPI_get_AMPI_Request(MPI_Request *request, struct AMPI_Request_S  *ampiRequest, int traced);
                0032 
                0033 /**
                0034  * \param request is used as key to look up the associated AMPI_Request_S instance which then is deep copied 
                0035  * \param ampiRequest pointer to the structure into which the values are copied 
                0036  * \param traced if non-zero indicates one should match tracedReques instead of plainRequest 
                0037  * the information is retained in the internal bookkeeping data
                0038  */
                0039 void BK_AMPI_read_AMPI_Request(MPI_Request *request, struct AMPI_Request_S  *ampiRequest, int traced);
                0040 
                0041 /**
                0042  * \file 
                0043  * methods needed for internal window bookkeeping
                0044  */ 
                0045 
                0046 /**
                0047  * \param ampiWin is added (by deep copy) to the internal bookkeeping using the already set valueu of member plainRequest as key
                0048  */
                0049 void BK_AMPI_put_AMPI_Win(AMPI_Win  *ampiWin);
                0050 
                0051 /**
                0052  * \param win is used as key to look up the associated AMPI_Win instance which then is deep copied 
                0053  * \param ampiWin pointer to the structure into which the values are copied 
                0054  * the information is removed from the internal bookkeeping data
                0055  */
                0056 void BK_AMPI_get_AMPI_Win(MPI_Win *win, AMPI_Win  *ampiWin);
                0057 
                0058 /**
                0059  * \param win is used as key to look up the associated AMPI_Win instance which then is deep copied 
                0060  * \param ampiWin pointer to the structure into which the values are copied 
                0061  * the information is retained in the internal bookkeeping data
                0062  */
                0063 void BK_AMPI_read_AMPI_Win(MPI_Win *win, AMPI_Win  *ampiWin);
                0064 
                0065 #endif
                0066