15c6c1daeSBarry Smith 2af0996ceSBarry Smith #include <petsc/private/fortranimpl.h> 35c6c1daeSBarry Smith #include <petscbag.h> 45c6c1daeSBarry Smith 5519f805aSKarl Rupp #if defined(PETSC_HAVE_FORTRAN_CAPS) 65c6c1daeSBarry Smith #define petscbagregisterenumprivate_ PETSCBAGREGISTERENUMPRIVATE 75c6c1daeSBarry Smith #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 85c6c1daeSBarry Smith #define petscbagregisterenumprivate_ petscbagregisterenumprivate 95c6c1daeSBarry Smith #endif 105c6c1daeSBarry Smith 115c6c1daeSBarry Smith /* ---------------------------------------------------------------------*/ 125c6c1daeSBarry Smith 13*5975b3b6SBarry Smith PETSC_EXTERN void petscbagregisterenumprivate_(PetscBag *bag, void *addr, const char *const *list, PetscEnum *def, char *name, char *help, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len1, PETSC_FORTRAN_CHARLEN_T len2) 145c6c1daeSBarry Smith { 155c6c1daeSBarry Smith char *c1, *c2; 165c6c1daeSBarry Smith 175c6c1daeSBarry Smith FIXCHAR(name, len1, c1); 185c6c1daeSBarry Smith FIXCHAR(help, len2, c2); 19*5975b3b6SBarry Smith *ierr = PetscBagRegisterEnum(*bag, addr, list, *def, c1, c2); 20*5975b3b6SBarry Smith if (*ierr) return; 215c6c1daeSBarry Smith FREECHAR(name, c1); 225c6c1daeSBarry Smith FREECHAR(help, c2); 235c6c1daeSBarry Smith } 24