Actual source code: vecregall.c
petsc-3.3-p5 2012-12-01
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_PTHREADCLASSES)
9: extern PetscErrorCode VecCreate_SeqPThread(Vec);
10: extern PetscErrorCode VecCreate_MPIPThread(Vec);
11: extern PetscErrorCode VecCreate_PThread(Vec);
12: #endif
13: #if defined(PETSC_HAVE_CUSP)
14: extern PetscErrorCode VecCreate_SeqCUSP(Vec);
15: extern PetscErrorCode VecCreate_MPICUSP(Vec);
16: extern PetscErrorCode VecCreate_CUSP(Vec);
17: #endif
18: #if 0
19: #if defined(PETSC_HAVE_SIEVE)
20: extern PetscErrorCode VecCreate_Sieve(Vec);
21: #endif
22: #endif
23: EXTERN_C_END
27: /*@C
28: VecRegisterAll - Registers all of the vector components in the Vec package.
30: Not Collective
32: Input parameter:
33: . path - The dynamic library path
35: Level: advanced
37: .keywords: Vec, register, all
38: .seealso: VecRegister(), VecRegisterDestroy(), VecRegisterDynamic()
39: @*/
40: PetscErrorCode VecRegisterAll(const char path[])
41: {
45: VecRegisterAllCalled = PETSC_TRUE;
47: VecRegisterDynamic(VECSEQ, path, "VecCreate_Seq", VecCreate_Seq);
48: VecRegisterDynamic(VECMPI, path, "VecCreate_MPI", VecCreate_MPI);
49: VecRegisterDynamic(VECSTANDARD, path, "VecCreate_Standard", VecCreate_Standard);
50: VecRegisterDynamic(VECSHARED, path, "VecCreate_Shared", VecCreate_Shared);
51: #if defined(PETSC_HAVE_PTHREADCLASSES)
52: VecRegisterDynamic(VECSEQPTHREAD,path, "VecCreate_SeqPThread", VecCreate_SeqPThread);
53: VecRegisterDynamic(VECMPIPTHREAD,path, "VecCreate_MPIPThread", VecCreate_MPIPThread);
54: VecRegisterDynamic(VECPTHREAD, path, "VecCreate_PThread", VecCreate_PThread);
55: #endif
56: #if defined PETSC_HAVE_CUSP
57: VecRegisterDynamic(VECSEQCUSP, path, "VecCreate_SeqCUSP", VecCreate_SeqCUSP);
58: VecRegisterDynamic(VECMPICUSP, path, "VecCreate_MPICUSP", VecCreate_MPICUSP);
59: VecRegisterDynamic(VECCUSP, path, "VecCreate_CUSP", VecCreate_CUSP);
60: #endif
61: #if 0
62: #if defined(PETSC_HAVE_SIEVE)
63: VecRegisterDynamic(VECSIEVE, path, "VecCreate_Sieve", VecCreate_Sieve);
64: #endif
65: #endif
66: return(0);
67: }