WritRecogn-Types

WritRecogn-Types

Synopsis




enum                RadicalType;
                    RadicalArray;
                    ProgramAssociate;
                    RawWriting;
typedef             RadicalCode;
typedef             CoordTree;
typedef             RawStrokeNode;
typedef             Radical;
typedef             RadicalList;
typedef             RawStroke;
typedef             AbsCharacter;
typedef             FullCharacter;
#define             RADICAL                             (obj)
#define             RAWSTROKE                           (obj)
#define             ABSCHARACTER                        (obj)
#define             FULLCHARACTER                       (obj)
#define             RADICAL_LIST                        (obj)
enum                InputMethod;
                    InputCodeRec;
enum                SupportedLanguage;
typedef             LanguageSet;
enum                MainProgramCmd;
                    ProgFlags;
enum                TaskOutput;
#define             MAX_UNICHAR_CODE_LENGTH
#define             MAX_CHAR_CODE_LENGTH
typedef             Hypothesis;
typedef             CharacterMatcher;
typedef             StrokeNoiseReducer;
typedef             RadicalRecognizer;
typedef             SVM_MODEL;
typedef             SVM_PARAMETER;
typedef             SVM_PROBLEM;
typedef             SVM_NODE;
enum                RAW_STROKE_FEATURES;
typedef             SVM_FEATURES;
enum                RadicalField;
enum                QueryRelation;
                    RadicalQueryItem;
typedef             SQLite;
typedef             CharacterDataFile;
                    ProgressData;
                    TrainingProgressData;
TrainingProgressData* (*TrainingProgressFunc)           (RadicalRecognizer *recognizer,
                                                         RadicalList *radicaList);
#define             CHARACTER_DATAFILE                  (obj)
enum                DisplayMode;

Description

Details

enum RadicalType

typedef enum  {
    RADICAL_TYPE_RADICAL,
    RADICAL_TYPE_RAWSTROKE,
    RADICAL_TYPE_ABSCHARACTER, 
    RADICAL_TYPE_FULLCHARACTER,
} RadicalType;


RadicalArray

typedef struct {
    RadicalType type;
    GPtrArray *radArray;
} RadicalArray;


ProgramAssociate

typedef struct {
    MainProgramCmd progCmd;
    ProgFlags flags;
    gchar *usageMsg;

    RadicalList *currRadicalList;
    CharacterMatcher *charMatcher;
    RadicalRecognizer *recognizer;
    StrokeNoiseReducer *strokeNoiseReducer;

    CharacterDataFile *characterDataFile;
    gchar characterDataFileName[PATH_MAX];
    gchar strokeHypothesisFileName[PATH_MAX]; // Decision rules of stroke recognition
    DisplayMode displayMode;


    /**
     * choose_open_callback:
     * Callback function for choose file to open.
     * 
     */
    ChooseFilenameFunc choose_open_callback;

    /**
     * choose_save_callback:
     * Callback function for choose file to save.
     * 
     */
    ChooseFilenameFunc choose_save_callback;

    /**
     * training_progress_callback:
     * Callback function for knowing current progress of training.
     * 
     */
    TrainingProgressFunc training_progress_callback;
} ProgramAssociate;


RawWriting

typedef struct {
    gint writingId; 
    Radical *writingRadical;
} RawWriting;

A RawWriting instance demonstrates how this character are written by a user. It consists a stroke sequence (rawStrokeArray) that


RadicalCode

typedef glong RadicalCode;


CoordTree

typedef GTree CoordTree;


RawStrokeNode

typedef Coordinate2D RawStrokeNode;


Radical

typedef struct _writRecognRadical Radical;


RadicalList

typedef struct _writRecognRadical_list RadicalList;


RawStroke

typedef struct _writRecognRawStroke RawStroke;


AbsCharacter

typedef struct _writRecognAbsCharacter AbsCharacter;


FullCharacter

typedef struct _writRecognFullCharacter FullCharacter;


RADICAL()

#define RADICAL(obj) WRITRECOGN_RADICAL(obj)

obj :


RAWSTROKE()

#define RAWSTROKE(obj) WRITRECOGN_RAWSTROKE(obj)

obj :


ABSCHARACTER()

#define ABSCHARACTER(obj) WRITRECOGN_ABSCHARACTER(obj)

obj :


FULLCHARACTER()

#define FULLCHARACTER(obj) WRITRECOGN_FULLCHARACTER(obj)

obj :


RADICAL_LIST()

#define RADICAL_LIST(obj) WRITRECOGN_RADICAL_LIST(obj)

obj :


enum InputMethod

typedef enum{
    STROKE_SEQUENCE,
    WUBI98,
    IM_OTHER,
    IM_NOT_SPECIFIED,
    IM_INVALID, //< Error return code.
} InputMethod;


InputCodeRec

typedef struct {
    InputMethod method;
    gchar *inputCode;
} InputCodeRec;


enum SupportedLanguage

typedef enum  {
    LANG_UNLABELED=0,
    LANG_NUMBER,
    LANG_SYMBOL,
    LANG_EN,
    LANG_JP,
    LANG_KR,
    LANG_ZH_SIMPLIFIED,
    LANG_ZH_TRADITIONAL,
} SupportedLanguage;


LanguageSet

typedef GArray LanguageSet;


enum MainProgramCmd

typedef enum{
    RECOGNIZER=0,
    CHARACTER_DATA_MANAGER
} MainProgramCmd;


ProgFlags

typedef struct {
    unsigned guiFlag: 1;
    unsigned trainingFlag: 1;
    unsigned characterDataModified: 1;
    unsigned hypothesisModified: 1;
    unsigned canvasModified: 1;
    /**
     * FALSE before gtk_widget_show(mainWindowWidget); TRUE otherwise.
     */
    unsigned initializedFlag: 1; 
} ProgFlags;


enum TaskOutput

typedef enum{
    TASK_RUNNING,
    TASK_CANCELED,
    TASK_FAILED,
    TASK_COMPLETED
} TaskOutput;


MAX_UNICHAR_CODE_LENGTH

#define MAX_UNICHAR_CODE_LENGTH 7


MAX_CHAR_CODE_LENGTH

#define MAX_CHAR_CODE_LENGTH MAX_UNICHAR_CODE_LENGTH*10


Hypothesis

typedef gpointer *Hypothesis;


CharacterMatcher

typedef struct _writRecognCharacter_matcher CharacterMatcher;


StrokeNoiseReducer

typedef struct _writRecognStroke_noise_reducer StrokeNoiseReducer;


RadicalRecognizer

typedef struct _writRecognRadical_recognizer RadicalRecognizer;	


SVM_MODEL

typedef struct svm_model SVM_MODEL;


SVM_PARAMETER

typedef struct svm_parameter SVM_PARAMETER;


SVM_PROBLEM

typedef struct svm_problem SVM_PROBLEM;


SVM_NODE

typedef struct svm_node SVM_NODE;


enum RAW_STROKE_FEATURES

typedef enum {
    NUM_OF_MIDDLE_RAW_STROKE_NODE = 1,
    FAREST_DISTANCE,
    INCLUDED_ANGLE,
    //    DIRECT_LENGTH,
} RAW_STROKE_FEATURES;


SVM_FEATURES

typedef GArray SVM_FEATURES;	///< feature-array as input of libSVM.


enum RadicalField

typedef enum {
    RADICAL_FIELD_RADICAL_CODE,
    RADICAL_FIELD_INPUT_METHOD,
    RADICAL_FIELD_INPUT_CODE,
    RADICAL_FIELD_LANG,
    RADICAL_FIELD_VAR_RADICAL,
} RadicalField;


enum QueryRelation

typedef enum  {
    QUERY_RELATION_EQUAL,
    QUERY_RELATION_NOT_EQUAL,
    QUERY_RELATION_LESS_THAN,
    QUERY_RELATION_LESS_OR_EQUAL,
    QUERY_RELATION_GREATER_THAN,
    QUERY_RELATION_GREATER_OR_EQUAL,
} QueryRelation;


RadicalQueryItem

typedef struct {
    RadicalField field;
    QueryRelation relation;
    gchar* value;
} RadicalQueryItem;


SQLite

typedef sqlite3 SQLite;


CharacterDataFile

typedef struct _writRecognCharacter_datafile CharacterDataFile;


ProgressData

typedef struct {
    int timer;
    TaskOutput result;
    gboolean restart;
    GtkWidget *window;
    GtkWidget *pbar;
} ProgressData;


TrainingProgressData

typedef struct {
    ProgressData pdata;
    Hypothesis *hypo;
} TrainingProgressData;


TrainingProgressFunc ()

TrainingProgressData* (*TrainingProgressFunc)           (RadicalRecognizer *recognizer,
                                                         RadicalList *radicaList);

recognizer :

radicaList :

Returns :


CHARACTER_DATAFILE()

#define CHARACTER_DATAFILE(obj) WRITRECOGN_CHARACTER_DATAFILE(obj)

obj :


enum DisplayMode

typedef enum{
    RECOGNIZING_MODE,
    TRAINING_MODE,
    UNIHAN_MODE
} DisplayMode;