mmgs
variadic_s.c File Reference

C variadic functions definitions for MMGS library. More...

#include "mmgs.h"
Include dependency graph for variadic_s.c:

Functions

static int MMGS_Alloc_mesh (MMG5_pMesh *mesh, MMG5_pSol *sol)
 
static void MMGS_Init_woalloc_mesh (MMG5_pMesh mesh, MMG5_pSol sol)
 
int MMGS_Init_mesh_var (va_list argptr)
 
int MMGS_Free_all_var (va_list argptr)
 
int MMGS_Free_structures_var (va_list argptr)
 
int MMGS_Free_names_var (va_list argptr)
 

Detailed Description

C variadic functions definitions for MMGS library.

Author
Algiane Froehly (Inria/UBordeaux)
Version
5
Date
01 2014
Note
This file contains some internal functions for the API, see the mmgs/libmmgs.h header file for the documentation of all the usefull user's API functions.

variadic functions definitions for MMGS library.

Function Documentation

◆ MMGS_Alloc_mesh()

static int MMGS_Alloc_mesh ( MMG5_pMesh mesh,
MMG5_pSol sol 
)
inlinestatic
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.
Returns
0 if fail, 1 if success

Allocate the mesh and solutions structures at MMGS format.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_Free_all_var()

int MMGS_Free_all_var ( va_list  argptr)
Parameters
argptrlist of the mmg structures that must be deallocated. Each structure must follow one of the MMG5_ARG preprocessor variable that allow to identify it.

argptr contains at least a pointer toward a MMG5_pMesh structure (that will contain the mesh and identified by the MMG5_ARG_ppMesh keyword).

To call the MMGS_mmgslib function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the ouput metric (and the input one, if provided) and identified by the MMG5_ARG_ppMet keyword).

To call the MMGS_mmgsls function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the level-set function and identified by the MMG5_ARG_ppLs keyword).

Returns
0 if fail, 1 if success

Internal function for deallocations before return (taking a va_list as argument).

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_Free_names_var()

int MMGS_Free_names_var ( va_list  argptr)
Parameters
argptrlist of the mmg structures for whose we want to deallocate the name. Each structure must follow one of the MMG5_ARG preprocessor variable that allow to identify it.

argptr contains at least a pointer toward a MMG5_pMesh structure (that will contain the mesh and identified by the MMG5_ARG_ppMesh keyword).

To call the MMGS_mmgslib function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the ouput metric (and the input one, if provided) and identified by the MMG5_ARG_ppMet keyword).

To call the MMGS_mmgsls function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the level-set function and identified by the MMG5_ARG_ppLs keyword).

Returns
0 if fail, 1 if success

Internal function for name deallocations before return (taking a va_list as argument).

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_Free_structures_var()

int MMGS_Free_structures_var ( va_list  argptr)
Parameters
argptrlist of the mmg structures that must be deallocated. Each structure must follow one of the MMG5_ARG* preprocessor variable that allow to identify it.

argptr contains at least a pointer toward a MMG5_pMesh structure (that will contain the mesh and identified by the MMG5_ARG_ppMesh keyword).

To call the MMGS_mmgslib function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the ouput metric (and the input one, if provided) and identified by the MMG5_ARG_ppMet keyword).

To call the MMGS_mmgsls function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the level-set function and identified by the MMG5_ARG_ppLs keyword).

Returns
0 if fail, 1 if success

Internal function for structures deallocations before return (taking a va_list as argument).

Remarks
we pass the structures by reference in order to have argument compatibility between the library call from a Fortran code and a C code.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_Init_mesh_var()

int MMGS_Init_mesh_var ( va_list  argptr)
Parameters
argptrlist of the mmg structures that must be initialized. Each structure must follow one of the MMG5_ARG* preprocessor variable that allow to identify it.

argptr contains at least a pointer toward a MMG5_pMesh structure (that will contain the mesh and identified by the MMG5_ARG_ppMesh keyword).

To call the MMGS_mmgslib function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the ouput metric (and the input one, if provided) and identified by the MMG5_ARG_ppMet keyword).

Returns
0 if fail, 1 if success

To call the MMGS_mmgsls function, you must also provide a pointer toward a MMG5_pSol structure (that will contain the level-set function and identified by the MMG5_ARG_ppLs keyword).

Internal function for structure allocations (taking a va_list argument).

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMGS_Init_woalloc_mesh()

static void MMGS_Init_woalloc_mesh ( MMG5_pMesh  mesh,
MMG5_pSol  sol 
)
inlinestatic
Parameters
meshpointer toward the mesh structure.
solpointer toward the sol structure.

Initialization of mesh and solution structures to their default values (default names, versions, dimensions...).

Here is the call graph for this function:
Here is the caller graph for this function: