1 #include <petsc/private/fortranimpl.h> 2 #include <petscdmlabel.h> 3 #include <petscviewer.h> 4 5 #if defined(PETSC_HAVE_FORTRAN_CAPS) 6 #define dmlabelview_ DMLABELVIEW 7 #define petscsectionsymlabelsetstratum_ PETSCSECTIONSYMLABELSETSTRATUM 8 #define dmlabelgetname_ DMLABELGETNAME 9 #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) 10 #define dmlabelview_ dmlabelview 11 #define petscsectionsymlabelsetstratum_ petscsectionsymlabelsetstratum 12 #define dmlabelgetname_ dmlabelgetname 13 #endif 14 15 /* Definitions of Fortran Wrapper routines */ 16 17 PETSC_EXTERN void PETSC_STDCALL dmlabelview_(DMLabel *label, PetscViewer *vin, PetscErrorCode *ierr) 18 { 19 PetscViewer v; 20 PetscPatchDefaultViewers_Fortran(vin, v); 21 *ierr = DMLabelView(*label, v); 22 } 23 24 PETSC_EXTERN void PETSC_STDCALL petscsectionsymlabelsetstratum_(PetscSectionSym *sym,PetscInt *stratum,PetscInt *size,PetscInt *minOrient,PetscInt *maxOrient,PetscCopyMode *mode, PetscInt **perms, PetscScalar **rots, int *__ierr ){ 25 *__ierr = PetscSectionSymLabelSetStratum(*sym,*stratum,*size,*minOrient,*maxOrient,*mode,(const PetscInt **)perms,(const PetscScalar **)rots); 26 } 27 28 PETSC_EXTERN void PETSC_STDCALL dmlabelgetname_(DMLabel *label,char* name PETSC_MIXED_LEN(len),PetscErrorCode *ierr PETSC_END_LEN(len)) 29 { 30 const char *tmp; 31 *ierr = DMLabelGetName(*label,&tmp); 32 *ierr = PetscStrncpy(name,tmp,len);if (*ierr) return; 33 FIXRETURNCHAR(PETSC_TRUE,name,len); 34 } 35