xref: /petsc/src/sys/objects/pgname.c (revision 55e7fe800d976e85ed2b5cd8bfdef564daa37bd9)
1 
2 #include <petsc/private/petscimpl.h>        /*I    "petscsys.h"   I*/
3 
4 /*@C
5    PetscObjectGetName - Gets a string name associated with a PETSc object.
6 
7    Not Collective unless object has not been named yet
8 
9    Input Parameters:
10 +  obj - the Petsc variable
11          Thus must be cast with a (PetscObject), for example,
12          PetscObjectGetName((PetscObject)mat,&name);
13 -  name - the name associated with obj
14 
15    Notes:
16     Calls PetscObjectName() if a name has not yet been provided to the object.
17 
18    Level: intermediate
19 
20    Concepts: object name
21 
22 .seealso: PetscObjectSetName(), PetscObjectName()
23 @*/
24 PetscErrorCode  PetscObjectGetName(PetscObject obj,const char *name[])
25 {
26   PetscErrorCode ierr;
27 
28   PetscFunctionBegin;
29   PetscValidHeader(obj,1);
30   PetscValidPointer(name,2);
31   ierr  = PetscObjectName(obj);CHKERRQ(ierr);
32   *name = obj->name;
33   PetscFunctionReturn(0);
34 }
35 
36