xref: /petsc/src/vec/vec/interface/vecregall.c (revision 96fc60bc8467e312da823a9b847d0ecaf36ab221)
1 #define PETSCVEC_DLL
2 
3 #include "private/vecimpl.h"     /*I  "vec.h"  I*/
4 EXTERN_C_BEGIN
5 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_Seq(Vec);
6 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_MPI(Vec);
7 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_Shared(Vec);
8 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_FETI(Vec);
9 #if 0
10 #if defined(PETSC_HAVE_SIEVE)
11 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_Sieve(Vec);
12 #endif
13 #endif
14 EXTERN_C_END
15 
16 #undef __FUNCT__
17 #define __FUNCT__ "VecRegisterAll"
18 /*@C
19   VecRegisterAll - Registers all of the vector components in the Vec package.
20 
21   Not Collective
22 
23   Input parameter:
24 . path - The dynamic library path
25 
26   Level: advanced
27 
28 .keywords: Vec, register, all
29 .seealso:  VecRegister(), VecRegisterDestroy(), VecRegisterDynamic()
30 @*/
31 PetscErrorCode PETSCVEC_DLLEXPORT VecRegisterAll(const char path[])
32 {
33   PetscErrorCode ierr;
34 
35   PetscFunctionBegin;
36   VecRegisterAllCalled = PETSC_TRUE;
37 
38   ierr = VecRegisterDynamic(VECSEQ,      path, "VecCreate_Seq",      VecCreate_Seq);CHKERRQ(ierr);
39   ierr = VecRegisterDynamic(VECMPI,      path, "VecCreate_MPI",      VecCreate_MPI);CHKERRQ(ierr);
40   ierr = VecRegisterDynamic(VECSHARED,   path, "VecCreate_Shared",   VecCreate_Shared);CHKERRQ(ierr);
41   ierr = VecRegisterDynamic(VECFETI,     path, "VecCreate_FETI",     VecCreate_FETI);CHKERRQ(ierr);
42 #if 0
43 #if defined(PETSC_HAVE_SIEVE)
44   ierr = VecRegisterDynamic(VECSIEVE,    path, "VecCreate_Sieve",    VecCreate_Sieve);CHKERRQ(ierr);
45 #endif
46 #endif
47   PetscFunctionReturn(0);
48 }
49 
50