OSDN Git Service

データ保存関連を整備。
[chnosproject/CHNOSProject.git] / CHNOSProject / AI003 / AI003 / core.h
index ac8496b..ad73edc 100755 (executable)
 \r
 #define AI_CONFIG_FILE_NAME "config.txt"\r
 #define AI_INPUT_HISTORY_MAX    10\r
+#define AI_EVENT_COUNT_0        10\r
+\r
+#define AI_SW_Delimiter_Colon   1\r
+#define AI_SW_Delimiter_Comma   2\r
+#define AI_SW_Delimiter_Plus    3\r
+#define AI_SW_Bracket_Start     4\r
+#define AI_SW_Bracket_End       5\r
 \r
 typedef struct AI_WORKING_SET AI_WorkingSet;\r
 struct AI_WORKING_SET {\r
-    CHNLIB_UIPArray *SystemWordList0;\r
-    CHNLIB_UIPArray *RootWordList;\r
+    CHNLIB_UIPArray *SystemWordList0;   //データ解釈用区切り文字列を格納\r
+    CHNLIB_UIPArray *SystemWordList1;   //記憶単位のデータ種類を表す文字列を格納\r
+    CHNLIB_UIPArray *SystemWordList2;   //数字に使用する文字列を格納\r
+    CHNLIB_UIPArray *RootWordList;      //あらゆる文字列のStringを保持する。data32は単語カウント。\r
+    CHNLIB_UIPArray *RootMemory;        //記憶データを保持する。\r
     CHNLIB_UIPArray *InputHistory;\r
 };\r
 \r
@@ -25,11 +35,22 @@ struct AI_WORKING_SET {
 extern AI_WorkingSet WorkingSet;\r
 void AI_Think_LearnWordFromInputString(CHNLIB_String *input);\r
 CHNLIB_UIPArray *AI_Think_SlideLookUpWordByHistory(CHNLIB_String *input);\r
-int AI_Think_CandidateWordList_Filter00(CHNLIB_UIPArray **candidatewordlist);\r
-int AI_Think_CandidateWordList_Filter01(CHNLIB_UIPArray **candidatewordlist, int length);\r
+CHNLIB_UIPArray *AI_Think_WordList_GetSortedByLength(const CHNLIB_UIPArray *wordlist);\r
+void AI_Think_WordList_SetLengthToData32(CHNLIB_UIPArray **wordlist);\r
+void AI_System_InitializeSystemWorkingSet(void);\r
+\r
+//@memory.c\r
 int AI_Memory_AddRootWordData(CHNLIB_String *tag);\r
 int AI_Memory_AddRootWordData_IsDuplicated(const void *listtag, const void *newtag);\r
-void AI_System_InitializeSystemWorkingSet(void);\r
+int AI_Memory_AddRootMemoryData(CHNLIB_UIPArray *tag);\r
+int AI_Memory_AddRootMemoryData_IsDuplicated(const void *listtag, const void *newtag);\r
 void AI_System_LoadMemory(const char configfilename[]);\r
+void AI_System_SaveMemory_RootWordList(const char configfilename[]);\r
+void AI_System_SaveMemory_RootMemory(const char memlistfilename[]);\r
+\r
+//@wlfilter.c\r
+int AI_Think_CandidateWordList_Filter00(CHNLIB_UIPArray **candidatewordlist);\r
+int AI_Think_CandidateWordList_Filter01(CHNLIB_UIPArray **candidatewordlist, int length);\r
+int AI_Think_CandidateWordList_Filter02(CHNLIB_UIPArray **candidatewordlist, uint count);\r
 \r
 #endif\r