Skip to content

Update--PDI--Application API

Corentin Roussel requested to merge Update--PDI--Application_API into master

This branch update the PDI API for applications (see #25 (closed) ):

REMOVE The following function are removed:

  • PDI_import
  • PDI_exchange

CHANGES For following changes have been made to the C API.

  • PDI_expose
    • Previously : PDI_status_t PDI_expose(char* data_name, void* data_address)
    • Now : PDI_status_t PDI_expose(char* data_name, void* data_address, PDI_inout_t authorized_access)

For Fortran, we now have:

  • `call PDI_expose(char* data_name, void* data_address, PDI_inout_t access, integer(optional) err_code)

WARNING There is an issue with the PDI_inout_t that is an enum (no interoperability with Fortran). The current nasty hack is a duplication of the values define in C into the Fortran module...

TIP A helper name API_changer.py is provided to move from the previous API to this new API. This tool can help but does not do all the require modifications. Please check the result carrefully! It is available in the branch tmp_tools--PDI--helper_API_change It looks into each subdirectory and it replaces PDI_import, PDI_exchange with PDI_expose + adds the access flag at the end of the function.

Edited by Corentin Roussel

Merge request reports