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_Standard(Vec); 8 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_Shared(Vec); 9 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_FETI(Vec); 10 #if defined(PETSC_HAVE_CUDA) 11 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_SeqCUDA(Vec); 12 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_MPICUDA(Vec); 13 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_CUDA(Vec); 14 #endif 15 #if 0 16 #if defined(PETSC_HAVE_SIEVE) 17 EXTERN PetscErrorCode PETSCVEC_DLLEXPORT VecCreate_Sieve(Vec); 18 #endif 19 #endif 20 EXTERN_C_END 21 22 #undef __FUNCT__ 23 #define __FUNCT__ "VecRegisterAll" 24 /*@C 25 VecRegisterAll - Registers all of the vector components in the Vec package. 26 27 Not Collective 28 29 Input parameter: 30 . path - The dynamic library path 31 32 Level: advanced 33 34 .keywords: Vec, register, all 35 .seealso: VecRegister(), VecRegisterDestroy(), VecRegisterDynamic() 36 @*/ 37 PetscErrorCode PETSCVEC_DLLEXPORT VecRegisterAll(const char path[]) 38 { 39 PetscErrorCode ierr; 40 41 PetscFunctionBegin; 42 VecRegisterAllCalled = PETSC_TRUE; 43 44 ierr = VecRegisterDynamic(VECSEQ, path, "VecCreate_Seq", VecCreate_Seq);CHKERRQ(ierr); 45 ierr = VecRegisterDynamic(VECMPI, path, "VecCreate_MPI", VecCreate_MPI);CHKERRQ(ierr); 46 ierr = VecRegisterDynamic(VECSTANDARD, path, "VecCreate_Standard", VecCreate_Standard);CHKERRQ(ierr); 47 ierr = VecRegisterDynamic(VECSHARED, path, "VecCreate_Shared", VecCreate_Shared);CHKERRQ(ierr); 48 ierr = VecRegisterDynamic(VECFETI, path, "VecCreate_FETI", VecCreate_FETI);CHKERRQ(ierr); 49 #if defined PETSC_HAVE_CUDA 50 ierr = VecRegisterDynamic(VECSEQCUDA, path, "VecCreate_SeqCUDA", VecCreate_SeqCUDA);CHKERRQ(ierr); 51 ierr = VecRegisterDynamic(VECMPICUDA, path, "VecCreate_MPICUDA", VecCreate_MPICUDA);CHKERRQ(ierr); 52 ierr = VecRegisterDynamic(VECCUDA, path, "VecCreate_CUDA", VecCreate_CUDA);CHKERRQ(ierr); 53 #endif 54 #if 0 55 #if defined(PETSC_HAVE_SIEVE) 56 ierr = VecRegisterDynamic(VECSIEVE, path, "VecCreate_Sieve", VecCreate_Sieve);CHKERRQ(ierr); 57 #endif 58 #endif 59 PetscFunctionReturn(0); 60 } 61 62