xref: /petsc/src/sys/objects/pgname.c (revision 9371c9d470a9602b6d10a8bf50c9b2280a79e45a)
1e5c89e4eSSatish Balay 
2af0996ceSBarry Smith #include <petsc/private/petscimpl.h> /*I    "petscsys.h"   I*/
3e5c89e4eSSatish Balay 
4e5c89e4eSSatish Balay /*@C
5e5c89e4eSSatish Balay    PetscObjectGetName - Gets a string name associated with a PETSc object.
6e5c89e4eSSatish Balay 
7199a6bf1SJed Brown    Not Collective unless object has not been named yet
8e5c89e4eSSatish Balay 
9e5c89e4eSSatish Balay    Input Parameters:
10e5c89e4eSSatish Balay +  obj - the Petsc variable
11e5c89e4eSSatish Balay          Thus must be cast with a (PetscObject), for example,
12e5c89e4eSSatish Balay          PetscObjectGetName((PetscObject)mat,&name);
13e5c89e4eSSatish Balay -  name - the name associated with obj
14e5c89e4eSSatish Balay 
1595452b02SPatrick Sanan    Notes:
1695452b02SPatrick Sanan     Calls PetscObjectName() if a name has not yet been provided to the object.
17343722f2SBarry Smith 
18e5c89e4eSSatish Balay    Level: intermediate
19e5c89e4eSSatish Balay 
20db781477SPatrick Sanan .seealso: `PetscObjectSetName()`, `PetscObjectName()`
21e5c89e4eSSatish Balay @*/
22*9371c9d4SSatish Balay PetscErrorCode PetscObjectGetName(PetscObject obj, const char *name[]) {
23e5c89e4eSSatish Balay   PetscFunctionBegin;
243cfa8680SLisandro Dalcin   PetscValidHeader(obj, 1);
253cfa8680SLisandro Dalcin   PetscValidPointer(name, 2);
269566063dSJacob Faibussowitsch   PetscCall(PetscObjectName(obj));
27e5c89e4eSSatish Balay   *name = obj->name;
28e5c89e4eSSatish Balay   PetscFunctionReturn(0);
29e5c89e4eSSatish Balay }
30