# Guide de référence du module MEDfile

## Fonctions

med_err | MEDfileClose (med_idt fid)
| Fermeture d'un fichier MED.
med_err | MEDfileCommentRd (const med_idt fid, char *const comment)
| Lecture d'un descripteur dans un fichier MED.
med_err | MEDfileCommentWr (const med_idt fid, const char *const comment)
| Ecriture d'un descripteur dans un fichier MED.
med_err | MEDfileCompatibility (const char *const filename, med_bool *const hdfok, med_bool *const medok)
| Vérification de la compatibilité d'un fichier avec HDF et MED.
med_err | MEDfileNumVersionRd (const med_idt fid, med_int *const major, med_int *const minor, med_int *const release)
| Lecture du numéro de version de la bibliothèque MED utilisée pour créer le fichier.
med_idt | MEDfileObjectsMount (const med_idt fid, const char *const mountfilename, const med_class medclass)
| Cette routine permet de monter dans le fichier courant un type de données (exemples les maillages, les champs) d'un autre fichier MED.
med_err | MEDfileObjectsUnmount (const med_idt fid, const med_idt mid, const med_class medclass)
| Une fois le démontage effectué, les données précédemment montées ne sont plus accessibles.
med_idt | MEDfileOpen (const char *const filename, const med_access_mode accessmode)
| Ouverture d'un fichier MED.
med_err | MEDfileStrVersionRd (const med_idt fid, char *const medversion)
| Lecture du numéro de version de la bibliothèque MED utilisée pour créer le fichier (renvoyé sous la forme d'une chaîne de caractères).
med_idt | MEDparFileOpen (const char *const filename, const med_access_mode accessmode, const MPI_Comm comm, const MPI_Info info)
| Ouverture d'un fichier MED pour une utilisation parallèle.

## Documentation des fonctions

med_err MEDfileClose | ( | med_idt | fid | ) |

Fermeture d'un fichier MED.

Paramètres:

  | fid | Identificateur du fichier.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine permet de fermer un fichier MED. En cas d'accès en écriture, la garantie que les données sont physiquement écrites dans le fichier, n'est donnée que suite à l'exécution de cette routine.

Définition à la ligne 30 du fichier MEDfileClose.c.

med_err MEDfileCommentRd | ( | const med_idt | fid,
|  | char *const | comment |
| ) |  |  |

Lecture d'un descripteur dans un fichier MED.

Paramètres:

  | fid | Identificateur du fichier.
  | comment | Descripteur du fichier.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine permet de lire un descripteur dans un fichier MED. Ce descripteur est une chaîne de caratères de MED_COMMENT_SIZE (200) caractères

Définition à la ligne 33 du fichier MEDfileCommentRd.c.

med_err MEDfileCommentWr | ( | const med_idt | fid,
|  | const char *const | comment |
| ) |  |  |

Ecriture d'un descripteur dans un fichier MED.

Paramètres:

  | fid | Identificateur du fichier.
  | comment | Descripteur du fichier.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine permet d'écrire un descripteur dans un fichier MED. Ce descripteur est une chaîne de caratères de MED_COMMENT_SIZE (200) caractères

Définition à la ligne 34 du fichier MEDfileCommentWr.c.

med_err MEDfileCompatibility | ( | const char *const | filename,
|  | med_bool *const | hdfok,
|  | med_bool *const | medok |
| ) |  |  |

Vérification de la compatibilité d'un fichier avec HDF et MED.

Paramètres:

  | filename | Nom du fichier.
  | hdfok | Indicateur booleen indiquant si le fichier est dans un format HDF compatible.
  | medok | Indicateur booleen indiquant si le fichier un fichier MED compatible.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine permet de vérifier la compatibilité du fichier passé en argument avec HDF5 (est-ce un fichier HDF5 ?) et MED (est-ce un fichier MED que je peux lire ?).

Définition à la ligne 34 du fichier MEDfileCompatibility.c.

med_err MEDfileNumVersionRd | ( | const med_idt | fid,
|  | med_int *const | major,
|  | med_int *const | minor,
|  | med_int *const | release |
| ) |  |  |

Lecture du numéro de version de la bibliothèque MED utilisée pour créer le fichier.

Paramètres:

  | fid | Identificateur du fichier.
  | major | Numéro de version majeur.
  | minor | Numéro de version mineur.
  | release | Numéro de release.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine lit le numéro de version de la bibliothèque MED qui a été utilisée pour créer le fichier auquel on accède via le paramètre fid. Le numéro de version est renvoyé sous la forme de trois entiers : numéro de version majeur, numéro de version mineur, numéro de relase

Définition à la ligne 35 du fichier MEDfileNumVersionRd.c.

med_idt MEDfileObjectsMount | ( | const med_idt | fid,
|  | const char *const | mountfilename,
|  | const med_class | medclass |
| ) |  |  |

Cette routine permet de monter dans le fichier courant un type de données (exemples les maillages, les champs) d'un autre fichier MED.

Paramètres:

  | fid | Identificateur du fichier.
  | mountfilename | Nom du fichier à monter.
  | medclass | Type d'objet de haut niveau MED (champ ou maillage) .

Valeurs retournées:

  | med_idt | Identificateur du fichier monté.

Cette routine permet de monter dans le fichier courant un type de données (exemples les maillages, les champs) d'un autre fichier MED. Cette routine est utile par exemple quand les champs et les maillages d'une étude se situent dans des fichiers différents. Une fois le montage effectué, l'accès aux données montées est transparent.

Définition à la ligne 40 du fichier MEDfileObjectsMount.c.

med_err MEDfileObjectsUnmount | ( | const med_idt | fid,
|  | const med_idt | mid,
|  | const med_class | medclass |
| ) |  |  |

Une fois le démontage effectué, les données précédemment montées ne sont plus accessibles.

Paramètres:

  | fid | Identificateur du fichier.
  | mid | Identificateur du fichier à démonter.
  | medclass | Type d'objet de haut niveau MED (champ ou maillage) .

Valeurs retournées:

  | retour | négatif en cas d'erreur, Zéro sinon.

Cette routine permet désactiver un point de montage.

Définition à la ligne 33 du fichier MEDfileObjectsUnmount.c.

med_idt MEDfileOpen | ( | const char *const | filename,
|  | const med_access_mode | accessmode |
| ) |  |  |

Ouverture d'un fichier MED.

Paramètres:

  | filename | Nom du fichier.
  | accessmode | Mode d'acces au fichier.

Valeurs retournées:

  | med_idt | Identificateur du fichier.

Cette routine permet d'ouvrir un fichier MED selon le mode d'accès souhaité.

Remarques
  résultat i.e. l'identificateur entier (ID) retourné sera utilisé par les routines de l'API pour accéder au contenu du fichier.

Définition à la ligne 41 du fichier MEDfileOpen.c.

med_err MEDfileStrVersionRd | ( | const med_idt | fid,
|  | char *const | medversion |
| ) |  |  |

Lecture du numéro de version de la bibliothèque MED utilisée pour créer le fichier (renvoyé sous la forme d'une chaîne de caractères).

Paramètres:

  | fid | Identificateur du fichier.
  | medversion | Numéro de version défini dans une chaîne de caractères.

Valeurs retournées:

  | med_err | retour négatif en cas d'erreur, Zéro sinon.

Cette routine lit le numéro de version de la bibliothèque MED qui a été utilisée pour créer le fichier auquel on accède via le paramètre fid. Le numéro de version est renvoyé sous la forme d'une chaîne de caractères. Exemple de chaîne renvoyé : 'MED-3.0.0'.

Définition à la ligne 35 du fichier MEDfileStrVersionRd.c.

med_idt MEDparFileOpen | ( | const char *const | filename,
|  | const med_access_mode | accessmode,
|  | const MPI_Comm | comm,
|  | const MPI_Info | info |
| ) |  |  |

Ouverture d'un fichier MED pour une utilisation parallèle.

Paramètres:

  | filename | Nom du fichier.
  | accessmode | Mode d'acces au fichier.
  | comm | Communicateur mpi du groupe de processus participant à des appels parallèles sur le fichier MED.
  | info | Le paramètre mpi_info obtenu de la biblitohèque MPI .

Renvoie:
  med_idt Identificateur du fichier.

Cette routine permet d'ouvrir un fichier MED pour une utilisation parallèle selon le mode d'accès souhaité.

Remarques
  résultat i.e. l'identificateur entier (ID) retourné sera utilisé par les routines de l'API pour accéder au contenu du fichier.
  - Tous les appels à l'API MED via un descripteur de fichier parallèle doit être exécuté par tous les processus du comminicateur.
  - Si un processus veut travailler indépendament des autres il doit également ouvrir le fichier via MEDfileOpen pour avoir un descripteur séquentiel.

Définition à la ligne 52 du fichier MEDparFileOpen.c.