# PetscObjectSetState

Sets the state of any PetscObject, regardless of the type.

### Synopsis

    #include "petsc.h"
    PetscErrorCode PETSC_DLLEXPORT PetscObjectSetState(PetscObject obj,PetscInt state)

Not Collective

### Input Parameter

| obj | - any PETSc object, for example a Vec, Mat or KSP. This must be cast with a (PetscObject), for example, PetscObjectSetState((PetscObject)mat,state);
| state | - the object state

Notes: This function should be used with extreme caution. There is essentially only one use for it: if the user calls Mat(Vec)GetRow(Array), which increases the state, but does not alter the data, then this routine can be used to reset the state.

seealso: PetscObjectStateQuery,PetscObjectStateIncrease

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