1af0996ceSBarry Smith #include <petsc/private/petscimpl.h> /*I "petscsys.h" I*/
2e5c89e4eSSatish Balay
3*ffeef943SBarry Smith /*@
4e5c89e4eSSatish Balay PetscObjectGetName - Gets a string name associated with a PETSc object.
5e5c89e4eSSatish Balay
68ea61f2eSBarry Smith Not Collective unless `obj` has not yet been named
7e5c89e4eSSatish Balay
8e5c89e4eSSatish Balay Input Parameters:
9dde44402SBarry Smith + obj - the PETSc variable. It must be cast with a (`PetscObject`), for example,
10811af0c4SBarry Smith `PetscObjectGetName`((`PetscObject`)mat,&name);
11a3b724e8SBarry Smith - name - the name associated with `obj`, do not free
128ea61f2eSBarry Smith
138ea61f2eSBarry Smith Level: intermediate
14e5c89e4eSSatish Balay
15811af0c4SBarry Smith Note:
16811af0c4SBarry Smith Calls `PetscObjectName()` if a name has not yet been provided to the object.
17343722f2SBarry Smith
1821532e8aSBarry Smith .seealso: `PetscObjectSetName()`, `PetscObjectName()`, `PetscObject`, `PetscObjectGetId()`
19e5c89e4eSSatish Balay @*/
PetscObjectGetName(PetscObject obj,const char * name[])20d71ae5a4SJacob Faibussowitsch PetscErrorCode PetscObjectGetName(PetscObject obj, const char *name[])
21d71ae5a4SJacob Faibussowitsch {
22e5c89e4eSSatish Balay PetscFunctionBegin;
233cfa8680SLisandro Dalcin PetscValidHeader(obj, 1);
244f572ea9SToby Isaac PetscAssertPointer(name, 2);
259566063dSJacob Faibussowitsch PetscCall(PetscObjectName(obj));
26e5c89e4eSSatish Balay *name = obj->name;
273ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
28e5c89e4eSSatish Balay }
29