modules/df/defs.h
/* [<][>][^][v][top][bottom][index][help] */
FUNCTIONS
This source file includes following functions.
1 #ifndef READ_DEFS
2 #define READ_DEFS
3
4 /***************************************
5 $Revision: 1.8 $
6
7 Objects module (ob) - this _should_ eventually get merged in with the
8 config module.
9
10 Status: NOT REVUED, NOT TESTED
11
12 ******************/ /******************
13 Copyright (c) 1999 RIPE NCC
14
15 All Rights Reserved
16
17 Permission to use, copy, modify, and distribute this software and its
18 documentation for any purpose and without fee is hereby granted,
19 provided that the above copyright notice appear in all copies and that
20 both that copyright notice and this permission notice appear in
21 supporting documentation, and that the name of the author not be
22 used in advertising or publicity pertaining to distribution of the
23 software without specific, written prior permission.
24
25 THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
26 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
27 AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
28 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
29 AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
30 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
31 ***************************************/
32 #include <glib.h>
33 #include "bitmask.h"
34
35 #include "DF_class_enum.def"
36 #include "DF_class_mask.def"
37
38 #include "DF_attribute_enum.def"
39 #include "DF_attribute_inv_attr_mask.def"
40
41 typedef enum _R_Type_t {
42 R_SQL=0,
43 R_RADIX,
44 R_END
45 } R_Type_t;
46
47 typedef enum _Q_Type_t {
48 Q_LOOKUP=0,
49 Q_INVERSE
50 } Q_Type_t;
51
52 #include "which_keytypes.h"
53 #include "iproutines.h"
54 #include "rxroutines.h"
55
56 typedef struct {
57 R_Type_t refer;
58 Q_Type_t querytype;
59 WK_Type keytype;
60 A_Type_t attribute;
61 C_Type_t class;
62 char * const query;
63 char * const descr;
64 } Query_t;
65
66 #ifdef DEFS_IMPL
67 #include "QI_queries.def"
68 #else
69 extern Query_t Query[];
70 #endif
71
72 typedef enum UD_qtype_t {
73 UD_AUX__,
74 UD_AX_PR,
75 UD_AX_MT,
76 UD_AX_MO,
77 UD_AX_MR,
78 UD_AX_MU,
79 UD_LEAF_,
80 UD_LF_IF,
81 UD_LF_RF,
82 UD_LF_AT,
83 UD_LF_OT,
84 UD_LF_AY,
85 UD_MAIN_,
86 UD_MA_RT,
87 UD_MA_OR,
88 UD_MA_PR,
89 UD_MA_U2,
90 UD_MA_IN,
91 UD_MA_I6,
92 UD_MA_AK,
93 UD_NULL_
94 } UD_qtype;
95
96 typedef struct UD_query_t {
97 UD_qtype qtype;
98 char * const qry;
99 } UD_query;
100
101
102 char * const *DF_get_filter_names(void);
103 char * const *DF_get_class_names(void);
104 char * const *DF_get_class_aliases(void);
105 int DF_get_class_index(int alias_index);
106 char * const DF_get_class_name(int alias_index);
107 char * const DF_get_class_code(C_Type_t index);
108 int DF_get_class_dbase_code(int class_index);
109 char * const DF_get_class_sql_table(C_Type_t index);
110 char * const *DF_get_attribute_aliases(void);
111 const char *DF_get_attribute_name(A_Type_t index);
112 const char *DF_get_attribute_code(A_Type_t index);
113 char * const *DF_get_attribute_names(void);
114 int DF_get_attribute_index(int alias_index);
115 const char *DF_get_class_template(C_Type_t index);
116 const char *DF_get_class_template_v(C_Type_t index);
117 const char *DF_get_attribute_desc(A_Type_t index);
118 const char *DF_get_attribute_frmt(A_Type_t index);
119 char *DF_attributes_to_string(void);
120 A_Type_t DF_attribute_code2type(const gchar *token);
121 A_Type_t DF_attribute_name2type(const gchar *token);
122 C_Type_t DF_class_code2type(const gchar *token);
123 C_Type_t DF_class_name2type(const gchar *token);
124 const char *DF_get_server_query(int index);
125 char * const *DF_get_server_queries(void);
126 int DF_attrcode_has_radix_lookup(A_Type_t attr);
127 const char *DF_get_update_query(A_Type_t index);
128 UD_qtype DF_get_update_query_type(A_Type_t index);
129 const char *DF_get_insert_query(A_Type_t index);
130 UD_qtype DF_get_insert_query_type(A_Type_t index);
131 const char *DF_get_select_query(A_Type_t index);
132 UD_qtype DF_get_select_query_type(A_Type_t index);
133 const char *DF_get_dummy_query(A_Type_t index);
134 UD_qtype DF_get_dummy_query_type(A_Type_t index);
135 const char *DF_get_database(int index);
136
137
138 #endif /* READ_DEFS */
139