Actual source code: vecreg.c
1: /*$Id: vecreg.c,v 1.20 2001/03/23 23:21:18 balay Exp $*/
3: #include "src/vec/vecimpl.h" /*I "petscvec.h" I*/
5: EXTERN_C_BEGIN
6: EXTERN int VecCreate_Seq(Vec);
7: EXTERN int VecCreate_MPI(Vec);
8: EXTERN int VecCreate_FETI(Vec);
9: EXTERN int VecCreate_Shared(Vec);
10: EXTERN_C_END
13: /*
14: This is used by VecCreate() to make sure that at least one
15: VecRegisterAll() is called. In general, if there is more than one
16: DLL, then VecRegisterAll() may be called several times.
17: */
18: extern PetscTruth VecRegisterAllCalled;
20: /*@C
21: VecRegisterAll - Registers all of the Vec components in the PETSc package.
23: Not Collective
25: Level: advanced
27: .seealso: VecRegisterDestroy()
28: @*/
29: int VecRegisterAll(const char path[])
30: {
34: VecRegisterAllCalled = PETSC_TRUE;
36: VecRegisterDynamic(VEC_MPI, path,"VecCreate_MPI", VecCreate_MPI);
37: VecRegisterDynamic(VEC_SHARED, path,"VecCreate_Shared", VecCreate_Shared);
38: VecRegisterDynamic(VEC_SEQ, path,"VecCreate_Seq", VecCreate_Seq);
39: VecRegisterDynamic(VEC_FETI, path,"VecCreate_FETI", VecCreate_FETI);
40: return(0);
41: }