Actual source code: dlregisrand.c

  1: #define PETSC_DLL

 3:  #include src/sys/random/randomimpl.h
  4: #if defined (PETSC_HAVE_STDLIB_H)
  5: #include <stdlib.h>
  6: #endif

 10: /*@C
 11:   PetscRandomInitializePackage - This function initializes everything in the PetscRandom package. It is called
 12:   from PetscDLLibraryRegister() when using dynamic libraries, and on the first call to PetscRandomCreate()
 13:   when using static libraries.

 15:   Input Parameter:
 16:   path - The dynamic library path, or PETSC_NULL

 18:   Level: developer

 20: .keywords: PetscRandom, initialize, package
 21: .seealso: PetscInitialize()
 22: @*/
 23: PetscErrorCode  PetscRandomInitializePackage(const char path[])
 24: {
 25:   static PetscTruth initialized = PETSC_FALSE;
 26:   PetscErrorCode    ierr;

 29:   if (initialized) return(0);
 30:   initialized = PETSC_TRUE;
 31:   /* Register Class */
 32:   PetscLogClassRegister(&PETSC_RANDOM_COOKIE,"PetscRandom");
 33:   PetscRandomRegisterAll(path);
 34:   return(0);
 35: }