00001 00022 /* 00023 * Copyright (c) 1991-2006 Kawahara Lab., Kyoto University 00024 * Copyright (c) 2000-2005 Shikano Lab., Nara Institute of Science and Technology 00025 * Copyright (c) 2005-2006 Julius project team, Nagoya Institute of Technology 00026 * All rights reserved 00027 */ 00028 00029 #include <sent/stddefs.h> 00030 #include <sent/htk_hmm.h> 00031 00040 boolean 00041 guess_if_cd_hmm(HTK_HMM_INFO *hmminfo) 00042 { 00043 HMM_Logical *dt; 00044 int rnum, lnum, totalnum; 00045 00046 /* check if there is a logical HMM whose name includes either HMM_RC_DLIM 00047 or HMM_LC_DLIM */ 00048 rnum = lnum = totalnum = 0; 00049 for (dt = hmminfo->lgstart; dt; dt = dt->next) { 00050 if (strstr(dt->name, HMM_RC_DLIM) != NULL) rnum++; 00051 if (strstr(dt->name, HMM_LC_DLIM) != NULL) lnum++; 00052 totalnum++; 00053 } 00054 if (rnum > 0) { 00055 if (lnum == 0) { 00056 j_printerr("Warning: cannot handle right-context dependency correctly\n"); 00057 return(FALSE); 00058 } else { 00059 return(TRUE); 00060 } 00061 } 00062 return(FALSE); 00063 }