xref: /petsc/src/vec/pf/interface/pfall.c (revision d71ae5a4db6382e7f06317b8d368875286fe9008)
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 @*/
22*d71ae5a4SJacob Faibussowitsch PetscErrorCode PFRegisterAll(void)
23*d71ae5a4SJacob Faibussowitsch {
24292f8084SBarry Smith   PetscFunctionBegin;
250f51fdf8SToby Isaac   if (PFRegisterAllCalled) PetscFunctionReturn(0);
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
35292f8084SBarry Smith   PetscFunctionReturn(0);
36292f8084SBarry Smith }
37