19f6c5813SMatthew G. Knepley #include <petsc/private/dmlabelimpl.h> /*I "petscdmlabelephemeral.h" I*/ 29f6c5813SMatthew G. Knepley #include <petscdmlabelephemeral.h> /*I "petscdmplextransform.h" I*/ 39f6c5813SMatthew G. Knepley 49f6c5813SMatthew G. Knepley /*@ 59f6c5813SMatthew G. Knepley DMLabelEphemeralGetTransform - Get the transform for this ephemeral label 69f6c5813SMatthew G. Knepley 79f6c5813SMatthew G. Knepley Not collective 89f6c5813SMatthew G. Knepley 99f6c5813SMatthew G. Knepley Input Parameter: 109f6c5813SMatthew G. Knepley . label - the DMLabel 119f6c5813SMatthew G. Knepley 129f6c5813SMatthew G. Knepley Output Paramater: 139f6c5813SMatthew G. Knepley . tr - the transform for this ephemeral label 149f6c5813SMatthew G. Knepley 159f6c5813SMatthew G. Knepley Note: 169f6c5813SMatthew G. Knepley Ephemeral labels are produced automatically from a base label and a `DMPlexTransform`. 179f6c5813SMatthew G. Knepley 189f6c5813SMatthew G. Knepley Level: intermediate 199f6c5813SMatthew G. Knepley 209f6c5813SMatthew G. Knepley .seealso: `DMLabelEphemeralSetTransform()`, `DMLabelEphemeralGetLabel()`, `DMLabelSetType()` 219f6c5813SMatthew G. Knepley @*/ 229f6c5813SMatthew G. Knepley PetscErrorCode DMLabelEphemeralGetTransform(DMLabel label, DMPlexTransform *tr) 239f6c5813SMatthew G. Knepley { 249f6c5813SMatthew G. Knepley PetscFunctionBegin; 259f6c5813SMatthew G. Knepley PetscCall(PetscObjectQuery((PetscObject)label, "__transform__", (PetscObject *)tr)); 26*3ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS); 279f6c5813SMatthew G. Knepley } 289f6c5813SMatthew G. Knepley 299f6c5813SMatthew G. Knepley /*@ 309f6c5813SMatthew G. Knepley DMLabelEphemeralSetTransform - Set the transform for this ephemeral label 319f6c5813SMatthew G. Knepley 329f6c5813SMatthew G. Knepley Not collective 339f6c5813SMatthew G. Knepley 349f6c5813SMatthew G. Knepley Input Parameters: 359f6c5813SMatthew G. Knepley + label - the DMLabel 369f6c5813SMatthew G. Knepley - tr - the transform for this ephemeral label 379f6c5813SMatthew G. Knepley 389f6c5813SMatthew G. Knepley Note: 399f6c5813SMatthew G. Knepley Ephemeral labels are produced automatically from a base label and a `DMPlexTransform`. 409f6c5813SMatthew G. Knepley 419f6c5813SMatthew G. Knepley Level: intermediate 429f6c5813SMatthew G. Knepley 439f6c5813SMatthew G. Knepley .seealso: `DMLabelEphemeralGetTransform()`, `DMLabelEphemeralSetLabel()`, `DMLabelSetType()` 449f6c5813SMatthew G. Knepley @*/ 459f6c5813SMatthew G. Knepley PetscErrorCode DMLabelEphemeralSetTransform(DMLabel label, DMPlexTransform tr) 469f6c5813SMatthew G. Knepley { 479f6c5813SMatthew G. Knepley PetscFunctionBegin; 489f6c5813SMatthew G. Knepley PetscCall(PetscObjectCompose((PetscObject)label, "__transform__", (PetscObject)tr)); 49*3ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS); 509f6c5813SMatthew G. Knepley } 51