pg_am.h
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:3k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1. /*-------------------------------------------------------------------------
  2.  *
  3.  * pg_am.h
  4.  *   definition of the system "am" relation (pg_am)
  5.  *   along with the relation's initial contents.
  6.  *
  7.  *
  8.  * Copyright (c) 1994, Regents of the University of California
  9.  *
  10.  * $Id: pg_am.h,v 1.11 1999/02/13 23:21:04 momjian Exp $
  11.  *
  12.  * NOTES
  13.  * the genbki.sh script reads this file and generates .bki
  14.  * information from the DATA() statements.
  15.  *
  16.  * XXX do NOT break up DATA() statements into multiple lines!
  17.  * the scripts are not as smart as you might think...
  18.  *
  19.  *-------------------------------------------------------------------------
  20.  */
  21. #ifndef PG_AM_H
  22. #define PG_AM_H
  23. /* ----------------
  24.  * postgres.h contains the system type definintions and the
  25.  * CATALOG(), BOOTSTRAP and DATA() sugar words so this file
  26.  * can be read by both genbki.sh and the C compiler.
  27.  * ----------------
  28.  */
  29. /* ----------------
  30.  * pg_am definition.  cpp turns this into
  31.  * typedef struct FormData_pg_am
  32.  * ----------------
  33.  */
  34. CATALOG(pg_am)
  35. {
  36. NameData amname;
  37. int4 amowner;
  38. char amkind;
  39. int2 amstrategies;
  40. int2 amsupport;
  41. regproc amgettuple;
  42. regproc aminsert;
  43. regproc amdelete;
  44. regproc amgetattr;
  45. regproc amsetlock;
  46. regproc amsettid;
  47. regproc amfreetuple;
  48. regproc ambeginscan;
  49. regproc amrescan;
  50. regproc amendscan;
  51. regproc ammarkpos;
  52. regproc amrestrpos;
  53. regproc amopen;
  54. regproc amclose;
  55. regproc ambuild;
  56. regproc amcreate;
  57. regproc amdestroy;
  58. } FormData_pg_am;
  59. /* ----------------
  60.  * Form_pg_am corresponds to a pointer to a tuple with
  61.  * the format of pg_am relation.
  62.  * ----------------
  63.  */
  64. typedef FormData_pg_am *Form_pg_am;
  65. /* ----------------
  66.  * compiler constants for pg_am
  67.  * ----------------
  68.  */
  69. #define Natts_pg_am 22
  70. #define Anum_pg_am_amname 1
  71. #define Anum_pg_am_amowner 2
  72. #define Anum_pg_am_amkind 3
  73. #define Anum_pg_am_amstrategies 4
  74. #define Anum_pg_am_amsupport 5
  75. #define Anum_pg_am_amgettuple 6
  76. #define Anum_pg_am_aminsert 7
  77. #define Anum_pg_am_amdelete 8
  78. #define Anum_pg_am_amgetattr 9
  79. #define Anum_pg_am_amsetlock 10
  80. #define Anum_pg_am_amsettid 11
  81. #define Anum_pg_am_amfreetuple 12
  82. #define Anum_pg_am_ambeginscan 13
  83. #define Anum_pg_am_amrescan 14
  84. #define Anum_pg_am_amendscan 15
  85. #define Anum_pg_am_ammarkpos 16
  86. #define Anum_pg_am_amrestrpos 17
  87. #define Anum_pg_am_amopen 18
  88. #define Anum_pg_am_amclose 19
  89. #define Anum_pg_am_ambuild 20
  90. #define Anum_pg_am_amcreate 21
  91. #define Anum_pg_am_amdestroy 22
  92. /* ----------------
  93.  * initial contents of pg_am
  94.  * ----------------
  95.  */
  96. DATA(insert OID = 402 (  rtree PGUID "o" 8 3 rtgettuple rtinsert rtdelete - - - - rtbeginscan rtrescan rtendscan rtmarkpos rtrestrpos - - rtbuild - - ));
  97. DESCR("");
  98. DATA(insert OID = 403 (  btree PGUID "o" 5 1 btgettuple btinsert btdelete - - - - btbeginscan btrescan btendscan btmarkpos btrestrpos - - btbuild - - ));
  99. DESCR("");
  100. #define BTREE_AM_OID 403
  101. DATA(insert OID = 405 (  hash PGUID "o"  1 1 hashgettuple hashinsert hashdelete - - - - hashbeginscan hashrescan hashendscan hashmarkpos hashrestrpos - - hashbuild - - ));
  102. DESCR("");
  103. #define HASH_AM_OID 405
  104. DATA(insert OID = 783 (  gist PGUID "o" 100 7 gistgettuple gistinsert gistdelete - - - - gistbeginscan gistrescan gistendscan gistmarkpos gistrestrpos - - gistbuild - - ));
  105. DESCR("");
  106. #endif  /* PG_AM_H */