Actual source code: ex8f90.F90
1: !
2: ! Example of getting an enum value from the options database in Fortran
4: #include "petsc/finclude/petsc.h"
5: use petsc
6: implicit none
8: PetscErrorCode :: ierr
9: Character(len=99) list1(6)
10: PetscEnum :: opt = -1
11: PetscBool :: set = PETSC_FALSE
13: PetscCallA(PetscInitialize(ierr))
14: list1(1) = 'a123'
15: list1(2) = 'b456'
16: list1(3) = 'c789'
17: list1(4) = 'list1'
18: list1(5) = 'prefix_'
19: list1(6) = ''
21: write (*, 20) list1(1)
22: 20 format(A99)
23: PetscCallA(PetscOptionsGetEnum(PETSC_NULL_OPTIONS, 'joe_', '-jeff', list1, opt, set, ierr))
24: write (*, *) 'opt is ', opt
25: write (*, *) 'set is ', set
27: PetscCallA(PetscFinalize(ierr))
28: end
30: !
31: !/*TEST
32: !
33: ! build:
34: ! requires: defined(PETSC_USING_F2003) defined(PETSC_USING_F90FREEFORM)
35: !
36: ! test:
37: ! args: -joe_jeff b456
38: !
39: !TEST*/