Description
µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÇ¾î Àִ ƯÁ¤ ¹®¼¿Í À¯»çÇÑ ¹®¼µéÀ» °Ë»öÇÏ´Â ÇÁ·ÎÅäÄÝÀÌ´Ù.
»ç¿ëÀÚ°¡ "±âÁع®¼"¸¦ ÀÛ¼ºÇϰí, ´ë»ó Å×À̺í, ´ë»ó ¼½¼Ç, À¯»çµµ °ª µîÀ» ÁöÁ¤ Çϸé, "±âÁع®¼"¿Í À¯»çÇÑ ¹®¼µéÀ» °Ë»öÇϰí "°á°ú¼Â¹øÈ£"¿Í "¹®¼°Ç¼ö"°¡ ¹ÝȯµÈ´Ù.
ÀÌÈÄ Ã³¸®´Â ±âÁ¸ÀÇ "ÀϹݰ˻ö"°ú µ¿ÀÏÇÏ°Ô ÇÏ¸é µÈ´Ù.
InParameter
vectortable_namelist; [À¯»ç¹®¼ °Ë»ö´ë»ó Å×À̺í ÁöÁ¤] vector section_namelist; [À¯»ç¹®¼ °Ë»ö ´ë»ó ¼½¼Ç(µé)] Cdocument_t doc; [±âÁع®¼(»ç¿ëÀÚ ÀÛ¼º)] float threshold; [´ë»ó¹®¼¿ÍÀÇ À¯»çµµ °ª(0.0 - 0.99)]
OutParameter
unsigned int set_id; [°á°ú¼Â¹øÈ£] unsigned int total_df; [°Ë»ö°á°ú °Ç¼ö] unsigned int estimated_total_df; [°Ë»ö ¹®¼ ÃßÁ¤Ä¡] long unsigned int service_time; [°Ë»ö ¼öÇà ½Ã°£]
Example
vector table_namelist; // °Ë»ö ´ë»ó Å×À̺í ÁöÁ¤
vector section_namelist; // °£·«º¸±â¿¡¼ Ãâ·ÂÇÒ ¼½¼Ç¸í
float threshold = 0.9; // À¯»çµµ ÀÓ°èÄ¡ (0.1 - 0.99)
// °Ë»ö ´ë»ó Å×À̺í ÁöÁ¤
table_namelist.push_back("blue01");
table_namelist.push_back("blue02");
table_namelist.push_back("blue03");
// À¯»ç¹®¼ °Ë»ö¿¡ »ç¿ëÇÒ ¼½¼ÇÀ» ÁöÁ¤
section_namelist.push_back("TIK");
section_namelist.push_back("ABS");
// ¿äûÀ» ó¸®ÇÒ Å¬·¡½º¸¦ »ý¼º
// »ý¼ºÀÚÀÇ ¸Å°³º¯¼ö·Î ó¸®ÇÒ DB ¼ºñ½ºÀÇ ÁÖ¼Ò¿Í Æ÷Æ®¹øÈ£¸¦ ÀÔ·Â
ClientLIB clientLib(SERVER_IP, SERVER_PORT);
Cparameter_t p_in, p_out; // ¸Å°³º¯¼ö Ŭ·¡½º ¼±¾ð
Cdocument_t doc;
Csection_t sec;
// À¯»ç¹®¼ °Ë»ö¿¡ »ç¿ëÇÒ ¼½¼ÇÀ̸§°ú ¼½¼Ç°ªÀ» ¼¼ÆÃÇÑ´Ù
sec.section_name = "TIK";
sec.section_value = EUCONVCODE("ÀÌÁýÆ® ±â¼ú°³¹ß ÇÁ·Î±×·¥ ȨÆäÀÌÁö");
doc.sections.push_back(sec);
sec.section_name = "ABS";
sec.section_value = EUCONVCODE("ÀÌÁýÆ®¿¡ ÀÖ¾î¼ »õ·Î¿î ±â¼úÀ» ±â¹ÝÀ¸·Î »ê¾÷¿¡ Àû¿ë½Ã۱â À§ÇÑ ºÐ¼®, ÃËÁøÃßÁøÃ¼·Î¼ ±â¼ú°³¹ß ÇÁ·ÎÁ§Æ®³»¿ë°ú Ȱµ¿³»¿ëÀ» Æ÷ÇÔÇϰí ÀÖ´Ù");
doc.sections.push_back(sec);
p_in.documents.push_back(doc);
p_in.table_namelist = table_namelist; // °Ë»ö ´ë»ó Å×À̺í ÁöÁ¤
p_in.section_namelist = section_namelist; // Ãâ·Â¿ë ¼½¼Ç À̸§ ¸®½ºÆ® ÁöÁ¤
p_in.similarity_value = threshold; // À¯»çµµ ÀÓ°èÄ¡ ÁöÁ¤
// p_in.set_id = 0; // ¼ÂÀº »ç¿ë ¾ÈÇÔ
// À¯»ç¹®¼ °Ë»ö ¼öÇà
RedirectStdoutInit(); // ¿äû ¼öÇà Áß¿¡ Ãâ·ÂµÇ´Â ¸Þ½ÃÁö ¸·À½...
int ret_val = clientLib.Request(RETRIEVE_SIMILAR_DOCUMENTS, p_in, p_out);
RedirectStdoutClose();
if (ret_val != 0) {
cout << "ERROR : " << p_out.errmsg << "(" << p_out.errcode << ")" << endl;
return -1;
}