xref: /petsc/src/sys/objects/pgname.c (revision 8ea61f2e51d4708355e25e4061fd2042df7ba4b4)
1af0996ceSBarry Smith #include <petsc/private/petscimpl.h> /*I    "petscsys.h"   I*/
2e5c89e4eSSatish Balay 
3e5c89e4eSSatish Balay /*@C
4e5c89e4eSSatish Balay   PetscObjectGetName - Gets a string name associated with a PETSc object.
5e5c89e4eSSatish Balay 
6*8ea61f2eSBarry Smith   Not Collective unless `obj` has not yet been named
7e5c89e4eSSatish Balay 
8e5c89e4eSSatish Balay   Input Parameters:
9*8ea61f2eSBarry Smith + obj  - the PETSc variable
10811af0c4SBarry Smith          Thus must be cast with a (`PetscObject`), for example,
11811af0c4SBarry Smith          `PetscObjectGetName`((`PetscObject`)mat,&name);
12*8ea61f2eSBarry Smith - name - the name associated with `obj`
13*8ea61f2eSBarry Smith 
14*8ea61f2eSBarry Smith   Level: intermediate
15e5c89e4eSSatish Balay 
16811af0c4SBarry Smith   Note:
17811af0c4SBarry Smith   Calls `PetscObjectName()` if a name has not yet been provided to the object.
18343722f2SBarry Smith 
1921532e8aSBarry Smith .seealso: `PetscObjectSetName()`, `PetscObjectName()`, `PetscObject`, `PetscObjectGetId()`
20e5c89e4eSSatish Balay @*/
21d71ae5a4SJacob Faibussowitsch PetscErrorCode PetscObjectGetName(PetscObject obj, const char *name[])
22d71ae5a4SJacob Faibussowitsch {
23e5c89e4eSSatish Balay   PetscFunctionBegin;
243cfa8680SLisandro Dalcin   PetscValidHeader(obj, 1);
254f572ea9SToby Isaac   PetscAssertPointer(name, 2);
269566063dSJacob Faibussowitsch   PetscCall(PetscObjectName(obj));
27e5c89e4eSSatish Balay   *name = obj->name;
283ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
29e5c89e4eSSatish Balay }
30