17d0a6c19SBarry Smith 2c6db04a5SJed Brown #include <petscpf.h> /*I "petscpf.h" I*/ 30f51fdf8SToby Isaac #include <../src/vec/pf/pfimpl.h> 4292f8084SBarry Smith 58cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Constant(PF, void *); 68cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_String(PF, void *); 78cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Quick(PF, void *); 88cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Identity(PF, void *); 9d1e78c4fSBarry Smith #if defined(PETSC_HAVE_MATLAB) 108cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Matlab(PF, void *); 11292f8084SBarry Smith #endif 12292f8084SBarry Smith 13292f8084SBarry Smith /*@C 14292f8084SBarry Smith PFRegisterAll - Registers all of the preconditioners in the PF package. 15292f8084SBarry Smith 16292f8084SBarry Smith Not Collective 17292f8084SBarry Smith 18292f8084SBarry Smith Level: advanced 19292f8084SBarry Smith 20db781477SPatrick Sanan .seealso: `PFRegister()`, `PFRegisterDestroy()` 21292f8084SBarry Smith @*/ 22d71ae5a4SJacob Faibussowitsch PetscErrorCode PFRegisterAll(void) 23d71ae5a4SJacob Faibussowitsch { 24292f8084SBarry Smith PetscFunctionBegin; 25*3ba16761SJacob Faibussowitsch if (PFRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS); 26292f8084SBarry Smith PFRegisterAllCalled = PETSC_TRUE; 27292f8084SBarry Smith 289566063dSJacob Faibussowitsch PetscCall(PFRegister(PFCONSTANT, PFCreate_Constant)); 299566063dSJacob Faibussowitsch PetscCall(PFRegister(PFSTRING, PFCreate_String)); 309566063dSJacob Faibussowitsch PetscCall(PFRegister(PFQUICK, PFCreate_Quick)); 319566063dSJacob Faibussowitsch PetscCall(PFRegister(PFIDENTITY, PFCreate_Identity)); 32d1e78c4fSBarry Smith #if defined(PETSC_HAVE_MATLAB) 339566063dSJacob Faibussowitsch PetscCall(PFRegister(PFMATLAB, PFCreate_Matlab)); 34292f8084SBarry Smith #endif 35*3ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS); 36292f8084SBarry Smith } 37