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