globals.h
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:2k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /*-
  2.  * See the file LICENSE for redistribution information.
  3.  *
  4.  * Copyright (c) 1996-2002
  5.  * Sleepycat Software.  All rights reserved.
  6.  *
  7.  * $Id: globals.h,v 11.1 2002/07/12 18:56:41 bostic Exp $
  8.  */
  9. /*******************************************************
  10.  * Global variables.
  11.  *
  12.  * Held in a single structure to minimize the name-space pollution.
  13.  *******************************************************/
  14. #ifdef HAVE_VXWORKS
  15. #include "semLib.h"
  16. #endif
  17. typedef struct __db_globals {
  18. u_int32_t no_write_errors; /* write error testing disallowed */
  19. #ifdef HAVE_VXWORKS
  20. u_int32_t db_global_init; /* VxWorks: inited */
  21. SEM_ID db_global_lock; /* VxWorks: global semaphore */
  22. #endif
  23. /* XA: list of opened environments. */
  24. TAILQ_HEAD(__db_envq, __db_env) db_envq;
  25. int (*j_close) __P((int)); /* Underlying OS interface jump table.*/
  26. void (*j_dirfree) __P((char **, int));
  27. int (*j_dirlist) __P((const char *, char ***, int *));
  28. int (*j_exists) __P((const char *, int *));
  29. void (*j_free) __P((void *));
  30. int (*j_fsync) __P((int));
  31. int (*j_ioinfo) __P((const char *,
  32.     int, u_int32_t *, u_int32_t *, u_int32_t *));
  33. void   *(*j_malloc) __P((size_t));
  34. int (*j_map) __P((char *, size_t, int, int, void **));
  35. int (*j_open) __P((const char *, int, ...));
  36. ssize_t (*j_read) __P((int, void *, size_t));
  37. void   *(*j_realloc) __P((void *, size_t));
  38. int (*j_rename) __P((const char *, const char *));
  39. int (*j_seek) __P((int, size_t, db_pgno_t, u_int32_t, int, int));
  40. int (*j_sleep) __P((u_long, u_long));
  41. int (*j_unlink) __P((const char *));
  42. int (*j_unmap) __P((void *, size_t));
  43. ssize_t (*j_write) __P((int, const void *, size_t));
  44. int (*j_yield) __P((void));
  45. } DB_GLOBALS;
  46. #ifdef DB_INITIALIZE_DB_GLOBALS
  47. DB_GLOBALS __db_global_values = {
  48. 0, /* write error testing disallowed */
  49. #ifdef HAVE_VXWORKS
  50. 0, /* VxWorks: initialized */
  51. NULL, /* VxWorks: global semaphore */
  52. #endif
  53. /* XA: list of opened environments. */
  54. {NULL, &__db_global_values.db_envq.tqh_first},
  55. NULL,
  56. NULL,
  57. NULL,
  58. NULL,
  59. NULL,
  60. NULL,
  61. NULL,
  62. NULL,
  63. NULL,
  64. NULL,
  65. NULL,
  66. NULL,
  67. NULL,
  68. NULL,
  69. NULL,
  70. NULL,
  71. NULL,
  72. NULL,
  73. NULL
  74. };
  75. #else
  76. extern DB_GLOBALS __db_global_values;
  77. #endif
  78. #define DB_GLOBAL(v) __db_global_values.v