7 typedef enum CHISE_DS_Type
13 typedef struct CHISE_DS CHISE_DS;
15 CHISE_DS* chise_open_data_source (CHISE_DS_Type type, char *location);
17 int chise_ds_close (CHISE_DS *ds);
20 typedef int CHISE_Char_ID;
23 typedef DBT CHISE_Value;
26 chise_value_size (const CHISE_Value *s)
32 chise_value_data (const CHISE_Value *s)
38 chise_value_to_c_string (const CHISE_Value *s)
44 typedef struct CHISE_Attribute_Table
48 } CHISE_Attribute_Table;
51 typedef CHISE_Attribute_Table CHISE_Decoding_Table;
54 chise_ds_open_decoding_table (CHISE_DS *ds, const char *ccs,
56 u_int32_t accessmask, int modemask);
58 int chise_dt_close (CHISE_Decoding_Table *table);
60 CHISE_Char_ID chise_dt_get_char (CHISE_Decoding_Table *table, int code_point);
62 int chise_dt_put_char (CHISE_Decoding_Table *table,
63 int code_point, CHISE_Char_ID cid);
66 typedef CHISE_Attribute_Table CHISE_Feature_Table;
69 chise_ds_open_feature_table (CHISE_DS *ds, const char *feature,
71 u_int32_t accessmask, int modemask);
73 int chise_ft_close (CHISE_Feature_Table *table);
75 int chise_ft_get_value (CHISE_Feature_Table *table,
76 CHISE_Char_ID cid, CHISE_Value *valdatum);
79 chise_ft_iterate (CHISE_Feature_Table *table,
80 int (*func) (CHISE_Feature_Table *table,
81 CHISE_Char_ID cid, CHISE_Value *valdatum));
84 CHISE_Char_ID chise_decode_char (CHISE_DS *ds, char *ccs, int code_point);
86 int chise_get_feature (CHISE_DS *ds, CHISE_Char_ID cid,
87 char *key, CHISE_Value *valdatum);
90 CHISE_Attribute_Table*
91 chise_open_attribute_table (CHISE_DS *ds,
92 const char *encoding, const char *feature,
94 u_int32_t accessmask, int modemask);
96 int chise_close_attribute_table (CHISE_Attribute_Table *at);
98 int chise_get_attribute_table (CHISE_Attribute_Table *at,
99 char *key, CHISE_Value *valdatum);
101 #endif /* !_CHISE_H */