1 2 #include <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_PThread(Vec); 11 #endif 12 #if defined(PETSC_HAVE_CUSP) 13 extern PetscErrorCode VecCreate_SeqCUSP(Vec); 14 extern PetscErrorCode VecCreate_MPICUSP(Vec); 15 extern PetscErrorCode VecCreate_CUSP(Vec); 16 #endif 17 #if 0 18 #if defined(PETSC_HAVE_SIEVE) 19 extern PetscErrorCode VecCreate_Sieve(Vec); 20 #endif 21 #endif 22 EXTERN_C_END 23 24 #undef __FUNCT__ 25 #define __FUNCT__ "VecRegisterAll" 26 /*@C 27 VecRegisterAll - Registers all of the vector components in the Vec package. 28 29 Not Collective 30 31 Input parameter: 32 . path - The dynamic library path 33 34 Level: advanced 35 36 .keywords: Vec, register, all 37 .seealso: VecRegister(), VecRegisterDestroy(), VecRegisterDynamic() 38 @*/ 39 PetscErrorCode VecRegisterAll(const char path[]) 40 { 41 PetscErrorCode ierr; 42 43 PetscFunctionBegin; 44 VecRegisterAllCalled = PETSC_TRUE; 45 46 ierr = VecRegisterDynamic(VECSEQ, path, "VecCreate_Seq", VecCreate_Seq);CHKERRQ(ierr); 47 ierr = VecRegisterDynamic(VECMPI, path, "VecCreate_MPI", VecCreate_MPI);CHKERRQ(ierr); 48 ierr = VecRegisterDynamic(VECSTANDARD, path, "VecCreate_Standard", VecCreate_Standard);CHKERRQ(ierr); 49 ierr = VecRegisterDynamic(VECSHARED, path, "VecCreate_Shared", VecCreate_Shared);CHKERRQ(ierr); 50 #if defined(PETSC_HAVE_PTHREADCLASSES) 51 ierr = VecRegisterDynamic(VECSEQPTHREAD,path, "VecCreate_SeqPThread",VecCreate_SeqPThread);CHKERRQ(ierr); 52 ierr = VecRegisterDynamic(VECPTHREAD, path, "VecCreate_PThread", VecCreate_PThread);CHKERRQ(ierr); 53 #endif 54 #if defined PETSC_HAVE_CUSP 55 ierr = VecRegisterDynamic(VECSEQCUSP, path, "VecCreate_SeqCUSP", VecCreate_SeqCUSP);CHKERRQ(ierr); 56 ierr = VecRegisterDynamic(VECMPICUSP, path, "VecCreate_MPICUSP", VecCreate_MPICUSP);CHKERRQ(ierr); 57 ierr = VecRegisterDynamic(VECCUSP, path, "VecCreate_CUSP", VecCreate_CUSP);CHKERRQ(ierr); 58 #endif 59 #if 0 60 #if defined(PETSC_HAVE_SIEVE) 61 ierr = VecRegisterDynamic(VECSIEVE, path, "VecCreate_Sieve", VecCreate_Sieve);CHKERRQ(ierr); 62 #endif 63 #endif 64 PetscFunctionReturn(0); 65 } 66 67