petsc-3.3-p7 2013-05-11

PetscOListRemoveReference

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

Synopsis

PetscErrorCode  PetscOListRemoveReference(PetscOList *fl,const char name[])

Input Parameters

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

Notes: Use PetscOListAdd(PetscOList,const char name[],PETSC_NULL) to truly remove the object from the list

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

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

See Also

PetscOListDestroy(), PetscOListFind(), PetscOListDuplicate(), PetscOListReverseFind(), PetscOListDuplicate(), PetscOListAdd()

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