Actual source code: gtype.c


  2: /*
  3:      Provides utility routines for manulating any type of PETSc object.
  4: */
  5: #include <petsc/private/petscimpl.h>

  7: /*@C
  8:    PetscObjectGetType - Gets the object type of any `PetscObject`.

 10:    Not Collective

 12:    Input Parameter:
 13: .  obj - any PETSc object, for example a `Vec`, `Mat` or `KSP`.
 14:          Thus must be cast with a (`PetscObject`), for example,
 15:          `PetscObjectGetType`((`PetscObject`)mat,&type);

 17:    Output Parameter:
 18: .  type - the object type, for example, `MATSEQAIJ`

 20:    Level: advanced

 22: .seealso: `PetscObject`, `PetscClassId`, `PetscObjectGetClassName()`
 23: @*/
 24: PetscErrorCode PetscObjectGetType(PetscObject obj, const char *type[])
 25: {
 28:   *type = obj->type_name;
 29:   return 0;
 30: }