xref: /petsc/src/vec/pf/interface/pfall.c (revision 9371c9d470a9602b6d10a8bf50c9b2280a79e45a)
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 *);
9909a696eSBarry Smith #if defined(PETSC_HAVE_MATLAB_ENGINE)
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 @*/
22*9371c9d4SSatish Balay PetscErrorCode PFRegisterAll(void) {
23292f8084SBarry Smith   PetscFunctionBegin;
240f51fdf8SToby Isaac   if (PFRegisterAllCalled) PetscFunctionReturn(0);
25292f8084SBarry Smith   PFRegisterAllCalled = PETSC_TRUE;
26292f8084SBarry Smith 
279566063dSJacob Faibussowitsch   PetscCall(PFRegister(PFCONSTANT, PFCreate_Constant));
289566063dSJacob Faibussowitsch   PetscCall(PFRegister(PFSTRING, PFCreate_String));
299566063dSJacob Faibussowitsch   PetscCall(PFRegister(PFQUICK, PFCreate_Quick));
309566063dSJacob Faibussowitsch   PetscCall(PFRegister(PFIDENTITY, PFCreate_Identity));
31909a696eSBarry Smith #if defined(PETSC_HAVE_MATLAB_ENGINE)
329566063dSJacob Faibussowitsch   PetscCall(PFRegister(PFMATLAB, PFCreate_Matlab));
33292f8084SBarry Smith #endif
34292f8084SBarry Smith   PetscFunctionReturn(0);
35292f8084SBarry Smith }
36