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

MySQL数据库

开发平台:

Visual C++

  1. /* Copyright (C) 2000 MySQL AB
  2.    This program is free software; you can redistribute it and/or modify
  3.    it under the terms of the GNU General Public License as published by
  4.    the Free Software Foundation; either version 2 of the License, or
  5.    (at your option) any later version.
  6.    This program is distributed in the hope that it will be useful,
  7.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  8.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  9.    GNU General Public License for more details.
  10.    You should have received a copy of the GNU General Public License
  11.    along with this program; if not, write to the Free Software
  12.    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
  13. /*
  14.   Static variables for mysys library. All definied here for easy making of
  15.   a shared library
  16. */
  17. C_MODE_START
  18. #include <signal.h>
  19. #define MAX_SIGNALS 10 /* Max signals under a dont-allow */
  20. #define MIN_KEYBLOCK (min(IO_SIZE,1024))
  21. #define MAX_KEYBLOCK 8192 /* Max keyblocklength == 8*IO_SIZE */
  22. #define MAX_BLOCK_TYPES MAX_KEYBLOCK/MIN_KEYBLOCK
  23. struct st_remember {
  24.   int number;
  25.   sig_handler (*func)(int number);
  26. };
  27. /*
  28.   Structure that stores information of a allocated memory block
  29.   The data is at &struct_adr+sizeof(ALIGN_SIZE(sizeof(struct irem)))
  30.   The lspecialvalue is at the previous 4 bytes from this, which may not
  31.   necessarily be in the struct if the struct size isn't aligned at a 8 byte
  32.   boundary.
  33. */
  34. struct st_irem
  35. {
  36.   struct st_irem *next; /* Linked list of structures    */
  37.   struct st_irem *prev; /* Other link    */
  38.   char *filename; /* File in which memory was new'ed */
  39.   uint32 linenum; /* Line number in above file    */
  40.   uint32 datasize; /* Size requested    */
  41.   uint32 SpecialValue; /* Underrun marker value    */
  42. };
  43. extern char NEAR curr_dir[FN_REFLEN],NEAR home_dir_buff[FN_REFLEN];
  44. extern volatile int _my_signals;
  45. extern struct st_remember _my_sig_remember[MAX_SIGNALS];
  46. extern const char *soundex_map;
  47. extern USED_MEM* my_once_root_block;
  48. extern uint  my_once_extra;
  49. #if !defined(HAVE_TEMPNAM) || defined(HPUX11)
  50. extern int _my_tempnam_used;
  51. #endif
  52. extern byte *sf_min_adress,*sf_max_adress;
  53. extern uint sf_malloc_count;
  54. extern struct st_irem *sf_malloc_root;
  55. extern struct st_my_file_info my_file_info_default[MY_NFILE];
  56. #if defined(THREAD) && !defined(__WIN__)
  57. extern sigset_t my_signals; /* signals blocked by mf_brkhant */
  58. #endif
  59. C_MODE_END