:orphan: # PetscOptionsGetEnum Gets the enum value for a particular option in the database. ## Synopsis ``` #include "petscsys.h" PetscErrorCode PetscOptionsGetEnum(PetscOptions options, const char pre[], const char opt[], const char *const *list, PetscEnum *value, PetscBool *set) ``` Not Collective ## Input Parameters - ***options -*** options database, use `NULL` for default global database - ***pre -*** option prefix or `NULL` - ***opt -*** option name - ***list -*** array containing the list of choices, followed by the enum name, followed by the enum prefix, followed by a null ## Output Parameters - ***value -*** the value to return - ***set -*** `PETSC_TRUE` if found, else `PETSC_FALSE` ## Notes If the user does not supply the option value is NOT changed. Thus you should ALWAYS initialize the ivalue if you access it without first checking if the set flag is true. List is usually something like `PCASMTypes` or some other predefined list of enum names ## See Also `PetscOptionsGetReal()`, `PetscOptionsHasName()`, `PetscOptionsGetString()`, `PetscOptionsGetInt()`, `PetscOptionsGetIntArray()`, `PetscOptionsGetRealArray()`, `PetscOptionsBool()` `PetscOptionsInt()`, `PetscOptionsString()`, `PetscOptionsReal()`, `PetscOptionsBool()`, `PetscOptionsName()`, `PetscOptionsBegin()`, `PetscOptionsEnd()`, `PetscOptionsHeadBegin()`, `PetscOptionsStringArray()`, `PetscOptionsRealArray()`, `PetscOptionsScalar()`, `PetscOptionsBoolGroupBegin()`, `PetscOptionsBoolGroup()`, `PetscOptionsBoolGroupEnd()`, `PetscOptionsFList()`, `PetscOptionsEList()`, `PetscOptionsGetEList()`, `PetscOptionsEnum()` ## Level beginner ## Location src/sys/objects/options.c ## Examples src/mat/tutorials/ex10.c
src/sys/tutorials/ex8f90.F90
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/objects/options.c) [Index of all Sys routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)