petsc-3.7.1 2016-05-15
Report Typos and Errors

PetscObjectListRemoveReference

Calls PetscObjectDereference() on an object in the list immediately but keeps a pointer to the object in the list.

Synopsis

PetscErrorCode  PetscObjectListRemoveReference(PetscObjectList *fl,const char name[])

Input Parameters

fl - the object list Many br
name - the name to use for the object Many br

Many br

Notes: Use PetscObjectListAdd(PetscObjectList,const char name[],NULL) to truly remove the object from the list Many br

Use this routine ONLY if you know that the object referenced will remain in existence until the pointing object is destroyed Many br

Developer Note: this is to handle some cases that otherwise would result in having circular references so reference counts never got to zero Many br

See Also

PetscObjectListDestroy(), PetscObjectListFind(), PetscObjectListDuplicate(), PetscObjectListReverseFind(), PetscObjectListDuplicate(), PetscObjectListAdd()

Level:developer
Location:
src/sys/objects/olist.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages