1: #include <petsc/private/characteristicimpl.h>  /*I "petsccharacteristic.h" I*/
  3: PETSC_EXTERN PetscErrorCode CharacteristicCreate_DA(Characteristic);
  5: /*
  6:     This is used by CharacteristicSetType() to make sure that at least one
  7:     CharacteristicRegisterAll() is called. In general, if there is more than one
  8:     DLL, then CharacteristicRegisterAll() may be called several times.
  9: */
 10: extern PetscBool CharacteristicRegisterAllCalled;
 14: /*@C
 15:   CharacteristicRegisterAll - Registers all of the Krylov subspace methods in the Characteristic package.
 17:   Not Collective
 19:   Level: advanced
 21: .keywords: Characteristic, register, all
 23: .seealso:  CharacteristicRegisterDestroy()
 24: @*/
 25: PetscErrorCode CharacteristicRegisterAll(void)
 26: {
 30:   if (CharacteristicRegisterAllCalled) return(0);
 31:   CharacteristicRegisterAllCalled = PETSC_TRUE;
 33:   CharacteristicRegister(CHARACTERISTICDA,  CharacteristicCreate_DA);
 34:   return(0);
 35: }