xref: /petsc/src/vec/vec/interface/vecregall.c (revision a95d84e0230cb0d652d808aead973c41ec535430)
1 
2 #include <petscvec.h>
3 PETSC_EXTERN PetscErrorCode VecCreate_Seq(Vec);
4 PETSC_EXTERN PetscErrorCode VecCreate_MPI(Vec);
5 PETSC_EXTERN PetscErrorCode VecCreate_Standard(Vec);
6 PETSC_EXTERN PetscErrorCode VecCreate_Shared(Vec);
7 #if defined(PETSC_HAVE_CUSP)
8 PETSC_EXTERN PetscErrorCode VecCreate_SeqCUSP(Vec);
9 PETSC_EXTERN PetscErrorCode VecCreate_MPICUSP(Vec);
10 PETSC_EXTERN PetscErrorCode VecCreate_CUSP(Vec);
11 #endif
12 #if defined(PETSC_HAVE_VIENNACL)
13 PETSC_EXTERN PetscErrorCode VecCreate_SeqViennaCL(Vec);
14 PETSC_EXTERN PetscErrorCode VecCreate_MPIViennaCL(Vec);
15 PETSC_EXTERN PetscErrorCode VecCreate_ViennaCL(Vec);
16 #endif
17 
18 #undef __FUNCT__
19 #define __FUNCT__ "VecRegisterAll"
20 /*@C
21   VecRegisterAll - Registers all of the vector components in the Vec package.
22 
23   Not Collective
24 
25   Level: advanced
26 
27 .keywords: Vec, register, all
28 .seealso:  VecRegister(), VecRegisterDestroy(), VecRegister()
29 @*/
30 PetscErrorCode  VecRegisterAll(void)
31 {
32   PetscErrorCode ierr;
33 
34   PetscFunctionBegin;
35   VecRegisterAllCalled = PETSC_TRUE;
36 
37   ierr = VecRegister(VECSEQ,        VecCreate_Seq);CHKERRQ(ierr);
38   ierr = VecRegister(VECMPI,        VecCreate_MPI);CHKERRQ(ierr);
39   ierr = VecRegister(VECSTANDARD,   VecCreate_Standard);CHKERRQ(ierr);
40   ierr = VecRegister(VECSHARED,     VecCreate_Shared);CHKERRQ(ierr);
41 #if defined PETSC_HAVE_CUSP
42   ierr = VecRegister(VECSEQCUSP,    VecCreate_SeqCUSP);CHKERRQ(ierr);
43   ierr = VecRegister(VECMPICUSP,    VecCreate_MPICUSP);CHKERRQ(ierr);
44   ierr = VecRegister(VECCUSP,       VecCreate_CUSP);CHKERRQ(ierr);
45 #endif
46 #if defined PETSC_HAVE_VIENNACL
47   ierr = VecRegister(VECSEQVIENNACL,    VecCreate_SeqViennaCL);CHKERRQ(ierr);
48   ierr = VecRegister(VECMPIVIENNACL,    VecCreate_MPIViennaCL);CHKERRQ(ierr);
49   ierr = VecRegister(VECVIENNACL,       VecCreate_ViennaCL);CHKERRQ(ierr);
50 #endif
51   PetscFunctionReturn(0);
52 }
53 
54