1*6dd63270SBarry Smith #include <petsc/private/ftnimpl.h>
255fcb7f5SSatish Balay
355fcb7f5SSatish Balay #if defined(PETSC_HAVE_FORTRAN_CAPS)
418d1adefSBarry Smith #define petscbinaryreadint_ PETSCBINARYREADINT
518d1adefSBarry Smith #define petscbinaryreadreal_ PETSCBINARYREADREAL
618d1adefSBarry Smith #define petscbinaryreadcomplex_ PETSCBINARYREADCOMPLEX
718d1adefSBarry Smith #define petscbinaryreadrealcnt_ PETSCBINARYREADREALCNT
818d1adefSBarry Smith #define petscbinaryreadcomplexcnt_ PETSCBINARYREADCOMPLEXCNT
9296ae53dSBarry Smith #define petscbinaryreadintcnt_ PETSCBINARYREADINTCNT
1018d1adefSBarry Smith #define petscbinaryreadint1_ PETSCBINARYREADINT1
11296ae53dSBarry Smith #define petscbinaryreadreal1_ PETSCBINARYREADREAL1
1218d1adefSBarry Smith #define petscbinaryreadcomplex1_ PETSCBINARYREADCOMPLEX1
13296ae53dSBarry Smith #define petscbinaryreadint1cnt_ PETSCBINARYREADINT1CNT
14296ae53dSBarry Smith #define petscbinaryreadreal1cnt_ PETSCBINARYREADREAL1CNT
15296ae53dSBarry Smith #define petscbinaryreadcomplex1cnt_ PETSCBINARYREADCOMPLEX1CNT
1618d1adefSBarry Smith #define petscbinarywriteint_ PETSCBINARYWRITEINT
1718d1adefSBarry Smith #define petscbinarywritereal_ PETSCBINARYWRITEREAL
1818d1adefSBarry Smith #define petscbinarywritecomplex_ PETSCBINARYWRITECOMPLEX
1918d1adefSBarry Smith #define petscbinarywriteint1_ PETSCBINARYWRITEINT1
2018d1adefSBarry Smith #define petscbinarywritereal1_ PETSCBINARYWRITEREAL1
2118d1adefSBarry Smith #define petscbinarywritecomplex1_ PETSCBINARYWRITECOMPLEX1
2255fcb7f5SSatish Balay #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
2318d1adefSBarry Smith #define petscbinaryreadint_ petscbinaryreadint
2418d1adefSBarry Smith #define petscbinaryreadreal_ petscbinaryreadreal
2518d1adefSBarry Smith #define petscbinaryreadcomplex_ petscbinaryreadcomplex
2618d1adefSBarry Smith #define petscbinaryreadrealcnt_ petscbinaryreadrealcnt
2718d1adefSBarry Smith #define petscbinaryreadcomplexcnt_ petscbinaryreadcomplexcnt
288a6b6cadSSatish Balay #define petscbinaryreadintcnt_ petscbinaryreadintcnt
2918d1adefSBarry Smith #define petscbinaryreadint1_ petscbinaryreadint1
308a6b6cadSSatish Balay #define petscbinaryreadreal1_ petscbinaryreadreal1
3118d1adefSBarry Smith #define petscbinaryreadcomplex1_ petscbinaryreadcomplex1
32296ae53dSBarry Smith #define petscbinaryreadint1cnt_ petscbinaryreadint1cnt
33296ae53dSBarry Smith #define petscbinaryreadreal1cnt_ petscbinaryreadreal1cnt
34296ae53dSBarry Smith #define petscbinaryreadcomplex1cnt_ petscbinaryreadcomplex1cnt
3518d1adefSBarry Smith #define petscbinarywriteint_ petscbinarywriteint
3618d1adefSBarry Smith #define petscbinarywritereal_ petscbinarywritereal
3718d1adefSBarry Smith #define petscbinarywritecomplex_ petscbinarywritecomplex
3818d1adefSBarry Smith #define petscbinarywriteint1_ petscbinarywriteint1
3918d1adefSBarry Smith #define petscbinarywritereal1_ petscbinarywritereal1
4018d1adefSBarry Smith #define petscbinarywritecomplex1_ petscbinarywritecomplex1
4155fcb7f5SSatish Balay #endif
4255fcb7f5SSatish Balay
43a9acdec7SBarry Smith /* Definitions of Fortran Wrapper routines */
44a9acdec7SBarry Smith #if defined(__cplusplus)
45a9acdec7SBarry Smith extern "C" {
46a9acdec7SBarry Smith #endif
47a9acdec7SBarry Smith
petscbinarywriteint_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)48f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywriteint_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
49a9acdec7SBarry Smith {
50f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
51a9acdec7SBarry Smith }
52a9acdec7SBarry Smith
petscbinarywritereal_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)53f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywritereal_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
54a9acdec7SBarry Smith {
55f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
56a9acdec7SBarry Smith }
57a9acdec7SBarry Smith
petscbinarywritecomplex_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)58f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywritecomplex_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
59a9acdec7SBarry Smith {
60f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
61a9acdec7SBarry Smith }
62a9acdec7SBarry Smith
petscbinarywriteint1_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)63f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywriteint1_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
64a9acdec7SBarry Smith {
65f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
66a9acdec7SBarry Smith }
67a9acdec7SBarry Smith
petscbinarywritereal1_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)68f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywritereal1_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
69a9acdec7SBarry Smith {
70f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
71a9acdec7SBarry Smith }
72a9acdec7SBarry Smith
petscbinarywritecomplex1_(int * fd,void * p,PetscInt * n,PetscDataType * type,int * ierr)73f253e43cSLisandro Dalcin PETSC_EXTERN void petscbinarywritecomplex1_(int *fd, void *p, PetscInt *n, PetscDataType *type, int *ierr)
74a9acdec7SBarry Smith {
75f253e43cSLisandro Dalcin *ierr = PetscBinaryWrite(*fd, p, *n, *type);
76a9acdec7SBarry Smith }
77a9acdec7SBarry Smith
petscbinaryreadint_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)7819caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadint_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
79a9acdec7SBarry Smith {
80a9acdec7SBarry Smith CHKFORTRANNULLINTEGER(count);
815975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
825975b3b6SBarry Smith if (*ierr) return;
83a9acdec7SBarry Smith }
84a9acdec7SBarry Smith
petscbinaryreadreal_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)8519caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadreal_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
86a9acdec7SBarry Smith {
87a9acdec7SBarry Smith CHKFORTRANNULLINTEGER(count);
885975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
895975b3b6SBarry Smith if (*ierr) return;
90a9acdec7SBarry Smith }
91a9acdec7SBarry Smith
petscbinaryreadcomplex_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)9219caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadcomplex_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
93a9acdec7SBarry Smith {
94a9acdec7SBarry Smith CHKFORTRANNULLINTEGER(count);
955975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
965975b3b6SBarry Smith if (*ierr) return;
97a9acdec7SBarry Smith }
98a9acdec7SBarry Smith
petscbinaryreadint1_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)9919caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadint1_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
100a9acdec7SBarry Smith {
101a9acdec7SBarry Smith CHKFORTRANNULLINTEGER(count);
1025975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1035975b3b6SBarry Smith if (*ierr) return;
104a9acdec7SBarry Smith }
105a9acdec7SBarry Smith
petscbinaryreadreal1_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)10619caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadreal1_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
107a9acdec7SBarry Smith {
108a9acdec7SBarry Smith CHKFORTRANNULLINTEGER(count);
1095975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1105975b3b6SBarry Smith if (*ierr) return;
111a9acdec7SBarry Smith }
112a9acdec7SBarry Smith
petscbinaryreadcomplex1_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)11319caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadcomplex1_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
1149860990eSLisandro Dalcin {
1159860990eSLisandro Dalcin CHKFORTRANNULLINTEGER(count);
1165975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1175975b3b6SBarry Smith if (*ierr) return;
1189860990eSLisandro Dalcin }
1199860990eSLisandro Dalcin
petscbinaryreadintcnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)12019caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadintcnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
12118d1adefSBarry Smith {
12218d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1235975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1245975b3b6SBarry Smith if (*ierr) return;
12518d1adefSBarry Smith }
12618d1adefSBarry Smith
petscbinaryreadrealcnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)12719caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadrealcnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
12818d1adefSBarry Smith {
12918d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1305975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1315975b3b6SBarry Smith if (*ierr) return;
13218d1adefSBarry Smith }
13318d1adefSBarry Smith
petscbinaryreadcomplexcnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)13419caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadcomplexcnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
13518d1adefSBarry Smith {
13618d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1375975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1385975b3b6SBarry Smith if (*ierr) return;
13918d1adefSBarry Smith }
14018d1adefSBarry Smith
petscbinaryreadint1cnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)14119caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadint1cnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
14218d1adefSBarry Smith {
14318d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1445975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1455975b3b6SBarry Smith if (*ierr) return;
14618d1adefSBarry Smith }
14718d1adefSBarry Smith
petscbinaryreadreal1cnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)14819caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadreal1cnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
14918d1adefSBarry Smith {
15018d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1515975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1525975b3b6SBarry Smith if (*ierr) return;
15318d1adefSBarry Smith }
15418d1adefSBarry Smith
petscbinaryreadcomplex1cnt_(int * fd,void * data,PetscInt * num,PetscInt * count,PetscDataType * type,int * ierr)15519caf8f3SSatish Balay PETSC_EXTERN void petscbinaryreadcomplex1cnt_(int *fd, void *data, PetscInt *num, PetscInt *count, PetscDataType *type, int *ierr)
15618d1adefSBarry Smith {
15718d1adefSBarry Smith CHKFORTRANNULLINTEGER(count);
1585975b3b6SBarry Smith *ierr = PetscBinaryRead(*fd, data, *num, count, *type);
1595975b3b6SBarry Smith if (*ierr) return;
16018d1adefSBarry Smith }
16118d1adefSBarry Smith
16218d1adefSBarry Smith #if defined(__cplusplus)
16318d1adefSBarry Smith }
16418d1adefSBarry Smith #endif
165