xref: /petsc/src/sys/objects/pgname.c (revision 5b6bfdb9644f185dbf5e5a09b808ec241507e1e7)
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: Calls PetscObjectName() if a name has not yet been provided to the object.
16 
17    Level: intermediate
18 
19    Concepts: object name
20 
21 .seealso: PetscObjectSetName(), PetscObjectName()
22 @*/
23 PetscErrorCode  PetscObjectGetName(PetscObject obj,const char *name[])
24 {
25   PetscErrorCode ierr;
26 
27   PetscFunctionBegin;
28   PetscValidHeader(obj,1);
29   PetscValidPointer(name,2);
30   ierr  = PetscObjectName(obj);CHKERRQ(ierr);
31   *name = obj->name;
32   PetscFunctionReturn(0);
33 }
34 
35