![]() |
![]() |
![]() |
WritRecogn Reference Manual | ![]() |
---|---|---|---|---|
enum TableIndex; FieldProperties; TableProperties; #define MAIN_KEY_FIELD typedef TableFlags; #define INTEGER_DATA_TYPE #define TEXT_DATA_TYPE #define MAIN_KEY_FIELD_PROPERITIES #define LANG_TABLE_FIELDS enum LANG_TABLE_FIELD_ID; #define VARIANT_TABLE_FIELDS enum VARIANT_TABLE_FIELD_ID; #define INPUTCODE_TABLE_FIELDS enum INPUTCODE_TABLE_FIELD_ID; #define STROKEDATA_TABLE_FIELDS enum STROKE_DATA_TABLE_FIELD_ID; #define RADICALGM_TABLE_FIELDS enum RADICALGM_TABLE_FIELD_ID; #define SUBRADICALSEQUENCE_TABLE_FIELDS enum SUBRADICALSEQUENCE_TABLE_FIELD_ID; #define WRITRECOGN_TABLE_FIELDS enum WRITRECOGN_TABLE_FIELD_ID; WritRecognDB_properties; extern WritRecognDB_properties writRecognDB_properties; RadicalList* sqliteTable_append_result_radicalList (sqlite3 *db, TableProperties *table, const gchar *sqlClause, RadicalList *radList); RadicalArray* sqliteTable_append_result_radicalArray (SQLite *db, TableProperties *table, const gchar *sqlClause, RadicalArray *radArray); RadicalList* sqliteCharacterDataFile_query_allTables_radicalList (SQLite *db, const gchar *queryTemplate); RadicalArray* sqliteCharacterDataFile_query_allTables_radicalArray (SQLite *db, const gchar *queryTemplate); int writRecognDB_properties_parse_result_callback (void *db_properties, int colNum, char **recStr, char **azColName); gchar* writRecognDB_properties_to_insertCmds (CharacterDataFile *cdFile, gpointer obj); gchar* writRecognDB_properties_to_updateCmds (CharacterDataFile *cdFile, gpointer obj);
typedef enum { LANG_TABLE_INDEX=0, VARIANT_TABLE_INDEX, INPUTCODE_TABLE_INDEX, RADICALGM_TABLE_INDEX, SUBRADICALSEQUENCE_TABLE_INDEX, STROKEDATA_TABLE_INDEX, WRITRECOGN_TABLE_INDEX, TABLE_COUNTS } TableIndex;
typedef struct { const gchar *name; const FieldProperties *fields; int (*parse_result_callback) (void *radicalList, int colNum, char **recStr, char **azColName); gchar *(*to_insertCmd) (CharacterDataFile *cdFile,gpointer obj); gchar *(*to_updateCmd) (CharacterDataFile *cdFile,gpointer obj); } TableProperties;
typedef enum { LANG_TABLE_FIELD_ID_RADICALCODE = 0, LANG_TABLE_FIELD_ID_LANG } LANG_TABLE_FIELD_ID;
typedef enum { VARIANT_TABLE_FIELD_ID_RADICALCODE = 0, VARIANT_TABLE_FIELD_ID_VARRADICALCODE } VARIANT_TABLE_FIELD_ID;
typedef enum { INPUTCODE_TABLE_FIELD_ID_RADICALCODE = 0, INPUTCODE_TABLE_FIELD_ID_METHOD, INPUTCODE_TABLE_FIELD_ID_INPUTCODE, } INPUTCODE_TABLE_FIELD_ID;
typedef enum { STROKE_DATA_TABLE_FIELD_ID_RADICALCODE = 0, STROKE_DATA_TABLE_FIELD_ID_WRITINGID, STROKE_DATA_TABLE_FIELD_ID_STROKEID, STROKE_DATA_TABLE_FIELD_ID_NODEID, STROKE_DATA_TABLE_FIELD_ID_NODEX, STROKE_DATA_TABLE_FIELD_ID_NODEY } STROKE_DATA_TABLE_FIELD_ID;
typedef enum { RADICALGM_TABLE_FIELD_ID_RADICALCODE = 0, RADICALGM_TABLE_FIELD_ID_MODELID, RADICALGM_TABLE_FIELD_ID_SUBRADICALSERIAL, RADICALGM_TABLE_FIELD_ID_SUBRADICALCODE, RADICALGM_TABLE_FIELD_ID_A_LEFT, RADICALGM_TABLE_FIELD_ID_A_TOP, RADICALGM_TABLE_FIELD_ID_A_RIGHT, RADICALGM_TABLE_FIELD_ID_A_BOTTOM, RADICALGM_TABLE_FIELD_ID_R_LEFT, RADICALGM_TABLE_FIELD_ID_R_TOP, RADICALGM_TABLE_FIELD_ID_R_RIGHT, RADICALGM_TABLE_FIELD_ID_R_BOTTOM } RADICALGM_TABLE_FIELD_ID;
typedef enum { SUBRADICALSEQUENCE_TABLE_FIELD_ID_RADICALCODE = 0, SUBRADICALSEQUENCE_TABLE_FIELD_ID_MODELID, SUBRADICALSEQUENCE_TABLE_FIELD_ID_SEQHORZ, SUBRADICALSEQUENCE_TABLE_FIELD_ID_SEQVERT, } SUBRADICALSEQUENCE_TABLE_FIELD_ID;
typedef enum { WRITRECOGN_TABLE_FIELD_ID_VERSION = 0, } WRITRECOGN_TABLE_FIELD_ID;
RadicalList* sqliteTable_append_result_radicalList (sqlite3 *db, TableProperties *table, const gchar *sqlClause, RadicalList *radList);
This function is faster than sqliteTable_append_result_radicalArray()
,
so unless the full character details are required immediately,
this function is preferred.
returns
: Return radList, NULL when the function failed.
|
The character database. |
|
the table to process. |
|
the SQL clause. |
|
the non-NULL radList which store the result. |
Returns : |
RadicalArray* sqliteTable_append_result_radicalArray (SQLite *db, TableProperties *table, const gchar *sqlClause, RadicalArray *radArray);
This function is slower than sqliteTable_append_result_radicalList()
,
so unless the full character details are required immediately,
use sqliteTable_append_result_radicalList()
.
returns
: Return radArray, NULL when the function failed.
|
The character database. |
|
the table to process. |
|
the SQL clause. |
|
the non-NULL radArray which store the result. |
Returns : |
RadicalList* sqliteCharacterDataFile_query_allTables_radicalList (SQLite *db, const gchar *queryTemplate);
The query is submitted in the form of template.
The s
in template will be replaced by the name of the tables.
For example: "SELECT * FROM s
WHERE RadicalCode=1000;"
This function is faster than sqliteCharacterDataFile_query_allTables_radicalArray()
,
so unless the full character details are required immediately,
this function is preferred.
returns
: Return a radical list, NULL when the function failed.
|
The character database. |
|
Template of query, see the function description. |
Returns : |
RadicalArray* sqliteCharacterDataFile_query_allTables_radicalArray (SQLite *db, const gchar *queryTemplate);
The query is submitted in the form of template.
The s
in template will be replaced by the name of the tables.
For example: "SELECT * FROM s
WHERE RadicalCode=1000;"
This function is slower than sqliteCharacterDataFile_query_allTables_radicalList()
,
so unless the full character details are required immediately,
use sqliteCharacterDataFile_query_allTables_radicalList()
.
returns
: Return a radical array, NULL when the function failed.
|
The character database. |
|
Template of query, see the function description. |
Returns : |
int writRecognDB_properties_parse_result_callback (void *db_properties, int colNum, char **recStr, char **azColName);
|
|
|
|
|
|
|
|
Returns : |
gchar* writRecognDB_properties_to_insertCmds (CharacterDataFile *cdFile, gpointer obj);
|
|
|
|
Returns : |
gchar* writRecognDB_properties_to_updateCmds (CharacterDataFile *cdFile, gpointer obj);
|
|
|
|
Returns : |