petsc-3.6.2 2015-10-02
Report Typos and Errors

# PetscOptionsEnum

Gets the enum value for a particular option in the database.

### Synopsis

    #include "petscsys.h"
    PetscErrorCode  PetscOptionsEnum_Private(PetscOptions *PetscOptionsObject,const char opt[],const char text[],const char man[],const char *const *list,PetscEnum currentvalue,PetscEnum *value,PetscBool  *set)

Logically Collective on the communicator passed in PetscOptionsBegin()

### Input Parameters

| opt | - option name
| text | - short string that describes the option
| man | - manual page with additional information on option
| list | - array containing the list of choices, followed by the enum name, followed by the enum prefix, followed by a null
| currentvalue | - the current value; caller is responsible for setting this value correctly. Normally this is done with either

                    PetscOptionsEnum(..., obj->value,&object->value,...) or

                    value = defaultvalue

                    PetscOptionsEnum(..., value,&value,&flg);

                    if (flg) {

### Output Parameter

| value | - the value to return
| set | - PETSC_TRUE if found, else PETSC_FALSE

Notes: Must be between a PetscOptionsBegin() and a PetscOptionsEnd()

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(), PetscOptionsHead(), PetscOptionsStringArray(),PetscOptionsRealArray(), PetscOptionsScalar(), PetscOptionsBoolGroupBegin(), PetscOptionsBoolGroup(), PetscOptionsBoolGroupEnd(), PetscOptionsFList(), PetscOptionsEList()

Level:beginner
Location: src/sys/objects/aoptions.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/snes/examples/tutorials/ex15.c.html
src/snes/examples/tutorials/ex48.c.html
src/ts/examples/tutorials/ex9.c.html
src/ts/examples/tutorials/ex10.c.html
src/ts/examples/tutorials/ex11.c.html
src/ts/examples/tutorials/ex14.c.html
src/ts/examples/tutorials/ex17.c.html