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