Actual source code: pgname.c

  1: #include <petsc/private/petscimpl.h>

  3: /*@C
  4:   PetscObjectGetName - Gets a string name associated with a PETSc object.

  6:   Not Collective unless object has not been named yet

  8:   Input Parameters:
  9: + obj  - the Petsc variable
 10:          Thus must be cast with a (`PetscObject`), for example,
 11:          `PetscObjectGetName`((`PetscObject`)mat,&name);
 12: - name - the name associated with obj

 14:   Note:
 15:   Calls `PetscObjectName()` if a name has not yet been provided to the object.

 17:   Level: intermediate

 19: .seealso: `PetscObjectSetName()`, `PetscObjectName()`, `PetscObject`, `PetscObjectGetId()`
 20: @*/
 21: PetscErrorCode PetscObjectGetName(PetscObject obj, const char *name[])
 22: {
 23:   PetscFunctionBegin;
 25:   PetscAssertPointer(name, 2);
 26:   PetscCall(PetscObjectName(obj));
 27:   *name = obj->name;
 28:   PetscFunctionReturn(PETSC_SUCCESS);
 29: }