bes  Updated for version 3.20.6
name_tab.h
1 /*
2  * FILENAME: name_tab.h
3  *
4  * CONTAINS: This is the include file for much of the name table
5  * code: symbols, structures, and prototypes.
6  * More is found in include file
7  * databin.h, which includes this file.
8  *
9  * CAVEAT:
10  * No claims are made as to the suitability of the accompanying
11  * source code for any purpose. Although this source code has been
12  * used by the NOAA, no warranty, expressed or implied, is made by
13  * NOAA or the United States Government as to the accuracy and
14  * functioning of this source code, nor shall the fact of distribution
15  * constitute any such endorsement, and no responsibility is assumed
16  * by NOAA in connection therewith. The source code contained
17  * within was developed by an agency of the U.S. Government.
18  * NOAA's National Geophysical Data Center has no objection to the
19  * use of this source code for any purpose since it is not subject to
20  * copyright protection in the U.S. If this source code is incorporated
21  * into other software, a statement identifying this source code may be
22  * required under 17 U.S.C. 403 to appear with any copyright notice.
23  */
24 
25 #ifndef NAME_TAB_H__
26 #define NAME_TAB_H__
27 
28 #define NTKN_INPUT_EQV "input_eqv"
29 #define NTKN_OUTPUT_EQV "output_eqv"
30 #define NTKN_BEGIN_CONSTANT "begin constant"
31 #define NTKN_BEGIN_NAME_EQUIV "begin name_equiv"
32 #define NTKN_END_CONSTANT "end constant"
33 #define NTKN_END_NAME_EQUIV "end name_equiv"
34 
35 /* NAME_TABLE values' buffer is in multiples of 256 */
36 #define NAME_TABLE_QUANTA 256
37 
38 #define INPUT_NAME_TABLE_EXISTS(dbin) ( (dbin) ? !fd_get_format_data(dbin->table_list, FFF_INPUT | FFF_TABLE, NULL) : 0)
39 
40 /* Name Table Prototypes */
41 int nt_parse(char *origin, FF_BUFSIZE_PTR, NAME_TABLE_HANDLE);
42 NAME_TABLE_PTR nt_create(char *origin);
43 
44 int nt_merge_name_table(NAME_TABLE_LIST_HANDLE, NAME_TABLE_PTR);
45 
46 void nt_free_trans(TRANSLATOR_PTR trans);
47 
48 BOOLEAN nt_copy_translator_sll(VARIABLE_PTR source_var, VARIABLE_PTR target_var);
49 BOOLEAN nt_comp_translator_sll(VARIABLE_PTR var1, VARIABLE_PTR var2);
50 
51 int nt_show(NAME_TABLE_PTR, FF_BUFSIZE_PTR);
52 
53 BOOLEAN nt_get_geovu_value
54  (
55  NAME_TABLE_PTR table,
56  char *gvalue_name,
57  void *user_value,
58  FF_TYPES_t uvalue_type,
59  void *value,
60  FF_TYPES_t *value_type
61  );
62 
63 BOOLEAN nt_get_user_value
64  (
65  NAME_TABLE_PTR table,
66  char *gvalue_name,
67  void *geovu_value,
68  FF_TYPES_t gvalue_type,
69  void *user_value,
70  FF_TYPES_t *uvalue_type
71  );
72 
73 int ff_string_to_binary
74  (
75  char *variable_str,
76  FF_TYPES_t output_type,
77  char *destination
78  );
79 
80 #endif /* (NOT) NAME_TAB_H__ */
81 
struct_ff_dll_node
Definition: freeform.h:1278
struct_ff_variable
Definition: freeform.h:1034
struct_ff_bufsize
Definition: freeform.h:845
struct_ff_translator
Definition: freeform.h:1004
struct_ff_format_data
Definition: freeform.h:1060